如何提示用户输入他们的电话国家代码?

问题描述 投票:0回答:2

有 6 个国家使用 1 作为国家代码,美国和加拿大以及一些加勒比国家。 (唯一的另一个 dup AFAIK 是 RU/KZ。)我需要提示用户输入他们的国家代码和电话号码。

我知道这是一个广泛的问题,我正在获取用户的号码以向他们发送短信提醒(通过 Twilio)。我是否需要知道某人是在加拿大还是在美国(或特立尼达和多巴哥)?还是我真正需要知道的是 +1?

换句话说,我可以只存储 +1,还是需要存储 US?或者更多的 PITA,商店 [1,US]?

twilio sms country-codes
2个回答
0
投票

我建议将电话号码存储为E164格式。对号码进行清理和验证,然后将其作为有效的 E164 存储在数据库中。如果地址对您很重要,您可以单独向最终用户询问他们的邮寄地址。此外,我不会费心尝试使用正则表达式来清理或验证电话号码。使用 Twilio Lookup Api,它可以免费格式化数字,并为您提供国家代码、国家,您可以捕获无效数字的异常。

E164是一致的,会解决你打电话或发短信时的国家码问题。

根据 Twilio 的说法:“E.164 是国际电话号码计划,可确保 PSTN 上的每个设备都具有全球唯一号码。

此号码允许电话和短信可以正确路由到不同国家的个人电话。 E.164 号码的格式为 [+] [国家代码] [包括区号的用户号码],最多可以有 15 个数字。”

此页面有更多信息“什么是 E.164?


0
投票

如果您打算在本国以外的地方发送 SMS 消息,需要考虑以下几点:

来自 Twilio 支持文档,“虽然 Twilio 支持国际 SMS 到 235 个目的地,但请记住,每个国家/地区都有自己的法规和准则,这些法规和准则可能会根据发件人类型、用例或可能需要额外注册而适用。”

我建议记录收件人的国家:

  • 文件定价发送短信
  • 查看如何和if Twilio 在每个国家/地区支持 A2P(应用程序到个人)SMS 消息传递
  • 研究每个国家/地区的监管和合规指南(例如 MMS、用例限制等),并确保您的消息符合当地法律
  • 更新控制台中的geo-permissions以包括客户的国家

要查找每个受支持国家/地区的监管和合规信息,请访问:

https://www.twilio.com/en-us/guidelines/{ISO-country-code}/sms

可以找到 ISO 国家代码列表这里

我还建议查看 Twilio 的 消息传递政策可接受的使用政策,以确保 Twilio 不会在发送消息之前过滤 your 消息。特别是如果您要发送批量短信提醒。

如果您有任何其他问题或需要其他资源,请发表评论!

© www.soinside.com 2019 - 2024. All rights reserved.