Lawrence_elixir

Lawrence_elixir

20) ElixirConf EU 2019 - Tortoise Evolved; MQTT 5 support in Tortoise MQTT Client - Martin Gausby

@gausby

Talk in three words: MQTT, client-design, IoT

Abstract
MQTT is a light-weight PubSub protocol used for machine to machine communication. It its often used in IoT applications, so it fits well in many Nerves projects. Tortoise is a MQTT client for Elixir. It started its life as a MQTT 3.1.1 client, but is in the progress of getting an upgrade to the latest version of MQTT; version 5. Martin will introduce MQTT; give an overview of the new features in MQTT 5; how Tortoise is designed to make MQTT easy to work with in Elixir, and how MQTT 5 will influence that design.

Objectives
Give an introduction to MQTT - Show some use cases - Introduce the Elixir MQTT client called Tortoise - Talk about how the API of Tortoise came to be, and how changes in the MQTT specification will alter this design.

Audience
This should be interesting for people implementing protocols and protocol clients in Elixir, as well as answering why Tortoise is the way it is to people who just wanna use Tortoise.

The speaker
Martin is a long time Elixir developer with a keen interest in implementing network protocols. For the last couple of years he has been working with Erlang and Elixir systems for a living, and during that time spent way too much time tinkering with his Emacs configuration. Besides that he has a horrible taste in music, enjoys coffee, mechanical keyboards, and is a friend of the podcast.

All will be added to the ElixirConf EU 2019 Talks List or via the #elixirConfEU2019 tag.

First Post!

gausby

gausby

Still working, on and off, on the MQTT 5 support for Tortoise. The plan is progressing, but, as always, not as fast as one would like—this work is really going at a Tortoise’s pace, but we will get there.

The link to the repository is: https://github.com/gausby/tortoise, and the work on the MQTT 5 support is in the branch called MQTT 5, which has a pull request attached to it, PR89.

Please let me know if you have any questions about Tortoise. The ambition is to make it a very fine MQTT client for Elixir, and one that has a very nice logo (thanks to @lrtvri)

Where Next?

Popular in Talks Top

AstonJ
Kicking this thread of with the now infamous talk by Dave Thomas (or at least the best recording of it I can find) - please add any you f...
New
axelson
by @zacky1972 Finally, we’ve succeeded in the implementation of Hastega!!! (Maybe until ElixirConf US 2019 :slight_smile: Hastega (Hyp...
New
axelson
ElixirConf US 2018 – Take Your Time – Ben Marx (@bgmarx) OTP20 officially introduced dirty schedulers. In this talk, we’...
New
axelson
ElixirConf US 2018 – Building Video Chat with Elixir & Phoenix – Anil Wadghule (@anildigital) In this talk, I will s...
New
LostKobrakai
After having watched the talk I'm wondering if this would also be a good opportunity to gather examples / tips about how to prevent or mi...
New
axelson
ElixirConf US 2018 – Meet Virtuoso: The Chatbot Orchestration Framework Built with Elixir – Justus Eapen (@justuseapen) ...
New
axelson
by @jon At PagerDuty, we run our systems across many geographic regions to ensure we’re always available, even when you might not be. E...
New
ElixirConf
ElixirConf: ElixirConf 2022 - Brian Cardarella - What is LiveView Native? Comments welcome! View the #elixirconf tag for more ElixirConf...
New
Lawrence_elixir
ElixirConf EU 2019 talk videos ElixirConf EU 2020 - Early bird tickets on sale now! Website: http://www.elixirconf.eu Twitter: www.t...
New
New

Other popular topics Top

lastday4you
I wanted to check elixir version in phoenix because i found that my elixir is 1.5 but when i use Enum.chunk_by it said the function is un...
New
shahryarjb
Hello, I get Persian date from my client and convert it to normal calendar like this: def jalali_string_to_miladi_english_number(persi...
New
vonH
In asking this question I am more interested about the expressiveness of the language itself and less concerned about the availability of...
New
romenigld
I am trying to run a deploy with docker and I successfully runned with this command: docker build -t romenigld/blog-prod . but when I t...
New
Jim
As a follow up to my earlier question: I have the code compiling and running but not getting a successful login from the rest server. ...
New
chrismccord
As promised, the first release candidate of Phoenix 1.3.0 is out! This release focuses on code generators with improved project structure...
New
freewebwithme
Using vs code and installed ElixirLS: support and debugger. And I got an error popped up on start up says Failed to run ‘elixir’ comma...
New
ashish173
I am using Ecto timestamps with postgres, I can see the timestamps() use the :naive_dateime but for my use case I wanted to store the ti...
New
johnnyicon
Hi all, I've just started learning Elixir and Phoenix Framework, so please pardon my n00bness at this stage. I'm trying to use Postg...
New
electic
Hi, I am new to Elixir. I am trying to use the DateTime component to insert a date into MySQL however the there seems to be no way to fo...
New

We're in Beta

About us Mission Statement