动态设置Twilio <Dial> timeLimit

shr*_*att 3 twilio twilio-twiml

我有一个应用程序,让用户拨打他们想要添加到呼叫的号码.每个用户都有他们帐户中的余额.

拨号通过使用TwiML执行 <Dial>

因此,根据我的每分钟费率,我以秒为单位计算剩余余额,并将其设置为timeLimitfor <Dial>.

我想做一个简单的事情,例如当用户正在通话并且他的电话timeLimit即将到期时,我想要使用我的付款方式向他们收取费用,如果收费是成功补充timeLimit相同的电话.

可以这样做吗?

ric*_*ett 7

Twilio开发者传播者在这里.

在呼叫进行过程中,无法修改拨号盘上的timeLimit.但我认为我有一个适合你的解决方案.

而不是直接拨打号码,您可以使用timeLimit 呼叫会议.

<Response>
  <Dial timeLimit="30">
    <Conference>YourCall</Conference>
  </Dial>
</Response>
Run Code Online (Sandbox Code Playgroud)

然后,当他们的帐户被补充时,您可以修改实时呼叫以重定向到使用新timeLimit重新加入电话会议的TwiML网址:

<?php
// Get the PHP helper library from twilio.com/docs/php/install
require_once('/path/to/twilio-php/Services/Twilio.php'); // Loads the library

// Your Account Sid and Auth Token from twilio.com/user/account
$sid = "{{ sid }}"; 
$token = "{{ auth_token }}"; 
$client = new Services_Twilio($sid, $token);

// Get an object from its sid. If you do not have a sid,
// check out the list resource examples on this page
$call = $client->account->calls->get("{{call sid}}");
$call->update(array(
        "Url" => "http://youserver.com/conference.xml",
    "Method" => "POST"
    ));
echo $call->to;
Run Code Online (Sandbox Code Playgroud)