你站在桥上看风景,看风景人在楼上看你。明月装饰了你的窗子,你装饰了别人的梦。喜欢这首诗是因为觉得开源造福了我,我也在尝试贡献自己的力量, 成就他人的同时, 也成就了自己, 贡献开源事业的同时, 也滋养了自己的职业生涯。在这里首先感谢那些所有支持IoTSharp 的人们, 时隔近十月之久, IoTSharp 终于迎来了新版本, 新版本要特别感激王强先生,他使用Angular开发了强大的规则链设计器和测试器, 并且我们计划在未来, 设计开发可视化的网关配置器,比如针对ModBus, BacNet 的点位与属性、遥测数据关系配置等,于此同时, 我们加入了C#脚本、Lua脚本、Python脚本, Js等脚本解释器的规则链, 你可以将规则链挂载在未知的topic和遥测和属性数据的挂载点以实现预警, 告警, 数据转发等等, 当然我们也支持你写C#的动态库来扩展, 我们暂时称之为TaskAction,你可以扩展 TaskAction来实现邮件?短信?总之, 我们尽可能的考虑到了灵活方便, 而不用费太大功夫就能通过IoTSharp实现数字孪生, 这是IoTSharp从 2018年诞生以来最具大的改变, 没有之一。当然, 我们依然存在很多问题, 项目需要完成和实现的工作变得越来越多, 你可以考虑提出你的意见和建议, 但我们会尽可能的贴合我们自己的实际需求。好的, 下面将列出 大部分新内容!
规则链中加入每个任务节点可以使用C# 、Lua、Python、JS 脚本解释器, 包括可以查询Json的 SQL
规则链中加入连接器表达式判断,用于规则链的走向判断。
规则链中加入了执行器, 你可以用动态库实现一些复杂的功能, 在规则链中调用。
UI部分加入了使用Angular开发的客户端界面。实现了租户、客户、用户、设备、设备属性、设备遥测数据、规则链设计器、规则链测试的界面。
UI部分加入了事件、执行器、订阅消息等界面,方便进行这方面的操作, 我们依然需要做大量工作, 但我们已经在生产中可用了。
Mqtt部分我们加入了自有CA证书签发, 并为每个设置为X509认证方式的设备签发证书, 这有助于你确保你的网关或者一些重要设备的安全性。
未来我们的计划:
加入TCP、UDP、ModBus、OPC-UA等一些常见协议的支持, 这些支持我们都计划通过扩展TaskAction来实现。
完善脚本解释器,
增强稳定性,优化一些多余的数据库读写和类型转换。
完善界面
加入网关配置器
加入平面图以及摆件展示。
更改内容
修改了EFCoreSharding使用和Webapi接口的bug by @rennner in https://github.com/IoTSharp/IoTSharp/pull/331
加入docker by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/390
前端CRUD,适配后端JWT,后端修改时间戳类型long by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/392
格式化代码 by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/405
TimeZoneInfo 替代过时的 TimeZone by @geffzhang in https://github.com/IoTSharp/IoTSharp/pull/398
升级到Vue3 by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/406
租户管理,客户管理,用户管理,设备管理,属性上传 by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/407
修正登录客户端token未过期,服务端验证失败后一直载入的问题(401错误直接清除本地token重新登录) by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/428
增加设备拓扑结构设计器,修正尝试读取写入文本注释对象outgoing属性的错误 by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/429
Flow对象CRUD by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/430
基础结构和基础数据 by @wq1234wq in https://github.com/IoTSharp/IoTSharp/pull/433
规则链 by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/444
国际化的支持以及基础国际化数据的导入 by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/446
@wq1234wq 使用flow的uuid替换Name,避免WorkflowName为空的报错 by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/464
解决Quartz和Cap无法访问的问题 by @think-ya in https://github.com/IoTSharp/IoTSharp/pull/465
合并信息细节 by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/479
@wq1234wq 细节问题和首页模块 by @maikebing in https://github.com/IoTSharp/IoTSharp/pull/482
新贡献者
@rennner made their first contribution in https://github.com/IoTSharp/IoTSharp/pull/331
@geffzhang made their first contribution in https://github.com/IoTSharp/IoTSharp/pull/398
@wq1234wq made their first contribution in https://github.com/IoTSharp/IoTSharp/pull/433
@think-ya made their first contribution in https://github.com/IoTSharp/IoTSharp/pull/465
下面是一些图片:
Gitee地址是:https://gitee.com/dotnetchina/IoTSharp
我们的GitHub 地址: https://github.com/IoTSharp/IoTSharp/