如何将 OTP 从我的服务器发送到我的 android 应用程序?

How do I send OTP from my server to my android application?

我正在为我的后端使用 laravel 5.2 框架。我想知道如何从我的后端将 OTP 发送到 Android 应用程序。我可以使用 AWS-SNS 或 GCM 还是需要使用其他一些 SMS 网关?我还希望从我的自定义 ID(例如 VM-REDBUS)发送 OTP 消息。请大家帮帮我。

您必须将短信网关集成到您的后端。它将向您的客户手机号码发送短信。

你可以看到这个tutorial来了解短信验证的过程。

您可以选择像Kaleyra, Spring Edge, SMS Gupshup, Value First, Msg91这样的短信网关解决方案。

但为此你必须从用户那里获取手机号码作为输入,然后你可以通过后端发送 OTP 消息。

您无需对 android 设备执行任何有关 OTP 消息的操作。它应该在后端。假设如果你也想集成 IOS 那么它会有所帮助。

有关详细信息,您还可以查看教程。

这是任何技术的通用步骤

  1. 注册kaleyra
    1. 创建 apikey 和记事本,
      apikey(例如:Abxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx3)和
      SID(例如:发件人 ID:HXAP0000000000IN)和
      api_name(例如:your_fav_name)
    2. 以任何方式构建 url https://api.ap.kaleyra.io/v1/HXAP0000000000IN/messages/api_key=Abxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx3&type=OTP&body=Hello!%20Your%20OTP%20is%201234&to=+918055555555&sender=your_api_name 或者只编辑上面的url
    3. 类型应为 OTP
      类型、正文、收件人、发件人是 mandatory fields
    4. 现在,如果您将 url 粘贴到任何浏览器上,您将得到 JSON 结果
{
       "id": "4xxxxxxd-2xx3-4xxe-9xx5-23dxxxxxxx2",
       "sender": "your_fav_name or SID alloted",
       "type": "OTP",
       "body": "Hello! Your OTP is 1234",
       "createdDateTime": "2020-01-16 04:41:10+00:00",
       "totalCount": 1,
       "data": [
         {
           "message_id": "4xxxxxxd-2xx3-4xxe-9xx5-23dxxxxxxx2:1",
           "recipient": "918055555555"
         }
       ],
       "dlrurl": null,
       "error": {}
     }

这是文档 link:https://apidocs-hexaap.kaleyra.com/?version=latest#df0f287d-0fb7-4e3b-82ee-bac581ecb0ae

这对于所有类型的网关技术都是一样的,例如 twilo、2factor 等等等等

这里是 msg91 SDK

可用的完整 SDK