wxhook

微信


[监控] 实时消息接收发送

<p>[TOC]</p> <h5>简要描述</h5> <ul> <li>接收实时消息, 本接口需自行搭建。用来接收微信实时消息。</li> </ul> <h5>如果没有指定消息回调URL。默认发送给以下URL地址</h5> <ul> <li><code>http://127.0.0.1:30000/api/user/recive_msg</code></li> </ul> <h5>发送方式</h5> <ul> <li>POST</li> </ul> <h5>发送参数 当https://www.showdoc.com.cn/ebaiwl/9204125262722344 接口传递参数为2 时</h5> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;wxid_123456&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;,     &amp;quot;pb_data&amp;quot;:&amp;quot;0A058C6EA223445F1C...&amp;quot;, }</code></pre> <h5>发送参数 当https://www.showdoc.com.cn/ebaiwl/9204125262722344 接口传递参数为1 时</h5> <h1>PC端 发送的消息</h1> <p><strong>PC发出文本消息</strong> 第一次 发送的内容</p> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:07:54&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;大佬666~&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;filehelper&amp;quot; }] }</code></pre> <p>第二次 发送成功后 收到 服务器返回的消息ID (msgid)</p> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:07:54&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;7029814402633277009&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;PC发文本消息成功&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;filehelper&amp;quot; }] }</code></pre> <p><strong>PC发出图片消息</strong> 第一次 发送的内容</p> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;0&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:09:19&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;3&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;8bb306d0ad78a2aa8cafe229dc304f38&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;filehelper&amp;quot;, &amp;quot;img_path&amp;quot;:&amp;quot;C:\\\\Users\\\\Administrator\\\\Documents\\\\WeChat Files\\\\thexed\\\\FileStorage\\\\Temp\\\\1677992958058.jpg&amp;quot; }] } </code></pre> <p>第二次 发送成功后 收到 服务器返回的消息ID (msgid)</p> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:09:20&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;3&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;8676825236427018921&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;PC发图片消息成功&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;filehelper&amp;quot; }] }</code></pre> <p><strong>PC发出文件/app消息</strong> 第一次 发送的内容</p> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;0&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:11:27&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;49&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;version.dll&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;filehelper&amp;quot;, &amp;quot;file_path&amp;quot;:&amp;quot;C:\\\\Users\\\\Administrator\\\\Desktop\\\\version.dll&amp;quot; }] }</code></pre> <p>第二次 发送成功后 收到 服务器返回的消息ID (msgid)</p> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:11:30&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;99&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;476728224034532762&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;PC发app/文件消息成功&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;filehelper&amp;quot; }] }</code></pre> <p><strong>PC发出视频消息</strong> 第一次 发送的内容</p> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;0&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:14:07&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;4&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;3057020100044b30490201000204911740bc02032f77f50204ab5b90db02046404251f042438373463386566632d396161312d346263642d383838392d3335613736613865396634610204011400030201000405004c550500&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;filehelper&amp;quot;, &amp;quot;video_path&amp;quot;:&amp;quot;C:\\\\Windows\\\\SystemApps\\\\Microsoft.Windows.CloudExperienceHost_cw5n1h2txyewy\\\\media\\\\oobe-intro.mp4&amp;quot; }] }</code></pre> <p>第二次 发送成功后 收到 服务器返回的消息ID (msgid)</p> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:14:11&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;36&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;3847230082234559699&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;PC发视频文件成功&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;&amp;quot; }] }</code></pre> <p><strong>切换聊天对象</strong></p> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:04:26&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;10000&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;切换聊天对象&amp;quot;, &amp;quot;current_wxid&amp;quot;:&amp;quot;filehelper&amp;quot;, &amp;quot;name&amp;quot;:&amp;quot;文件传输助手&amp;quot;, &amp;quot;nickname&amp;quot;:&amp;quot;&amp;quot; }] }</code></pre> <h1>PC端 收到的消息(文字)</h1> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-14 11:18:07&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;2936072064472736442&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;wxid_kqi...:\n111&amp;quot;, &amp;quot;fromtype&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;fromgid&amp;quot;:&amp;quot;438191..@chatroom&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;themid&amp;quot; }] } { &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-14 11:18:07&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;13430535177462202152&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;111&amp;quot;, &amp;quot;fromtype&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;fromgid&amp;quot;:&amp;quot;438..@chatroom&amp;quot;, &amp;quot;fromid&amp;quot;:&amp;quot;wxid_k..&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;themid&amp;quot; }] } </code></pre> <h1>PC端 收到的消息(图片)</h1> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:25:47&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;51&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;6229442408328493980&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;&amp;lt;msg&amp;gt;\n&amp;lt;op id='1'&amp;gt;\n&amp;lt;username&amp;gt;wxid_kq...&amp;lt;/username&amp;gt;\n&amp;lt;name&amp;gt;lastMessage&amp;lt;/name&amp;gt;\n&amp;lt;arg&amp;gt;{\&amp;quot;messageSvrId\&amp;quot;:\&amp;quot;0\&amp;quot;,\&amp;quot;MsgCreateTime\&amp;quot;:\&amp;quot;1677993947\&amp;quot;}&amp;lt;/arg&amp;gt;\n&amp;lt;/op&amp;gt;\n&amp;lt;/msg&amp;gt;&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;wxid_kq...&amp;quot; },{ &amp;quot;index&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:25:47&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;3&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;1205604146658880283&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;&amp;lt;?xml version=\&amp;quot;1.0\&amp;quot;?&amp;gt;\n&amp;lt;msg&amp;gt;\n\t&amp;lt;img aeskey=\&amp;quot;7c2724b850f88a..f40631abe\&amp;quot; encryver=\&amp;quot;1\&amp;quot; cdnthumbaeskey=\&amp;quot;7c2...f40631abe\&amp;quot; cdnthumburl=\&amp;quot;3057020..4640427db042461656539336534642d376661302d343136312d3..3738313836020401150a020201000405004c4f2900\&amp;quot; cdnthumblength=\&amp;quot;1994\&amp;quot; cdnthumbheight=\&amp;quot;120\&amp;quot; cdnthumbwidth=\&amp;quot;67\&amp;quot; cdnmidheight=\&amp;quot;0\&amp;quot; cdnmidwidth=\&amp;quot;0\&amp;quot; cdnhdheight=\&amp;quot;0\&amp;quot; cdnhdwidth=\&amp;quot;0\&amp;quot; cdnmidimgurl=\&amp;quot;3057020100..0a0202c4f2900\&amp;quot; length=\&amp;quot;273129\&amp;quot; md5=\&amp;quot;67025..90cc261\&amp;quot; hevc_mid_size=\&amp;quot;273129\&amp;quot; /&amp;gt;\n\t&amp;lt;platform_signature&amp;gt;&amp;lt;/platform_signature&amp;gt;\n\t&amp;lt;imgdatahash&amp;gt;&amp;lt;/imgdatahash&amp;gt;\n&amp;lt;/msg&amp;gt;\n&amp;quot;, &amp;quot;img_path&amp;quot;:&amp;quot;C:\\Users\\Administrator\\Documents\\WeChat Files\\themid\\FileStorage\\MsgAttach\\81a7f2695cd..599f\\Image\\2023-03\\e0f480bb..bfdd1e634.dat&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;wxid_kq..&amp;quot; }] } { &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;1957754625548008208&amp;quot;, &amp;quot;img_path&amp;quot;:&amp;quot;C:\\Users\\Administrator\\Documents\\WeChat Files\\themid\\FileStorage\\MsgAttach\\81a7..599f\\Image\\2023-03\\ba649..df2.dat&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:25:47&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;&amp;lt;?xml version=\&amp;quot;1.0\&amp;quot;?&amp;gt;\n&amp;lt;msg&amp;gt;\n\t&amp;lt;img aeskey=\&amp;quot;7c2724b..1abe\&amp;quot; encryver=\&amp;quot;1\&amp;quot; cdnthumbaeskey=\&amp;quot;7c272..abe\&amp;quot; cdnthumburl=\&amp;quot;3057020..c4f2900\&amp;quot; cdnthumblength=\&amp;quot;1994\&amp;quot; cdnthumbheight=\&amp;quot;120\&amp;quot; cdnthumbwidth=\&amp;quot;67\&amp;quot; cdnmidheight=\&amp;quot;0\&amp;quot; cdnmidwidth=\&amp;quot;0\&amp;quot; cdnhdheight=\&amp;quot;0\&amp;quot; cdnhdwidth=\&amp;quot;0\&amp;quot; cdnmidimgurl=\&amp;quot;3057020..2900\&amp;quot; length=\&amp;quot;273129\&amp;quot; md5=\&amp;quot;67..c261\&amp;quot; hevc_mid_size=\&amp;quot;273129\&amp;quot; /&amp;gt;\n\t&amp;lt;platform_signature&amp;gt;&amp;lt;/platform_signature&amp;gt;\n\t&amp;lt;imgdatahash&amp;gt;&amp;lt;/imgdatahash&amp;gt;\n&amp;lt;/msg&amp;gt;\n&amp;quot; } </code></pre> <h1>PC端 收到的消息(GIF动图)</h1> <pre><code> { &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2022-12-22 18:15:08&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;47&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;9168432254856816012&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;&amp;lt;msg&amp;gt;&amp;lt;emoji fromusername = \&amp;quot;thekid\&amp;quot; tousername = \&amp;quot;themid\&amp;quot; type=\&amp;quot;2\&amp;quot; idbuffer=\&amp;quot;media:0_0\&amp;quot; md5=\&amp;quot;97365663bee2eb41ea0b3ad50cbe9dd2\&amp;quot; len = \&amp;quot;439919\&amp;quot; productid=\&amp;quot;\&amp;quot; androidmd5=\&amp;quot;97365663bee2eb41ea0b3ad50cbe9dd2\&amp;quot; androidlen=\&amp;quot;439919\&amp;quot; s60v3md5 = \&amp;quot;97365663bee2eb41ea0b3ad50cbe9dd2\&amp;quot; s60v3len=\&amp;quot;439919\&amp;quot; s60v5md5 = \&amp;quot;97365663bee2eb41ea0b3ad50cbe9dd2\&amp;quot; s60v5len=\&amp;quot;439919\&amp;quot; cdnurl = \&amp;quot;http://vweixinf.tc.qq.com/110/20401/stodownload?m=97365663bee2eb41ea0b3ad50cbe9dd2&amp;amp;filekey=30440201010430302e02016e0402535a04203937333635363633626565326562343165613062336164353063626539646432020306b66f040d00000004627466730000000131&amp;amp;hy=SZ&amp;amp;storeid=323032313035303731393134333530303033653932336261623532663833353335383538303930303030303036653031303034666231&amp;amp;ef=1&amp;amp;bizid=1022\&amp;quot; designerid = \&amp;quot;\&amp;quot; thumburl = \&amp;quot;\&amp;quot; encrypturl = \&amp;quot;http://vweixinf.tc.qq.com/110/20402/stodownload?m=ea1bd1936ce3281e92a72ed45653a768&amp;amp;filekey=30440201010430302e02016e0402535a04206561316264313933366365333238316539326137326564343536353361373638020306b670040d00000004627466730000000131&amp;amp;hy=SZ&amp;amp;storeid=323032313035303731393134333530303034376139626261623532663833353335383538303930303030303036653032303034666232&amp;amp;ef=2&amp;amp;bizid=1022\&amp;quot; aeskey= \&amp;quot;658d8cd15a6d4573990cd63ebb0d4e70\&amp;quot; externurl = \&amp;quot;http://vweixinf.tc.qq.com/110/20403/stodownload?m=bf191d0d4bc5d7de00a08b16960c3c74&amp;amp;filekey=30440201010430302e02016e0402535a0420626631393164306434626335643764653030613038623136393630633363373402030422c0040d00000004627466730000000131&amp;amp;hy=SZ&amp;amp;storeid=323032313035303731393134333530303036353639326261623532663833353335383538303930303030303036653033303034666233&amp;amp;ef=3&amp;amp;bizid=1022\&amp;quot; externmd5 = \&amp;quot;870b23321c54bce14f843a037a746989\&amp;quot; width= \&amp;quot;512\&amp;quot; height= \&amp;quot;512\&amp;quot; tpurl= \&amp;quot;\&amp;quot; tpauthkey= \&amp;quot;\&amp;quot; attachedtext= \&amp;quot;\&amp;quot; attachedtextcolor= \&amp;quot;\&amp;quot; lensid= \&amp;quot;\&amp;quot; emojiattr= \&amp;quot;\&amp;quot; linkid= \&amp;quot;\&amp;quot; desc= \&amp;quot;\&amp;quot; &amp;gt;&amp;lt;/emoji&amp;gt; &amp;lt;gameext type=\&amp;quot;0\&amp;quot; content=\&amp;quot;0\&amp;quot; &amp;gt;&amp;lt;/gameext&amp;gt;&amp;lt;/msg&amp;gt;&amp;quot;, &amp;quot;gif_url&amp;quot;:&amp;quot;http://vweixinf.tc.qq.com/110/20401/stodownload?m=97365663bee2eb41ea0b3ad50cbe9dd2&amp;amp;filekey=30440201010430302e02016e0402535a04203937333635363633626565326562343165613062336164353063626539646432020306b66f040d00000004627466730000000131&amp;amp;hy=SZ&amp;amp;storeid=323032313035303731393134333530303033653932336261623532663833353335383538303930303030303036653031303034666231&amp;amp;ef=1&amp;amp;bizid=1022&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;thekid&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;tonickname&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;toname&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;tohead&amp;quot;:&amp;quot;&amp;quot; }] }</code></pre> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;10116766129219189887&amp;quot;, &amp;quot;gif_url&amp;quot;:&amp;quot;http://vweixinf.tc.qq.com/110/20401/stodownload?m=97365663bee2eb41ea0b3ad50cbe9dd2&amp;amp;filekey=30440201010430302e02016e0402535a04203937333635363633626565326562343165613062336164353063626539646432020306b66f040d00000004627466730000000131&amp;amp;hy=SZ&amp;amp;storeid=323032313035303731393134333530303033653932336261623532663833353335383538303930303030303036653031303034666231&amp;amp;ef=1&amp;amp;bizid=1022&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2022-12-22 18:15:08&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;&amp;lt;msg&amp;gt;&amp;lt;emoji fromusername = \&amp;quot;thekid\&amp;quot; tousername = \&amp;quot;themid\&amp;quot; type=\&amp;quot;2\&amp;quot; idbuffer=\&amp;quot;media:0_0\&amp;quot; md5=\&amp;quot;97365663bee2eb41ea0b3ad50cbe9dd2\&amp;quot; len = \&amp;quot;439919\&amp;quot; productid=\&amp;quot;\&amp;quot; androidmd5=\&amp;quot;97365663bee2eb41ea0b3ad50cbe9dd2\&amp;quot; androidlen=\&amp;quot;439919\&amp;quot; s60v3md5 = \&amp;quot;97365663bee2eb41ea0b3ad50cbe9dd2\&amp;quot; s60v3len=\&amp;quot;439919\&amp;quot; s60v5md5 = \&amp;quot;97365663bee2eb41ea0b3ad50cbe9dd2\&amp;quot; s60v5len=\&amp;quot;439919\&amp;quot; cdnurl = \&amp;quot;http://vweixinf.tc.qq.com/110/20401/stodownload?m=97365663bee2eb41ea0b3ad50cbe9dd2&amp;amp;filekey=30440201010430302e02016e0402535a04203937333635363633626565326562343165613062336164353063626539646432020306b66f040d00000004627466730000000131&amp;amp;hy=SZ&amp;amp;storeid=323032313035303731393134333530303033653932336261623532663833353335383538303930303030303036653031303034666231&amp;amp;ef=1&amp;amp;bizid=1022\&amp;quot; designerid = \&amp;quot;\&amp;quot; thumburl = \&amp;quot;\&amp;quot; encrypturl = \&amp;quot;http://vweixinf.tc.qq.com/110/20402/stodownload?m=ea1bd1936ce3281e92a72ed45653a768&amp;amp;filekey=30440201010430302e02016e0402535a04206561316264313933366365333238316539326137326564343536353361373638020306b670040d00000004627466730000000131&amp;amp;hy=SZ&amp;amp;storeid=323032313035303731393134333530303034376139626261623532663833353335383538303930303030303036653032303034666232&amp;amp;ef=2&amp;amp;bizid=1022\&amp;quot; aeskey= \&amp;quot;658d8cd15a6d4573990cd63ebb0d4e70\&amp;quot; externurl = \&amp;quot;http://vweixinf.tc.qq.com/110/20403/stodownload?m=bf191d0d4bc5d7de00a08b16960c3c74&amp;amp;filekey=30440201010430302e02016e0402535a0420626631393164306434626335643764653030613038623136393630633363373402030422c0040d00000004627466730000000131&amp;amp;hy=SZ&amp;amp;storeid=323032313035303731393134333530303036353639326261623532663833353335383538303930303030303036653033303034666233&amp;amp;ef=3&amp;amp;bizid=1022\&amp;quot; externmd5 = \&amp;quot;870b23321c54bce14f843a037a746989\&amp;quot; width= \&amp;quot;512\&amp;quot; height= \&amp;quot;512\&amp;quot; tpurl= \&amp;quot;\&amp;quot; tpauthkey= \&amp;quot;\&amp;quot; attachedtext= \&amp;quot;\&amp;quot; attachedtextcolor= \&amp;quot;\&amp;quot; lensid= \&amp;quot;\&amp;quot; emojiattr= \&amp;quot;\&amp;quot; linkid= \&amp;quot;\&amp;quot; desc= \&amp;quot;\&amp;quot; &amp;gt;&amp;lt;/emoji&amp;gt; &amp;lt;gameext type=\&amp;quot;0\&amp;quot; content=\&amp;quot;0\&amp;quot; &amp;gt;&amp;lt;/gameext&amp;gt;&amp;lt;/msg&amp;gt;&amp;quot; }</code></pre> <h1>PC端 收到的消息(语音消息)</h1> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:19:05&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;34&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;3921037281184911662&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;&amp;lt;msg&amp;gt;&amp;lt;voicemsg endflag=\&amp;quot;1\&amp;quot; cancelflag=\&amp;quot;0\&amp;quot; forwardflag=\&amp;quot;0\&amp;quot; voiceformat=\&amp;quot;4\&amp;quot; voicelength=\&amp;quot;1980\&amp;quot; length=\&amp;quot;2972\&amp;quot; bufid=\&amp;quot;0\&amp;quot; aeskey=\&amp;quot;18987a920fd...ae5b2b6a245\&amp;quot; voiceurl=\&amp;quot;305202010004...4000f0201000400\&amp;quot; voicemd5=\&amp;quot;\&amp;quot; clientmsgid=\&amp;quot;49026462e24bee876...3cb70cthemid_19_1677993542\&amp;quot; fromusername=\&amp;quot;wxid_kqi...\&amp;quot; /&amp;gt;&amp;lt;/msg&amp;gt;&amp;quot;, &amp;quot;voip_data&amp;quot;:&amp;quot;02232153494C4B5F56331200A738B8AACFF7B149A2093860..&amp;quot;, &amp;quot;fromwxid&amp;quot;:&amp;quot;wxid_kqi..2&amp;quot;, &amp;quot;toid&amp;quot;:&amp;quot;themid&amp;quot; }] }</code></pre> <h1>PC端 收到的消息(退出登陆微信)</h1> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;themid&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-03-05 13:23:06&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;10000&amp;quot;, &amp;quot;msgsvrid&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;退出登录微信&amp;quot; }] } </code></pre> <h1>PC端 拉人进群通知</h1> <pre><code>{ &amp;quot;ServerPort&amp;quot;:&amp;quot;30001&amp;quot;, &amp;quot;selfwxid&amp;quot;:&amp;quot;wxid_kqis...&amp;quot;, &amp;quot;sendorrecv&amp;quot;:&amp;quot;2&amp;quot;, &amp;quot;msgnumber&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;msglist&amp;quot;:[{ &amp;quot;index&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;time&amp;quot;:&amp;quot;2023-01-09 17:23:26&amp;quot;, &amp;quot;msgtype&amp;quot;:&amp;quot;20001&amp;quot;, &amp;quot;msg&amp;quot;:&amp;quot;Everything is OK&amp;quot;, &amp;quot;gid&amp;quot;:&amp;quot;43202784070@chatroom&amp;quot; }] }</code></pre> <h5>参数说明</h5> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ServerPort</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>发送消息的端口默认30001,如果是30002则代表第二个微信</td> </tr> <tr> <td style="text-align: left;">selfwxid</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>本人微信ID</td> </tr> <tr> <td style="text-align: left;">sendorrecv</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>1=收到的消息 &lt;/br&gt;2=发送的消息</td> </tr> <tr> <td style="text-align: left;">msgnumber</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>本次收到/发送的消息数量</td> </tr> <tr> <td style="text-align: left;">businesstype</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>业务类型代码</td> </tr> <tr> <td style="text-align: left;">businessdata</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>业务数据(16进制protobuf文本)</td> </tr> <tr> <td style="text-align: left;">time</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>收到消息的时间</td> </tr> <tr> <td style="text-align: left;">msgtype</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>消息类型代码</td> </tr> <tr> <td style="text-align: left;">device</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>设备代码 手机=1 其他=0</td> </tr> <tr> <td style="text-align: left;">fromtype</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>个人消息=1 群消息=2</td> </tr> <tr> <td style="text-align: left;">fromwxid</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>发送方微信ID</td> </tr> <tr> <td style="text-align: left;">toid</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>接收人微信ID/群ID</td> </tr> <tr> <td style="text-align: left;">msg</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>消息内容</td> </tr> <tr> <td style="text-align: left;">msgsvrid</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>服务器消息ID,用于撤回,或者下载图片/视频/文件</td> </tr> <tr> <td style="text-align: left;">img_path</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>如果当前收到的是图片,则会显示图片路径图片为.dat格式</td> </tr> <tr> <td style="text-align: left;">gif_path</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>如果当前收到的是gif表情,则会显示gif路径</td> </tr> <tr> <td style="text-align: left;">file_path</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>如果当前收到的是文件,则会显示文件路径</td> </tr> <tr> <td style="text-align: left;">video_path</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>如果当前收到的是视频,则会显示视频路径</td> </tr> <tr> <td style="text-align: left;">voip_data</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>如果当前收到的是语音,则会显示语音数据。格式为16进制文本的.silk文件</td> </tr> <tr> <td style="text-align: left;">revoke_msg</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>如果当前收到的是撤回的消息,则会显示撤回的内容</td> </tr> <tr> <td style="text-align: left;">appletcode</td> <td style="text-align: left;">否</td> <td style="text-align: left;">string</td> <td>返回小程序code,如果调用了GetMiniAppCode_Sync接口则会返回该数据</td> </tr> </tbody> </table> <h3>msgtype 消息类型代码 二级代码参考:</h3> <p>1 文本消息 3 图片消息 34 语音消息 37 好友确认消息 40 好友推荐消息 42 共享名片 43 视频消息 44 主动撤回 47 动画表情 48 位置消息 49 APP分享链接/文件 50 VOIP消息 51 微信初始化消息 52 VOIP结束消息 53 VOIP邀请 62 小视频 9999 SYSNOTICE 10000 系统消息 10002 撤回消息</p> <h5>返回值</h5> <p>返回值将被忽略</p> <h1>Python FLASK 代码示例</h1> <h4>获取聊天信息</h4> <pre><code># encoding:utf-8 from flask import Flask, request, jsonify from flask_cors import CORS import logging from flask_httpauth import HTTPTokenAuth import requests import json import binascii import os import sys import logging import re from PIL import Image import blackboxprotobuf auth = HTTPTokenAuth(scheme='JWT') app = Flask(__name__) log = logging.getLogger('werkzeug') log.setLevel(logging.ERROR) # 开启消息接收功能 def ConfigureMsgRecive(diyurl): url = &amp;quot;http://127.0.0.1:30001/ConfigureMsgRecive&amp;quot; aheaders = {'Content-Type': 'application/json'} params_1 = { &amp;quot;isEnable&amp;quot;: &amp;quot;1&amp;quot;, &amp;quot;url&amp;quot;: diyurl } data = json.dumps(params_1) #print('[JSON格式raw]', data) r = requests.post(url, headers=aheaders, data=data) ret = r.text print(ret) # 自定义URL获取聊天信息 i = 0 @app.route('/api/msg/recive', methods=[&amp;quot;POST&amp;quot;]) def diy_recive_msg(): if request.method == 'POST': # payload = request.get_data(as_text=True) # print('[全数据]\r', payload) # 按照顺序打印输出 # payload = json.dumps(payload, sort_keys=True, indent=2, ensure_ascii=False) # print('[全数据]\r', payload) global i i = i + 1 print('================= [自定义URL消息接收] ====================') ServerPort = request.json.get('ServerPort') print('[服务端口]', ServerPort) selfwxid = request.json.get('selfwxid') print('[本人微信ID]', selfwxid) # 1=收到的消息 2=发送的消息 sendorrecv = request.json.get('sendorrecv') print('[收发类型]', sendorrecv) # 本次收到消息的数量 msgnumber = request.json.get('msgnumber') print('[收到数量]', msgnumber) # 消息数组 msglist = request.json.get('msglist') for i in range(len(msglist)): # 消息序号 index =msglist[i]['index'] print('[消息序号]', index) # 消息时间 time = msglist[i]['time'] print('[消息时间]', time) # 消息类型 msgtype = msglist[i]['msgtype'] print('[消息类型]', msgtype) # 服务器消息ID msgsvrid = msglist[i]['msgsvrid'] print('[服务器消息ID]', msgsvrid) # 消息内容 msg = msglist[i]['msg'] print('[消息内容]', msg) # 发送人微信ID fromwxid = msglist[i]['fromwxid'] print('[发送人微信ID]', fromwxid) # 接收方微信ID/群ID toid = msglist[i]['toid'] print('[消息接收者]', toid) return '1' else: # 请求方式错误 return '0' if __name__ == '__main__': # 下面的代码是消息接收的部分 app.config['JSON_AS_ASCII'] = False CORS(app, supports_credentials=True) # 开启消息接收 ConfigureMsgRecive(&amp;quot;http://localhost:1029/api/msg/recive&amp;quot;) app.run(host='0.0.0.0', port=1029, debug=True)</code></pre>

页面列表

ITEM_HTML