【问题标题】:Whom is a twilio call from?twilio 电话来自谁?
【发布时间】:2016-07-06 11:07:46
【问题描述】:
对于通过 API 进行的这个调用,我如何将它与我在 Twilio 中存档的 SIP URI 连接起来?这个电话究竟是“来自”谁?
Call SID
CA4759gfrjklg45jfgklj54klfsgjf0073a
Date
10:55:04 UTC 2016-07-06
Start Time
10:55:04 UTC 2016-07-06
End Time
10:55:19 UTC 2016-07-06
Duration
15 secs
Cost
$0.015
From
To
(202) 456-1111
Direction
Outgoing API
Secure Trunking
Disabled
Status
Completed
我很欣赏拨出电话有效的录音信息,但如果他们不这样做怎么办?我想我只需要支付 $ 来全面测试出站能力?
【问题讨论】:
标签:
java
rest
web-applications
twilio
voip
【解决方案1】:
如果您通过 REST API 确实是 making SIP calls,那么 To 参数是您要连接的 SIP URI,From 是用于填充 From 标头的用户名部分的值传递给 SIP 端点。这可以是任何字母数字字符,以及加号、减号、下划线和句点字符 (+-_.)。不允许使用空格或其他字符。
使用 Java 创建基本 SIP 拨号的示例:
// Install the Java helper library from twilio.com/docs/java/install
import com.twilio.sdk.TwilioRestClient;
import com.twilio.sdk.TwilioRestException;
import com.twilio.sdk.resource.factory.CallFactory;
import com.twilio.sdk.resource.instance.Call;
import com.twilio.sdk.resource.list.CallList;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
public class Example {
// Find your Account Sid and Token at twilio.com/user/account
public static final String ACCOUNT_SID = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
public static final String AUTH_TOKEN = "your_auth_token";
public static void main(String[] args) throws TwilioRestException {
TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN);
// Build a filter for the CallList
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("Url", "http://www.example.com/sipdial.xml"));
params.add(new BasicNameValuePair("To", "sip:kate@example.com"));
params.add(new BasicNameValuePair("From", "Jack"));
CallFactory callFactory = client.getAccount().getCallFactory();
Call call = callFactory.create(params);
System.out.println(call.getSid());
}
}
不确定您究竟遇到了什么麻烦,但如果需要,我很乐意提供更多帮助。