APPCUBE-对接IEF实现边缘节点管理功能:脚本中调用连接器

时间:2023-11-01 16:19:13

脚本中调用连接器

您可以在脚本中调用连接器实现调用IEF的接口,脚本样例如下:

export interface IEFClient {    /*        @param projectID     */    getProjectNode(projectID: string): IdentifierInfo    /*        @param projectID     */    getProjectDevice(projectID: string): IdentifierInfo    /*        @param projectID     @param nodeID     */    getNode(projectID: string, nodeID: string): IdentifierInfo    /*        @param projectID     @param deviceID     */    getNodeDevice(projectID: string, deviceID: string): IdentifierInfo    /*        @param nodeID     @param topic     @param msg     */    getMSG(nodeID: string, topic: string, msg: string): IdentifierInfo}

这里以新建一个脚本实现查询边缘节点列表为例进行举例说明。

  1. 鼠标放在App下的Logic文件夹旁会出现加号,单击加号,选择“脚本”。
  2. 选择“创建一个新脚本”,输入基本信息,单击“保存”。
  3. 编辑代码如下:

    import { Decimal } from 'decimal';import { Error } from 'error';import * as ief from 'ief';export class Input {    @action.param({ type: "String", required: true, description: "type" })    project_id: string;    //   @action.param({ type: "String", required: true, description: "the operation value 2" })    //  node_id: string;}export class Output {    @action.param({ type: "Object", required: true })    result: Object;}export class Calculator {    @action.method({ input: "Input", output: "Output", description: "do a operation" })    run(input: Input): Output {        let output = new Output();        let cli = ief.newClient("ief_test");        output.result = cli.getProjectNode(input.project_id);        //console.log(output.result);        return output;    }}

    其中ief.newClient("ief_test")中“ief_test”为连接器的名称。

  4. 单击代码编辑页面上方保存图标,保存脚本。
  5. 运行测试脚本。

    1. 单击编辑器上方执行图标。
    2. 在页面底部“输入参数”页签输入请求参数项目ID,单击测试窗口右上角图标。
      {    "project_id":"XXXXXXXXXXX"}
    3. 检查输出,显示出边缘节点列表,表示执行脚本成功。

  6. 单击代码编辑页面上方图标,启用脚本。
support.huaweicloud.com/usermanual-appcube/appcube_05_0096.html