在这里,您可以找到教程“如何设置Mosquitto MQTT服务器并从OwnTracks接收数据”。
Mosquitto是实现MQTT协议版本3.1和3.1.1的开源消息代理(经EPL / EDL许可)。它重量轻,适合在从低功耗单板计算机到完整服务器的所有设备上使用。MQTT协议提供了一种使用发布/订阅模型执行消息传递的轻量级方法。这使其适用于物联网消息传递,例如低功率传感器或移动设备,例如电话,嵌入式计算机或微控制器。
您可能还会喜欢: 什么是蚊子?
OwnTracks是一个开源项目,提供iOS和Android应用程序,您的智能手机可以使用该应用程序记录其当前位置。
因此,OwnTracks是一个开源GPS位置历史记录服务(主要组件是iPhone和Android的应用程序。)OwnTracks负责发送数据,并建议在接收方或“经纪人”侧使用Mosquitto作为框架。
了解有关OwnTracks的更多信息,请访问此https://owntracks.org/booklet/
这是我启动Mosquitto服务器并在DigitalOcean Dropt上接收数据的过程,我为OwnTracks定制了该服务器,但是除config之外的大多数步骤都应适用于Mosquitto服务器的任何使用。
要求:
它可以在Raspberry Pi上运行,因此我认为512MB Ubuntu 14.04 x64 Droplet就足够了。
创建用户“ mosquitto”
Mosquitto希望以用户身份运行,添加用户mosquitto
mosquitto
<span style="color:#444444"><code>adduser mosquitto
</code></span>
安装Mosquitto
SSH进入Droplet,进行更新,然后安装mosquitto依赖项
<span style="color:#444444"><code>apt-get update
apt-get install build-essential libwrap0-dev libssl-dev libc-ares-dev uuid-dev xsltproc
</code></span>
您可以尝试通过apt-get安装,它对我不起作用,因此我下载了此处列出的最新版本的mosquitto:http ://mosquitto.org/download/
<span style="color:#444444"><code>cd /home/mosquitto
wget http://mosquitto.org/files/source/mosquitto-1.4.8.tar.gz
tar xvzf mosquitto-1.4.8.tar.gz
cd mosquitto-1.4.8
</code></span>
运行make
以进行编译和make install
安装
<span style="color:#444444"><code>make
make install
</code></span>
设置蚊子
创建一个蚊子用户/密码:下面的命令将创建一个用户自己的轨道,您可以更改
<span style="color:#444444"><code>mosquitto_passwd -c /etc/mosquitto/pwfile owntracks
</code></span>
系统将提示您输入密码。
创建将存储持久性db文件的目录,将所有者更改为mosquitto:
<span style="color:#444444"><code>mkdir /var/lib/mosquitto/
chown mosquitto:mosquitto /var/lib/mosquitto/ -R
</code></span>
通过复制示例文件来创建配置文件:
<span style="color:#444444"><code>cp /etc/mosquitto/mosquitto.conf.example /etc/mosquitto/mosquitto.conf
editor /etc/mosquitto/mosquitto.conf
</code></span>
在配置文件的末尾,添加一个针对所有OwnTracks 的所有建议的配置更改块(将<yourIP>替换为Droplet的IP地址)
<span style="color:#444444"><code>listener 8883 <yourIP>
persistence true
persistence_location /var/lib/mosquitto/
persistence_file mosquitto.db
log_dest syslog
log_dest stdout
log_dest topic
log_type error
log_type warning
log_type notice
log_type information
connection_messages true
log_timestamp true
allow_anonymous false
password_file /etc/mosquitto/pwfile
</code></span>
最后一定要运行:
<span style="color:#444444"><code>/sbin/ldconfig
</code></span>
运行/测试蚊子
使用以下命令运行mosquitto服务器:
<span style="color:#444444"><code>mosquitto -c /etc/mosquitto/mosquitto.conf
</code></span>
它应该开始正常运行,然后在另一个窗口中:用您自己的东西替换<YourIP>和<YourPassword>
<span style="color:#444444"><code>mosquitto_sub -h <YourIP> -p 8883 -v -t 'owntracks/#' -u owntracks -P <YourPassword>
</code></span>
如果一切正常,则执行此命令应该看不到任何错误,并且在运行mosquitto的窗口中应确认连接。如果是这样,请创建一个新贵文件以自动运行mosquitto:
<span style="color:#444444"><code>vim /etc/init/mosquitto.conf
#THEN PASTE IN:
description "Mosquitto MQTT broker"
start on net-device-up
respawn
exec /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
</code></span>
现在,您可以使用Mosquitto经纪人了,下一步是在电话上设置OwnTracks以与经纪人对话– TL; DR是您需要安装应用程序,转到首选项,选择“私人”模式并设置连接详细信息以匹配您刚刚设置的IP,用户和密码规范。