依賴 CQHTTP API 插件的 websocket 接口, 為 NodeJs 開發者提供一個搭建 QQ 聊天機器人的 SDK。
關於 CQHTTP API 插件,見 richardchien/coolq-http-api
本 SDK 尚處於測試階段,使用上仍有機會碰到Bug,歡迎提交PR或issue回報。
由於付費問題,本 SDK 目前僅針對酷Q Air做測試。
- 輕鬆配置, 快速搭建 QQ 聊天機器人。
- 自動維護底層連線, 開發者只需專注在聊天應用的開發。若斷線, 可依照配置重新連線。
- 支持消息監聽器內, 快速響應。
- 連線建立時, 可自動獲取機器人QQ號。
本 SDK 採用 ava 框架執行測試。
npm run build
使用 webpack 將 SDK 及所有依賴打包, 並在 /dist
目錄下產生一個 cq-websocket.min.js
。
npm run build-demo
打包 /demo/webpack/app.js
內容, 在 /demo/webpack/www
目錄下產生一個 bundle.js
。
- CQHTTP API 插件尚未支援收發 Fragmant, 暫時禁用
- 在 Node 10.x 下, Buffer 寫入時的 RangeError (發生在 SDK 調用 API 方法時)。
這是 Node 的問題, 暫時使用 Node 8.x 以下就沒問題。
RangeError [ERR_OUT_OF_RANGE]: The value of "value" is out of range. It must be >= 0 and <= 4294967295. Received -805456141
at checkInt (internal/buffer.js:35:11)
at writeU_Int32BE (internal/buffer.js:625:3)
at Buffer.writeUInt32BE (internal/buffer.js:638:10)
at WebSocketFrame.toBuffer (/***/node-cq-websocket/node_modules/websocket/lib/WebSocketFrame.js:257:24)
at WebSocketConnection.sendFrame (/***/node-cq-websocket/node_modules/websocket/lib/WebSocketConnection.js:857:43)
at WebSocketConnection.fragmentAndSend (/***/node-cq-websocket/node_modules/websocket/lib/WebSocketConnection.js:793:14)
at WebSocketConnection.sendUTF (/***/node-cq-websocket/node_modules/websocket/lib/WebSocketConnection.js:733:10)
at W3CWebSocket.send (/***/node-cq-websocket/node_modules/websocket/lib/W3CWebSocket.js:116:26)
請勿拍打 🤜 無限期掙飯中 ☕