機(jī)器人被封了?DOW顛覆更新拯救你!
加我進(jìn)AI討論學(xué)習(xí)群,公眾號(hào)右下角“聯(lián)系方式”\x0d\x0a關(guān)注發(fā)送“知識(shí)精華”,可獲得免費(fèi)的知識(shí)鏈接地址
原標(biāo)題:機(jī)器人被封了?DOW顛覆更新拯救你!
文章來(lái)源:金子的知識(shí)星球
內(nèi)容字?jǐn)?shù):5922字
微信機(jī)器人升級(jí):告別itchat,擁抱GEWE協(xié)議
大家好!最近因?yàn)槟昵笆聞?wù)繁忙,公眾號(hào)更新斷更了近一個(gè)月,實(shí)在抱歉!元旦期間的大規(guī)模微信檢測(cè),讓許多基于itchat協(xié)議的微信機(jī)器人“陣亡”,相信不少朋友都深有體會(huì)。今天,我們就來(lái)聊聊這次升級(jí)以及如何應(yīng)對(duì)。
itchat協(xié)議的限制與GEWE協(xié)議的優(yōu)勢(shì)
之前大家常用的COW或DOW等微信機(jī)器人,大多依賴于itchat庫(kù)。itchat是一個(gè)基于Web協(xié)議的庫(kù),這意味著它只能在網(wǎng)頁(yè)端登錄微信。所以,當(dāng)你在手機(jī)上登錄微信后,會(huì)看到“網(wǎng)頁(yè)微信已登錄”的提示。這次微信的檢測(cè)正是針對(duì)這種Web協(xié)議的登錄方式,所以很多機(jī)器人紛紛“倒下”。
為了解決這個(gè)問(wèn)題,我們升級(jí)到了GEWE協(xié)議。GEWE是一個(gè)基于iPad協(xié)議的庫(kù),它不在微信檢測(cè)的范圍內(nèi)。我個(gè)人測(cè)試使用了一個(gè)多月,運(yùn)行穩(wěn)定,沒(méi)有任何異常。
GEWE協(xié)議相比itchat,擁有許多顯著優(yōu)勢(shì):它提供了更豐富的接口,例如發(fā)送語(yǔ)音消息、操作朋友圈、自動(dòng)拉人進(jìn)群等功能,這些都是itchat所不具備的。雖然需要一定的編程基礎(chǔ)來(lái)接入這些新功能,但對(duì)于學(xué)習(xí)過(guò)AI編程的朋友來(lái)說(shuō),難度并不大。即使像我這樣代碼能力一般的人,也已經(jīng)成功接入了大部分功能。
當(dāng)然,GEWE協(xié)議也有一些不足之處。由于協(xié)議的改變,很多舊的插件和接口都無(wú)法直接使用,需要重新進(jìn)行封裝??梢院?jiǎn)單理解為,原來(lái)的接口是A,現(xiàn)在變成了B,名字都變了,自然就識(shí)別不到了。
GEWE協(xié)議部署指南:Docker一鍵部署
接下來(lái),我們進(jìn)入實(shí)戰(zhàn)環(huán)節(jié),講解如何部署GEWE協(xié)議及相關(guān)機(jī)器人。如果你熟悉我的以往教程,那么接下來(lái)的步驟應(yīng)該很容易理解。對(duì)于新手來(lái)說(shuō),建議先申請(qǐng)一個(gè)騰訊云或其他云服務(wù)商的服務(wù)器,并安裝寶塔面板,這方面可以參考我之前的COW初級(jí)使用教程。
1. 部署GEWE
我們使用Docker來(lái)部署GEWE,方便快捷。以下步驟基于寶塔面板,無(wú)需復(fù)雜的命令行操作。
首先,你需要下載GEWE鏡像。可以選擇阿里云鏡像倉(cāng)庫(kù)或GitHub鏡像倉(cāng)庫(kù):
阿里云鏡像倉(cāng)庫(kù)(國(guó)內(nèi)):
docker pull registry.cn-chengdu.aliyuncs.com/tu1h/wechotd:alpine
docker tag registry.cn-chengdu.aliyuncs.com/tu1h/wechotd:alpine gewe
GitHub鏡像倉(cāng)庫(kù):
docker pull ghcr.io/tu1h/wechotd/wechotd:alpine
docker tag ghcr.io/tu1h/wechotd/wechotd:alpine gewe
然后,在root用戶下創(chuàng)建一個(gè)名為gewechat
的文件夾,并在其中創(chuàng)建data
文件夾和docker-compose.yml
文件。將以下內(nèi)容復(fù)制到docker-compose.yml
文件中:
version: '3' services: gewechat: image: gewe container_name: gewe volumes: - ./data:/root/temp ports: - "2531:2531" - "2532:2532" networks: - gewe-network extra_hosts: - "host.docker.internal:host-gateway" restart: always networks: gewe-network: driver: bridge
在寶塔面板的終端中,執(zhí)行以下命令啟動(dòng)Docker:
docker-compose up -d
看到啟動(dòng)日志后,查看Docker容器是否已成功啟動(dòng),這表示GEWE部署完成。
2. 部署Dify-On-Wechat (DOW)
關(guān)于DOW的下載和安裝,請(qǐng)參考我之前的教程。這里主要講解如何連接GEWE。你需要在config.json
文件中配置以下參數(shù)(請(qǐng)根據(jù)實(shí)際情況修改IP地址和端口號(hào)):
{ "channel_type": "gewechat","gewechat_app_id": "","gewechat_token": "","gewechat_base_url": "http://172.17.0.1:2531/v2/api","gewechat_callback_url": "http://172.17.0.1:9919/v2/api/callback/collect","gewechat_download_url": "http://172.17.0.1:2532/download" }
請(qǐng)注意,gewechat_callback_url
的IP地址不能使用127.0.0.1
或localhost
,必須是局域網(wǎng)IP或公網(wǎng)IP。9919端口是DOW服務(wù)的端口,如果使用Docker部署,請(qǐng)確保將該端口映射到宿主機(jī)。
啟動(dòng)成功后,token和appid會(huì)自動(dòng)保存到config.json
文件中。
如果遇到錯(cuò)誤,請(qǐng)檢查網(wǎng)絡(luò)配置,例如代理、服務(wù)器位置、回調(diào)地址等。如果手機(jī)上退出了iPad微信,需要?jiǎng)h除config文件中GEWE的id和token。
語(yǔ)音消息支持及其他限制
GEWE目前支持發(fā)送語(yǔ)音消息,但僅限于20秒以內(nèi)的語(yǔ)音。機(jī)器人發(fā)送語(yǔ)音消息則沒(méi)有時(shí)長(zhǎng)限制。語(yǔ)音功能需要在Dify應(yīng)用中開(kāi)啟,并安裝ffmpeg依賴(Docker部署已集成)。
需要注意的是,GEWE目前僅支持接收和發(fā)送文字消息和圖片消息,其他消息類型支持還在逐步完善中。此外,為了保證穩(wěn)定性,建議將GEWE服務(wù)部署在與登錄微信的手機(jī)同一省份的服務(wù)器或電腦上。
本項(xiàng)目?jī)H供個(gè)人學(xué)習(xí)和娛樂(lè)使用,請(qǐng)勿用于商業(yè)用途。
結(jié)語(yǔ)
希望這篇教程能夠幫助大家順利升級(jí)微信機(jī)器人。如有任何疑問(wèn),歡迎在評(píng)論區(qū)留言或加入我們的AI學(xué)習(xí)交流群。
聯(lián)系作者
文章來(lái)源:金子的知識(shí)星球
作者微信:
作者簡(jiǎn)介:AIGC研究者,游戲制作人。深耕音舞賽道10余年,負(fù)責(zé)網(wǎng)易《勁舞時(shí)代》、《AU Beat》、其他地區(qū)的《Party Masters》等多個(gè)產(chǎn)品。 在文案、流程圖、腦圖、2D繪畫(huà)、LOGO設(shè)計(jì)等多方面,驗(yàn)證了AI的使用價(jià)值。
相關(guān)文章
暫無(wú)評(píng)論
AIGC熱點(diǎn)


全面、高效的AI工具產(chǎn)品情報(bào),發(fā)現(xiàn)和使用最酷的AI工具!
Ctrl + D 或 ? + D 收藏本站到瀏覽器書(shū)簽欄。