IoTSharp 2.0 发布

你站在桥上看风景,看风景人在楼上看你。明月装饰了你的窗子,你装饰了别人的梦。喜欢这首诗是因为觉得开源造福了我,我也在尝试贡献自己的力量, 成就他人的同时, 也成就了自己, 贡献开源事业的同时, 也滋养了自己的职业生涯。在这里首先感谢那些所有支持IoTSharp 的人们, 时隔近十月之久, IoTSharp 终于迎来了新版本, 新版本要特别感激王强先生,他使用Angular开发了强大的规则链设计器和测试器, 并且我们计划在未来, 设计开发可视化的网关配置器,比如针对ModBus, BacNet 的点位与属性、遥测数据关系配置等,于此同时, 我们加入了C#脚本、Lua脚本、Python脚本, Js等脚本解释器的规则链, 你可以将规则链挂载在未知的topic和遥测和属性数据的挂载点以实现预警, 告警, 数据转发等等, 当然我们也支持你写C#的动态库来扩展, 我们暂时称之为TaskAction,你可以扩展 TaskAction来实现邮件?短信?总之, 我们尽可能的考虑到了灵活方便, 而不用费太大功夫就能通过IoTSharp实现数字孪生, 这是IoTSharp从 2018年诞生以来最具大的改变, 没有之一。当然, 我们依然存在很多问题, 项目需要完成和实现的工作变得越来越多, 你可以考虑提出你的意见和建议, 但我们会尽可能的贴合我们自己的实际需求。好的, 下面将列出 大部分新内容!

  1. 规则链中加入每个任务节点可以使用C# 、Lua、Python、JS 脚本解释器, 包括可以查询Json的 SQL

  2. 规则链中加入连接器表达式判断,用于规则链的走向判断。

  3. 规则链中加入了执行器, 你可以用动态库实现一些复杂的功能, 在规则链中调用。

  4. UI部分加入了使用Angular开发的客户端界面。实现了租户、客户、用户、设备、设备属性、设备遥测数据、规则链设计器、规则链测试的界面。

  5. UI部分加入了事件、执行器、订阅消息等界面,方便进行这方面的操作, 我们依然需要做大量工作, 但我们已经在生产中可用了。

  6. Mqtt部分我们加入了自有CA证书签发, 并为每个设置为X509认证方式的设备签发证书, 这有助于你确保你的网关或者一些重要设备的安全性。

未来我们的计划:

  1. 加入TCP、UDP、ModBus、OPC-UA等一些常见协议的支持, 这些支持我们都计划通过扩展TaskAction来实现。

  2. 完善脚本解释器,

  3. 增强稳定性,优化一些多余的数据库读写和类型转换。

  4. 完善界面

  5. 加入网关配置器

  6. 加入平面图以及摆件展示。

更改内容

  • 修改了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

下面是一些图片:

745aae7a3ee497d793c2b95ed77dc8ab.png 2e50c36b012e5e1af53701d03944d1ee.png

Gitee地址是:https://gitee.com/dotnetchina/IoTSharp

我们的GitHub 地址: https://github.com/IoTSharp/IoTSharp/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/295586.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

oracle监听

原理 客户端向服务器端发送连接请求,监听器监听到客户端德连接请求监听器监听到客户端德连接请求后,把客户端德连接请求交给数据库服务器处理客户端和服务器端建立连接,连接建立后,服务器端和客户端直接通信,而不再需要…

车窗上为啥总有一些小黑点?没想到居然藏着大作用!

全世界只有3.14 % 的人关注了爆炸吧知识经常坐车的人可能会发现一个小细节车窗边缘有一圈小黑点好多人都以为这个厂家的贴纸反正也不碍事就没去除它其实,这些小黑点确实有真正的科学用途其实并不是所有的车窗都有小黑点也可能是别的形状但是它们都有一个特点——都是…

mysql 免安装初始化_mysql免安装版配置步骤详解分享

