知道账户在线状态仍然是一个私有 API。所以你不能以“合法”的方式做到这一点。
但是当然 WhatsApp 和您提到的其他应用程序会这样做。所以他们知道怎么做。
如果您想知道它们如何满足您的要求,您必须对它们进行逆向工程。
您可以做的是知道某个号码是否是有效的 WhatsApp 用户。
根据文档,您必须拥有Facebook WhatsApp Buisiness API:
https://developers.facebook.com/docs/whatsapp/api/reference/
WhatsApp 是一种快速、安全且可靠的方式,可让企业接触全球客户。本指南介绍了企业如何使用 WhatsApp Business API 与客户互动。
此版本的 WhatsApp Business API 使用具有 JSON 数据格式的 REST API 架构。API 遵循标准的 HTTP 请求-响应交换。
一旦您拥有有效的企业帐户,您就可以查询Contacts(联系人)节点
将联系人节点用于以下目的:
验证数据库中的电话号码是否属于有效的 WhatsApp 帐户。在向用户发送消息之前,您必须确保状态有效。获取电话号码的 WhatsApp ID。发送消息、使用通知和与群组合作都需要 WhatsApp ID。
从 doc 做这样的 POST 请求:
POST /v1/contacts
{
"blocking": "wait",
"contacts": [
"16315551003",
"1-631-555-1002",
"+54 9 11 5612-1008",
"+1 (516) 283-7151"
]
}
Run Code Online (Sandbox Code Playgroud)
您可以获得这样的信息:
响应 在您发送检查联系人的请求后,您将收到包含所请求号码当前状态的响应。新的联系人通常会处于处理状态,因为应用程序会异步确定这些号码是否属于有效的 WhatsApp 帐户。
如果您在请求中使用 "blocking": "wait" 选项,则响应现在是同步的,因此只有在确定所有数字的状态后才会生成响应。这意味着如果有新联系人,请求将需要更长的时间才能返回,但您不会看到返回的“处理”值。下面的示例代码演示了这种行为。
{
"contacts": [
{
"input": "1-631-555-1002",
"status": "invalid"
},
{
"input": "6315551003",
"status": "valid"
"wa_id": "16315551003"
},
{
"input": "+54 9 11 5612-1008",
"status": "invalid"
},
{
"input": "+1 (516) 283-7151",
"status": "valid"
"wa_id": "15162837151"
}
]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4710 次 |
| 最近记录: |