资源网址https://chatapi.viber.com/pa/send_message
常规发送消息参数
我正试图从Postman向viber发送消息。我不知道如何找到Unique Viber用户ID,该参数是必需的。
我收到此错误:
{"status":999,"status_message":"Bad receiver ID","message_token":5126721184521938239}
答案 0 :(得分:2)
Danny Dainton提到了有关如何获取数据的文档,其中包括有关您自己帐户的唯一ID,而不是其他人!
如果用户订阅了您的公共帐户,您将收到包含用户唯一ID的回调,并且只有您能够向该用户发送消息。
根据viber docs:
send_message API允许帐户向订阅该帐户的Viber用户发送消息。只有在用户通过按订阅按钮或发送消息或通过向机器人发送消息来订阅公共帐户之后,才可能向用户发送消息(请参阅订阅的回调以获取更多信息)。
非常重要
在帐户向用户发送消息之前,用户需要 订阅该帐户。订阅可以在两个中的一个中进行 方法:
用户向帐户(包括公共帐户和机器人)发送消息
当用户将第一条消息发送给用户所在的帐户时 自动订阅该帐户。发送第一条消息 不会触发订阅回调,只会触发消息回调(请参阅 从用户部分接收消息)。订阅的事件被发送到 公共账户(仅限公共账户)
用户点击订阅按钮 这会触发订阅回调as described below。
答案 1 :(得分:0)
通常,您应该从所有回调中收集Viber ID,并将其存储在DB中以备将来使用。但是,如果您错过了该步骤,则可以通过定期调用get_online端点来收集在线订阅用户的Viber ID,然后使用get_user_details端点来获取有关未知用户的更多信息。
答案 2 :(得分:-1)
简单,只需调用获取帐户信息API,其资源URL为https://chatapi.viber.com/pa/get_account_info 您将在响应中找到所有订户的列表及其用户ID。请注意,这些用户ID在每个用户的每个公共帐户中都是唯一的。
更正:似乎“获取帐户信息” API不会返回所有订户,它只是为我返回了我的用户ID(公共帐户的管理员)。基于此,除了从新订户,消息等的回调中无法获得订户的用户ID。