【问题标题】:Converting local numbers into international format (for use with Rails and services such as Nexmo/Twilo)将本地数字转换为国际格式(用于 Rails 和 Nexmo/Twilo 等服务)
【发布时间】:2015-03-15 21:12:14
【问题描述】:

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

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

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

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

  • 有没有更简单的方法?或者那里的宝石可以做到这一点?

【问题讨论】:

    标签: ruby-on-rails-4 twilio vonage


    【解决方案1】:

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

    【讨论】:

    【解决方案2】:

    phony_rails gem 提供国际格式和验证。这是phony 的 Rails 包装器,为您提供查看助手和模型验证器。要查看它支持的所有国家/地区,请参阅phony 存储库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-05
      • 2016-07-27
      • 2013-09-30
      • 2015-05-05
      • 1970-01-01
      相关资源
      最近更新 更多