Date: 2019
Back-End: Express、LineBot、MongoDB、Socket.io
Front-End: LIFF、Vue.js、Socket.io、Bootstrap
Hardware: NodeMCU
本專案基於line bot來對物聯網裝置進行控制,透過line提供的message api與使用者進行溝通,並且獲取使用者設定好的關鍵字,來對特定裝置進行控制。在與裝置溝通方面,透過使用websocket的技術,可以對裝置進行即時的控制。
Date: 2019
Back-End: Express、LineBot、MongoDB、Socket.io
Front-End: LIFF、Vue.js、Socket.io、Bootstrap
Hardware: NodeMCU
本專案基於line bot來對物聯網裝置進行控制,透過line提供的message api與使用者進行溝通,並且獲取使用者設定好的關鍵字,來對特定裝置進行控制。在與裝置溝通方面,透過使用websocket的技術,可以對裝置進行即時的控制。
本專案基於line bot來對物聯網裝置進行控制,透過line提供的message api與使用者進行溝通,並且獲取使用者設定好的關鍵字,來對特定裝置進行控制。在與裝置溝通方面,透過使用websocket的技術,可以對裝置進行即時的控制。
相較於其他line bot的產品,本專案不只可以讓裝置擁有者控制裝置,也可以讓擁有者將控制權限分享出去給line上的朋友,而且也可以自訂控制指令,比起其他產品需要使用固定的指令還要來的自由許多。
與一般line機器人不同的地方在於,本專案透過LIFF(LINE Front-end Framework)建立專門在LINE上可以使用的SPA(single page applictaion),利用網頁的方式呈現APP般的體驗,讓使用者可以不需要額外下載APP就可以享受到APP般的操作介面。而LIFF也提供了對接使用者資料的功能,只要在LINE上開啟LIFF的網頁,網頁就可以得到使用者相關的資訊,得利於這樣的功能,使用者在使用本專案的SPA時就不需要額外再進行會員的創建與登入。
使用者可以在line bot上開啟SPA進行對裝置的操作,包括了:新增裝置、自訂裝置的指令控制、權限設定,也可以對整個群組新增或移除使用者。
主畫面
主畫面分為兩個部分,一個是裝置管理頁面,一個是群組管理頁面,裝置管理頁面主要顯示目前使用者管理的裝置,與新增裝置的功能
ㄑ
裝置管理
目前點進來DOOR這個裝置裡面進行管理,可以分為兩個部分一個是指令控制,一個是權限設定,指令控制主要是可以新增使用者自訂的控制指令,還有顯示目前有哪些控制指令,並且進行移除
下面的權限設定主要可以讓管理者,在目前的群組裡面勾選哪些使用者可以有本裝置的控制權
群組管理
本頁面主要是提供管理員新增與移除群組成員
1.點選新增成員後,會自動向Line Bot 發出新增成員的指令
2.Line Bot會向管理員回覆,請管理員轉寄申請群組的指令給欲申請加入的使用者
3.欲申請加入的使用者再發訊息給Line Bot申請加入
4.提交申請後,管理員再至管理頁面勾選是否讓使用者進入群組
裝置控制
已擁有權限的使用者與管理員可以透過與Line Bot傳送文字訊息來進行裝置的操作,而操作的指令就是之前管理員所設定的,只要下達相對指令就可以對裝置做預設的操作