使用REST API发起对Twilio注册的SIP的调用

时间:2018-07-12 03:25:07

标签: php rest api twilio sip

我正在尝试使用REST API通过Obi / Twilio集成向已启用SIP的电话发起呼叫。据我了解,我在凭据列表中将用户设置为ryan-1,在SIP域中将其设置为“ ggc”。因此,我的SIP U / N应该为ryan-1@ggc.sip.twilio.com(或ggc.sip.us1.twilio.com)。

当我尝试使用以下代码发起呼叫时,它不起作用。

$client->account->calls->create('Ryan', 'ryan-1@ggc.sip.us1.twilio.com', 'http://info.ggc.nyc/twilio/box/1.1.xml', array( 
    'Method' => 'GET',  
    'FallbackMethod' => 'GET',  
    'StatusCallbackMethod' => 'GET',    
    'Record' => 'false', 
));

此PHP页面甚至无法加载(500错误)

但是,当我使用相同的代码拨打电话时,效果很好。

$client->account->calls->create('+19173828964', '+13035061389', 'http://info.ggc.nyc/twilio/box/1.1.xml', array( 
    'Method' => 'GET',  
    'FallbackMethod' => 'GET',  
    'StatusCallbackMethod' => 'GET',    
    'Record' => 'false', 
));

我在做什么错?在Twilio docs中,似乎我只是将SIP地址放在TO:位置,并将名称放在FROM中。

1 个答案:

答案 0 :(得分:0)

这里是Twilio开发人员的传播者。

在我看来,您的观点是错误的。 to参数应排在第一位。此外,在呼叫SIP端点时,您应该在地址前加上sip:

尝试一下:

$client->account->calls->create('sip:ryan-1@ggc.sip.us1.twilio.com', 'Ryan', 'http://info.ggc.nyc/twilio/box/1.1.xml', array( 
    'Method' => 'GET',  
    'FallbackMethod' => 'GET',  
    'StatusCallbackMethod' => 'GET',    
    'Record' => 'false', 
));