命令框架概述

你可以使用命令框架服务向设备上正在运行的应用程序发送命令。

例如,Predix云中的EdgeManager设备管理应用程序能够向任何使用命令框架服务设备的单独的应用程序发送命令。

为了传递EdgeManager的命令,Predix机器需要得到想要达到的每个它所访问的应用程序的命令处理程序程序。应执行每个命令处理程序程序需要被实现以与具体的应用程序进行通信。

注:

参见创建命令处理程序

工作流

本范例展示了机器命令处理程序程序执行 getlogs 命令的工作流。

1. 云网关依据根据以下三大条件之一与边缘网关进行同步:

- 1.Sever-Sent Events服务器发送事件 (SSE)

- 2.在云网关配置中设置的时间间隔

- 3.机器上运行的应用程序发送一个同步请求

2. 边缘网关向 get logs推送一项任务。

3. 云网关将命令传递给命令调度程序。

4. 命令调度程序将命令识别为机器命令,并向机器处理程序发送消息。

5. 机器处理程序通过向边缘网关端点发表日志执行所需的操作。

6. 机器处理程序向云网关发送成功状态消息。

7. 云网关储存状态消息直到下一次同步周期。

8. 将状态消息上传至云端。

下图显示了工作流。

命令框架消费者配置

Maven依赖项

消费进行命令框架服务时需要下列Maven依赖项:

OSGI导入

在消费消耗捆绑包中时,需要导入下列OSGI:

在Predix机器中安装命令框架

为了使用命令框架服务,你必须生成一个Predix机器供应容器,包括命令框架和云网关捆绑包。

你可以使用命令行脚本或Predix机器SDK在Eclipse中生成容器。

? 使用命令行生成容器。

例如,GenerateContainers.bat D\users\16.4.0\SDK\eclipse-jee-mars-SR2-win32-x8-64.zip -PROV

注:

欲了解使用脚本生成容器的完整说明,参见用命令行脚本生成Predix机器运行时容器

? 用Predix机器SDK生成容器,并在Predix功能组捆绑包类型中添加Predix供应支持捆绑包。

注:

欲了解使用Eclipse生成容器的完整说明,参见用Eclipse生成Predix机器运行时容器

创建命令处理程序程序

为了使用命令框架服务,你必须生成一个Predix机器供应容器,包括命令框架和云网关捆绑包。

你可以使用命令行脚本或Predix机器SDK在Eclipse中生成容器。

? 使用命令行生成容器。

例如,GenerateContainers.bat D\users\16.4.0\SDK\eclipse-jee-mars-SR2-win32-x8-64.zip -PROV

注:

欲了解使用脚本生成容器的完整说明,参见用命令行脚本生成Predix机器运行时容器。

? 用Predix机器SDK生成容器,并在Predix功能组捆绑包类型中添加Predix供应支持捆绑包。

注:

欲了解使用Eclipse生成容器的完整说明,参见用Eclipse生成Predix机器运行时容器。

创建命令处理程序程序

要订阅命令,应用程序必须注册命令处理程序程序服务实现执行 ICommandHandler 接口。调度新命令时,在调度程序中注册并调用这项服务。

下列范例显示了如何执行一个命令处理程序:

命令和命令格式

命令格式

EdgeCommand Protobuf对象发送至机器

CommandStatus Protobuf Object 返回至CloudGateway。

命令

Predix机器命令处理程序提供下列命令。

命令输出

应通过下列一种方式返回命令输出。如果一个命令有两种执行方式,只有CommandStatus对象(第一种方式) 中的输出会在EdgeManager UI中显示。

1.通过输出字段中的 CommandStatus 对象发送输出。

注:

限制为< 1KB的字符串输出。

2.通过提供的URL上传输出。

命令状态枚举

下表描述了 CommandStatus 对象中的枚举值和设定值描述。

向命令处理程序发布一条命令

用声明服务注入命令框架服务,例如:

机器命令处理程序

你可以使用机器命令处理程序与Predix机器进行通信。例如,EdgeManager将命令发送至机器命令处理程序,可以启用或禁用Predix机器网络控制台。

配置机器命令处理程序

你可以配置机器命令处理程序。

格式化.config文件(不是.cfg文件)内的属性值时,使用类型字符,之后跟加引号引用的值字符串值表示。例如,一个布尔型属性=B”true”。小写类型字符表示基本数据。字符串的类型可以省略。下表列出了类型和对应的类型字符:

数组格式为属性=<类型>[”<值1>”,”<值2>”]。例如,整型数组属性=I[“1”, “2”, “3”].清晰起见,可使用反斜杠分隔换行。

  1. 找到并打开下列文件:

  2. 打开com.ge.dspmicro.device.commandhandler.machinecomm.config 文件并设置下列属性:

时间: 2024-10-10 17:08:42

