Nodered的面板及功能
對(duì)玩兒homeassistant的人來(lái)說(shuō),總是感覺(jué)她的自動(dòng)化太過(guò)雞肋——“食之無(wú)味,棄之可惜”。我一開(kāi)始也被困擾了好久,直到后來(lái)發(fā)現(xiàn)了nodered,才如獲至寶。
這個(gè)項(xiàng)目出自IBM公司的兩名研究員之手,是可視化物聯(lián)網(wǎng)編排工具,可基于瀏覽器的流程編輯器連接設(shè)備、服務(wù)器和 API 應(yīng)用。可以快速、低成本地搭建一個(gè)Iot平臺(tái),后臺(tái)使用的是NodeJS語(yǔ)言,提供了Web頁(yè)面,來(lái)編寫(xiě)Flow。
前邊有發(fā)文說(shuō)明nodered的安裝方法,今天我們就進(jìn)一步探索一下nodered的使用。
安裝nodered后默認(rèn)的節(jié)點(diǎn)分為這5大類
共通:一些公共的節(jié)點(diǎn),用于協(xié)助調(diào)試,捕獲異常,或某個(gè)特殊時(shí)間點(diǎn)觸發(fā);
功能:這里的節(jié)點(diǎn)都是處理消息體,邏輯分流,設(shè)置模板,延遲,執(zhí)行;
網(wǎng)絡(luò):網(wǎng)絡(luò)節(jié)點(diǎn)是實(shí)現(xiàn)了各種協(xié)議的通訊協(xié)議,mqtt,http,websocket,tcp,udp;
序列:對(duì)消息體進(jìn)行分割,組合,排序,或創(chuàng)建的一些實(shí)現(xiàn);
解析:這些節(jié)點(diǎn)用于實(shí)現(xiàn)將csv,html,json,xml,yaml解析成想要的數(shù)據(jù)格式;
存儲(chǔ):對(duì)文件的幾種操作,寫(xiě)入,讀取文件,監(jiān)聽(tīng)一個(gè)文件目錄,或者添加要監(jiān)視的內(nèi)容到配置的文件中。
當(dāng)然了,如果你是homeassistant下安裝的話,會(huì)多個(gè)homeassistant類的節(jié)點(diǎn)(請(qǐng)忽略我這面板,我是使用中又安裝了很多節(jié)點(diǎn))。
PS:使用頂部的輸入框可以快速找到想要的節(jié)點(diǎn);要使用一個(gè)節(jié)點(diǎn)直接拖動(dòng)節(jié)點(diǎn)到編輯區(qū)域即可。
幫助面板在右側(cè),有一個(gè)小書(shū)本的圖標(biāo),點(diǎn)擊她我們節(jié)點(diǎn)幫助, 點(diǎn)擊任意一個(gè)節(jié)點(diǎn),我們都能看到這個(gè)節(jié)點(diǎn)的解釋,包括輸入,輸出,詳細(xì)介紹。很多是中文的,但有一部分新的節(jié)點(diǎn),官方還沒(méi)來(lái)得及漢化,只能看英文的啦。
PS:這一部分對(duì)于初學(xué)者非常有用,但這部分也并不是所有的文檔都詳細(xì)解釋的,所有有時(shí)候我們?cè)谑褂靡粋€(gè)節(jié)點(diǎn)是還是要不斷嘗試,不斷試錯(cuò),然后把結(jié)果,結(jié)論記錄下來(lái),以備后續(xù)查看。
在右側(cè)有個(gè)蟲(chóng)子一樣的圖標(biāo),點(diǎn)擊她就會(huì)顯示調(diào)試的結(jié)果。這個(gè)面板要顯示的東西是要和debug節(jié)點(diǎn)進(jìn)行一起使用的。可以打印出流中的數(shù)據(jù)。在這里我們簡(jiǎn)單創(chuàng)建一個(gè)流來(lái)查看調(diào)試信息, 首先我們?cè)诰庉媴^(qū)域加兩個(gè)節(jié)點(diǎn),一個(gè)是inject節(jié)點(diǎn),一個(gè)是debug節(jié)點(diǎn),節(jié)點(diǎn)配置如下。
然后將兩個(gè)節(jié)點(diǎn)連起來(lái)。
最后點(diǎn)擊右上角的紅色按鈕部署(注意修改了任何節(jié)點(diǎn)的配置后,都要點(diǎn)一下部署,新的配置才能生效)。 部署完成后,點(diǎn)擊inject節(jié)點(diǎn)的就會(huì)觸發(fā)流,然后就可以在調(diào)試窗口看到流中的payload中的消息體。
在web可視化中編輯流,因?yàn)槲覀儾荒芤徊揭徊秸{(diào)試查看堆棧,所以只能使用debug節(jié)點(diǎn)來(lái)進(jìn)行查看消息體的具體內(nèi)容。
如果流程,或節(jié)點(diǎn)過(guò)多的情況下,可以使用已選節(jié)點(diǎn)或當(dāng)前流程來(lái)對(duì)調(diào)試信息進(jìn)行篩選。
這里的編輯是指這里,紅色區(qū)域中,這里是我們的主要編輯區(qū)域 頂部的頁(yè)簽是每一個(gè)流,雙擊她可以出現(xiàn)流的編輯信息,你可以對(duì)流進(jìn)行重命名,編輯描述信息。
PS:如果你的流太多,可以使用快捷鍵Ctrl + F來(lái)搜索流程。
在編輯區(qū)域你可以隨意刪除一條線,一個(gè)節(jié)點(diǎn),甚至選中的一批節(jié)點(diǎn),只需要用鼠標(biāo)左鍵選中一個(gè)區(qū)域內(nèi)的所有節(jié)點(diǎn),按下Del鍵即可刪除。點(diǎn)擊底部可以打開(kāi)編輯區(qū)域的小地圖、擴(kuò)大、縮小、重設(shè)視圖。
最右上角的三行是主菜單按鈕,點(diǎn)擊可以出現(xiàn)這樣的一塊操作區(qū)域, 我們可以在這里將流以json的格式導(dǎo)出,導(dǎo)入,也可以編輯軟件的快捷鍵。 如果你要添加第三方的node-red包, 需要點(diǎn)擊設(shè)置,控制版,安裝,輸入你的模塊名稱進(jìn)行搜索 點(diǎn)擊安裝。
此外部署按鈕默認(rèn)是部署所有的流,如果要對(duì)特定的流進(jìn)行部署,點(diǎn)擊部署按鈕的白色下三角,可以出現(xiàn)四個(gè)選項(xiàng),你看選擇只部署已更改節(jié)點(diǎn)的流,或只部署已更改的節(jié)點(diǎn),或者重啟當(dāng)前部署的流程。
今天的基本講解就到這里,后邊繼續(xù)深入。
-- -- -- -- -- -- END -- -- -- -- -- --
我是小白,智能家居愛(ài)好者、一卡通行業(yè)從業(yè)者、曾經(jīng)的建筑智能化從業(yè)者。