我使用twilio c# wrapper和我能够从twilio接收通信。我有麻烦回应twilio的回应,并有twilio认出它。目前我正在尝试用TwilioResponse做出回应。任何人都有一个好榜样?这是一个WebApi自我托管的Windows服务。使用twilio C#客户端通过twilio回响应
ex。 TwilioResponse()消息( “OK”)。
我使用twilio c# wrapper和我能够从twilio接收通信。我有麻烦回应twilio的回应,并有twilio认出它。目前我正在尝试用TwilioResponse做出回应。任何人都有一个好榜样?这是一个WebApi自我托管的Windows服务。使用twilio C#客户端通过twilio回响应
ex。 TwilioResponse()消息( “OK”)。
摆弄了一阵后,这似乎这样的伎俩。
var twiml = new TwilioResponse().Message("test");
return TwilioResponse(twiml);
private HttpResponseMessage TwilioResponse(TwilioResponse twilioResponse)
{
return new HttpResponseMessage()
{
Content = new StringContent(twilioResponse.ToString(), Encoding.UTF8, "text/xml"),
StatusCode = System.Net.HttpStatusCode.OK
};
}
我已经使用了相同的Web API,你可以使用下面的menioned代码,但首先,你必须配置Twilio UserAccount你的APP。
public class WelcomeController : ApiController
{
public HttpResponseMessage Post(VoiceRequest request)
{
var response = new TwilioResponse();
response.Say("Welcome to Dhaval demo app. Please enter your 5 digit ID.");
response.Gather(new { numDigits = 5, action = string.Format("/api/Authenticate") });
return this.Request.CreateResponse(HttpStatusCode.OK, response.Element, new XmlMediaTypeFormatter());
}
}
当我按5位没有那么它会借给Authetication控制器它看起来像
public HttpResponseMessage Post(VoiceRequest request)
{
var response = new TwilioResponse();
var validIds = new List<string> { "12345", "23456", "34567" };
var userId = request.Digits;
var authenticated = validIds.Contains(userId);
if (!authenticated)
{
response.Say("You entered an invalid ID.");
response.Hangup();
}
else
{
response.Say("ID is valid.");
response.Redirect(string.Format("/api/Name?userId={0}", userId));
}
return this.Request.CreateResponse(HttpStatusCode.OK, response.Element, new XmlMediaTypeFormatter());
}
,它是在我的身边做工精细,再次检查正常,你已经给出了正确的AuthToken
干杯