mosquitto 基於MQTT訊息推送

2021-08-27 23:35:20 字數 1602 閱讀 2166

mosquitto note

基於mqtt訊息推送[

* 要解決的問題是:給android手機做訊息推送

* 自已搭建訊息推送後台

* **端(中轉訊息,守護程序) mosquitto

* 傳送訊息客戶端 mosquitto_pub

* 接收訊息客戶端 mosquitto_sub

* 管理密碼檔案 mosquitto_passwd

* sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa

* sudo apt-get update

* sudo apt-get install mosquitto mosquitto-clients

* 開機啟動 chkconfig mosquitto on

* 先啟動服務程序    mosquitto -d

* 訂閱某個頻道(news)的訊息(監聽) mosquitto_sub -t news

* 傳送訊息(hello)到某個頻道(news) mosquitto_pub -t news -m "hello"

* 可以觀察到當mosquitto_pub之後,可以在mosquitto_sub看到剛才傳送的訊息

* 配置檔案路徑 /etc/mosquitto/mosquitto.conf

* 啟動服務程序mosquitto,除了可能用命令列引數,還要以通過配置檔案,配置檔案更為詳細。

* 可以指定ip位址和埠,還可以使用使用者名稱和密碼

* 可以新增加密碼證書

使用密碼

* 建立唯讀使用者user1和可寫使用者user2和密碼都為user1234

** mosquitto_passwd -c /etc/mosquitto/pawd user1 // -c 表示新增乙個檔案,如果建立第二個使用者,不需要-c

** mosquitto_passwd /etc/mosquitto/pawd user2

* 修改配置檔案,不允許匿名使用者,指定儲存使用者名稱和密碼的檔案路徑,和使用者讀寫許可權的檔案

** 建立自己的配置檔案, touch /etc/mosquitto/conf.d/my.conf

```allow_anonymous false

password_file /etc/mosquitto/pawd

acl_file /etc/mosquitto/acl

```** 建立使用者讀寫許可權的檔案/etc/mosquitto/acl

```user user1

topic read news

user user2

topic write news

```* 測試

** sudo service mosquitto restart

** mosquitto_sub -t news -u user1 -p user1234

** mosquitto_pub -t news -m "hello" -u user2 -p user1234

MQTT協議學習 Mosquitto安裝 測試

1 安裝和常見問題 1.1 安裝測試環境 1.1 安裝 截止2016年5月,最新版本為mosquitto 1.4.8 新建mosquitto目錄並進入目錄 mkdir mosquitto cd mosquitto wget 解壓 tar zxfv mosquitto 1.4.8.tar.gz 進入目...

MQTT協議學習之Mosquitto編譯安裝

系統環境 centos 7.2 解壓 tar zxfv mosquitto 1.4.5.tar.gz 進入目錄 cd mosquitto 1.4.5 編譯安裝 make make install 假如編譯出錯 1.編譯找不到openssl ssl.h 安裝openssl sudo yum y ins...

物聯網MQTT協議之mosquitto

略 mosquitto pub 訊息發布 mosquitto sub 訊息訂閱 1.將資料重定向到csv或者txt檔案中 mosquitto sub test.csv 2.將文字檔案遍歷逐行存入資料庫 import json import pymysql import os import time ...