As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Envio de mensagens SMS no Amazon SNS com a AWS SDK for PHP versão 3
Você pode usar o Amazon Simple Notification Service (Amazon SNS) S S S S S S S S S S S S S S S S S S Você pode enviar uma mensagem diretamente para um número de telefone, ou enviar uma mensagem para vários números de telefone de uma só vez inscrevendo esses números em um tópico e enviando sua mensagem para o tópico.
Use o Amazon SNS S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S Essas preferências são recuperadas e definidas como atributos de SMS para o Amazon SNS.
Ao enviar uma mensagem SMS, especifique o número de telefone usando o formato E.164. E.164 é um padrão para a estrutura de número de telefone usada para telecomunicações internacionais. Os números de telefone que seguem esse formato podem conter 15 dígitos, no máximo, e são prefixados com o caractere de mais (+) e o código do país. Por exemplo, um número de telefone dos EUA no formato E.164 seria exibido como +1001XXX5550100.
Os exemplos a seguir mostram como:
-
Recupere as configurações padrão para o envio de mensagens SMS de sua conta com o GetSMSAttributes.
-
Atualize as configurações padrão para o envio de mensagens SMS de sua conta com o SetSMSAttributes.
-
Listar números de telefone que saiu a opção de recebimento de mensagens SMS ListPhoneNumberOptedOutem sua conta.
-
Envie uma mensagem de texto (SMS) diretamente a um número de telefone com a função Publicar.
Para obter mais informações sobre o uso do Amazon SNS, consulte Como usar o Amazon SNS para notificações de usuários com um número de telefone celular como assinante (enviar SMS).
Todo o código de exemplo do AWS SDK for PHP está disponível aqui em GitHub
Credenciais
Antes de executar o código de exemplo, configure suas AWS credenciais, conforme descrito em. Credenciais Em seguida, importe oAWS SDK for PHP, conforme descrito emUso básico.
Obtenção de atributos de SMS
Para recuperar as configurações padrão para mensagens SMS, utilize a operação GetSMSAttributes.
Este exemplo obtém o atributo DefaultSMSType
. Este atributo controla se serão enviadas mensagens SMS como Promotional
, que otimiza a entrega de mensagens para gerar custos mais baixos, ou como Transactional
, que otimiza a entrega de mensagens para gerar a mais alta confiabilidade.
Importações
require 'vendor/autoload.php'; use Aws\Sns\SnsClient; use Aws\Exception\AwsException;
Código de exemplo
$SnSclient = new SnsClient([ 'profile' => 'default', 'region' => 'us-east-1', 'version' => '2010-03-31' ]); try { $result = $SnSclient->getSMSAttributes([ 'attributes' => ['DefaultSMSType'], ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }
Definir atributos de SMS
Para atualizar as configurações padrão para mensagens SMS, utilize a operação SetSMSAttributes.
Este exemplo define o atributo DefaultSMSType
para Transactional
, que otimiza a entrega de mensagens para gerar a mais alta confiabilidade.
Importações
require 'vendor/autoload.php'; use Aws\Sns\SnsClient; use Aws\Exception\AwsException;
Código de exemplo
$SnSclient = new SnsClient([ 'profile' => 'default', 'region' => 'us-east-1', 'version' => '2010-03-31' ]); try { $result = $SnSclient->SetSMSAttributes([ 'attributes' => [ 'DefaultSMSType' => 'Transactional', ], ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }
Verifique se um número de telefone optou por não participar
Para determinar se o titular do número de telefone cancelou a opção de recebimento de mensagens SMS em sua conta CheckIfPhoneNumberIsOptedOut.
Neste exemplo, o número de telefone está no formato E.164, um padrão para telecomunicações internacionais.
Importações
require 'vendor/autoload.php'; use Aws\Sns\SnsClient; use Aws\Exception\AwsException;
Código de exemplo
$SnSclient = new SnsClient([ 'profile' => 'default', 'region' => 'us-east-1', 'version' => '2010-03-31' ]); $phone = '+1XXX5550100'; try { $result = $SnSclient->checkIfPhoneNumberIsOptedOut([ 'phoneNumber' => $phone, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }
Listar números de telefone que sair
Para recuperar uma lista de números de telefone que sair a opção de recebimento de mensagens SMS em sua conta. ListPhoneNumbersOptedOut
Importações
require 'vendor/autoload.php'; use Aws\Sns\SnsClient; use Aws\Exception\AwsException;
Código de exemplo
$SnSclient = new SnsClient([ 'profile' => 'default', 'region' => 'us-east-1', 'version' => '2010-03-31' ]); try { $result = $SnSclient->listPhoneNumbersOptedOut([ ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }
Publicar em uma mensagem de texto (mensagem SMS)
Para enviar uma mensagem de texto (mensagem SMS) diretamente a um número de telefone, utilize a operação Publicar.
Neste exemplo, o número de telefone está no formato E.164, um padrão para telecomunicações internacionais.
As mensagens SMS podem conter até 140 bytes. O limite do tamanho de uma única ação de publicação de SMS é de 1.600 bytes.
Para obter mais informações sobre o envio de mensagens SMS, consulte Como enviar uma mensagem SMS.
Importações
require 'vendor/autoload.php'; use Aws\Sns\SnsClient; use Aws\Exception\AwsException;
Código de exemplo
$SnSclient = new SnsClient([ 'profile' => 'default', 'region' => 'us-east-1', 'version' => '2010-03-31' ]); $message = 'This message is sent from a Amazon SNS code sample.'; $phone = '+1XXX5550100'; try { $result = $SnSclient->publish([ 'Message' => $message, 'PhoneNumber' => $phone, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }