node-onebot对接傻妞新版
這兩天原來的qq機器人用不了了,傻妞需要對接onebot協議的機器人,我無意間弄好了,來試試發個教程。新手不喜勿噴。
操作前:
需要已經裝有傻妞并打開了傻妞http和對應傻妞端口,沒有安裝請移步(2條消息) 青龍面板+傻妞sillyGirl+阿東自動登錄全套保姆級一步到位教程(2021-10-09)_且行好事莫問前程-CSDN博客_青龍阿東https://blog.csdn.net/u012134073/article/details/120676597記得打開端口和開啟http服務,如果8080端口無效可以嘗試更換端口,我就是換成了5705成功的。
接下來啟動傻妞然后去網頁查看傻妞是否開啟成功ip:8080/qq/receive
成功一般如下圖
不然就去檢查一下端口和傻妞配置。
注意:服務器防火墻端口也要打開放行。
后面就是node-onebot的安裝配置
方法一:?作者github上提供的方法
https://github.com/takayama-lily/oicq/tree/master/http-api
第一步:
# install > npm i oicq@1 -g第二步:
# startup > oicq <account>注:其中的<account>改為機器人qq號方便記憶,下同
因為沒有配置過config.js會自動生成一個在目錄下,打開修改
module.exports = {//通用配置general: {platform: 5, //1:安卓手機 2:aPad 3:安卓手表 4:MacOS 5:iPaddebug: false, //開啟debuguse_cqhttp_notice: true, //是否使用cqhttp標準的notice事件格式host: "0.0.0.0", //監聽主機名port: 5700, //端口use_http: false, //啟用httpuse_ws: false, //啟用正向ws,和http使用相同地址和端口access_token: "", //訪問api的tokensecret: "", //上報數據的sha1簽名密鑰post_timeout: 30, //post超時時間(秒)post_message_format:"array", //"string"或"array"enable_cors: false, //是否允許跨域請求enable_heartbeat: false, //是否啟用ws心跳heartbeat_interval: 15000, //ws心跳間隔(毫秒)rate_limit_interval:500, //使用_rate_limited后綴限速調用api的排隊間隔時間(毫秒)event_filter: "", //json格式的事件過濾器文件路徑post_url: [ //上報地址,可以添加多個url"http://127.0.0.1:80",],ws_reverse_url: [ //反向ws地址,可以添加多個url"ws://127.0.0.1:5702/qq/receive",],ws_reverse_reconnect_interval: 3000, //反向ws斷線重連間隔(毫秒),設為負數直接不重連ws_reverse_reconnect_on_code_1000: true, //反向ws是否在關閉狀態碼為1000的時候重連},//每個賬號的單獨配置(用于覆蓋通用配置)22829866277: {}, };// 安全注意: // 監聽0.0.0.0表示監聽網卡上的所有地址。如果你的機器可以通過公網ip直接訪問,同時你也沒有設定access_token,則被認為是極不安全的。 // 你應該知道這樣做會導致以下后果:任何人都可以無限制地訪問你的Bot的所有API接口。 // 如果只需要在本地訪問,建議將監聽地址改為localhost。需要通過公網訪問,你最好設定access_token。此處改為自己的傻妞地址和端口。如果時在
本服務器就是127.0.0.1:端口號/qq/receive
修改保存后在運行一次
# startup > oicq <account>?就可以登錄qq,如果沒有出現登錄,就ctrl+c重復幾次
登錄之后就可以連接上了。
第三步:就是進程
上一步連接上之后ctrl+c然后運行
# startup with pm2 > pm2 start "oicq <account>"之后可以pm2 log 查看日志,如果日志顯示連接失敗就從第二部重復操作。
方法二:傻妞群主給的方案
//node-onebot機器人接入到傻妞1.克隆倉庫 git clone https://github.com/takayama-lily/node-onebot.git2.進入倉庫 cd node-onebot3.創建配置文件 vi config.js module.exports = {//通用配置general: {platform: 1, log_level: "info", //trace,debug,info,warn,error,markuse_cqhttp_notice: false, //是否使用cqhttp標準的notice事件格式host: "0.0.0.0", //監聽主機名port: 5700, //端口use_http: false, //啟用httpuse_ws: false, //啟用正向ws,和http使用相同地址和端口access_token: "", //訪問api的tokensecret: "", //上報數據的sha1簽名密鑰post_timeout: 30, //post超時時間(秒)post_message_format:"array", //"string"或"array"enable_cors: false, //是否允許跨域請求enable_heartbeat: false, //是否啟用ws心跳heartbeat_interval: 15000, //ws心跳間隔(毫秒)rate_limit_interval:500, //使用_rate_limited后綴限速調用api的排隊間隔時間(毫秒)event_filter: "", //json格式的事件過濾器文件路徑post_url: [ //上報地址,可以添加多個url// "http://your.address.com:80",],ws_reverse_url: [ //反向ws地址,可以添加多個url"ws://127.0.0.1:8080/qq/receive",],ws_reverse_reconnect_interval: 3000, //反向ws斷線重連間隔(毫秒),設為負數直接不重連ws_reverse_reconnect_on_code_1000: true, //反向ws是否在關閉狀態碼為1000的時候重連},//每個賬號的單獨配置(用于覆蓋通用配置)147258369: {}, };5.登錄,根據提示操作 node main 你的qq賬號6.創建系統服務文件 vi /etc/systemd/system/oicq.service[Unit] Description=qq bot After=network.target mysql.service mariadb.service mysqld.service [Service] Type=common ExecStart=/usr/local/node/bin/node /usr/local/node-onebot/main.js 你的qq賬號 User=root Group=root[Install] WantedBy=multi-user.target Alias=oicq.service7.啟用服務 systemctl enable oicq8.運行服務 systemctl start oicq9.查看服務狀態 systemctl status oicq這個方法要注意的是第六步的系統文件里面這一段話
ExecStart=/usr/local/node/bin/node /usr/local/node-onebot/main.js 你的qq賬號這一段話中/usr/local/node/bin/node? //要換成你自己的node.js位置。
/usr/local/node-onebot/main.js 你的qq賬號? //換成自己的安裝地址
第一次寫文章,寫的感覺挺爛的,希望能幫助到大家。
請大家多多指教,文章僅用于學習。
總結
以上是生活随笔為你收集整理的node-onebot对接傻妞新版的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 医院管理系统mysql课程设计_数据库(
- 下一篇: 国潮来袭 农产品变身国潮三大方式