mqtt_udp
Packages
UDP上的MQTT的Simpified版本:网络是经纪人!
注意其他回购:https://gitverse.ru/dzavalishin/mqtt_udp
参见俄语版本 /存在
MQTT是一种可爱的简单协议,非常适合物联网和类似内容。
但这可能更简单,并且仍然非常有用:MQTT/UDP只是在UDP上广播的MQTT发布数据包。
随意:
这真的很容易。
该存储库包含支持MQTT/UDP集成和测试的工具:
发送数据:
import mqttudp . engine
if __name__ == "__main__" :
mqttudp . engine . send_publish ( "test_topic" , "Hello, world!" )听数据:
import mqttudp . engine
def recv_packet ( ptype , topic , value , pflags , addr ):
if ptype != "publish" :
print ( ptype + ", " + topic + " t t " + str ( addr ) )
return
print ( topic + "=" + value + " t t " + str ( addr ) )
if __name__ == "__main__" :
mqttudp . engine . listen ( recv_packet )下载PYPI软件包
发送数据:
PublishPacket pkt = new PublishPacket ( topic , value );
pkt . send ();听数据:
PacketSourceServer ss = new PacketSourceServer ();
ss . setSink ( pkt -> { System . out . println ( "Got packet: " + pkt ); });下载jar
发送数据:
int rc = mqtt_udp_send_publish ( topic , value );听数据:
int main ( int argc , char * argv [])
{
...
int rc = mqtt_udp_recv_loop ( mqtt_udp_dump_any_pkt );
...
}
int mqtt_udp_dump_any_pkt ( struct mqtt_udp_pkt * o )
{
printf ( "pkt %x flags %x, id %d" ,
o -> ptype , o -> pflags , o -> pkt_id
);
if ( o -> topic_len > 0 )
printf ( " topic '%s'" , o -> topic );
if ( o -> value_len > 0 )
printf ( " = '%s'" , o -> value );
printf ( "n" );
}
发送数据:
local mq = require " mqtt_udp_lib "
mq . publish ( topic , val );
听数据:
local mq = require " mqtt_udp_lib "
local listener = function ( ptype , topic , value , ip , port )
print ( " ' " .. topic .. " ' = ' " .. val .. " ' " .. " from: " , ip , port )
end
mq . listen ( listener )下载Luarock
有一个GO语言实现,请参阅Lang/GO以获取详细信息