需要脚本演示、定制部署或海外获客方案?访问 Facebook18 官网
首页 / twitter引流推广

whatsapp 协议分析(whatsapp架构)

2023-02-21twitter引流推广静态 HTML 文章

本文围绕「whatsapp 协议分析(whatsa」展开,结合海外社媒引流的实际操作,把步骤与注意事项一次讲清。

whatsapp主要采用XMPP协议来做数据包组织。那么从XMPP的几个要点来分析whatsapp的协议。

1、出席

出席通知其他实体的网络可用性,并且使你能够知道其他实体是否在线和可用于通讯。它是一个在互联网上沟通和合作的催化剂,因为人们更容易与你交流,如果他们知道你是否在线。只有通过你授权的人才能看到你是否在线。这个授权被称为出席订阅。当你在线时,你向你的服务器宣告你的出席,然后服务器将你在线通知告诉你的联系人,并且获得他们的当前出席显示在你的客户端界面上。

那么在whatsapp上如何实现这些的了?

自己出席:

<presence type="available"></presence>

订阅用户请求:

<presence type="subscribe" to="[email protected]"></presence>

订阅用户响应:

<presence from="[email protected]" type="unavailable" last="1585729610"></presence>

用户上线通知:

<presence from="[email protected]" type="available" last="1585729610"></presence>

2、查询

查询节提供了一种用于请求-应答交互和简单工作流的结构.

和<message/>节不同,一个IQ节能包含仅有一个有效载荷,用于定义处理的请求或接收人采用的行为。

发送IQ节的实体必须总是接收一个回复。

请求和应答通过使用id属性跟踪,id属性由请求实体生成,并被包含在应答的实体中

信息/查询type

get

请求实体信息,例如请求注册一个账户。

set

请求实体提供一些信息或作出一个请求。

result

应答实体返回get操作的结果,或者确认一个set请求。

error

应答实体或一个中间实体,例如XMPP服务器,通知请求实体它不能处理get或set请求。早期在HTTP中使用的数字错误代码已被可扩展错误条件的XML元素取代。

那么在whatsapp上的一些实际例子。

4、消息

<message/>即是使用基本的“push”方法从一个地方到另一个地方得到消息,消息是不可告知的,它是一种“fire-and-forget”的机制从一个地方到另一个地方快速获取信息。

消息的type

normal:单个的消息,对应的回应可能会或者可能不会很快到来。

chat:在两个实体间店实时对话中交换

groupchat:多用户聊天室中交换

headline:发送警告和通告,并不期望有回应

error:对先前发送消息发生错误,实体检测这个问题将返回一个类型error的消息。

消息的to:预期收件人的JaadfdserID

消息的from:发送者的JaadfdserID,from地址不由发送客户端提供,而是由发送者的服务器添加邮戳,以避免地址欺骗。

消息也包含有载荷元素。核心XMPP规格定义了一些非常基本的有效载荷,例如<body/>和<subject/>,被用于人对人的聊天信息,消息可以包含在核心XMPP规格中没有定义的有效载荷

在whatsapp上的一些实际例子。

WhatsApp如何添加客户?

通常只要将客户的手机号保存在通讯录中,登录WhatsApp就可以添加导入了。

但是要实现大批量发送信息,则直接可以导入国外的电话号码到通讯录,直接群发消息,目前测试发现一个whatsapp号一天正常发100条信息是没问题的。如果批量注册10000账号,那么每天就可以发送100万条信息出去,成本极其低廉,非常适合游戏等行业的出海业务。

由于WhatsApp 是基于 signal 协议实现的 e2e 端到端加密,每条消息使用单独的密钥加密,保证了前向安全和后向安全。一般来说whatsapp逆向的重点主要在两个方向,一个是直接针对移动端版本的逆向,可以实现完整的手机验证码登录,难度较大,另外一个则是针对 web 版本的逆向,但是 web 版本的登录还是依赖移动端扫码登录,价值比较低,相对来说,难度也小一些。针对移动端安卓版本的逆向github 上蕞出名的项目当属于基于 python 实现的版本,但该项目由于原来作者发布时间较久,原来作者也不继续研究,目前已经无法正常运行。我近期详细看了一下这个版本的逆向逻辑,针对该版本更新了一些库和字段,优化了风控监测点,发现可以正常注册登录账号,收发消息,进行群相关的操作。但是由于资源有限,没有足够的号进行测试,所以无法确定是否大批量发送信息时是否会出现问题,具体还需要等处理完注册模块,实现自己可以批量注册后才能知道。

查看演示与获取方案

读完本篇后,可通过下方入口查看演示视频、联系客服或访问主站。