Twilio 查找 API 不工作?
Twilio lookup API not working?
我正在尝试使用 Twilio 的查找 API 通过 PHP 获取手机号码的某些属性...但收效甚微:
$twilioClient = new Lookups_Services_Twilio(Credential::TwilioSID, Credential::TwilioToken);
$number = $twilioClient->phone_numbers->get($someNumber);
请注意,这是他们的 'Getting Started' 页面 here 中的示例代码。
通过查看调试器中的 $number
,我可以确认它正在返回一些东西:
对象的突出显示属性只是递归的,没有新信息。
正在尝试评估 $number->phone_number
returns null
。我已经用大约六个完全有效的数字尝试过这个,这是我得到的唯一回应。
正在尝试 json_encode($number)
returns false
。
我不知道为什么这不起作用,但如果我能知道我做错了什么会很有帮助。
我将继续假设您试过的 phone 号码既不是来自美国,也不是国际格式。
来自 Twilio 的 Lookups Quickstart Tutorial:
You'll want to include the country code of the phone number that you would like formatted. If not included, the country code will default to the US.
所以您的查找应该如下所示:
$number = $twilioClient->phone_numbers->get($someNumber, array('CountryCode' => 'NZ'));
如果 phone 号码 是 来自美国的国际格式,或者如果上述仍然不起作用,请尝试在 Twilio 的 [= 上查找是否成功13=](你需要国际前缀)。
如果是,您的软件库可能已损坏,或者您的 Twilio 帐户可能具有 incorrect/broken 访问权限。
如果网络查找也失败,您应该contact Twilio并报告问题。
我也不会成功定义他们的代码,所以我使用 CURL 获取他们的 API 方法,它对我来说就像一个魅力,你可以尝试下面的代码来获得你需要的
$base_url = "https://lookups.twilio.com/v1/PhoneNumbers/+1XXXXXXXXXX";
$ch = curl_init($base_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, "$account_sid:$auth_token");
$response = curl_exec($ch);
$response = json_decode($response);
echo "<pre>"; print_r($response); echo "</pre>";
它会return你几个参数(country_code,national_format,carrier)
现在是 2016 年 9 月 6 日,他们仍然没有修复他们的 PHP 库...
None less 这对我有用。如果您需要更多信息,例如来电者姓名等,您必须先在您的 twilio 仪表板中启用它。
require 'includes/twilio/Services/Twilio.php';
// Your Account Sid and Auth Token from twilio.com/user/account
$sid = "YOUR-SID";
$token = "YOUR-TOKEN";
$client = new Lookups_Services_Twilio($sid, $token);
// Lookup
$phoneNumber = rawurlencode("(000) 000-0000");
$full_path = $client->phone_numbers->uri . "/$phoneNumber" . "?CountryCode=US&Type=carrier&Type=caller-name";
$number = new $client->phone_numbers->instance_name($client, $full_path);
echo "Caller name:" . $number->caller_name->caller_name;
echo "<br>";
echo "Caller type:" . $number->caller_name->caller_type;
echo "<br>";
echo "Carrier type:" . $number->carrier->type . "\r\n";
echo "<br>";
echo "Carrier name:" . $number->carrier->name;
echo "<br>";
echo "Phone number:" . $number->phone_number;
echo "<br>";
echo "Country code:" . $number->country_code;
我正在尝试使用 Twilio 的查找 API 通过 PHP 获取手机号码的某些属性...但收效甚微:
$twilioClient = new Lookups_Services_Twilio(Credential::TwilioSID, Credential::TwilioToken);
$number = $twilioClient->phone_numbers->get($someNumber);
请注意,这是他们的 'Getting Started' 页面 here 中的示例代码。
通过查看调试器中的 $number
,我可以确认它正在返回一些东西:
对象的突出显示属性只是递归的,没有新信息。
正在尝试评估 $number->phone_number
returns null
。我已经用大约六个完全有效的数字尝试过这个,这是我得到的唯一回应。
正在尝试 json_encode($number)
returns false
。
我不知道为什么这不起作用,但如果我能知道我做错了什么会很有帮助。
我将继续假设您试过的 phone 号码既不是来自美国,也不是国际格式。
来自 Twilio 的 Lookups Quickstart Tutorial:
You'll want to include the country code of the phone number that you would like formatted. If not included, the country code will default to the US.
所以您的查找应该如下所示:
$number = $twilioClient->phone_numbers->get($someNumber, array('CountryCode' => 'NZ'));
如果 phone 号码 是 来自美国的国际格式,或者如果上述仍然不起作用,请尝试在 Twilio 的 [= 上查找是否成功13=](你需要国际前缀)。
如果是,您的软件库可能已损坏,或者您的 Twilio 帐户可能具有 incorrect/broken 访问权限。
如果网络查找也失败,您应该contact Twilio并报告问题。
我也不会成功定义他们的代码,所以我使用 CURL 获取他们的 API 方法,它对我来说就像一个魅力,你可以尝试下面的代码来获得你需要的
$base_url = "https://lookups.twilio.com/v1/PhoneNumbers/+1XXXXXXXXXX";
$ch = curl_init($base_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, "$account_sid:$auth_token");
$response = curl_exec($ch);
$response = json_decode($response);
echo "<pre>"; print_r($response); echo "</pre>";
它会return你几个参数(country_code,national_format,carrier)
现在是 2016 年 9 月 6 日,他们仍然没有修复他们的 PHP 库...
None less 这对我有用。如果您需要更多信息,例如来电者姓名等,您必须先在您的 twilio 仪表板中启用它。
require 'includes/twilio/Services/Twilio.php';
// Your Account Sid and Auth Token from twilio.com/user/account
$sid = "YOUR-SID";
$token = "YOUR-TOKEN";
$client = new Lookups_Services_Twilio($sid, $token);
// Lookup
$phoneNumber = rawurlencode("(000) 000-0000");
$full_path = $client->phone_numbers->uri . "/$phoneNumber" . "?CountryCode=US&Type=carrier&Type=caller-name";
$number = new $client->phone_numbers->instance_name($client, $full_path);
echo "Caller name:" . $number->caller_name->caller_name;
echo "<br>";
echo "Caller type:" . $number->caller_name->caller_type;
echo "<br>";
echo "Carrier type:" . $number->carrier->type . "\r\n";
echo "<br>";
echo "Carrier name:" . $number->carrier->name;
echo "<br>";
echo "Phone number:" . $number->phone_number;
echo "<br>";
echo "Country code:" . $number->country_code;