本篇文章主要討論微信機器人的開發(fā)經驗。微信機器人的功能需求很簡單,業(yè)務代碼賊好擼秀菱,但是如何和微信交互呢振诬,如何取到微信數(shù)據(jù)調用相關聊天接口呢,具體分為以下幾種技術類型:
1.微信Web接口
17年后微信都不支持了衍菱,不過還是有一些沤瑁×的star 都是過W star的項目偏螺,可惜荒廢了。
2.手機Xposed和電腦 PC
都是HOOK技術,是需要懂匯編帖渠,懂c或c++才可以開發(fā)自定義艺谆,重點是還需要公司去買采購刷機的手機和windows服務器棵红,一個號成本幾千塊胀糜,條件不允許啊B瓶病雄人!
3.E云管家方案
這個方案目前可使用的內容上來說,是功能最全的念赶,而且安全性相比其他方案更好础钠,安全性、穩(wěn)定性比較優(yōu)秀叉谜。難點是旗吁,目前并沒有被公開,自己分析代價很大停局,需要企業(yè)合作很钓。測試地址:https://wkteam.cn/
請求URL:
http://域名地址/sendApplet
請求方式:
POST
請求頭Headers:
Content-Type:application/json
Authorization:login接口返回
參數(shù):
參數(shù)名必選類型說明
wId是string登錄實例標識
wcId是string接收方微信id/群id
imgUrl否string小程序封面圖
(50KB以內的png/jpg)
content是string小程序xml內容,?(小程序xml需先收集入庫香府,也就是說將想要發(fā)送的小程序手動發(fā)送給機器人微信,此時消息回調中獲取xml內容码倦,xml去掉部分僅截取appmsg開頭與結尾的企孩,具體請看請求參數(shù)示例,且xml中可以自定義任意參數(shù),例如:攜帶參數(shù)的跳轉地址袁稽,縮略圖等)?
返回數(shù)據(jù):
參數(shù)名類型說明
codestring1000成功勿璃,1001失敗
msgstring反饋信息
data??
data.typeint類型
data.msgIdlong消息msgId
data.newMsgIdlong消息newMsgId
data.createTimelong消息發(fā)送時間戳
data.wcIdstring消息接收方id
請求參數(shù)示例
{"wId":"0000016f-78bd-21c8-0001-29c4d004ae46","wcId":"jack_623555049","imgUrl":"http://photocdn.sohu.com/20120323/Img338614056.jpg","content":"<appmsg appid=\"\" sdkver=\"0\">\n\t\t<title>云鋪海購</title>\n\t\t<des>云鋪海購</des>\n\t\t<type>33</type>\n\t\t<url>https://mp.weixin.qq.com/mp/waerrpage?appid=wx07af7e375d21a08c&type=upgrade&upgradetype=3#wechat_redirect</url>\n\t\t<appattach>\n\t\t\t<cdnthumburl>3057020100044b30490201000204502c9b9f02032f55f902040ed15eda0204632dc841042461316335306262662d393337322d343361332d383631312d6166613731306362643764300204011400030201000405004c51e500</cdnthumburl>\n\t\t\t<cdnthumbmd5>e1c43f713ebc389dc8f89690aeb7ecb4</cdnthumbmd5>\n\t\t\t<cdnthumblength>58598</cdnthumblength>\n\t\t\t<cdnthumbwidth>720</cdnthumbwidth>\n\t\t\t<cdnthumbheight>576</cdnthumbheight>\n\t\t\t<cdnthumbaeskey>125805800e40722f240220286e3ef74d</cdnthumbaeskey>\n\t\t\t<aeskey>125805800e40722f240220286e3ef74d</aeskey>\n\t\t\t<encryver>0</encryver>\n\t\t\t<filekey>wxid_ctqh94e1ahe722_26_1663944768</filekey>\n\t\t</appattach>\n\t\t<sourceusername>gh_12566478d436@app</sourceusername>\n\t\t<sourcedisplayname>云鋪海購</sourcedisplayname>\n\t\t<md5>e1c43f713ebc389dc8f89690aeb7ecb4</md5>\n\t\t<recorditem><![CDATA[(null)]]></recorditem>\n\t\t<weappinfo>\n\t\t\t<username><![CDATA[gh_12566478d436@app]]></username>\n\t\t\t<appid><![CDATA[wx07af7e375d21a08c]]></appid>\n\t\t\t<type>2</type>\n\t\t\t<version>14</version>\n\t\t\t<weappiconurl><![CDATA[http://mmbiz.qpic.cn/mmbiz_png/uLxzSQcibsGzibyibBMLZhib1ick4RhO4ic203iaKMMSL35riafKicdyy8OX0ibjeDrs4Vka2KwTibiaPiaeXBKDQ24pblJO6mg/640?wx_fmt=png&wxfrom=200]]></weappiconurl>\n\t\t\t<pagepath><![CDATA[pages/home/dashboard/index.html?shopAutoEnter=1&is_share=1&share_cmpt=native_wechat&kdt_id=109702811&from_uuid=FgPTe5LTPr00dw21663912217667]]></pagepath>\n\t\t\t<shareId><![CDATA[0_wx07af7e375d21a08c_5a36c4cc14fb8effefecbd92a1f291a6_1663944761_0]]></shareId>\n\t\t\t<appservicetype>0</appservicetype>\n\t\t\t<brandofficialflag>0</brandofficialflag>\n\t\t\t<showRelievedBuyFlag>0</showRelievedBuyFlag>\n\t\t\t<subType>0</subType>\n\t\t\t<isprivatemessage>0</isprivatemessage>\n\t\t</weappinfo>\n\t</appmsg>"...///這個xml圖片的縮略圖過期? 可以調用CDN圖片上傳接口 自定義替換參數(shù)}
成功返回示例
{"code":"1000","message":"發(fā)送小程序成功","data":{"type":0,"msgId":697760545,"newMsgId":7645748705605226305,"createTime":1641458149,"wcId":"jack_623555049"}}
錯誤返回示例
{"message":"失敗","code":"1001","data":null}