命令框架概述的相关文章

play框架概述

今天是来百度实习的第四天,在项目过程中mentor说会用到play框架,当时就一个晕啊.Java还有一个叫play框架,作为一个从大三开始用java的重度javaer,居然不知道这个框架的存在,内心一阵草泥马飞过,于是乎就花了一下午研究一下. What's play framework? 先来个开胃菜吧,什么是play框架呢? 先来点官方的解释:Play是一款开源.轻量.无状态.Web友好的架构,使用Java语言编写并遵循MVC模式,集成了当今Web开发所需的组件和API.此外Play可以给应用

Entity Framework 学习总结之一:ADO.NET 实体框架概述

http://www.cnblogs.com/xlovey/archive/2011/01/03/1924800.html ADO.NET 实体框架概述 新版本中的 ADO.NET 以新实体框架为特色.它使开发人员可以通过对象模型(而不是逻辑/关系数据模型)专注于数据.实体框架有助于将逻辑数据架构抽象为概念模型,并且允许以多种方式通过对象服务和名为“EntityClient”的新数据提供程序与概念模型交互. 实体框架使用概念层(ConceptualModels).映射层(Mappings)和逻辑

Python爬虫进阶一之爬虫框架概述

综述 爬虫入门之后,我们有两条路可以走. 一个是继续深入学习,以及关于设计模式的一些知识,强化Python相关知识,自己动手造轮子,继续为自己的爬虫增加分布式,多线程等功能扩展.另一条路便是学习一些优秀的框架,先把这些框架用熟,可以确保能够应付一些基本的爬虫任务,也就是所谓的解决温饱问题,然后再深入学习它的源码等知识,进一步强化. 就个人而言,前一种方法其实就是自己动手造轮子,前人其实已经有了一些比较好的框架,可以直接拿来用,但是为了自己能够研究得更加深入和对爬虫有更全面的了解,自己动手去多做.

基于QTP的自动化测试框架概述

框架稳定后展示给用户的内容有以下几部分,也就是说测试人员需要去关注去维护的部分就可以了,完全不在care代码内容是什么,只需要按照格式填写就OK 1.测试用例执行模拟控制列表(可用其它管理工具代替,这里用成本最低的方式实现不借助已有的专业管理工具) 2.测试用例控制列表 3.测试数据控制列表 基于QTP的自动化测试框架概述,布布扣,bubuko.com

Java三大主流框架概述

Java三大主流框架概述 邮箱:[email protected] Struts.Hibernate和Spring是我们Java开发中的常用关键,他们分别针对不同的应用场景给出最合适的解决方案.但你是否知道,这些知名框架最初是怎样产生的?我们知道,传统的Java Web应用程序是采用JSP+Servlet+Javabean来实现的,这种模式实现了最基本的MVC分层,使的程序结构分为几层,有负责前台展示的JSP.负责流程逻辑控制的Servlet以及负责数据封装的Javabean.但是这种结构仍然存

JAVAWEB开发之Hibernate详解(一)——Hibernate的框架概述、开发流程、CURD操作和核心配置与API以及Hibernate日志的使用

Hibernate框架概述 什么是Hibernate? 框架:软件的半成品,完成部分代码的功能. Hibernate:Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思想来操作数据库.Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序中使用,也可以在Servlet/JSP的web应用程序中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成

iOS Foundation 框架概述文档:常量、数据类型、框架、函数、公布声明

iOS Foundation 框架概述文档:常量.数据类型.框架.函数.公布声明 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的漂亮人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. Foundation 框架概述文档:常量.数据类型.框架.函数.

爬虫框架概述

综述 爬虫入门之后,我们有两条路可以走. 一个是继续深入学习,以及关于设计模式的一些知识,强化Python相关知识,自己动手造轮子,继续为自己的爬虫增加分布式,多线程等功能扩展.另一条路便是学习一些优秀的框架,先把这些框架用熟,可以确保能够应付一些基本的爬虫任务,也就是所谓的解决温饱问题,然后再深入学习它的源码等知识,进一步强化. 就个人而言,前一种方法其实就是自己动手造轮子,前人其实已经有了一些比较好的框架,可以直接拿来用,但是为了自己能够研究得更加深入和对爬虫有更全面的了解,自己动手去多做.

iOS应用安全防护框架概述

iOS应用安全防护框架概述 攻易防难,唯有缜密.多层的防护网络才能可靠的保护我们iOS应用程序的安全.那么,一个完善的iOS应用安全防护框架都要写哪些东西呢? 首先,先梳理一下常见的逆向及攻击工具. iOS应用逆向常用工具 Reveal Cycript Class-dump Keychain-Dumper gdb iNalyzer introspy Fishhook removePIE IDA pro or Hopper snoop-it iDB Charles SSL Kill Switch