程序員導航站 :艾特網-iiter.cn
前言
前段時間寫了篇關於使用 nodejs
結合 wechaty
這個庫實現微信機器人的文章:
https://juejin.im/post/5e70d68651882549391358e1
但是有很多小夥伴被 web 協議
的微信無法登陸所限制,不能體驗開發 機器人
的樂趣。
於是便產生了這篇使用 iPad
協議的文章。
來介紹下 wechaty
康康官網的 Introduction
Wechaty 是一個開源的的 個人號 微信機器人接口,是一個使用 Typescript 構建的 Node.js 應用。支持多種微信接入方案,包括網頁,ipad,ios,windows, android 等。同時支持 Linux, Windows, Darwin(OSX/Mac) 和 Docker 多個平臺。
更多功能包括:
- 消息處理:關鍵詞回覆
- 羣管理:自動入羣,拉人,踢人
- 自動處理好友請求
- 智能對話:通過簡單配置,即可加入智能對話系統,完成指定任務
… 請自行開腦洞
據說是只需要 6 行代碼,就可以 通過 wechaty
搭建一個微信機器人功能 ,用來自動管理微信消息。
在上一篇文章中,我們使用的是 web協議
,而大部分小夥伴的微信 web端
是無法登陸的,驗證是否被 web協議
限制登陸可打開 https://wx.qq.com 掃碼查看。
不能登錄 web 版微信,難道就不能用了嗎!??
答案是否定的! wechaty
官方除了 web 協議,還開發了基於 iPad
、 ios
等協議。
But !!!
非 web版協議
是收費的!
怎麼收費呢?說是倆百塊錢一個月,會給你發放有效期爲一個月的 Token,完了你可以用這個 Token 愉快的使用 非web版協議
去構建你的機器人。
那有人就說了,你說了半天等於放屁。
我全身上下就一個字。
一個月兩百塊錢我用來幹啥事不行?買個排骨吃它不香嗎?
別急,且聽老夫慢慢說來。
排骨得吃,機器人也能寫。
如何獲取免費 Token
官方文檔中提供了免費 token 的獲取方式。
https://github.com/juzibot/Welcome/wiki/Support-Developers
人家是醬紫說的:
We provide a free access using iPad protocol for the developers who have a strong will and ability to build a valuable chatbot for users.
大概意思是:我們可以爲了有強烈意願和能力爲 用戶
構建 有價值
的聊天機器人的開發人員
提供免費使用 iPad
協議的權限
看到沒得,這就是我們身爲程序員爲用戶
爭來的權力。
Any developers can add JuziBOT Inc’s staff ( Wechat number : botorange_yeah ) as a Wechat friend. You will receive a review form after adding. If you pass the review and willing to write a blog in Wechaty , you can use our iPad protocol for free!
人家害說了,讓你添加 botorange_yeah
爲微信好友,填寫個審查表,就會給你免費發放 15
天的 Token。
15 天后,需要提交一個 MVP(最小可行化產品)的 github 倉庫,他們會 fork 到 wechaty 社區中,併爲您提供長期免費的 Token。
完事之後就加好友,獲取 Token。
克隆倉庫代碼 https://github.com/isnl/wechat-robot-ipad
安裝依賴必須的吧?
npm install
聽我的,npm
裝不上咱就換 cnpm
好嗎?
隔壁王大媽說說點個 star
,依賴會裝的賊快。
目錄結構
config
文件夾存放公共配置文件以及superagent
請求相關配置imgs
存放相關圖片listeners
存放機器人初始化後一系列事件處理(分模塊)on-friendship.js
處理好友請求on-login.js
處理登錄on-message.js
處理用戶消息、羣消息on-scan.js
處理登錄二維碼
schedule
對定時任務node-schedule
庫進行了封裝superagent
存放所有的數據請求、接口封裝都在此utils
公用方法的封裝app.js
入口文件
如何使用
-
修改
config
配置
打開config/index.js
文件,將裏面的配置改爲自己的。 -
修改天行接口配置
天行 api 官網 :https://tianapi.com/
註冊成功後,申請以下接口:註冊後請打開
superagent/index.js
,將頂部APIKEY
改爲自己天行 api 的key
即可
其他免費接口可隨意申請,不想用天行的接口可以刪掉對應的關鍵字。
emmm…
然後就可以運行了
npm start
終端會出現一個二維碼,掃碼登錄即可。
已實現功能
- 發送加羣關鍵字,自動拉人進羣。
- 毒雞湯
- 神回覆
- 英語一句話
- 大小寫轉換
- rgb 與 16 進制顏色互轉
- 天氣查詢
- 新冠肺炎各省市實時數據
- 發送關鍵字,踢人
列幾個有趣的功能,可以去參考着實現:
- 快遞查詢
- 隨機一張妹子圖
- 每天早上 9 點發送實時熱搜新聞至指定羣 / 指定微信
- 羣聊邀請統計功能(商業)
- 採集京東聯盟優惠券羣消息,轉鏈後發送到自己推廣的羣(商業)
…
- 看到這裏啦,點個
贊
支持一下吧。 - 關注公衆號
前端糖果屋
互相學習鴨。 - 添加小助手微信
uumovies
,拉你進技術交流羣
探討人生。