Page tree
Skip to end of metadata
Go to start of metadata




Network server users can send data down via Virtual Networks to multicast EUI addresses of multicast-capable Class C devices.

You can send downlink multicast messages using either plaintext (we encrypt the data in the server) or ciphertext (you encrypt the data).

➜ All multicast messages must be scheduled for delivery in advance, with a timestamp specified in every multicast message request.




Message format Typescript interface notation


{
    cmd      		: 'mtx';   			// must always have the value 'mtx'
    mcasteui 		: string;  			// multicast EUI, 16 hex digits (without dashes)
	userid			: number;			// internal user ID in the LORIOT network server
	virtualNetworks	: array<number>;    // set of virtual network identifiers
    port    	 	: number;  			// port to be used (1..223)
    preload  		: number;  			// pre-load time (milliseconds, optional)
    fopts    		: string;  			// LoRaWAN® frame header options / MAC commands (hex string)
    date    		: string;  			// UTC time of multicast delivery (timestamp, ISO String)
    data    		: string;  			// data payload (to be encrypted by our server)
                        				// if no APPSKEY is assigned to device, error will be returned
}


Example Message

{
    "cmd"     		 : "mtx",
    "mcasteui" 		 : "0102030405060708",
	"userid"		 : 12,
	"virtualNetworks": [26,54],
    "port"    		 : 1,
    "preload"  		 : 1000,
    "fopts"   		 : "00",
    "date"    		 : "2017-11-01T10:00:00.000Z",
    "data"    		 : "0102AABB"
}



ParameterTypeDescription
cmdstringmust always have the value 'mtx'
mcasteuistringmulticast EUI, 16 hex digits (without dashes)
useridnumberinternal user ID in the LORIOT network server
virtualNetworksarray<number>set of virtual network identifiers
portnumberport number (1 to 223)
preloadnumberhow long ahead should the message be sent to the gateway (milliseconds, optional)
foptsstringLoRaWAN® frame header options / MAC commands (hex string)
datestringUTC time of the multicast delivery (timestamp, ISO String)
datastringdata payload (to be encrypted by our server) as a hexadecimal string




➜ The data payload has to be encrypted by you with the corresponding APPSKEY.


Message format Typescript interface notation


{
    cmd      		: 'mtx';   			// must always have the value 'mtx'
    mcasteui 		: string;  			// multicast EUI, 16 hex digits (without dashes)
	userid			: number;			// internal user ID in the LORIOT network server
	virtualNetworks	: Array<number>;    // set of virtual network indentifiers
    port    	 	: number;  			// port to be used (1..223)
    preload  		: number;  			// pre-load time from date to send message to gateways (optional)
    fopts    		: string;  			// LoRaWAN® frame header options / MAC commands (hex string)
    date    		: string;  			// UTC time of multicast delivery (timestamp, ISO String)
    data    		: string;  			// data payload (to be encrypted by our server)
                        				// if no APPSKEY is assigned to device, error will be returned
}

Example Message

{
    "cmd"      		 : "mtx",
    "mcasteui" 		 : "0102030405060708",
	"userid"   		 : 12,
	"virtualNetworks": [26,54], 
    "port"     		 : 1,
    "preload"  		 : 1000,
    "fopts"    		 : "00"
    "date"     		 : "2017-11-01T10:00:00.000Z",
    "encdata"  		 : "0102AABB"
}


ParameterTypeDescription
cmdstringmust always have the value 'mtx'
mcasteuistringmulticast EUI, 16 hex digits (without dashes)
useridnumberinternal user ID in the LORIOT network server
virtualNetworksarray<number>set of virtual network identifiers
portnumberport number (1 to 223)
preloadnumberpre-load time from date to send message to gateways (miliseconds, optional)
foptsstringLoRaWAN® frame header options / MAC commands (hex string)
datestringUTC time of the multicast delivery (timestamp, ISO String)
encdatastringData payload (APPSKEY encrypted) as a hexadecimal string




➜ Acknowledgement is returned immediately after issuing the 'mtx' command.


Message format Typescript interface notation


{
    cmd        : 'mtx';	  // always has the value 'mtx'
    mcasteui   : string;  // multicast device EUI, 16 hex digits (without dashes)
    mcastdnqid : string;  // multicast downlink ID
    error?     : string;  // string describing the encountered error
                          // only present if the command failed
}



Example Message

{
    "cmd"        : "mtx",
    "mcasteui"   : "0102030405060708",
    "mcastdnqid" : "59d3a732c31ac92beb82e853"
}



ParameterTypeDescription
cmdstringidentifies type of message, always 'mtx' for this type of message
mcasteuistringmulticast EUI, 16 hex digits (without dashes)
mcastdnqidstringIf command succeeded, it will contain a confirmation message.
errorstring (optional)If command failed, it will report the error description.





➜ The confirmation event is sent once the packet has been sent to gateway(s) for delivery


Message format Typescript interface notation

{
    cmd      : 'mtxd';	// always has the value 'mtxd'
    mcasteui : string;  // multicast device EUI, 16 hex digits (without dashes)
    seqdn    : number;  // FCnt number used for the multicast downlink
    ts       : number;  // Unix timestamp, at the moment of the transfer to gateway
}


Example Message

{
    "cmd"      : "mtxd",
    "mcasteui" : "0102030405060708",
    "seqdn"    : 1,
    "ts"       : 1470850675434
}


ParameterTypeDescription
cmdstringidentifies type of message, always 'mtxd' for this type of message
mcasteuistringmulticast EUI, 16 hex digits (without dashes)
seqdnnumberSequence number used for the multicast downlink
tsnumberUnix timestamp, at the moment of the transfer to gateway




➜ Flush all scheduled mutlicast downlinks for a target multicast EUI.


Message format Typescript interface notation

{
    cmd      : 'mtxf';	// always has the value 'mtxf'
    mcasteui : string;  // multicast device EUI, 16 hex digits (without dashes)
}


Example Message

{
    "cmd"      : "mtxf",
    "mcasteui" : "0102030405060708"
}


ParameterTypeDescription
cmdstringidentifies type of message, always 'mtxf' for this type of message
mcasteuistringmulticast EUI, 16 hex digits (without dashes)




➜ Acknowledgement is returned immediately after issuing the 'mtxf' command.


Message format Typescript interface notation

{
    cmd      : 'mtxf';	// always has the value 'mtxf'
    mcasteui : string;  // multicast device EUI, 16 hex digits (without dashes)
}


Example Message

{
    "cmd"      : "mtxf",
    "mcasteui" : "0102030405060708"
}           


ParameterTypeDescription
cmdstringidentifies type of message, always 'mtxf' for this type of message
mcasteuistringmulticast EUI, 16 hex digits (without dashes)





  • No labels