鍍金池/ 問答/Python  GO  Linux/ 如何做一個簡單的web聲音報警?

如何做一個簡單的web聲音報警?

編寫一個簡單的web,打開后保持長連接,定時訪問數(shù)據(jù)庫或緩存,當某字段為 true時,則發(fā)出聲音達到報警。
求一個大致的實現(xiàn)思路,之前都是做運維的相關腳本,這個不是很有頭緒。

回答
編輯回答
懶洋洋

兩個思路:

A.不斷請求狀態(tài)接口,如果返回 {"status":true} 則播放 error.mp3 或者發(fā)一封報警郵件,web 打開后就開始輪訓接口,每個幾秒鐘請求一次。此種方法實現(xiàn)簡單,但是不夠優(yōu)雅。

B.通過 websocket,web 客戶端與服務端保持長連接,服務端發(fā)現(xiàn)為 true 主動推送到前端,前端收到后播放Mp3。

B方案成本比較高,你需要看下 websocket,如果說你只是做一個小工具,我認為 A方案 已經(jīng)可以滿足需求了,上手也簡單,你用 python 的 flask 框架或者 django 框架一會兒功夫就搞定了。

2017年1月30日 23:37
編輯回答
冷咖啡

器材: 瀏覽器 + 音響 + 一段音頻

用websocket連接后端服務,有報警時,推送報警信息, 并觸發(fā)瀏覽器播放音頻即可.

2017年1月11日 08:13
編輯回答
蔚藍色

感謝兩位的回答,最后還是得選擇websocket的實現(xiàn)方式,雖然需要研究一下,但考慮到運維報警的特殊性,還是需要選擇一個能進行長連接的。因為服務端也需要知道報警測的狀況,而且還能做一個數(shù)據(jù)交互,除了客戶端去請求數(shù)據(jù),也可以讓服務端給客戶端主動發(fā)送數(shù)據(jù)。然后選擇用golang 的 gorilla/websocket 來做

2017年11月9日 19:31