nodejs 結合 wechaty 實現你的微信羣聊機器人二(iPad 協議)

掘友導航站 :艾特網-iiter.cn前端

開源地址: github.com/isnl/wechat…node

前言

前段時間寫了篇關於使用 nodejs 結合 wechaty 這個庫實現微信機器人的文章:android

juejin.im/post/5e70d6…ios

可是有不少小夥伴被 web 協議 的微信沒法登錄所限制,不能體驗開發 機器人 的樂趣。git

因而便產生了這篇使用 iPad 協議的文章。程序員

來介紹下 wechaty

康康官網的 Introductiongithub

Wechaty 是一個開源的的 我的號 微信機器人接口,是一個使用 Typescript 構建的 Node.js 應用。支持多種微信接入方案,包括網頁,ipad,ios,windows, android 等。同時支持 Linux, Windows, Darwin(OSX/Mac) 和 Docker 多個平臺。web

更多功能包括:npm

  • 消息處理:關鍵詞回覆
  • 羣管理:自動入羣,拉人,踢人
  • 自動處理好友請求
  • 智能對話:經過簡單配置,便可加入智能對話系統,完成指定任務
    ... 請自行開腦洞

聽說是隻須要 6 行代碼,就能夠 經過 wechaty 搭建一個微信機器人功能 ,用來自動管理微信消息。windows

在上一篇文章中,咱們使用的是 web協議 ,而大部分小夥伴的微信 web端是沒法登錄的,驗證是否被 web協議 限制登錄可打開 wx.qq.com 掃碼查看。

不能登陸 web 版微信,難道就不能用了嗎!??

答案是否認的! wechaty 官方除了 web 協議,還開發了基於 iPadios等協議。

But !!!

web版協議 是收費的!

怎麼收費呢?說是倆百塊錢一個月,會給你發放有效期爲一個月的 Token,完了你能夠用這個 Token 愉快的使用 非web版協議 去構建你的機器人。

那有人就說了,你說了半天等於放屁。

我全身上下就一個字。

一個月兩百塊錢我用來幹啥事不行?買個排骨吃它不香嗎?

別急,且聽老夫慢慢說來。

排骨得吃,機器人也能寫。

如何獲取免費 Token

官方文檔中提供了免費 token 的獲取方式。 github.com/juzibot/Wel…

人家是醬紫說的:

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
申請Token

完事以後就加好友,獲取 Token。

克隆倉庫代碼 github.com/isnl/wechat…

安裝依賴必須的吧?

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 入口文件

如何使用

  1. 修改config配置 打開config/index.js 文件,將裏面的配置改成本身的。

  2. 修改天行接口配置 天行 api 官網 :tianapi.com/
    註冊成功後,申請如下接口:

    註冊後請打開superagent/index.js,將頂部APIKEY改成本身天行 api 的key便可

其餘免費接口可隨意申請,不想用天行的接口能夠刪掉對應的關鍵字。

emmm...

而後就能夠運行了

npm start
複製代碼

終端會出現一個二維碼,掃碼登陸便可。

看看效果
看看效果

已實現功能

  • 發送加羣關鍵字,自動拉人進羣。
  • 毒雞湯
  • 神回覆
  • 英語一句話
  • 大小寫轉換
  • rgb 與 16 進制顏色互轉
  • 天氣查詢
  • 新冠肺炎各省市實時數據
  • 發送關鍵字,踢人

列幾個有趣的功能,能夠去參考着實現:

  • 快遞查詢
  • 隨機一張妹子圖
  • 天天早上 9 點發送實時熱搜新聞至指定羣 / 指定微信
  • 羣聊邀請統計功能(商業)
  • 採集京東聯盟優惠券羣消息,轉鏈後發送到本身推廣的羣(商業)
    ......
  1. 看到這裏啦,點個 支持一下吧。
  2. 關注公衆號 前端糖果屋 互相學習鴨。
  3. 添加小助手微信 uumovies ,拉你進 技術交流羣 探討人生。 公衆號
相關文章
相關標籤/搜索