家具網(wǎng)站的建設北京網(wǎng)站優(yōu)化技術
QQWebsocketClient是什么
實現(xiàn)qq群消息接收和發(fā)送功能,基于websocket技術和cqhttp服務開發(fā)
一、 效果截圖
二、實現(xiàn)思路
使用cqhttp進行socket反向代理,獲取qq聊天的所有消息
編寫java客戶端,連接至cqhttp服務器獲取聊天消息
獲取聊天消息,獲取機器人的回答
將機器人的返回消息發(fā)送到qq群
三、如何搭建服務
1、準備工作
準備一個qq號(后續(xù)的服務都要用到這個qq,接收qq的消息并且使用qq號發(fā)送消息)
獲取的api接口key(如果不知道自行百度)
2、啟動騰訊qq,并且保持在線
3、搭建cqhttp服務器(windows環(huán)境)
進入項目目錄下的go-cqhttp_windows_amd64文件夾,啟動go-cqhttp.exe,啟動可能會有兩次警告點擊確認即可,啟動后生成go-cqhttp.bat文件
啟動go-cqhttp.bat,選擇03回車,提示修改config.yml配文件,使用項目目錄doc文件下的config.yml文件覆蓋這個文件后,修改配置qq號為自己準備的qq號
修改好配置文件,重新啟動go-cqhttp.bat后,提示掃碼登錄,使用手機掃碼,手機登錄的也是這個qq
如果控制臺太小掃不上可以掃安裝路徑下生成的二維碼:
掃碼成功后顯示如下內(nèi)容為成功啟動
4、修改服務配置,設置群號和本人qq號,設置密鑰
以上和qq交互的服務器已經(jīng)搭建完成,接下來搭建qq的客戶端,也就是實現(xiàn)qq群消息自動回復消息的功能
修改如下圖所示配置,啟動springboot即可
以下界面為啟動成功,讓群里的其他人員@你并且提問即可,收到消息選擇你要回復的內(nèi)容自動回復
5、存在的問題
WebSocketConfig中實現(xiàn)私聊和群聊消息的接收,但是在測試過程中發(fā)現(xiàn)私聊消息過長會導致消息發(fā)送失敗,但是群聊正常,所以目前禁用了私聊消息回復功能