Plegma API
v2
|
Namespaces |
Classes | |
class | A2mcuActiveDriver |
class | A2mcuActiveDriversReq |
class | A2mcuConcurrent |
class | A2mcuConcurrentCommands |
class | A2mcuConfigConstants |
class | A2mcuCtrl |
class | A2mcuCtrlReq |
class | A2mcuSequencedCommands |
class | ActivePortKeysMsg |
Active Port Keys Msg Informs Node of all currently active Ports (i.e. Ports that are connected and active in currently deployed graphs). Should be used by Nodes to supress events from inactive ports, allowing more efficient use of medium More... | |
class | AssemblyHook |
class | AudioContentDescriptor |
class | BinaryResourceDescriptor |
Descriptor of a binary resource. More... | |
struct | BinaryResourceDescriptorKey |
Globally unique identifier of a BinaryResourceDescriptor More... | |
class | BinaryResourceHelper |
class | BlockEventFeedbackMsg |
BlockEventFeedbackMsg: external event meant to provide feedback to a previous block event. Upon receiving the event, the Cloud Worker will use the information to trigger the referenced block's "Result" port with the enclosed information More... | |
struct | BlockKey |
Globally unique identifier of a Graph's Yodiwo.API.Plegma.BlockKey More... | |
class | ConfigDescription |
Describes restrictions and gives information of a configuration parameter. More... | |
struct | ConfigParameter |
Configuration parameters for the thing in generic name-value pairs More... | |
class | Constants |
class | ContentDescriptor |
class | DataContentDescriptor |
class | DbDocument |
struct | DbKey |
struct | DriverKey |
Globally unique identifier of a Graph's Yodiwo.API.Plegma.DriverKey More... | |
class | EndpointSyncReq |
Endpoint Sync request, providing way for individual Node Links to become aware / influence Node operation Direction: Node(link) -> Cloud More... | |
class | EndpointSyncRsp |
Endpoint Sync response to previous request Direction: Cloud -> Node(link) More... | |
class | EvNodeApiFendCommon |
class | EvNodeCommon |
class | EvNodeConnectAttemptFailure |
class | EvNodeConnected |
class | EvNodeDisconnected |
class | EvNodeDisconnectReq |
class | EvNodeRxDisabled |
class | EvNodeRxEnabled |
struct | ExternalServiceBlockKey |
Globally unique identifier of an Api Key (Yodiwo.API.Plegma.ExternalServiceBlockKey) More... | |
class | FcmConnectionMsg |
GCM connection message send by a GCM client to indicate that it can be reached over GCM This is also used by the server to create the NodeKey - (GCM) Registration Id association, and authenticate Registration Ids More... | |
class | FcmDisconnectionMsg |
GCM connection message send by a GCM client to indicate that it can no longer be reached over GCM More... | |
class | FcmMsg |
Gcm message encapsulation class. More... | |
class | GeneratorIgnoreAttribute |
class | GenericRsp |
General Response to request-type messages. Used to unblock requests waiting for responses that are of basic ACKnowledge type More... | |
class | GraphDeploymentReq |
Node Graph Deploy/Undeploy Request (respond with GenericRsp) More... | |
struct | GraphDescriptorBaseKey |
struct | GraphDescriptorKey |
Globally unique identifier of a Yodiwo.API.Plegma.GraphDescriptorKey More... | |
struct | GraphKey |
Globally unique identifier of a Yodiwo.API.Plegma.GraphKey More... | |
class | GraphOptions |
struct | GroupKey |
Globally unique identifier of a Yodiwo.API.Plegma.GroupKey More... | |
class | HelperExtensions |
class | HttpLocationDescriptor |
Descriptor of HTTP Location More... | |
class | I2CCommand |
class | ImageContentDescriptor |
class | IncidentDescriptor |
Descriptor class for Edge Node Incidents (crashes, unexpected restarts, etc) More... | |
class | LocallyDeployedGraphsMsg |
Inform server for local deployed graphs (to sync up on connect) More... | |
class | LocationDescriptor |
Descriptor of a binary resource location. More... | |
class | LoginReq |
Login Request to be used only for transports that require explicit authentication via the API itself Direction: Cloud to Node More... | |
class | LoginRsp |
Login Response More... | |
class | ModelTypeLibrary |
class | MqttMsg |
Mqtt message encapsulation class. More... | |
class | NodeInfoReq |
Node Info Request Sent by cloud to a node, it is to request capabilities and supported types from the node More... | |
class | NodeInfoRsp |
Node Info Response Message that contains general information about a node including supported Node Types and Capabilities More... | |
struct | NodeKey |
Globally unique identifier of a Yodiwo.API.Plegma.NodeKey More... | |
class | NodeLinkIpInfo |
class | NodeStatusChangedReq |
Unpairing request, stating reason code and a possible custom message Direction: Cloud->Node, Node->Cloud More... | |
class | NodeUnpairedReq |
Unpairing request, stating reason code and a possible custom message Direction: Cloud->Node More... | |
class | PingReq |
Node Ping Request More... | |
class | PingRsp |
class | PlegmaAPI |
class | PlegmaApiMsg |
Base class of an API message, from which all message classes inherit More... | |
class | Port |
Basic Input/Output entity of a Thing Creates and sends messages towards the Yodiwo cloud service, or receives and handles messages from the cloud. Both events occur via the PortEventMsg message More... | |
class | PortConfiguration |
class | PortDescription |
Describes restrictions and gives information of a port Port. More... | |
class | PortEvent |
Port Event class: used to describe a new event that should trigger an endpoint, either towards a node or the Cloud Services More... | |
class | PortEventMsg |
asynchronous Port Event message The main API message to exchange events between Nodes and the Yodiwo Cloud Service More... | |
class | PortEventReq |
synchronous Port Event request The main API message to exchange events between Nodes and the Yodiwo Cloud Service Similar to PortEventMsg but expects a response linked to this Request via a SyncId More... | |
class | PortEventRsp |
struct | PortKey |
Globally unique identifier of a Thing's Port More... | |
class | PortModelLibrary |
class | PortState |
internal state of a referenced Port More... | |
class | PortStateGet |
Port State Request. Will result in a response of type PortStateSet More... | |
class | PortStateSemantics |
class | PortStateSet |
Active Port Keys Msg Informs Node of all currently active Ports (i.e. Ports that are connected and active in currently deployed graphs). Should be used to 1. supress events from inactive ports, allowing more efficient use of medium, 2. sync Port states with the server More... | |
class | RedisDBLocationDescriptor |
Descriptor of RedidDB Location More... | |
struct | ScheduleKey |
Globally unique identifier of a Yodiwo.API.Plegma.ScheduleKey More... | |
class | StateDescription |
class | StateTriplet |
struct | SubUserKey |
Globally unique identifier of a Yodiwo.API.Plegma.SubUserKey More... | |
class | TextContentDescriptor |
class | Thing |
Main representation of a Thing that can interact with the Yodiwo cloud service More... | |
class | ThingExtensions |
struct | ThingKey |
Globally unique identifier of a Thing More... | |
class | ThingModelType |
Base class that describes the Model of a Thing Thing More... | |
class | ThingsGet |
Node Things Request Used to request a Things related operation from the other end. More... | |
class | ThingsSet |
Node Things Response Response to a ThingsSet request More... | |
class | ThingType |
Base class that describes a group of Thing Models ThingModelType More... | |
class | ThingTypeLibrary |
class | ThingTypes |
class | ThingTypesMigrator |
struct | ThingUIHints |
Collection of instructions ("hints") for how to present this thing in the Cyan UI More... | |
struct | UserApiKey |
Globally unique identifier of an Api Key (Yodiwo.API.Plegma.UserApiKey) More... | |
struct | UserKey |
Globally unique identifier of a Yodiwo.API.Plegma.UserKey More... | |
class | Validators |
class | VideoContentDescriptor |
class | VirtualBlockEvent |
VirtualBlock Event class: used to describe a new event that should trigger a virtual block endpoint, either towards a node or the Cloud Services More... | |
class | VirtualBlockEventMsg |
asynchronous Port Event message The main API message to exchange events between Nodes and the Yodiwo Cloud Service More... | |
class | WebSocketMsg |
Websocket protocol wrapper. Inherits from base WrapperMsg, adds Id and Subid More... | |
class | WrapperMsg |
Wrapper class mainly for providing synchronization services to sync-less protocols (mqtt, websockets, etc) More... | |
struct | YColor |
Enumerations | |
enum | eConnStatus { NONE = 0, RX_ON = 1, TX_ON = 2, ALL = 3 } |
enum | eLinkType { Unknown = 0, YPC = 1, WebSocket = 2, Mqtt = 3, Rmq = 4, Fcm = 5, REST = 11 } |
enum | eBinaryResourceContentType : byte { Undefined = 0, Data = 1, Text = 2, Image = 3, Audio = 4, Video = 5 } |
Content type of a binary resource. More... | |
enum | eBinaryResourceLocationType : byte { Undefined = 0, Http = 1, RedisDB = 2 } |
Location type of a binary resource. More... | |
enum | RestServiceType : byte { Undefined = 0, Dropbox = 1, Pastebin = 2, GoogleDrive = 3, Yodiwo = 4 } |
Type of a REST service More... | |
enum | ImageFileFormat : byte { Undefined = 0, PNG = 1, TIFF = 2, GIF = 3, BMP = 4, SVG = 5 } |
enum | ImageType : byte { Raster = 0, Vector = 1 } |
enum | eNodeEventType { Connected, Disconnected, RxEnabled, RxDisabled, ConnectFailure, DisconnectReq } |
enum | eDriverType { Unknown = 0, LCD } |
enum | eThingSolveErrorCode { Received = 0, Sent = 1, Forwarded = 2, ThingDoesNotExist = 3, ThingIsNotCurrentlyConnected = 4, NoPendingReqFound = 5, InvalidReq = 6, Unreachable = 7, NoEligibleTarget = 8, TimeToLiveExceeded = 9, RejectedByThirdParty = 10, FateUnknown = 11, RejectedDueToQuota = 12, RejectedDueToThrottling = 13, LastReserved = 29, OtherError = 255 } |
enum | ePortType : int { ePortType.Undefined = 0, ePortType.Integer = 1, ePortType.Decimal = 2, ePortType.DecimalHigh = 3, ePortType.Boolean = 4, ePortType.Color = 5, ePortType.String = 6, ePortType.VideoDescriptor = 7, ePortType.AudioDescriptor = 8, ePortType.BinaryResourceDescriptor = 9, ePortType.I2CDescriptor = 10, ePortType.JsonString = 11, ePortType.IncidentDescriptor = 12, ePortType.Timestamp = 13 } |
type of values that each Port sends / receives More... | |
enum | ioPortDirection : byte { ioPortDirection.Undefined = 0, ioPortDirection.InputOutput = 1, ioPortDirection.Output = 2, ioPortDirection.Input = 3 } |
Direction of Port More... | |
enum | ePortConf : uint { ePortConf.None = 0, ePortConf.PropagateAllEvents = 1 << 0, ePortConf.IsTrigger = 1 << 1, ePortConf.DoNotNormalize = 1 << 2, ePortConf.SupressIdenticalEvents = 1 << 3, ePortConf.Hidden = 1 << 4, ePortConf.IsMetadata = 1 << 5 } |
enum | eConnectionFlags { eConnectionFlags.None = 0, eConnectionFlags.CreateNewEndpoint = 1 << 0, eConnectionFlags.IsMasterEndpoint = 1 << 1, eConnectionFlags.KillExistingNodeLinks = 1 << 2 } |
Connection parameters / flags More... | |
enum | eNodeType : byte { Unknown = 0, Generic = 1, EndpointSingle = 2, TestGateway = 3, TestEndpoint = 4, WSEndpoint = 5, Android = 6, iOS = 7, SmartThingsEndPoint = 8, mNode = 9, Dashboard = 10, LoRa = 11, Impact = 12, ImpactV2 = 13, Facebook = 14, Skype = 15, Sigfox = 16, WSSample = 200, RestSample = 201, Virtual = 202, Yodikit = 203 } |
Type of Node More... | |
enum | eEndpointRestrictions { None = 0, SkipThingsSync = 1, SkipPortStateSync = 2, DelayRxPathOpen = 4 } |
enum | eNodeCapa : uint { eNodeCapa.None = 0, eNodeCapa.SupportsGraphSolving = 1 << 0, eNodeCapa.Scannable = 1 << 1, eNodeCapa.IsWarlock = 1 << 2, eNodeCapa.IsShellNode = 1 << 3 } |
enum of possible node capabilites More... | |
enum | eUnpairReason : byte { eUnpairReason.Unknown = 0, eUnpairReason.InvalidOperation = 1, eUnpairReason.UserRequested = 2, eUnpairReason.TooManyAuthFailures = 3 } |
Reason for Node Unpairing More... | |
enum | eNodeStatusChangeReason { eNodeStatusChangeReason.Unknown = 0, eNodeStatusChangeReason.InvalidOperation = 1, eNodeStatusChangeReason.UserRequested = 2, eNodeStatusChangeReason.TooManyAuthFailures = 4, eNodeStatusChangeReason.QuotaRelated = 8, eNodeStatusChangeReason.Temporary = 16 } |
Reason for Node Unpairing More... | |
enum | eNodeNewStatus { eNodeNewStatus.Unpaired = 0, eNodeNewStatus.Disabled = 1, eNodeNewStatus.Enabled = 2 } |
enum | eNodeSyncOperation { eNodeSyncOperation.GetEndpoints = 1, eNodeSyncOperation.SetEndpoint } |
type of sync operation requested More... | |
enum | eThingsOperation : byte { eThingsOperation.Invalid = 0, eThingsOperation.Update = 1, eThingsOperation.Overwrite = 2, eThingsOperation.Delete = 3, eThingsOperation.Get = 4, eThingsOperation.Scan = 5, eThingsOperation.Sync = 6 } |
Internal operation ID for ThingsGet and ThingsSet messages More... | |
enum | ePortStateOperation { ePortStateOperation.Invalid = 0, ePortStateOperation.SpecificKeys = 1, ePortStateOperation.ActivePortStates = 2, ePortStateOperation.AllPortStates = 3, ePortStateOperation.ActivePortKeys = 4, ePortStateOperation.AllPortsNoStates = 5 } |
Allowed operations in PortStateGet messages More... | |
enum | eA2mcuCtrlType { Reset = 0, SetValue = 1, WriteDriconf = 2 } |
enum | eThingConf : uint { eThingConf.None = 0, eThingConf.SyncEventWithAllEndpoints = 1 << 0, eThingConf.Removable = 1 << 1 } |
Thing configuration flags More... | |
|
strong |
Content type of a binary resource.
|
strong |
Location type of a binary resource.
|
strong |
|
strong |
enum of possible node capabilites
Enumerator | |
---|---|
None |
no capabilities |
SupportsGraphSolving |
Node supports graph solving |
Scannable |
Node supports scanning for new Things (i.e. Things are not just fixed at initial setup) |
IsWarlock |
Node supports the Warlock API |
IsShellNode |
Node is capable of sending/receiving events for Things that don't belong to it |
|
strong |
|
strong |
Reason for Node Unpairing
|
strong |
type of sync operation requested
Enumerator | |
---|---|
GetEndpoints |
Node link endpoint asks for all available NodeEndpoints of Node |
SetEndpoint |
Node link requests that it is reassigned to new NodeEndpoint, denoted by EndpointSyncReq.DesiredEndpoint |
|
strong |
Type of Node
|
strong |
|
strong |
Allowed operations in PortStateGet messages
|
strong |
type of values that each Port sends / receives
|
strong |
Thing configuration flags
Enumerator | |
---|---|
None |
no configuration set |
SyncEventWithAllEndpoints |
if set, any input (towards the Cloud Server) event from this thing will be propagated to all currently connected Endpoints, if any |
Removable |
specifies whether the Thing is allowed to be remotely removed via a Plegma msg (ThingsSet with operation id eThingsOperation.Delete) |
|
strong |
Internal operation ID for ThingsGet and ThingsSet messages
Enumerator | |
---|---|
Invalid |
invalid opcode |
Update |
referenced things are to be updated at receiver. If they don't already exist, they are created |
Overwrite |
referenced things are to be updated at receiver if they exist, created if not. Previously existing things at receiver that are not in this message are deleted |
Delete |
ask that the receiver deletes referenced (by the ThingKey) thing |
Get |
ask that receiver sends back its existing things as a ThingsSet |
Scan |
ask that the receiver scans for new things and send back all results (new and old) as a ThingsSet |
Sync |
sync Thing revisions between node and cloud |
|
strong |
|
strong |
Direction of Port
Enumerator | |
---|---|
Undefined |
undefined, should not be used! |
InputOutput |
both Input and Output, Port will be used in both Graph Input and Output Things |
Output |
Output only; Port will be used only in Graph Input Things (node->cloud) |
Input |
Input only; Port will be used only in Graph Output Things (cloud->node) |
|
strong |
Type of a REST service