我跟随此示例:https://www.twilio.com/docs/quickstart/csharp/twiml/greet-caller-by-name
虽然我的设置略有不同。我没有直接在cshtml中编码,而是从我的数据库中读取控制器操作,以检索传入手机号码的人的姓名。无论如何....
当我拨打我的Twilio号码时,我已将其设置(自动语音邮件)以POST到我指定的网页(https://www.XXX.co.uk/Twilio/Voicemail)并说出"嗨[用户名]"而不是"你好" (如果找不到用户)。但是它目前找不到用户,因为参数(" FROM")没有成功发布。
如果我使用Fiddler手动发布并指定: 内容类型:application / x-www-form-urlencoded
在请求中,它有效。如果我把它拿出来,它就不起作用(所以我假设Twilio在POST时没有包括这个?)。我的动作签名如下:
[HttpPost] 公共ActionResult语音邮件(FormCollection集合) {
我正在追踪'收集'。
有什么建议吗?
感谢。
更新
我还试过: 公共ActionResult语音邮件(VoiceRequest请求) { string mobileNumber = request.From;
但我仍然没有获得POSTed值。
答案 0 :(得分:0)
以上评论中回答:
我不做的一件事(这里提到: https://www.twilio.com/docs/libraries/csharp/creating-aspnet-mvc-webhook-project) 在我的班级
: TwilioController
中继承了TwilioController。不确定 如果这会有所不同,我离开我的开发 机器此刻。我今晚需要重新测试 - 我认为我的一次尝试都有效 (根据我的日志),以及我没有得到正确的原因 消息响应是因为POST手机号码是(+ 4477xxxx)和 我将它作为(077xxxx)存储在myb数据库中,因此它们没有匹配
要确认,
FormCollection
无效。VoiceRequest
DID工作。 然后我需要根据请求正确检查号码 预先加上+44国家代码。