由于設備原因,設置心跳檢測只能由服務端發(fā)送心跳包,但可以設置pingNotResponseLimit = 1 讓客戶端必須返回心跳。 現(xiàn)在的問題是,有一部分設備并不需要心跳來檢測是否在線,我要怎么只對另一部分設備設置心跳檢測呢?...
問題已解決,是代碼邏輯問題,不好意思~~ <----------------------> 設備端與web控制端各使用一個worker。設備端服務端口為8899,內(nèi)部通訊端口為4000;web控制端服務端口為8900,內(nèi)部通訊端口為4001,其余配置基本一樣,兩個worker的數(shù)據(jù)收發(fā)處理都在同一個Events.php里執(zhí)行。 現(xiàn)在的問題是,web控制端發(fā)送命令,onMessage可以成功發(fā)送數(shù)據(jù)到設備...
有個設備收發(fā)數(shù)據(jù)均使用16進制數(shù)據(jù),我用gateway來發(fā)送16進制數(shù)據(jù)時,設備沒有任何消息返回。 前臺發(fā)送一段16進制序列,比如 55AA0002000A0C 。 我在網(wǎng)上查了很多發(fā)送16進制數(shù)據(jù)的方法,第一種發(fā)送數(shù)據(jù)前用hex2bin($data)將16進制數(shù)據(jù)轉換成二進制發(fā)送;第二種則是pack("H*",$data);第三種是嘗試將序列分解成2個一組的數(shù)組,然后使用chr(hexdec($...