Edge SDK (Go) — Backend Services

edgesdk.NewEdgeClient builds client stubs for the three backend services alongside the EdgeAdapter gRPC server (see Overview) — access them via client.LiveData(), client.Connector(), and client.MissionAutonomy(). Every call carries the adapter's edge credential (ZQNT_EDGE_TOKEN).

Live Data

LiveDataService (github.com/Zequent/zqnt-edge-sdk-go/v2/livedata) manages persistent gRPC client-streaming connections and routes telemetry frames through them — one open stream per device serial number, reused across calls rather than redialed each time.

MethodPurpose
ProduceTelemetryData(ctx, *domains.TelemetryRequestData)Push telemetry using the POJO-style domain type; the SDK maps it to the proto request for you
ProduceTelemetry(ctx, deviceSN, *proto.ProduceTelemetryRequest)Push a pre-built proto request directly, for advanced/full-control cases
CloseStream(ctx, deviceSN)Close the persistent stream for one device
CloseAllStreams(ctx)Close every open stream — call during shutdown (client.Shutdown already does this for you)
PublishCommandExecutionEvent(ctx, *domains.CommandExecutionEvent)Report a command's progress and outcome — see Edge Adapter — Reporting a command's outcome
CloseNotificationStream(ctx)Close the notification stream — call during shutdown
lat, lon := float32(47.3769), float32(8.5417)
client.LiveData().ProduceTelemetryData(ctx, &domains.TelemetryRequestData{
    SN:   "YOUR-DEVICE-SN",
    Type: domains.TelemetryTypeAsset,
    AssetTelemetry: &domains.AssetTelemetryData{
        Latitude:  &lat,
        Longitude: &lon,
        // ... see AssetTelemetryData for the full field set (mirrors the AssetTelemetry proto)
    },
})

domains.TelemetryType distinguishes dock/primary-asset telemetry (TelemetryTypeAsset) from paired-drone/sub-asset telemetry (TelemetryTypeSubAsset).

Connector

ConnectorService (github.com/Zequent/zqnt-edge-sdk-go/v2/connector) covers asset lookup and registration, and organization lookup — narrower than the Java and Python Edge SDKs' Connector: no pairing-code methods, no Skill Registry and no schedulers.

CategoryMethods
AssetsGetAssetBySN, GetAssetByID, GetSubAssetBySN, UpdateAsset, RegisterAsset, DeRegisterAsset
OrganizationsGetOrganizationByID

DeRegisterAsset(ctx, sn) deletes the asset with that serial number — don't call it on shutdown.

asset, err := client.Connector().GetAssetBySN(ctx, "YOUR-DEVICE-SN")

Mission Autonomy

MissionAutonomyService (github.com/Zequent/zqnt-edge-sdk-go/v2/missionautonomy) is a single read:

CategoryMethods
SchedulersGetScheduler

GetScheduler(ctx, schedulerID, sn) reads a scheduler definition; a scheduler now targets a Skill or a single command directly. Work reaches your adapter as commands — see Edge Adapter. Authoring and running Applications and Skills belongs to the Admin Console and the Client SDK.

Was this page helpful?

© Copyright 2026 Zequent. All rights reserved.