FWIW get yourself an account at http://enco.io
The devportal has mqtt endpoints so that we can integrate with that and possibly have some market place solutions offered and running with Pharo. I have a small EnCoClient class in Pharo that works. Now making the API support more extensive. Docs: http://docs.enco.io/docs/device-sensor-apis Phil On Wed, Dec 21, 2016 at 2:59 PM, Sven Van Caekenberghe <[email protected]> wrote: > > > On 21 Dec 2016, at 12:50, [email protected] wrote: > > > > Sven, > > > > I am currently working with IoT and MQTT is necessary. At this point I > use mosquitto as the broker and your Pharo client is nice to have and I > will test it and give you feedback. > > That is good to here, Phil. > > Yes, such real world testing is much needed. This is actually quite fun > stuff to experiment with. Let me know how it goes. > > Sven > > > I've got a working microPython codebase so can compare what is in there > (this for the LoPy device): > > > > Thx for the module! > > > > Phil > > > > On Wed, Dec 21, 2016 at 12:15 PM, Sven Van Caekenberghe <[email protected]> > wrote: > > Hi, > > > > MQTT is a light-weight publish/subscribe messaging protocol, originally > created around 1998. It is now an official open industry ISO standard. It > is perfect for large-scale Internet of Things applications and high > performance mobile messaging. > > > > The publish/subscribe messaging pattern requires a message broker. The > broker is responsible for distributing messages to interested clients based > on the topic of a message. Parties communicating with each other over MQTT > would all be clients in different roles, like producers and consumers, > using the broker as middleware. > > > > Many client libraries for different programming languages and multiple > brokers/servers are available. Facebook Messenger and Amazon AWS IOT are > two users, among many others. > > > > > > A good client library for Pharo was not yet available. I started a new > MQTT project and I am looking for collaborators to help me finish it. The > official specification is quite readable and there is a lot of information > available (see the References/Links section at the end). > > > > > > Right now, a first version of the following features is available: > > > > - reading & writing of all 14 binary packet types > > > > - an experimental client with support for connection open/close, ping, > subscribe/unsubscribe, QoS levels 0 (at most once), 1 (at least once) and 2 > (exactly once) for application (publish) messages in both directions, > message/package IDs and keep alive (heartbeat) > > > > - unit tests, for packet reading/writing and for clients against 3 > publicly available sandbox/test brokers > > > > Basically, the code works but needs polishing and maturing. Also, it > might be useful to experiment with alternative client API design. Not all > features are yet implemented. It would also be nice to implement an actual > server/broker, not to replace production quality servers, but as a proof of > concept and tools during development. > > > > > > Code > > > > http://smalltalkhub.com/#!/~SvenVanCaekenberghe/MQTT/ > > > > Right now, documentation is limited, but there are class comments and > the most important public API methods are commented too. There is no > Metacello configuration yet, just load the 3 packages. > > > > > > References/Links > > > > - http://mqtt.org > > - https://en.wikipedia.org/wiki/MQTT > > - http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html > > - https://github.com/mqtt/mqtt.github.io/wiki/software > > - http://mosquitto.org > > - https://github.com/emqtt/emqttd > > - http://kamilfb.github.io/mqtt-spy/ > > - https://github.com/eclipse/paho.mqtt-spy/wiki > > - https://eclipse.org/paho/ > > - https://eclipse.org/paho/clients/c/embedded/ > > - http://www.rabbitmq.com/mqtt.html > > - https://vernemq.com > > - https://www.ibm.com/developerworks/community/ > blogs/c565c720-fe84-4f63-873f-607d87787327/entry/mqtt_security > > > > > > Sandbox/test Servers/Brokers > > > > iot.eclipse.org:1883 > > test.mosquitto.org:1883 > > broker.mqtt-dashboard.com:1883 > > > > > > Sven > > > > -- > > Sven Van Caekenberghe > > http://stfx.eu > > Smalltalk is the Red Pill > > > > > > > > >
