0
$accessKey = 'XZA...';
$accessSecret = 'YKW...';
$credentials = new Aws\Credentials\Credentials($accessKey, $accessSecret);
$sharedConfig = [
'region' => 'us-east-1',
'version' => 'latest',
'credentials' => $credentials
];
$sdk = new Aws\Sdk($sharedConfig);
$sns = new SnsClient($sharedConfig);
$payload = [
'PhoneNumber' => '+999999999', // E.164 format
'Message' => md5(time()),
'MessageAttributes' => [
'DefaultSenderID' => ['DataType'=>'String','StringValue'=>'MyBrandName'],
'DefaultSMSType' => ['DataType'=>'String','StringValue'=>'Transactional']
]
];
try {
$data = $sns->publish($payload);
$MessageId = $data->get('MessageId');
} catch (Exception $e) { }
我使用AWS SDK的PHP - 3版
上面的代碼工作得很好,當我發送一個短信,除了屬性DefaultSenderID至極當我將短信發送到移動設備時不起作用。亞馬遜SNS - AWS-SDK-PHP
亞馬遜文檔說DefaultSenderID - 一個字符串,如您的商業品牌,在接收設備上顯示爲發件人。對發件人ID的支持因國家而異。發件人ID可以是1 - 11個字母數字字符,並且它必須至少包含一個字母。
任何人都使用Amazon SNS遇到過這個問題?
您可以添加完整的PHP文件,有沒有腳本中的任何其他函數/方法或沒有腳本目前需要任何AWS SDK文件的?如果可以添加完整的php文件,這將有所幫助,否則如果解決了問題,請讓其他人知道它已經解決,以及如何解決問題。 – Birdy
上面的代碼中缺少的唯一東西是require_once'autoload..php'。完整的腳本是上面的代碼。問題依然存在...... –