ruby-on-rails-4 - 将本地号码转换为国际格式(用于 Rails 和 Nexmo/Twilo 等服务)

标签 ruby-on-rails-4 twilio vonage

我想使用 Nexmo 或 Twilo 等服务验证我的用户电话号码。

要通过这些服务发送消息,我需要提供国际号码,但是,我不想要求我的用户提供完整的国际号码 - 只是他们会向自己的任何人提供的正常号码国家(我不希望他们知道他们的国际拨号代码等)。

那么将本地号码转换为国际号码的最佳方法是什么?除了电话号码外,每个用户还需要提供他们的国家/地区。 (我的用户群将是国际性的。)

  • 我是否应该在“国家/地区”表中添加一个额外字段来保存国际拨号代码 - 然后构建完整的国际号码?这似乎没问题,直到您考虑到某些国家/地区要求省略数字开头的 0,而其他国家/地区则不需要。

  • 有更简单的方法吗?或者有 gem ​​可以做到这一点?

最佳答案

Google 的开源 libphonenumber项目可能是任何涉及电话号码的工作的最佳工具。给定一个国家/地区和电话号码,libphonenumber 可用于生成 E.164 Twilio 喜欢的格式。它还可以生成示例电话号码,以提高您首先收集的数据的准确性。一个ruby port可用。在 php 中使用 libphonenumber 的示例 Twilio 应用程序可以在 Twilio Skills training 中找到。 .

关于ruby-on-rails-4 - 将本地号码转换为国际格式(用于 Rails 和 Nexmo/Twilo 等服务),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29066247/

相关文章:

javascript - Twilio TaskRouter - 接受 JS 客户端的预订

java - HttpResponseException : Bad Request occurs while implementing call inbound using vonage SDK

javascript - 使用 nexmo 调用外线电话

ruby-on-rails - 处理Rails.cache.fetch中的错误

sql - 列出重复值的数量

xml - Azure Functions 可以返回 XML 吗?

PHP 使用 nexmo 发送短信

ruby-on-rails - 访问请求规范中的请求对象

ruby-on-rails - ActionController::RoutingError(没有路由匹配 [GET] "/assets/blah.png") Heroku

c# - 如何更改 twilio-csharp 的 BaseUrl?