使python函数易于从node red访问

pynodered的Python项目详细描述


Pynodered

https://img.shields.io/pypi/v/pynodered.svghttps://img.shields.io/travis/ghislainp/pynodered.svgDocumentation Status

关于

使用一个简单的decorator使python函数在node red中可用。

pynodered是一个与node red通信的服务器,以使python函数作为node red中的块可用。pynodered读取模块和python文件,其中包含用“node_red”修饰的函数,并将它们注册为node red中的块。然后,pynodred处理node red(在javascript中)之间的通信,以便在块接收到消息时运行函数。

快速启动

需要python>;=3.5

$ pip install pynodered

示例

将消息的有效负载小写的简单示例:

frompynoderedimportnode_red@node_red(category="pyfuncs")deflower_case(node,msg):msg['payload']=str(msg['payload']).lower()returnmsg

将此代码片段放入“example.py”文件中,使用以下命令运行pynodered服务器:

$ pynodered example.py

在另一个控制台中:

$ node-red

在node red中,现在有了一个新的类别“pyfuncs”,其中有一个小写的函数。它可以在流中用作任何其他块:

images/lower-case-flow.png

通过在decorator中定义一个属性,可以添加块属性(由用户以节点红色提供的常量参数):

frompynoderedimportnode_red,NodeProperty@node_red(category="pyfuncs",properties=dict(number=NodeProperty("Number",value="1")))defrepeat(node,msg):msg['payload']=msg['payload']*int(node.number.value)returnmsg

每次python文件更改时,不要忘记重新启动pynodered服务器。node red也需要重新启动,但仅当函数名或属性更改或添加新函数时才需要重新启动。然后需要刷新浏览器。

默认情况下,pynodered导出node red包“pynodered”和类别“default”中的函数。可以使用decorator可选参数更改类别名称。对于包的名称和信息,包含函数的python模块可以声明如下的“package”命令:

package={"name":"FFT filters","version":"0.01","description":"Nodes written in Python for signal processing",}

许可证

版权所有(c)2019 Ghislain Picard

自由软件:GNU通用公共许可v3

这个包是toma_solc for sigfox工具箱最初编写的代码的重写和扩展。 https://github.com/sensorlab/sigfox-toolbox/tree/master/node-red-python。 版权所有(2017)SensorLab,Jo_ef Stefan Institutehttp://sensorlab.ijs.si,并根据GPL版本3获得许可

历史记录

0.1.0(2019-01-08)

  • pypi上的第一个版本。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java既然Lucene 4.1中不存在TermEnum,如何从IndexReader中获取字段?   java在LinkedHashSet上的迭代比在ArrayList上的迭代要快   java无法在Android Studio中获得所有@override函数,如onStart、onResume   java的DateTimeFormatter比SimpleDateFormat更严格吗?以毫秒为单位分析日期   JavaSpring*servlet。Websphere服务器启动时未加载xml   java Fancytree selenium单击事件   java日期格式不一样   java无法在Android Studio上运行我的MQTT应用程序   c#计算两个集合的F检验   java JDialog不会显示在“设计”选项卡中   java如何在每个服务生页面上重新加载页面   java如何初始化包含一些对象的数组?   使用Datanucleus的java Amazon S3数据存储   Python的map函数是否有Java等价物?