如何以编程方式检查WhatsApp上的联系电话是否在线?android上没有联系电话?
我在Google上进行搜索,我刚刚找到了另一个应用程序,当输入的联系电话在线时会发出通知,但是我想通过编程方式知道这一点,以便可以在我的应用程序中实现。
注意:-如果存在这种应用程序,那么必须解决我的问题。
我在SO上发现了另一个问题,但答案与问题中所问的内容完全无关,仍然有4个投票,并且被OP接受,我不知道如何?
那么,那里有api可用吗?还是任何Intent操作?
答案 0 :(得分:3)
知道帐户在线状态仍然是私有API。因此,您不能以“合法”方式进行操作。
但是,当然,WhatsApp和您提到的其他应用程序都可以做到这一点。所以他们知道该怎么做。
如果您想知道它们如何完成您要的工作,就必须对它们进行反向工程。
您所能做的就是知道号码是否是有效的WhatsApp用户。
根据文档,您必须拥有Facebook WhatsApp Buisiness API:
https://developers.facebook.com/docs/whatsapp/api/reference/
WhatsApp是企业快速,安全和可靠的联系方式 他们的客户遍布世界各地。本指南介绍了 企业可以使用WhatsApp Business API与他们的互动 客户。
此版本的WhatsApp Business API使用REST API架构 JSON数据格式。 API遵循标准的HTTP 请求-响应交换。
拥有有效的企业帐户后,您就可以查询Contacts
(Contacts)节点
将联系人节点用于以下目的:
要验证数据库中的电话号码是否属于有效号码 WhatsApp帐户。您必须先确保状态有效,然后才能 向用户发送消息。获取电话号码的WhatsApp ID。 WhatsApp的 发送消息,使用通知和使用时需要ID 组。
从文档中发出这样的POST请求:
POST /v1/contacts
{
"blocking": "wait",
"contacts": [
"16315551003",
"1-631-555-1002",
"+54 9 11 5612-1008",
"+1 (516) 283-7151"
]
}
您可以获得以下信息:
响应发送请求以检查联系人后,您将收到 带有所请求号码当前状态的响应。联络人 新的通常会处于处理状态,因为 应用程序异步确定数字是否属于有效数字 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"
}
]
}