記錄一下三天的成果。
花費了3天的時間 我在樹莓派上面搭建了一個domoticz 的智能家居系統 然後利用frp 去實現將本地的內網地址 穿透到 公網上面的 阿里雲的個人服務器的8080 端口, 最終藉助domoticz 和天貓精靈的開放式接口來實現 天貓精靈控制 智能設備了
第一步是安裝 domoticz 。
我首先是在我的服務器上面去部署的domoticz,然後發現domoticz服務器發送給個人的domoticz系統的指令是IP + 指令的形式, 也就是說如果domoticz 服務器在公網上面的話,我需要給每一個設備都做內網的穿透(內網穿透的用處),然後這樣顯然是比較費勁的。 剛好我的手上有一塊閒置的 樹莓派3B + 然後我就考慮了用它作爲我的智能家居的中心服務器,但是這樣一來 又會有另一個問題,我們沒有辦法去給domoticz服務器 提供一個穩定的IP地址。所以我需要外網能訪問到我的domoticz
domoticz 的程序只需要安裝到樹莓派中就好了,當然 你要是有其他的設備也可以選擇對應平臺
這是下載鏈接 總的鏈接在這裏https://www.domoticz.cn/forum/viewtopic.php?f=4&t=2
樹莓派等 debian 系統可以使用 指令下載
sudo curl -L install.domoticz.cn | bash
domoticz的安裝方法我就不詳細介紹了 大家參考其他的大佬的安裝方法
安裝好domoticz 之後我們就可以通過內網去訪問我們的domoticz的網頁了
直接在你內網的電腦上面輸入192.168.x.x:8080 就可以了 查看樹莓派的IP 地址 等等小的細節我就不做贅述了。
記得最後研究一下添加開機啓動項,讓我們的domoticz 開機自動運行(frp也是最好開機自己連接)
你應該能看到類似的界面, 當然這跟宣傳的圖片畫風差別很大,這主要是因爲我還沒準備好其他的硬件
這是官方的圖片 也是我等的方向。。。。
第二部分就是讓這些設備跟外部鏈接起來,實現天貓精靈、小杜等等的語音控制 爲了實現這些我們需要給我們的http 服務器的端口在公網上面(我們也可以在公網上面訪問domoticz的控制界面,所以登錄的密碼一定要設置的難一些)
言歸正傳 安裝 frp 的程序。 frp的開源代碼在github上面 我們可以去下載最新的安裝程序。(也可以從CSDN 上面下載,如果不缺積分的話) https://github.com/fatedier/frp
frp 的安裝 可以參考 這些大佬們的博客, 我實驗的時候也是參考的大佬們的博客實現的
https://blog.csdn.net/e_wsq/article/details/79405512
https://www.chenghuajie.cn/440.html
在安裝frp 的過程中我遇到了幾個坑 也給大家分享一下。
第一個坑就是 你想開放什麼端口要先去服務器的控制檯開啓對應的端口 ,這一部分一定要做,控制檯是在你的vps 提供商的 網頁界面上的。 我的是阿里雲 控制界面在這裏 就是防火牆
我的安裝需要是將8080 端口映射到我的服務器上面去的,然後我自己還沒有域名,所以一般的設置方法不適用,我需要的是沒有域名的安裝方法,苦苦搜尋終於還是讓我找到了。 https://www.cnblogs.com/sanduzxcvbnm/p/8509150.html
圖片來自 大佬的博客
這是樹莓派側的設置 我貌似寫重複了remote_port 應該是以最後一個爲準
、
這是我的 服務器側的配置,其中涉及到了一個frp的 監控 我們可以去登錄http://x.x.x.x:dashboard_port/
x.x.x.x代表你的服務器地址,配置好了之後我們可以看到監控信息,當然這個界面是需要登錄的 dashboard_user 和 dashboard_pwd 就是你的用戶名和密碼,
這是登錄密碼的請求界面, 很簡陋就倆對話框
這是登錄之後顯示的監控信息。
內網穿透還可以在外網去 ssh 登錄 樹莓派, 這是一般的基本的穿透的功能也是我最早實現的功能。
接下來就是 天貓精靈的對接了 ,你需要先去註冊一個domoticz的賬號 (已有的就跳過)
註冊地址https://ali.domoticz.cn/signup
這就是我忙活了3天的成果,下一步需要給 這幾個進程都加上開機自動啓動和 supervisor的 監控工具,防止意外的卡死。
然後還有很多的程序接口等着我呢 有問題的話留言就留一下吧