我在接收消息时遇到问题,我不知道哪里出了什么问题。
现在我收到了来自美国的消息,这些消息显示在Inbound Twilio Dashboard中,可以通过API访问。
e.g:
<% @client.account.sms.messages.list({ from: "#{@contact.mobile}", }).each do |message| %>
Bur 来自其他国家的回复不会出现在任何地方。
对于发送和接收消息,我使用以下格式:
+1757*******
格式与它有关吗?我错过了什么?
来自Twilio Doc:
电话号码应格式化为“+”和国家/地区代码,例如: +16175551212(E.164格式)。对于没有'+'的'到'数字,Twilio将使用与'from'号码相同的国家/地区代码。 Twilio也将 尝试处理该国家/地区代码的本地格式化数字 (例如,(415)555-1212(美国),07400123456(GB)。如果你要发送 与“来自”号码不同的国家/地区,必须包含“+” 和国家代码,以确保正确交付。
经过一些严肃的Twilio扫描后,我找到了答案 - 请阅读以下
答案 0 :(得分:0)
Twilio Evangelist在这里。
这可能是一些事情。首先,传入的消息是否显示在Twilio Dashboard上的Message Logs中?
如果它们没有显示,那么请确保为接收它们的号码设置了URL。
如果他们确实显示,请复制其中一个数字,如日志中所示,并在您的应用中试用。如果没有更多详细信息,具体说法有点棘手,但我希望您应该使用所述的+<country><number>
格式。所以美国:+ 1415xxxx ...,英国+ 447590xxxx ......等等。
您也可以尝试运行此代码:
<% @client.account.messages.list({to: your_twilio_number}).each do |message| %>
显示所有邮件并检查其中的入站邮件,然后在您仔细检查contact.mobile
格式后再试一次。
希望这有帮助。
答案 1 :(得分:0)
对于每个人都有同样的问题。
设置Twilio帐户时,您会收到一个美国号码,与其他国家/地区的情况略有不同。
SMS Enabled Phone Numbers:有些人可以在国际和国内发送短信,但其他人只能在国内发送和接收短信。
对于美国,没有移动设备,只有免费电话和本地电话。有了这个,其他运营商(在美国以外)甚至不会让你的短信低谷,认为另一端的号码不是移动。
基本上,只有美国号码可以发送短信to
美国号码,其他国家则不能。
所以我买了一个英国号码,现在一切正常。