Skip to content

Send Complex Remote Commands

Send Complex Remote Commands Code Snippet#

Code snippets to send complex Remote Commands.

Send S2F41#

const remoteCommandSuccessCode = "0x00,0x04";
let commandParameters: any[] = [];

const sendMessage: Object = {

type: "S2F41" , item: { //replace with Stream and function intended
    type: "L", value: [
        { type: "A", value: "COMMAND ID" }, //remote command name
        { type: "L", value: commandParameters}
    ]}
} 
const reply = await this.framework.driver.sendRaw("connect.iot.driver.secsgem.sendMessage", sendMessage);
let successFound = false;
for (const successCode of remoteCommandSuccessCode.split(",")) {
if (reply && reply.item && parseInt(reply.item.value[0].value.data) === parseInt(successCode.trim())) {
successFound = true;
break;
}

Note

Command parameters can be added by using the following code snippet:

const commandParameter =
type: "L", value: [
    { type: "A", value: "Parameter Name" }, //parameter name
    { type: "A", value: "Parameter Value" } //set the corresponding value and type
]
commandParameters.push(commandParameter);

Send S2F49#

const remoteCommandSuccessCode = "0x00,0x04";
let commandParameters: any[] = [];

const sendMessage: Object = {

type: "S2F49" , item: { //replace with Stream and function intended
    type: "L", value: [
        { type: "U4", value: "DATA ID" }, //data id, use expected Data Id value
        { type: "A", value: "OBJEC SPEC" }, //object spec
        { type: "A", value: "COMMAND ID" }, //remote command name
        { type: "L", value: commandParameters}
    ]}
} 
const reply = await this.framework.driver.sendRaw("connect.iot.driver.secsgem.sendMessage", sendMessage);
let successFound = false;
for (const successCode of remoteCommandSuccessCode.split(",")) {
if (reply && reply.item && parseInt(reply.item.value[0].value.data) === parseInt(successCode.trim())) {
successFound = true;
break;
}

Note

Command parameters can be added by using the following code snippet:

const commandParameter =
type: "L", value: [
    { type: "A", value: "Parameter Name" }, //parameter name
    { type: "A", value: "Parameter Value" } //set the corresponding value and type
]
commandParameters.push(commandParameter);