内容简介:MozillaMozilla WebThings 是Mozilla WebThings 是一个用于监视和控制设备的基于 Web 的开放平台,由两个核心组件组成:WebThings Gateway 是为专注于隐私、安全和互操作性的智能家居网关而设计,WebThings Framework 用于帮助开发人员构建自己的 Web 事物。
Mozilla 最近发布了 它的开源 IoT 平台 WebThings,以前叫做 Project Things。Mozilla WebThings 提供了日志记录、警报和网络等一系列特性。
Mozilla WebThings 是 W3C 新兴的 Web of Things 标准 的开源实现。W3C Web of Things(WoT)是 Web of Things Working Group (WoT WG)近期推出的一项计划,旨在减少 IoT 的碎片化。W3C 制定了 Web of Things 的初始标准,目标是降低开发的成本,降低投资者和客户的风险,进而促进 IoT 设备和服务市场的指数级增长。
Mozilla WebThings 是一个用于监视和控制设备的基于 Web 的开放平台,由两个核心组件组成:WebThings Gateway 是为专注于隐私、安全和互操作性的智能家居网关而设计,WebThings Framework 用于帮助开发人员构建自己的 Web 事物。
WebThings Gateway(网关)
WebThings Gateway 是一款让用户能够通过网络监视和控制他们的智能家居的软件。例如,通过使用 WebThings Gateway,可以检查门打开 / 关闭的次数,或者插件设备的能耗。为此,用户需要进入“main menu > Settings > Experiences”,并启用“Logs”选项。
WebThings Gateway 现在为烟雾、一氧化碳或防盗报警器等设备提供了新的报警功能。这意味着用户可以检查报警器当前是否处于活动状态,配置规则以便在警报出现时触发通知。
WebThing Gateway 0.8 可以通过 Web 界面重新配置网关的网络设置。另外,用户可以使用动态或静态 IP 地址配置以太网的端口,或者重新扫描可用的无线网络并更改网关所连接的 Wi-Fi 接入点。
WebThings Framework(框架)
WebThings Framework 是可重用软件组件的集合,目的是帮助开发人员构建自己的 Web 事物,并且直接开放 Web Thing API 。Web Things API 通过定义简单具体的序列化和协议绑定,来补充 W3C WoT WG 关于 Web of Things 的抽象数据模型和 API 的工作。Web 客户端可以通过 WebThings 的 REST API 和 WebSocket API 访问设备的属性,请求动作的执行,以及订阅体现状态变化的事件。
WebThings 库官方支持 Java 、 Python 、 Node.js 和 Rust 等开发语言。下面看看它是如何在 Java 中实现的。
首先,将以下依赖项添加到项目中:
复制代码
<dependencies> <dependency> <groupId>org.mozilla.iot</groupId> <artifactId>webthing</artifactId> <version>LATEST</version> </dependency> </dependencies>
现在,创建一个新的 Thing:
复制代码
Thing light =newThing("My Lamp", newJSONArray(Arrays.asList("OnOffSwitch","Light")), "A web connected lamp");
添加 on(开关)的属性:
复制代码
JSONObject onDescription =newJSONObject(); onDescription.put("@type","OnOffProperty"); onDescription.put("title","On/Off"); onDescription.put("type","boolean"); onDescription.put("description","Whether the lamp is turned on"); Value<Boolean> on =newValue<>(true, // Here, you could send a signal to // the GPIO that switches the lamp // off v ->System.out.printf( "On-State is now %s\n", v)); light.addProperty(newProperty(light,"on",on,onDescription));
现在将新创建的 Thins 添加到服务器并启动它:
复制代码
try{ WebThingServer server =newWebThingServer(newSingleThing(light),8888); Runtime.getRuntime().addShutdownHook(newThread(){ public void run(){ server.stop(); } }); server.start(false); } catch (IOException e) { System.out.println(e); System.exit(1); }
上面的代码将启动服务器,通过 WoT REST API 可以让灯工作,并且声明它是本地网络中可发现的资源。
更多详细信息可在 Mozilla IoT 网站 以及 WebThings Gateway 和 WebThings Framework 的 开发人员文档 中找到。想要为此文档做出贡献的开发人员可以通过 GitHub repo 来实现。
查看英文原文: Mozilla Revamps WebThings, its Open Source IoT Platform
以上所述就是小编给大家介绍的《Mozilla 全新改进了开源 IoT 平台:WebThings》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 开源网盘云存储 Seafile 6.1.4 发布,包含一些改进
- 开源 PaaS Rainbond 3.6.1 发布,功能改进和修复
- 开源 API 管理 Apiman 1.5.1.Final 发布,改进策略
- 主流开源SQL引擎总结,不断改进的Hive始终遥遥领先
- 开源|LPA-Detector:基于GraphX 的LPA算法改进
- 主流开源SQL引擎总结,不断改进的Hive始终遥遥领先
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Metasploit渗透测试魔鬼训练营
诸葛建伟、陈力波、田繁、孙松柏、等 / 机械工业出版社 / 2013-9-1 / 89.00元
首本中文原创Metasploit渗透测试著作,国内信息安全领域布道者和资深Metasploit渗透测试专家领衔撰写,极具权威性。以实践为导向,既详细讲解了Metasploit渗透测试的技术、流程、方法和技巧,又深刻阐释了渗透测试平台背后蕴含的思想。 本书是Metasploit渗透测试领域难得的经典佳作,由国内信息安全领域的资深Metasploit渗透测试专家领衔撰写。内容系统、广泛、有深度,......一起来看看 《Metasploit渗透测试魔鬼训练营》 这本书的介绍吧!