sinret / whatsapp
Yii2扩展,用于WhatsApp插件
Requires
- php: >=5.4.0
This package is not auto-updated.
Last update: 2024-09-18 08:57:39 UTC
README
WhatsApp消息应用接口
更新日期:2014年3月15日
由于DCMA下架导致短暂停机后,源代码已恢复。
备注:2013年7月30日
新政策
我不再为尝试使用此API发送大量消息的用户提供支持(即大量消息,而不是内置的大量消息功能)。 在WhatsApp上发送广告直接违反其EULA,我无法确定用户是否尝试发送垃圾邮件、广告或向“已同意的用户”发送大量消息。 我也不想浪费我那少得可怜的空闲时间,试图找到让这个美丽无广告平台WhatsApp变得糟糕的方法,那就是通过让用户发送垃圾邮件。 每个人都可以免费使用此API,但之后将不再有关于向随机用户发送消息后被封的问题报告。
以下引用自希斯·莱杰扮演小丑的经典台词(被我完全脱离了上下文)
这不是关于钱,这是关于传递信息。
- shirioko
备注:2013年7月14日
事件重命名
- 事件处理系统中大量事件已重命名,以更好地匹配最近的方法名称。
- 所有事件名称和参数均已列在EVENTS.md文件中
备注:2013年7月10日
代码的又一次大规模重写
- 大多数方法的重命名!!旧遗留代码将失效,我们对此表示歉意,但这是为了提供一个更清晰的接口。请检查新代码。
- 方法重命名以使API感觉更一致 - 所有方法现在都是camelCase,注意拼写错误!
- 将代码与PSR-2(《http://www.php-fig.org/psr/2/》)对齐的初步尝试
- 在这段代码中,绝对没有任何需要使用/输入MAC地址或IMEI的需要。不要尝试!
- 使用新的Android令牌,因为WP7令牌似乎不再有效。WP7令牌永存?
备注:2013年6月18日
代码的全面重写。衷心感谢
- Ali Hubail和
- Ahmed Moh'd使这个项目得以实现(并把我作为成员添加进来)
- Jannik Vogel帮助我获取最新的WhatsApp令牌,有一天应该有人写一本书来讲述这件事..
- Tarek Galal为yowsup提供了最新的WhatsApp功能
- Atans和
- Jonathan Williamson对代码进行了额外的修复
- shirioko
什么是WhatsApp?
根据公司
“WhatsApp消息应用是一款跨平台移动通讯工具,可以替代短信,并通过设备现有的互联网数据套餐运行。WhatsApp支持iPhone、BlackBerry、Android、Windows Phone、Nokia Symbian60和S40手机。因为WhatsApp消息应用使用与您用于电子邮件和网页浏览相同的互联网数据套餐,所以发信息和与朋友保持联系不需要额外费用。”
2011年底数据:每天1亿条消息,约2000万用户。
修改后的XMPP
WhatsApp使用一种自定义的XMPP服务器,内部命名为FunXMPP,基本上是一个扩展的专有版本。
登录流程
与XMPP类似,WhatsApp使用JID(Jabber ID)和密码成功登录服务。密码由服务器生成,在注册时接收。
JID是您的国家代码和手机号码的组合。
初次登录使用摘要访问认证。
消息发送
消息基本上以TCP数据包的形式发送,遵循WhatsApp自己的格式(与XMPP RFCs中定义的不同)。
消息使用RC4密钥流进行应用级加密
多媒体消息发送
与WhatsApp联系人共享的图片、视频和音频文件在发送给接收者之前,会先通过HTTP上传到服务器,并与Base64缩略图(如有)以及生成的HTTP链接一起作为消息正文发送。
事件系统
WhatsApi使用事件管理器(由facine创建),允许您响应某些事件。
事件列表和绑定事件处理器的示例代码:[https://github.com/shirioko/WhatsAPI/wiki/WhatsApi-events](https://github.com/shirioko/WhatsAPI/wiki/WhatsApi-events)
常见问题解答
-
代码中为什么到处都是十六进制字符?
主要是WhatsApp的专有控制字符/命令,或者根据服务器规格进行格式化的数据,存储在客户端预定义的字典中。
-
您的未来开发计划是什么?
我们没有。
-
它能在网页上运行吗?
我们已经在一个稍微修改过的Tornado Web Server上测试了一个版本,效果很好,但是构建聊天客户端有点棘手,请做好研究。
-
我能接收聊天吗?
当然,使用相同的套接字接收机制。但是您必须解析传入的数据。解析函数不包括在本版本中,可能在下一个版本中包含?
-
我觉得代码很乱。
它在工作。
-
我怎样才能获得我的密码?
使用WhatsAPI注册一个号码或使用MissVenom拦截您的手机密码。
注意
-
这个概念验证可以扩展以包含所有功能,使客户端成为一个功能齐全的客户,类似于官方客户端,实际上可能更好。
-
在分析服务机制的两周内,我们发现了一些严重的设计和安全漏洞(他们自2011年以来修复了一些)。对于这样一个拥有庞大用户群体的公司,我们期望更好的实践和工程。
许可证
MIT - 请参阅源代码中的额外行。
毒液
巴林开发者团队。
Ahmed Moh'd ([https://#/ahmed.mhd](https://#/ahmed.mhd))和Ali Hubail ([https://twitter.com/hubail](https://twitter.com/hubail))为这次发布做出了贡献。