RADIUSdesk

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
getting_started:20_install_ubuntu_mqtt [2022/06/10 06:04] – created admingetting_started:20_install_ubuntu_mqtt [2022/06/10 10:25] (current) – [Install Mosquitto] admin
Line 1: Line 1:
 ====== MQTT Real-time Support for MESHdesk and APdesk ====== ====== MQTT Real-time Support for MESHdesk and APdesk ======
 +
 +===== Install Mosquitto =====
 +  * Install the Mosquitto MQTT Broker as per these fine instructions:
 +        * https://www.vultr.com/docs/install-mosquitto-mqtt-broker-on-ubuntu-20-04-server/
 +  * Make sure you do **Step 3** to secure the it with usernames and passwords.
 +  * In this document we use username and password of **openwrt**. Please change according to your preference.
 +
 +<WRAP center round important 100%>
 +  * Please use a strong password for the MQTT user in a production environment.
 +</WRAP>
 +
 +
 +===== Install Rdcore-API-Gateway =====
 +  * Go to /opt directory
 +<code bash>
 +cd /opt
 +</code>
 +  * Clone Rdcore API Gateway from Github
 +<code bash>
 +sudo git clone https://github.com/RADIUSdesk/Rdcore-API-Gateway.git
 +</code>
 +  * Go to newly cloned directory
 +<code bash>
 +cd /opt/Rdcore-API-Gateway
 +</code>
 +  * Install NPM Dependencies
 +<code bash>
 +sudo npm install
 +</code>
 +  * Rename **.env.sample** to **.env** and edit
 +<code bash>
 +sudo mv .env.sample .env
 +sudo vi .env
 +
 +PORT=8001
 +#FQDN of your installed server
 +MESH_CONTROLLER="http://cloud.mesh-manager.com"
 +MQTT_BROKER="127.0.0.1"
 +MQTT_PORT=1883
 +MQTT_USER=openwrt
 +MQTT_PASS=openwrt
 +
 +</code>
 +  * The Rdcore API Gateway Systemd Startup File
 +<code bash>
 +sudo cp /opt/Rdcore-API-Gateway/rdcore-api-gateway.service /lib/systemd/system/
 +</code>
 +  * Enable the Rdcore API Gateway
 +<code bash>
 +sudo systemctl enable rdcore-api-gateway.service
 +</code>
 +  * Start the Rdcore API Gateway
 +<code bash>
 +sudo systemctl start rdcore-api-gateway.service
 +sudo systemctl status rdcore-api-gateway.service
 +</code>
 +  * Confirm the service is running by visiting the FQDN:8001
 +  * e.g http://cloud.radiusdesk.com:8001/
 +
 +===== MQTT Settings in RADIUSdesk =====
 +  * To enable MQTT on RADIUSdesk there are two places where it has to be configured.
 +  * For the devices managed by MESHdesk and APdesk there is this GUI under **Settings** -> **MQTT**
 +
 +{{:getting_started:mqtt_settings.png|}}
 +  * Command topic is always **/RD/NODE/COMMAND/RESPONSE**
 +  * Then for the server to use MQTT instead of the heartbeat system you have to edit the following config file.
 +  * Edit **/var/www/html/cake3/rd_cake/config/MESHdesk.php**
 +  * Look for this sections and adapt to your server's values.
 +<code php>
 +$config['mqtt_settings']['enable_realtime'] = true;
 +$config['mqtt_settings']['api_gateway_url'] = 'http://164.160.89.129:8001';
 +</code>
 +
 +
 +