我使用下面的代码使用Nexmo发送消息。哪个成功运行,我得到了唯一的messageId作为响应。
$url = 'https://rest.nexmo.com/sms/json?' . http_build_query(
[
'api_key' => env("NEXMO_API_KEY"),
'api_secret' => env("NEXMO_API_SECRET"),
'to' => $data['to'],
'from' => $data['from'],
'text' => 'Hi I am sending the message',
'callback' => $data['callbackUrl']
]
);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$data = json_decode($response);
回复:" message_id":" 0D000000890273B7"。
发送短信后,我的客户回复了短信。我正在尝试跟踪消息并存储到DB中。 我在Nexmo设置上设置了webhooks回调URL。它也在运行并抛弃了响应。
[msisdn] => 121#######
[message_id] => 0B000000CB352009
[to] => 1#########
[message_timestamp] => 2018-04-09 15:04:45
[keyword] => YES
[text] => Hello I am replying the message.
这里我注意到messageId会有所不同,所以我们如何跟踪回复的消息与此消息有关" 0D000000890273B7"?请帮帮我。我无法与电话号码匹配,因为我们没有使用电话号码作为唯一电话号码。
答案 0 :(得分:0)
没有办法完美关联短信'回复'因为在SMS规范中没有回复的概念,当用户在他们的手机上发送回复时,他们实际上正在向他们收到的消息的senderID组成新消息,但是没有数据在消息之间共享,所有你在SMS是TO,FROM,TEXT和TIMESTAMP。其他一切都是手机操作系统的本地产品