我是Twilio的新手。是否可以拨打两个电话号码并使用Twilio-PHP将它们加入会议?我知道我们可以将两个已接到的电话加入会议,我想知道我们是否可以通过两个拨打的电话进行相同的操作。如果是的话,如果有人将我的文件部分提交给我,我将不胜感激 在此先感谢。
答案 0 :(得分:3)
Twilio开发者传道者在这里。
你绝对可以做到这一点。当您从Twilio内部发起呼叫时,您会传递三个参数,即您正在呼叫的号码,您正在呼叫的号码和一个URL。该URL应指向某些TwiML,您可以像接收呼叫时那样使用它。当外出呼叫在Twilio查看URL时回答,以了解如何处理呼叫。
所以,这是一个例子,假设您需要Twilio PHP库并设置相关变量:
Expression<Func<DateTime, DateTime, bool>> ymdCompareLess = (v1, v2) => v1.Day <= v2.Day && v1.Month <= v2.Month && v1.Year <= v2.Year;
Expression<Func<DateTime, DateTime, bool>> ymdCompareGreater = (v1, v2) => v1.Day >= v2.Day && v1.Month >= v2.Month && v1.Year >= v2.Year;
public IQueryable<T> SetDateCompare<T>(IQueryable<T> OriginalQuery, Expression<Func<T, DateTime>> QueryProperty, DateTime ComparisonDate, bool isGreaterThan = true)
where T : class
{
LambdaExpression comparisonExpression = isGreaterThan ? ymdCompareGreater : ymdCompareLess;
var replaceVisitor = new ReplaceVisitor(
comparisonExpression.Parameters.ToArray(),
new[] { QueryProperty.Body, Expression.Constant(ComparisonDate) }
);
var whereBody = replaceVisitor.Visit(comparisonExpression.Body);
var whereClause = Expression.Lambda<Func<T, bool>>(whereBody, QueryProperty.Parameters);
return OriginalQuery.Where(whereClause);
}
private class ReplaceVisitor : ExpressionVisitor
{
Expression[] _from;
Expression[] _to;
public ReplaceVisitor(Expression[] from, Expression[] to)
{
this._from = from;
this._to = to;
}
public override Expression Visit(Expression node)
{
var idx = Array.IndexOf(_from, node);
if (idx > -1)
{
return _to[idx];
}
return base.Visit(node);
}
}
然后,在您的URL上,在本例中为example.com/conference,您只需要返回一些TwiML即可进入被召入会议的人员。所以,你需要一个看起来像这样的conference.php文件:
// Make an API client
$client = new Services_Twilio($sid, $token, $version);
// Use the API client to create an outbound call
$call = $client->account->calls->create(
$to,
$from,
'http://example.com/conference.php'
);
让我知道这是否有帮助。