當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript ClientSession.queryFirst方法代碼示例

本文整理匯總了TypeScript中node-opcua.ClientSession.queryFirst方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript ClientSession.queryFirst方法的具體用法?TypeScript ClientSession.queryFirst怎麽用?TypeScript ClientSession.queryFirst使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在node-opcua.ClientSession的用法示例。


在下文中一共展示了ClientSession.queryFirst方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: main


//.........這裏部分代碼省略.........
    // -----------------------------------------------------------------------------------------------------------------
    // enumerate all Condition Types exposed by the server
    // -----------------------------------------------------------------------------------------------------------------

    console.log("--------------------------------------------------------------- Enumerate all Condition Types exposed by the server");
    const conditionTree = await enumerateAllConditionTypes(the_session);
    console.log(treeify.asTree(conditionTree));
    console.log(" -----------------------------------------------------------------------------------------------------------------");

    // -----------------------------------------------------------------------------------------------------------------
    // enumerate all objects that have an Alarm & Condition instances
    // -----------------------------------------------------------------------------------------------------------------

    const alarms = await enumerateAllAlarmAndConditionInstances(the_session);

    console.log(" -------------------------------------------------------------- Alarms & Conditions ------------------------");
    for (const alarm of alarms) {
        console.log(
          "parent = ",
          chalk.cyan(w(alarm.parent.toString(), 30)),
          chalk.green.bold(w(alarm.typeDefinitionName, 30)),
          "alarmName = ",
          chalk.cyan(w(alarm.browseName.toString(), 30)),
          chalk.yellow(w(alarm.alarmNodeId.toString(), 40))
        );
    }
    console.log(" -----------------------------------------------------------------------------------------------------------------");

    // -----------------------------------------------------------------------------------------------------------------
    // Testing if server implements QueryFirst
    // -----------------------------------------------------------------------------------------------------------------
    try {
        console.log(" ----------------------------------------------------------  Testing QueryFirst");
        const queryFirstRequest: QueryFirstRequestOptions =  {
            view: {
                viewId: NodeId.nullNodeId
            },

            nodeTypes: [
                {
                    typeDefinitionNode: makeExpandedNodeId("i=58"),

                    includeSubTypes: true,

                    dataToReturn: [{

                        attributeId: AttributeIds.AccessLevel,
                        relativePath: undefined
                    }]
                }
            ]};

        const queryFirstResult = await the_session.queryFirst(queryFirstRequest);
        console.log(" -----------------------------------------------------------------------------------------------------------------");
    } catch (err) {
        console.log(" Server is not supporting queryFirst err=",err.message);
    }
    // create Read
    if (doHistory) {

        console.log(" ---------------------------------------------------------- History Read------------------------");
        const now = Date.now();
        const start = now - 1000; // read 1 seconds of history
        const historicalReadResult = await the_session.readHistoryValue({
            nodeId: monitored_node
        }, new Date(start), new Date(now));
開發者ID:node-opcua,項目名稱:node-opcua,代碼行數:67,代碼來源:simple_client.ts


注:本文中的node-opcua.ClientSession.queryFirst方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。