写点什么

Mozilla 全新改进了开源 IoT 平台:WebThings

  • 2019-05-27
  • 本文字数:1714 字

    阅读完需:约 6 分钟

Mozilla全新改进了开源IoT平台:WebThings

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 APIWebSocket API访问设备的属性,请求动作的执行,以及订阅体现状态变化的事件。


WebThings 库官方支持JavaPythonNode.jsRust等开发语言。下面看看它是如何在 Java 中实现的。


首先,将以下依赖项添加到项目中:


<dependencies>    <dependency>        <groupId>org.mozilla.iot</groupId>        <artifactId>webthing</artifactId>        <version>LATEST</version>    </dependency></dependencies>
复制代码


现在,创建一个新的 Thing:


Thing light = new Thing("My Lamp",                        new JSONArray(Arrays.asList("OnOffSwitch", "Light")),                        "A web connected lamp");
复制代码


添加 on(开关)的属性:


JSONObject onDescription = new JSONObject();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 = new Value<>(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(new Property(light, "on", on, onDescription));
复制代码


现在将新创建的 Thins 添加到服务器并启动它:


try {   WebThingServer server = new WebThingServer(new SingleThing(light), 8888);    Runtime.getRuntime().addShutdownHook(new Thread() {        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


2019-05-27 08:009865
用户头像

发布了 43 篇内容, 共 36.4 次阅读, 收获喜欢 136 次。

关注

评论

发布
暂无评论
发现更多内容

CCF 大数据学术会议 | TDengine 解析工业大数据从“能存”到“能用”的转变

TDengine

tdengine 时序数据库 idmp

博文干货 | Pulsar 平均负载器(AvgShedder)

AscentStream

消息队列

MySQL 数据归档的技术困境与 Databend 解决之道

Databend

万字长文,手把手教你2小时实现鸿蒙版视频播放器(附源码),建议先收藏

程序员潘Sir

鸿蒙 HarmonyOS

可灵AI数字人来了!快手重磅发布Kling-Avatar,面向多模态指令理解与控制的数字人长视频生成新范式

快手技术

音视频 大模型 数字人 可灵 可灵AI

鸿蒙应用开发——Repeat组件的使用

高心星

缓存 鸿蒙 懒加载 HarmonyOS5.0 Repeat

博睿数据携手华为共筑智能未来,深度参与HUAWEI CONNECT 2025并发表主题演讲

博睿数据

喜报 | 博睿数据Bonree ONE 荣登中国信通院"铸基计划"三大权威名录!

博睿数据

AI中的潜意识学习:大语言模型隐藏的安全隐患

qife122

AI安全 潜意识学习

华为云:以AI榫卯,建智能广厦

脑极体

AI

第一次参与开源的时序数据库 IoTDB Committer:这份成就感是无可替代的

Apache IoTDB

测吧爱测智能测试平台 | 用例生成、自动执行、智能遍历图谱构建

测试人

人工智能 软件测试

ROMA-iOS适配深色模式总结

京东科技开发者

iPaaS 平台的API 管理 + API编排,如何支持企业数字化转型

谷云科技RestCloud

数据传输 集成平台 API管理 ipaas api编排

AI 一体机未来技术趋势详解

慢点科技SlowTech

新客户 | 7% 压缩率、毫秒级查询,这套金融数据平台让交易回放更快

TDengine

tdengine 时序数据库

四年零故障,存储成本降九成——中冶京诚钢铁车间数据中心实践

TDengine

tdengine 时序数据库

能源三变:全场景构网、AI与高质量,联手改写能源格局

脑极体

AI

MySQL分库分表迁移:ETL平台如何实现数据合并与聚合

谷云科技RestCloud

MySQL 数据传输 数据同步 数据迁移 ETL

FICO 借贷 入门解释

机机复唧唧

SAP FICO

从“被动监控”到“主动优化”:MyEMS 重构能源管理价值的路径

开源能源管理系统

开源 开源能源管理系统

超融合架构的进阶之路:如何解锁性能与规模的双重跃升?

智驱前线

经验分享 —— 在 Ubuntu 虚拟机中部署 OceanBase 数据库

老纪的技术唠嗑局

ubuntu oceanbase 安装部署

轻松实践:用Python实现“名字大作战”游戏,表白Zulu!

Comate编码助手

代码自动生成 AI 编程 文心快码 文心快码Zulu

博通订阅制压顶,企业如何破局?云易捷超融合成高性价比出口

智驱前线

本地(或自下载)浏览器插件 安装指南

京东科技开发者

Mozilla全新改进了开源IoT平台:WebThings_大前端_Diogo Carleto_InfoQ精选文章