使用酷Q SDK開發QQ機器人


酷Q SDK下載地址:https://github.com/CoolQ/cqsdk-vc

打開工程,編輯appmain.cpp

將“私聊消息”處的代碼

更改為

CQEVENT(int32_t, __eventPrivateMsg, 24)(int32_t subType, int32_t msgId, int64_t fromQQ, const char *msg, int32_t font) {
    CString caption;
    caption.Format(TEXT("QQ: %lld"), fromQQ);
    MessageBox(nullptr, CString(msg), caption, MB_ICONINFORMATION);
    //如果要回復消息,請調用酷Q方法發送,並且這里 return EVENT_BLOCK - 截斷本條消息,不再繼續處理  注意:應用優先級設置為"最高"(10000)時,不得使用本返回值
    //如果不回復消息,交由之后的應用/過濾器處理,這里 return EVENT_IGNORE - 忽略本條消息
    return EVENT_IGNORE;
}

這樣就能在接收到私聊消息時彈出消息框。fromQQ是消息發送者的QQ號,msg是接收到的消息

將“群消息”處的代碼

更改為

CQEVENT(int32_t, __eventGroupMsg, 36)(int32_t subType, int32_t msgId, int64_t fromGroup, int64_t fromQQ, const char *fromAnonymous, const char *msg, int32_t font) {
    CQ_sendGroupMsg(ac, fromGroup, "自動回復的消息^_^");
    return EVENT_IGNORE; //關於返回值說明, 見“_eventPrivateMsg”函數
}

這樣就能在接收到群消息時自動回復。ac是AuthCode,fromGroup是群消息的來源群號

與CQ_sendGroupMsg類似的還有CQ_sendPrivateMsg(發送私聊消息)、CQ_sendDiscussMsg(發送討論組消息)等

接下來,進入工程屬性->C/C++->代碼生成

將運行庫更改為多線程調試

將工程屬性->C/C++->預編譯頭->預編譯頭更改為不使用預編譯頭

構建工程,將文件cqsdk-vc-master\Release\com.example.democ.dll和cqsdk-vc-master\CQPdemo\com.example.democ.json

復制到酷Q Air\app目錄中(我用的版本是酷Q Air 圖靈版,https://cqp.cc/t/23253

啟動酷Q(建議用小號登錄,因為酷Q會把手機QQ擠下線),打開應用管理后會發現列表里沒有我們的應用

不要緊,打開酷Q Air\conf\CQP.cfg,在末尾添加

[Debug]
DeveloperMode=1

保存,重啟酷Q后,在列表里就能看到我們的應用了

選中我們的應用,然后點擊啟用

一切就緒。接下來,當酷Q接收到私聊消息和群消息時,分別會彈出消息框和自動回復

參考博文:VC++開發酷Q插件隨筆【酷Q&C++】如何利用酷Q制作一個機器人?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM