使用 clickatell php 网关 API 向多个号码发送短信
Text multiple numbers using clickatell php gateway API
我目前正在使用 clickatell 通过 FOR 方法向单个号码发送消息
for($i = 0;$i < count($textrecievers); $i++){
$url = 'http://api.clickatell.com/http/sendmsg?user=user&password=****&api_id=00000&to=1'.$textrecievers[$i].'&text='.$msgtxt.'&mo=1&from='.$_SESSION['routing'];
$ret = file($url);
}
问题在于,如果其中一个失败,我无法将其报告给数据库,因为我无法使用此方法
$send = explode(":",$ret[0]);
if ($send[0] == "ID") {
echo 'OK';
}
有没有办法像这样将其作为批量文本发送:
$to = array('1111111111','2222222222','3333333333')
然后把它放在usr里面
$url = 'http://api.clickatell.com/http/sendmsg?user=user&password=****&api_id=00000&to='.$to.'&text='.$msgtxt.'&mo=1&from='.$_SESSION['routing'];
所以它会一次性将它发送到数组中的所有数字,所以我可以报告它是否成功。
不确定我是否理解正确你的问题,但你可以像这样用逗号分隔手机号码:
为了安全起见,您可以使用 HTTP GET 用逗号分隔大约 300 个数字(使用 POST 可以使用更多数字,例如 800 - 取决于您等待超时的时间)。
//逗号分隔并为国家代码添加前导 1
$comma_separated = 内爆(",1", $YourArray);
您将收到每条消息(或错误)的跟踪消息 ID,因此您可以跟踪是否有任何特定号码被拒绝。
这是否回答了您的问题?
不幸的是,您不能再使用 http
API 在一次呼叫中发送到多个号码(尽管您可以多次循环呼叫 API)
You can send a message to a single handset in one single HTTPS
request.
另一种选择是使用 REST
API 发送到多个号码(根据他们的文档,每次呼叫最多 200 个):https://www.clickatell.com/developers/api-documentation/rest-api-send-message/
我目前正在使用 clickatell 通过 FOR 方法向单个号码发送消息
for($i = 0;$i < count($textrecievers); $i++){
$url = 'http://api.clickatell.com/http/sendmsg?user=user&password=****&api_id=00000&to=1'.$textrecievers[$i].'&text='.$msgtxt.'&mo=1&from='.$_SESSION['routing'];
$ret = file($url);
}
问题在于,如果其中一个失败,我无法将其报告给数据库,因为我无法使用此方法
$send = explode(":",$ret[0]);
if ($send[0] == "ID") {
echo 'OK';
}
有没有办法像这样将其作为批量文本发送:
$to = array('1111111111','2222222222','3333333333')
然后把它放在usr里面
$url = 'http://api.clickatell.com/http/sendmsg?user=user&password=****&api_id=00000&to='.$to.'&text='.$msgtxt.'&mo=1&from='.$_SESSION['routing'];
所以它会一次性将它发送到数组中的所有数字,所以我可以报告它是否成功。
不确定我是否理解正确你的问题,但你可以像这样用逗号分隔手机号码:
为了安全起见,您可以使用 HTTP GET 用逗号分隔大约 300 个数字(使用 POST 可以使用更多数字,例如 800 - 取决于您等待超时的时间)。
//逗号分隔并为国家代码添加前导 1 $comma_separated = 内爆(",1", $YourArray);
您将收到每条消息(或错误)的跟踪消息 ID,因此您可以跟踪是否有任何特定号码被拒绝。
这是否回答了您的问题?
不幸的是,您不能再使用 http
API 在一次呼叫中发送到多个号码(尽管您可以多次循环呼叫 API)
You can send a message to a single handset in one single HTTPS request.
另一种选择是使用 REST
API 发送到多个号码(根据他们的文档,每次呼叫最多 200 个):https://www.clickatell.com/developers/api-documentation/rest-api-send-message/