1.准备工作下载mysql的最新免安装版本mysql-noinstall-5.1.53-win32.zip,解压缩到相关目录,如:d:\\ mysql-noinstall-5.1.53-win32。这个就是mysql的根目录了。2.配置在根目录下有几个文件如下:my-small.ini (这是针对一个小内存(…

Android之Shape和state_enabled使用总结

在Android程序开发中,我们经常会去用到Shape这个东西去定义各种各样的形状,首先我们了解一下Shape下面有哪些标签,都代表什么意思: solid:填充android:color指定填充的颜色 gradient:渐变android:startColor和android:endColor分别为起始和结束颜色, android:angle是渐…

装饰模式

JAVA23种设计模式之一,英文叫Decorator Pattern,又叫装饰者模式。装饰模式是在不必改变原类文件和使用继承的情况下,动态的扩展一个对象的功能. 1、装饰模式与类继承的区别: 1) 装饰模式是一种动态行为,对已经存在类…

Win11安卓极速教程!

适用于 Android 的 Windows 子系统(以下简称“WSA”)使你的 Windows 11 电脑能够运行 Android 应用。※ 如何在 Windows 11 上运行 Android 应用此前的教程较为详细,但也繁琐,尤其是 adb 部署部分,不适合新手入门&…

ubuntu12.04 使用gedit 打开txt文件中文乱码的处理方法

2019独角兽企业重金招聘Python工程师标准>>> gedit --encodingGB18030 filename.txt 转载于:https://my.oschina.net/zhangdapeng89/blog/58965

js与jsp

在JS代码片段中&#xff0c;通过<%request.getParameter("username")%> 访问了Login.jsp中表单传递过来的username属性的值&#xff0c;这样的操作上没有问题的。如果想要把getUserName()方法放在一个单独的Js中&#xff0c;如Welcome.js&#xff0c;也就是不在…

你最擅长哪种数学思维?

全世界只有3.14 % 的人关注了爆炸吧知识许多人会抱怨说&#xff0c;自己没有“数学头脑”。事实上&#xff0c;数学家会以各种各样的方式思考&#xff0c;根本没有所谓的哪种思考数学的方式是正确的。但这很可能造成沟通上的障碍&#xff0c;试想一下&#xff0c;一个用视觉图像…

Hive中视图机制的初步使用及分析

作者: 大圆那些事 | 文章可以转载&#xff0c;请以超链接形式标明文章原始出处和作者信息 网址: http://www.cnblogs.com/panfeng412/archive/2013/04/29/hive-view-usage-and-analysis.html 本文是对Hive中逻辑视图的介绍&#xff0c;通过一个简单的视图例子&#xff0c;说明其…

励志!送女儿去厦大读研后,爸爸回家就考了厦大的博士,现在是女儿的“学弟”...

全世界只有3.14 % 的人关注了爆炸吧知识2020上半年&#xff0c;在安徽阜阳家里&#xff0c;女儿王睿在房间内上着厦门大学在线专业课&#xff0c;父亲王健作为师范高校教师直播着自己的思政公共课和生命教育有关课程。然而一到周末&#xff0c;王健也和女儿一样&#xff0c;作为…

【cocos2d-js官方文档】二十五、Cocos2d-JS v3.0中的单例对象

为何将单例模式移除 在Cocos2d-JS v3.0之前。全部API差点儿都是从Cocos2d-x中移植过来的&#xff0c;这是Cocos2d生态圈统一性的重要一环。可惜的是&#xff0c;这样的统一性也在非常大程度上限制了Cocos2d-html5的发展&#xff0c;有一些在C中非常有意义的涉及搬到Html5平台后…

mysql 中有什么命令_常用mysql命令大全

常用的MySQL命令大全连接MySQL格式&#xff1a; mysql -h主机地址 -u用户名 &#xff0d;p用户密码1、例1&#xff1a;连接到本机上的MYSQL。首先在打开DOS窗口&#xff0c;然后进入目录 mysqlbin&#xff0c;再键入命令mysql -uroot -p&#xff0c;回车后提示你输密码&#xf…

Android之webview背景设置为透明无效

Adndroid 2.X的设置 webview是一个使用方便、功能强大的控件&#xff0c;但由于webview的背景颜色默认是白色&#xff0c;在一些场合下会显得很突兀&#xff08;比如背景是黑色&#xff09;。 此时就想到了要把webview的背景设置为透明&#xff0c;这样就可以与其背景融为一体…

linux系统的运行级别

linux 运行级别 0 停机1 单用户模式&#xff0c;用来维护系统。2.多用户不能使用NFS模式。3 多用户模式&#xff0c;也是主要的使用模式4 未定义5 窗口使用模式6 重新启动模式用init(0 1 2 3 4 5 6)切换运行级别&#xff0c;&#xff08;init 3 切换到多用户模式&#xff09;转…

C# WPF MVVM模式Prism框架从零搭建(经典)

01—前言目前最新的PRISM的版本是8.1.97&#xff0c;本节以6.3.0.0 讲解&#xff0c;可以在Github上获取PRISM的源码。Prism Github地址&#xff1a;https://github.com/PrismLibrary/PrismPrism官方文档&#xff1a;https://prismlibrary.com/docs/Prism要用到IOC容器&#xf…

在中国,有这样一些村落

全世界只有3.14 % 的人关注了爆炸吧知识01地坑村在河南有一个全球最神奇的村落这村子神奇就神奇在当你走进村子能听到家家户户的吵闹声却见不到一座房子原来村落居然建在地底下基本不用与外界接触但村子却被外国媒体争相报道火的一塌糊涂更不可思议的是村里的老人平均寿命都超1…

2-2

为方便储户&#xff0c;某银行拟开发计算机储蓄系统。储户填写的存款单或取款单由业务员输入系统&#xff0c;如果是存款&#xff0c;系统记录存款人姓名、住址、存款类型、存款日期、利率等信息&#xff0c;并印出存款单给储户&#xff1b;如果是取款&#xff0c;系统计算利息…

.NET 6新特性试用 | 隐式using指令

前言在使用《最小Web API》时&#xff0c;我们发现&#xff0c;相比以前的代码&#xff0c;大量的using指令消失了&#xff1a;using指令的主要作用是允许使用在命名空间中定义的类型&#xff0c;而无需指定该类型的完全限定命名空间。那么&#xff0c;在.NET 6下为什么不需要了…

mysql 导入文件夹_MySQL-导入与导出

CSV文件导入MySQLLOAD DATA INFILE语句允许您从文本文件读取数据&#xff0c;并将文件的数据快速导入数据库的表中。导入文件操作之前&#xff0c;需要准备以下内容&#xff1a;一、将要导入文件的数据对应的数据库表。二、准备好一个CSV文件&#xff0c;其数据与表的列数和每列…