2

我正在尝试实现nexmo sms api以从手机接收短信并保存到mysql表。我考虑了nexmo。我检查了文档。但困惑如何使用它

https://docs.nexmo.com/messaging/sms-api
am trying to implement nexmo sms api to receive sms from phone and save to mysql table. i took account in nexmo. i ckeched the documentation. but confused how to use it

任何人都知道从手机发送短信时如何将短信接收到我的脚本,然后请帮助我,我想将短信提取到脚本并保存到 mysql 表

public function myinformation() {
   $request = array_merge($_GET, $_POST);

// Check that this is a delivery receipt.
if (!isset($request['messageId']) OR !isset($request['status'])) {
    error_log('This is not a delivery receipt');
    return;
}

//Check if your message has been delivered correctly.
if ($request['status'] == 'delivered') {
    error_log("Your message to {$request['msisdn']} (message id {$request['messageId']}) was delivered.");
    error_log("The cost was {$request['price']}.");
     $From = $this->input->post('saleena@gmail.com');
        $ToEmail = $this->input->post('saleena@gmail.com');
        $message = "Results: " . print_r( $request, true );
           $this->load->library('email');
        $subject = 'My Attempt';

        // Get full html:
        $body = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=' . strtolower(config_item('charset')) . '" />
    <title>' . html_escape($subject) . '</title>
    <style type="text/css">
        body {
            font-family: Arial, Verdana, Helvetica, sans-serif;
            font-size: 16px;
        }
    </style>
</head>
<body>
' . $message . '
</body>
</html>';
      $result = $this->email
                ->from($From)
                // Optional, an account where a human being reads.
                ->to($ToEmail)
                ->subject($subject)
                ->message($body)
                ->send();

        var_dump($result);
        echo $this->email->print_debugger();
        exit;      

} elseif ($request['status'] != 'accepted') {
    error_log("Your message to {$request['msisdn']} (message id {$request['messageId']}) was accepted by the carrier.");
    error_log("The cost was {$request['price']}.");
} else {
    error_log("Your message to {$request['msisdn']} has a status of: {$request['status']}.");
    error_log("Check err-code {$request['err-code']} against the documentation.");
}
    }

我试过这个代码。但我没有收到任何邮件到我的邮件

4

1 回答 1

0

您可以使用 Nexmo 的 SMS API,它允许您通过简单的 HTTP 调用在 200 多个国家/地区发送文本。

您可以注册一个虚拟号码,该号码允许您发送 SMS 消息并接收传入消息。

对于 2FA,您可以使用验证 API 对特定设备的用户进行身份验证。

这种方法比使用 SMS API 和自己随机生成数字更安全。然后,最终用户将输入 pin 并由验证 API 进行检查。

使用这些 API 中的任何一个都需要几行代码。下面是一段 PHP 代码,它允许您使用 SMS API 发送文本。

于 2016-11-11T10:02:34.100 回答