Php Twilio查找API不工作?
我正在尝试使用Twilio的查找API通过PHP获取手机号码的某些属性。。。但收效甚微:Php Twilio查找API不工作?,php,laravel,sms,twilio,Php,Laravel,Sms,Twilio,我正在尝试使用Twilio的查找API通过PHP获取手机号码的某些属性。。。但收效甚微: $twilioClient = new Lookups_Services_Twilio(Credential::TwilioSID, Credential::TwilioToken); $number = $twilioClient->phone_numbers->get($someNumber); 请注意,这是他们的“入门”页面中的示例代码 通过查看调试器中的$number,
$twilioClient = new Lookups_Services_Twilio(Credential::TwilioSID, Credential::TwilioToken);
$number = $twilioClient->phone_numbers->get($someNumber);
请注意,这是他们的“入门”页面中的示例代码
通过查看调试器中的$number
,我可以确认它返回了一些内容:
对象的高亮显示属性只是递归的,没有新信息
尝试计算$number->phone\u number
返回null
。我现在已经尝试了半打完全有效的数字,这是我得到的唯一回应
试图json\u编码($number)
返回false
我不知道为什么这不起作用,但如果我能知道我做错了什么,那会很有帮助。我会继续假设你尝试的电话号码既不是美国的,也不是国际格式的 来自Twilio的: 您需要包括要格式化的电话号码的国家/地区代码。如果不包括,国家代码将默认为美国 因此,您的查找可能如下所示:
$number = $twilioClient->phone_numbers->get($someNumber, array('CountryCode' => 'NZ'));
如果电话号码来自美国,采用国际格式,或者如果上述方法仍然无效,请尝试在Twilio上查找是否成功(您需要国际前缀)
如果有,您的软件库可能已损坏,或者您的Twilio帐户可能具有不正确/损坏的访问权限
如果web查找也失败了,您应该检查并报告问题。如果他们定义了代码,我也不会成功,所以我使用了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>";
$base\u url=”https://lookups.twilio.com/v1/PhoneNumbers/+1XXXXXXXXX”;
$ch=curl\u init($base\u 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\u exec($ch);
$response=json_decode($response);
回声“;打印(回复);回声“;
它将返回几个参数(国家代码、国家格式、运营商)现在是2016年9月6日,他们还没有修复PHP库 但这对我来说仍然有效。如果你想要更多的信息,如来电者姓名等,你必须首先在你的twilio仪表板中启用它
require'includes/twilio/Services/twilio.php';
//您的帐户Sid和来自twilio.com/user/Account的身份验证令牌
$sid=“YOUR-sid”;
$token=“YOUR-token”;
$client=newlookup\u Services\u Twilio($sid,$token);
//查找
$phoneNumber=rawurlencode(“(000)000-0000”);
$full\u path=$client->phone\u number->uri。“/$phoneNumber”。“?CountryCode=US&Type=carrier&Type=caller name”;
$number=new$client->phone\u number->instance\u name($client,$full\u path);
回显“呼叫者姓名:”$号码->来电者姓名->来电者姓名;
回声“
”;
回显“调用方类型:”$号码->呼叫者姓名->呼叫者类型;
回声“
”;
回声“载波类型:”$编号->承运人->类型。“\r\n”;
回声“
”;
echo“承运人名称:”$编号->承运人->名称;
回声“
”;
回显“电话号码:”$号码->电话号码;
回声“
”;
回显“国家代码:”$编号->国家/地区代码;
是的,这样就行了。遗憾的是,尽管向Twilio发送了电子邮件和消息,但我还没有收到他们的回复,解释为什么他们的查找API PHP库不起作用。我可以确认我使用的数字与Twilio web界面一起工作,并且我的帐户处于活动状态(这不重要,因为API调用是免费的)。今晚我会再次检查我的访问权限。。。
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;