1

框架:Laravel 4.2

API:Nexmo

图书馆:christian-giupponi/nexmo https://github.com/ChristianGiupponi/Laravel-4-Nexmo

我已经在我的账户中存入了 10 美元,这意味着它不再是演示版。

<?php

        $response = Nexmo::sendSMS('Amazon Company', $text_data['contact_number'], $text_data['text']); 
        $response = json_decode($response);

        if(isset($response->body->messages[0]->{'error-text'}))
        {
            return array(  
                'status'   => 'fail',
                'response' => $response->body->messages[0]->{'error-text'} 
            );
        }

        return array(  
            'status'  => 'success'  
        );
?>

我的研究:

  • 我已经尝试发送到菲律宾号码,我成功收到短信
  • 我尝试发送到美国号码,但我没有收到任何短信,我不知道为什么。
4

3 回答 3

2

要将 SMS 发送到美国号码,您必须请求短代码或者您必须注册长号码。有关更多详细信息,您可以在以下链接中查看我的答案:

https://stackoverflow.com/a/33035811/3077339

希望这会帮助你。

于 2015-10-15T09:21:08.550 回答
1

在美国,您只能使用 Nexmo 虚拟号码作为发件人,请参阅此帮助台文章。从您发布的代码看来,您正在使用'1FX Cash',这将被拒绝。

我的猜测是你得到了Error code 15 - Illegal Sender错误。

于 2015-09-04T17:39:13.740 回答
0

这是一个全新的 Nexmo 帐户吗?默认情况下,当您第一次注册时,您只能向您注册的电话号码发送短信。您需要联系他们的支持以请求取消限制,然后才能发送给其他人。我认为你可以在这里做到这一点:https ://help.nexmo.com/hc/en-us/requests/new

于 2015-08-24T14:34:43.667 回答