commit
5c6dc79fb8
|
@ -5,6 +5,36 @@
|
||||||
Changes
|
Changes
|
||||||
=======
|
=======
|
||||||
|
|
||||||
|
.. _release_2.0_rc.3:
|
||||||
|
|
||||||
|
----------------
|
||||||
|
Version 2.0-rc.3
|
||||||
|
----------------
|
||||||
|
|
||||||
|
*Release Date: 2016-11-01*
|
||||||
|
|
||||||
|
1. Change the three modules(Presence, Retainer, Subscription) to standalone plugins:
|
||||||
|
|
||||||
|
+----------------------------+--------------------------------------------+
|
||||||
|
| `emq_mod_retainer`_ | Retained Message Storage |
|
||||||
|
+----------------------------+--------------------------------------------+
|
||||||
|
| `emq_mod_presence`_ | Publish presence message to $SYS topics |
|
||||||
|
| | when client connected or disconnected |
|
||||||
|
+----------------------------+--------------------------------------------+
|
||||||
|
| `emq_mod_subscription`_ | Subscribe topics automatically when client |
|
||||||
|
| | connected |
|
||||||
|
+----------------------------+--------------------------------------------+
|
||||||
|
|
||||||
|
2. Update the SSL certificates under the etc/certs/ folder.
|
||||||
|
|
||||||
|
3. Bugfix: Fixed a typo (#716)
|
||||||
|
|
||||||
|
4. Bugfix: emqttd_http can not use emq_auth_http? #739
|
||||||
|
|
||||||
|
5. Bugfix: emq_auth_redis cannot use hostname as server address (#741)
|
||||||
|
|
||||||
|
6. Upgrade Redis, MySQL, Postgre and MongoDB plugins to support hostname.
|
||||||
|
|
||||||
.. _release_2.0_rc.2:
|
.. _release_2.0_rc.2:
|
||||||
|
|
||||||
----------------
|
----------------
|
||||||
|
@ -1697,3 +1727,13 @@ Version 0.1.0
|
||||||
|
|
||||||
The first public release.
|
The first public release.
|
||||||
|
|
||||||
|
.. _erlang.mk_: https://erlang.mk
|
||||||
|
.. _relx_: https://github.com/erlware/relx
|
||||||
|
.. _emqttd_: https://github.com/emqtt/emqttd
|
||||||
|
.. _emqttd_relx: https://github.com/emqtt/emqttd-relx
|
||||||
|
.. _emqttd_sn: http://github.com/emqtt/emqttd_sn
|
||||||
|
|
||||||
|
.. _emq_mod_retainer: https://github.com/emqtt/emq_mod_retainer
|
||||||
|
.. _emq_mod_presence: https://github.com/emqtt/emq_mod_presence
|
||||||
|
.. _emq_mod_subscription: https://github.com/emqtt/emq_mod_subscription
|
||||||
|
|
||||||
|
|
|
@ -378,55 +378,6 @@ Plugins' Etc Folder
|
||||||
## File to store loaded plugin names.
|
## File to store loaded plugin names.
|
||||||
mqtt.plugins.loaded_file = data/loaded_plugins
|
mqtt.plugins.loaded_file = data/loaded_plugins
|
||||||
|
|
||||||
----------------
|
|
||||||
Extended Modules
|
|
||||||
----------------
|
|
||||||
|
|
||||||
Enable `Retainer` Module
|
|
||||||
------------------------
|
|
||||||
|
|
||||||
.. code-block:: properties
|
|
||||||
|
|
||||||
## Enable retainer module
|
|
||||||
mqtt.module.retainer = on
|
|
||||||
|
|
||||||
## disc: disc_copies, ram: ram_copies
|
|
||||||
mqtt.module.retainer.storage_type = ram
|
|
||||||
|
|
||||||
## Max number of retained messages
|
|
||||||
mqtt.module.retainer.max_message_num = 100000
|
|
||||||
|
|
||||||
## Max Payload Size of retained message
|
|
||||||
mqtt.module.retainer.max_payload_size = 64KB
|
|
||||||
|
|
||||||
## Expired after seconds, never expired if 0
|
|
||||||
mqtt.module.retainer.expired_after = 0
|
|
||||||
|
|
||||||
Enable `Presence` Module
|
|
||||||
------------------------
|
|
||||||
|
|
||||||
`Presence` module will publish presence message to $SYS topic when a client connected or disconnected:
|
|
||||||
|
|
||||||
.. code-block:: properties
|
|
||||||
|
|
||||||
## Enable presence module
|
|
||||||
## Publish presence messages when client connected or disconnected.
|
|
||||||
mqtt.module.presence = on
|
|
||||||
|
|
||||||
mqtt.module.presence.qos = 0
|
|
||||||
|
|
||||||
Enable `Subscription` Module
|
|
||||||
----------------------------
|
|
||||||
|
|
||||||
`Subscription` module forces the client to subscribe some topics when connected to the broker:
|
|
||||||
|
|
||||||
.. code-block:: properties
|
|
||||||
|
|
||||||
# Enable subscription module
|
|
||||||
mqtt.module.subscription = on
|
|
||||||
|
|
||||||
mqtt.module.subscription.topics = $client/%c=1,$user/%u=1
|
|
||||||
|
|
||||||
--------------
|
--------------
|
||||||
MQTT Listeners
|
MQTT Listeners
|
||||||
--------------
|
--------------
|
||||||
|
@ -575,6 +526,14 @@ Plugin Configuration Files
|
||||||
+----------------------------------------+-----------------------------------+
|
+----------------------------------------+-----------------------------------+
|
||||||
| etc/plugins/emq_coap.conf | CoAP Protocol Plugin Config |
|
| etc/plugins/emq_coap.conf | CoAP Protocol Plugin Config |
|
||||||
+----------------------------------------+-----------------------------------+
|
+----------------------------------------+-----------------------------------+
|
||||||
|
| etc/plugins/emq_mod_presence.conf | Presence Module Config |
|
||||||
|
+----------------------------------------+-----------------------------------+
|
||||||
|
| etc/plugins/emq_mod_retainer.conf | Retainer Module Config |
|
||||||
|
+----------------------------------------+-----------------------------------+
|
||||||
|
| etc/plugins/emq_mod_rewrite.config | Rewrite Module Config |
|
||||||
|
+----------------------------------------+-----------------------------------+
|
||||||
|
| etc/plugins/emq_mod_subscription.conf | Subscription Module Config |
|
||||||
|
+----------------------------------------+-----------------------------------+
|
||||||
| etc/plugins/emq_dashboard.conf | Dashboard Plugin Config |
|
| etc/plugins/emq_dashboard.conf | Dashboard Plugin Config |
|
||||||
+----------------------------------------+-----------------------------------+
|
+----------------------------------------+-----------------------------------+
|
||||||
| etc/plugins/emq_plugin_template.conf | Template Plugin Config |
|
| etc/plugins/emq_plugin_template.conf | Template Plugin Config |
|
||||||
|
|
|
@ -109,47 +109,11 @@ The Dashboard helps check running status of the broker, monitor statistics and m
|
||||||
|
|
||||||
.. image:: ./_static/images/dashboard.png
|
.. image:: ./_static/images/dashboard.png
|
||||||
|
|
||||||
-------------------
|
|
||||||
Modules and Plugins
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
The *EMQ* broker could be extended by Modules ofr Plugins.
|
|
||||||
|
|
||||||
Modules
|
|
||||||
-------
|
-------
|
||||||
|
|
||||||
+-------------------------+--------------------------------------------+
|
|
||||||
| emqttd_mod_retainer | Retained Messages Storage |
|
|
||||||
+-------------------------+--------------------------------------------+
|
|
||||||
| emqttd_mod_presence | Publish presence message to $SYS topics |
|
|
||||||
| | when client connected or disconnected |
|
|
||||||
+-------------------------+--------------------------------------------+
|
|
||||||
| emqttd_mod_subscription | Subscribe topics automatically when client |
|
|
||||||
| | connected |
|
|
||||||
+-------------------------+--------------------------------------------+
|
|
||||||
|
|
||||||
Modules could enabled by configuring 'etc/emq.conf':
|
|
||||||
|
|
||||||
.. code-block:: properties
|
|
||||||
|
|
||||||
##-------------------------------------------------------------------
|
|
||||||
## MQTT Modules
|
|
||||||
##-------------------------------------------------------------------
|
|
||||||
|
|
||||||
## Enable presence module
|
|
||||||
mqtt.module.presence = on
|
|
||||||
|
|
||||||
mqtt.module.presence.qos = 0
|
|
||||||
|
|
||||||
## Enable subscription module
|
|
||||||
mqtt.module.subscription = on
|
|
||||||
|
|
||||||
mqtt.module.subscription.topics = $client/%c=1,$user/%u=1
|
|
||||||
|
|
||||||
Plugins
|
Plugins
|
||||||
-------
|
-------
|
||||||
|
|
||||||
A plugin is an Erlang application to extend the *EMQ* broker.
|
The *EMQ* broker could be extended by Plugins. A plugin is an Erlang application to extend the *EMQ* broker:
|
||||||
|
|
||||||
+-------------------------+--------------------------------------------+
|
+-------------------------+--------------------------------------------+
|
||||||
| `emq_auth_clientid`_ | Authentication with ClientId |
|
| `emq_auth_clientid`_ | Authentication with ClientId |
|
||||||
|
@ -172,6 +136,12 @@ A plugin is an Erlang application to extend the *EMQ* broker.
|
||||||
+-------------------------+--------------------------------------------+
|
+-------------------------+--------------------------------------------+
|
||||||
| `emq_mod_rewrite`_ | Topics rewrite like HTTP rewrite module |
|
| `emq_mod_rewrite`_ | Topics rewrite like HTTP rewrite module |
|
||||||
+-------------------------+--------------------------------------------+
|
+-------------------------+--------------------------------------------+
|
||||||
|
| `emq_mod_retainer`_ | Retainer Module |
|
||||||
|
+-------------------------+--------------------------------------------+
|
||||||
|
| `emq_mod_presence`_ | Presence Module |
|
||||||
|
+-------------------------+--------------------------------------------+
|
||||||
|
| `emq_mod_subscription`_ | Subscription Module |
|
||||||
|
+-------------------------+--------------------------------------------+
|
||||||
| `emq_mod_mongo`_ | Authentication with MongoDB |
|
| `emq_mod_mongo`_ | Authentication with MongoDB |
|
||||||
+-------------------------+--------------------------------------------+
|
+-------------------------+--------------------------------------------+
|
||||||
| `emq_sn`_ | MQTT-SN Protocol Plugin |
|
| `emq_sn`_ | MQTT-SN Protocol Plugin |
|
||||||
|
@ -303,4 +273,7 @@ MQTT.org: https://github.com/mqtt/mqtt.github.io/wiki/libraries
|
||||||
.. _emq_recon: https://github.com/emqtt/emq_recon
|
.. _emq_recon: https://github.com/emqtt/emq_recon
|
||||||
.. _emq_sn: https://github.com/emqtt/emq_sn
|
.. _emq_sn: https://github.com/emqtt/emq_sn
|
||||||
.. _emq_coap: https://github.com/emqtt/emq_coap
|
.. _emq_coap: https://github.com/emqtt/emq_coap
|
||||||
|
.. _emq_mod_retainer: https://github.com/emqtt/emq_mod_retainer
|
||||||
|
.. _emq_mod_presence: https://github.com/emqtt/emq_mod_presence
|
||||||
|
.. _emq_mod_subscription: https://github.com/emqtt/emq_mod_subscription
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,13 @@ The plugins that *EMQ* 2.0-rc.2 released:
|
||||||
+------------------------+-------------------------------+
|
+------------------------+-------------------------------+
|
||||||
| `emq_auth_mongo`_ | MongoDB Auth/ACL Plugin |
|
| `emq_auth_mongo`_ | MongoDB Auth/ACL Plugin |
|
||||||
+------------------------+-------------------------------+
|
+------------------------+-------------------------------+
|
||||||
| `emq_mod_rewrite`_ | Topic Rewrite Plugin |
|
| `emq_mod_presence`_ | Presence Module |
|
||||||
|
+------------------------+-------------------------------+
|
||||||
|
| `emq_mod_retainer`_ | Retainer Module |
|
||||||
|
+------------------------+-------------------------------+
|
||||||
|
| `emq_mod_rewrite`_ | Topic Rewrite Module |
|
||||||
|
+------------------------+-------------------------------+
|
||||||
|
| `emq_mod_subscription`_| Subscription Module |
|
||||||
+------------------------+-------------------------------+
|
+------------------------+-------------------------------+
|
||||||
| `emq_coap`_ | CoAP Protocol Plugin |
|
| `emq_coap`_ | CoAP Protocol Plugin |
|
||||||
+------------------------+-------------------------------+
|
+------------------------+-------------------------------+
|
||||||
|
@ -610,16 +616,118 @@ Load MongoDB Auth/ACL Plugin
|
||||||
|
|
||||||
./bin/emqttd_ctl plugins load emq_auth_mongo
|
./bin/emqttd_ctl plugins load emq_auth_mongo
|
||||||
|
|
||||||
|
----------------------------------
|
||||||
|
emq_mod_presence - Presence Module
|
||||||
|
----------------------------------
|
||||||
|
|
||||||
|
`Presence` module will publish presence message to $SYS topic when a client connected or disconnected:
|
||||||
|
|
||||||
|
.. NOTE:: Released in 2.0-rc.3: https://github.com/emqtt/emq_mod_presence
|
||||||
|
|
||||||
|
Configure Presence Module
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
etc/plugins/emq_mod_presence.conf:
|
||||||
|
|
||||||
|
.. code-block:: properties
|
||||||
|
|
||||||
|
## Enable presence module
|
||||||
|
## Values: on | off
|
||||||
|
module.presence = on
|
||||||
|
|
||||||
|
module.presence.qos = 0
|
||||||
|
|
||||||
|
Load Presence Module
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
.. NOTE:: This module will be loaded by default.
|
||||||
|
|
||||||
|
.. code:: bash
|
||||||
|
|
||||||
|
./bin/emqttd_ctl plugins load emq_mod_presence
|
||||||
|
|
||||||
|
----------------------------------
|
||||||
|
emq_mod_retainer - Retainer Module
|
||||||
|
----------------------------------
|
||||||
|
|
||||||
|
`Retainer` module is responsbile for storing MQTT retained messages.
|
||||||
|
|
||||||
|
.. NOTE:: Released in 2.0-rc.3: https://github.com/emqtt/emq_mod_retainer
|
||||||
|
|
||||||
|
Configure Retainer Module
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
etc/plugins/emq_mod_retainer.conf:
|
||||||
|
|
||||||
|
.. code-block:: properties
|
||||||
|
|
||||||
|
## disc: disc_copies, ram: ram_copies
|
||||||
|
module.retainer.storage_type = ram
|
||||||
|
|
||||||
|
## Max number of retained messages
|
||||||
|
module.retainer.max_message_num = 100000
|
||||||
|
|
||||||
|
## Max Payload Size of retained message
|
||||||
|
module.retainer.max_payload_size = 64KB
|
||||||
|
|
||||||
|
## Expired after seconds, never expired if 0
|
||||||
|
module.retainer.expired_after = 0
|
||||||
|
|
||||||
|
Load Retainer Module
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
.. NOTE:: This module will be loaded by default.
|
||||||
|
|
||||||
|
.. code:: bash
|
||||||
|
|
||||||
|
./bin/emqttd_ctl plugins load emq_mod_retainer
|
||||||
|
|
||||||
|
------------------------------------------
|
||||||
|
emq_mod_subscription - Subscription Module
|
||||||
|
------------------------------------------
|
||||||
|
|
||||||
|
`Subscription` module forces the client to subscribe some topics when connected to the broker:
|
||||||
|
|
||||||
|
.. NOTE:: Released in 2.0-rc.3: https://github.com/emqtt/emq_mod_subscription
|
||||||
|
|
||||||
|
Configure Subscription Module
|
||||||
|
-----------------------------
|
||||||
|
|
||||||
|
etc/plugins/emq_mod_subscription.conf:
|
||||||
|
|
||||||
|
.. code-block:: properties
|
||||||
|
|
||||||
|
## Subscribe the Topics automatically when client connected
|
||||||
|
module.subscription.1.topic = $client/%c
|
||||||
|
## Qos of the subscription: 0 | 1 | 2
|
||||||
|
module.subscription.1.qos = 1
|
||||||
|
|
||||||
|
##module.subscription.2.topic = $user/%u
|
||||||
|
##module.subscription.2.qos = 1
|
||||||
|
|
||||||
|
## Load static subscriptions from backend storage
|
||||||
|
## Values: on | off
|
||||||
|
module.subscription.backend = on
|
||||||
|
|
||||||
|
Load Subscription Module
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
.. NOTE:: This module will be loaded by default.
|
||||||
|
|
||||||
|
.. code:: bash
|
||||||
|
|
||||||
|
./bin/emqttd_ctl plugins load emq_mod_subscription
|
||||||
|
|
||||||
--------------------------------------
|
--------------------------------------
|
||||||
emq_mod_rewrite - Topic Rewrite Plugin
|
emq_mod_rewrite - Topic Rewrite Module
|
||||||
--------------------------------------
|
--------------------------------------
|
||||||
|
|
||||||
Released in 2.0-rc.2: https://github.com/emqtt/emq_mod_rewrite
|
Released in 2.0-rc.2: https://github.com/emqtt/emq_mod_rewrite
|
||||||
|
|
||||||
Configure Rewrite Plugin
|
Configure Rewrite Module
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
etc/plugins/emq_mod_rewrite.conf:
|
etc/plugins/emq_mod_rewrite.config:
|
||||||
|
|
||||||
.. code-block:: erlang
|
.. code-block:: erlang
|
||||||
|
|
||||||
|
@ -636,7 +744,7 @@ etc/plugins/emq_mod_rewrite.conf:
|
||||||
]}
|
]}
|
||||||
].
|
].
|
||||||
|
|
||||||
Load Rewrite Plugin
|
Load Rewrite Module
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
.. code:: bash
|
.. code:: bash
|
||||||
|
@ -1052,3 +1160,6 @@ Build and Release the Plugin
|
||||||
.. _emq_plugin_template: https://github.com/emqtt/emq_plugin_template
|
.. _emq_plugin_template: https://github.com/emqtt/emq_plugin_template
|
||||||
.. _recon: http://ferd.github.io/recon/
|
.. _recon: http://ferd.github.io/recon/
|
||||||
|
|
||||||
|
.. _emq_mod_retainer: https://github.com/emqtt/emq_mod_retainer
|
||||||
|
.. _emq_mod_presence: https://github.com/emqtt/emq_mod_presence
|
||||||
|
.. _emq_mod_subscription: https://github.com/emqtt/emq_mod_subscription
|
||||||
|
|
Loading…
Reference in New Issue