获取直接从 Whatsapp 而不是 Whatsapp Bussines API 发送的消息

问题描述 投票:0回答:1

我在为客户开发内部聊天时遇到一些问题。我已经看过这里的一些帖子,说没有办法做到这一点。因此,我不会问一个通用的问题,而是要提出我的问题,这样如果将来有人遇到困难,他们可以检查可能的解决方案。

基本上我的客户在 3 栋大楼里有 3 部手机,并且希望能够访问每部手机上的 WhatsApp 对话。我正在使用官方 WhatsApp API,我可以使用此 API 发送和接收消息。问题是:

当其中一名员工直接从 WhatsApp 发送消息时,我的端点收到的响应不包含本身发送的消息。我将在下面显示返回的 JSON。

我唯一能想到的就是尝试使用 wamid 的 get 方法,wamid 是唯一的 WhatsApp 消息 ID。但不幸的是 Whats API 不允许这样做。谁能想到一个解决方案,以便我可以保存发送的消息并将其导入我的数据库,以便它进入内部聊天?

也许可以通过这种集成构建一个移动应用程序,但开发一些 WhatsApp 副本不应该是最佳解决方案 lmao

{
  "_id": {
    "$oid": "65d6098e02eea5099ba46d00"
  },
  "object": "whatsapp_business_account",
  "entry": [
    {
      "id": "178770005328586",
      "changes": [
        {
          "value": {
            "messaging_product": "whatsapp",
            "metadata": {
              "display_phone_number": "15551337772",
              "phone_number_id": "209170728947400"
            },
            "statuses": [
              {
                "id": "wamid.HBgNNTUxOTk5OTQ1OTE2NRUCABEYEjBDOUFEQjZERDIyRTY5MUU3QQA=",
                "status": "read",
                "timestamp": "1708525966",
                "recipient_id": "5519999459165"
              }
            ]
          },
          "field": "messages"
        }
      ]
    }
  ]
}
whatsapp whatsapp-cloud-api
1个回答
0
投票

为任何可能使用whatsapp api 的未来开发人员回答我自己的问题。

在此发布日期之前,whatsapp 官方 api 不会为您通过自己的手机发送的消息提供返回消息。因此,不幸的是,您的客户将只需要使用您的个人聊天,或者,您将需要构建一个移动应用程序,以便他/她的员工使用而不是 Whatsapp。

旁边是这个。您还会面临另一个问题:

要提供完整的 Whatsapp 体验,您将需要每条消息的唯一“message_id”。那就跟我来吧:

您的客户在您的应用程序中写一条消息,然后发送。

您需要将其保存在数据库中

保存后,您向您的whatsapp api发送一个post请求。

成功发布后,您将收到包含您唯一id的json格式的返回。

要查找相应的消息,时间戳不是一个好的选择,而是查找没有上传状态的最旧数据,然后添加 id 和您需要的其他数据来上传。

  • 我不想做出巨大的回应,所以如果有人需要有关此案的帮助,请在堆栈中向我发送消息(如果我们相隔十年),也许我会回来编辑这个答案。
© www.soinside.com 2019 - 2024. All rights reserved.