Impostazione delle preferenze di messaggistica SMS - Amazon Simple Notification Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Impostazione delle preferenze di messaggistica SMS

Utilizza Amazon SNS per specificare le preferenze per i messaggi SMS. Ad esempio, puoi specificare se ottimizzare le consegne per costo o affidabilità, il limite di spesa mensile, la registrazione delle consegne e se eseguire la sottoscrizione a report di utilizzo di SMS giornalieri.

Queste preferenze diventano effettive per ogni SMS che invii dal tuo account, ma alcune possono essere sovrascritte all'invio di un singolo messaggio. Per ulteriori informazioni, consulta Pubblicazione su un telefono cellulare.

Impostazione delle preferenze per i messaggi SMS utilizzando AWS Management Console

  1. Accedi alla console Amazon SNS.

  2. Scegliere una regione che supporti la messaggistica SMS.

  3. Nel riquadro di navigazione, selezionare Mobile (Dispositivi mobili), Text messaging (SMS) (Messaggi di testo (SMS)).

  4. Nella pagina Mobile text messaging (SMS) (Messaggi di testo mobili (SMS)), nella sezione Text messaging preferences (Preferenze per i messaggi di testo), scegliere Edit (Modifica).

  5. Nella pagina Modifica le preferenze per i messaggi di testo, nella sezione Dettagli, effettuare queste operazioni:

    1. Per Default message type (Tipo di messaggio predefinito), scegliere una di queste opzioni:

      • Promozionale: messaggi non critici (ad esempio marketing). Amazon SNS ottimizza la consegna dei messaggi per generare il costo più basso.

      • Transazionale: messaggi critici che supportano le transazioni dei clienti, come le password monouso per l'autenticazione a più fattori. Amazon SNS ottimizza la consegna dei messaggi per ottenere la migliore affidabilità.

      Per informazioni sulle tariffe relative a messaggi promozionali e transazionali, consulta la pagina relativa alle tariffe SMS globali.

    2. In Account spend limit (Limite di spesa per account), digitare l'importo massimo in USD da spendere in messaggi SMS ogni mese di calendario.

      Importante
      • Per impostazione predefinita, la quota di spesa è impostata a 1,00 USD. Se si desidera aumentare la quota di servizio, inviare una richiesta.

      • Se l'importo impostato nella console supera la quota di servizio, Amazon SNS interrompe la pubblicazione di messaggi SMS.

      • Poiché Amazon SNS è un sistema distribuito, blocca l'invio di SMS alcuni minuti dopo il superamento della quota di spesa. Se continui a inviare SMS durante tale intervallo, potresti incorrere in costi che superano la tua quota di spesa.

  6. (Facoltativo) Per Default sender ID (ID mittente predefinito), immettere un ID personalizzato, ad esempio il marchio aziendale, visualizzato come mittente sul dispositivo di ricezione.

    Nota

    Il supporto per gli ID mittente varia in base al paese.

  7. (Facoltativo) Immettere il Amazon S3 bucket name for usage reports (Nome bucket Amazon S3 per i report di utilizzo).

    Nota

    La policy di bucket S3 deve concedere l'autorizzazione in scrittura ad Amazon SNS..

  8. Seleziona Save changes (Salva modifiche).

Impostazione delle preferenze (AWS SDK)

Per impostare le tue preferenze SMS utilizzando uno degli AWS SDK, utilizza l'azione in quell'SDK che corrisponde alla SetSMSAttributes richiesta nell'API Amazon SNS. Con questa richiesta, assegni valori a differenti attributi SMS, come la quota di spesa mensile e il tipo di SMS predefinito (promozionale o transazionale). Per tutti gli attributi SMS, consulta SetSMSAttributes nella Amazon Simple Notification Service API Reference.

I seguenti esempi di codice mostrano come usare. SetSMSAttributes

C++
SDK per C++
Nota

C'è altro da fare GitHub. Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice AWS.

Come utilizzare Amazon SNS per impostare l'attributo DefaultSMType.

//! Set the default settings for sending SMS messages. /*! \param smsType: The type of SMS message that you will send by default. \param clientConfiguration: AWS client configuration. \return bool: Function succeeded. */ bool AwsDoc::SNS::setSMSType(const Aws::String &smsType, const Aws::Client::ClientConfiguration &clientConfiguration) { Aws::SNS::SNSClient snsClient(clientConfiguration); Aws::SNS::Model::SetSMSAttributesRequest request; request.AddAttributes("DefaultSMSType", smsType); const Aws::SNS::Model::SetSMSAttributesOutcome outcome = snsClient.SetSMSAttributes( request); if (outcome.IsSuccess()) { std::cout << "SMS Type set successfully " << std::endl; } else { std::cerr << "Error while setting SMS Type: '" << outcome.GetError().GetMessage() << "'" << std::endl; } return outcome.IsSuccess(); }
  • Per informazioni dettagliate sulle API, consulta SetSMSAttributes nella Documentazione di riferimento per le API AWS SDK for C++ .

CLI
AWS CLI

Impostazione degli attributi dei messaggi SMS

Nell'esempio set-sms-attributes seguente l'ID mittente predefinito per i messaggi SMS viene impostato su MyName.

aws sns set-sms-attributes \ --attributes DefaultSenderID=MyName

Questo comando non produce alcun output.

  • Per informazioni dettagliate sulle API, consulta SetSMSAttributes nel Riferimento ai comandi AWS CLI .

Java
SDK per Java 2.x
Nota

C'è dell'altro GitHub. Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice AWS.

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.sns.SnsClient; import software.amazon.awssdk.services.sns.model.SetSmsAttributesRequest; import software.amazon.awssdk.services.sns.model.SetSmsAttributesResponse; import software.amazon.awssdk.services.sns.model.SnsException; import java.util.HashMap; /** * Before running this Java V2 code example, set up your development * environment, including your credentials. * * For more information, see the following documentation topic: * * https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html */ public class SetSMSAttributes { public static void main(String[] args) { HashMap<String, String> attributes = new HashMap<>(1); attributes.put("DefaultSMSType", "Transactional"); attributes.put("UsageReportS3Bucket", "janbucket"); SnsClient snsClient = SnsClient.builder() .region(Region.US_EAST_1) .build(); setSNSAttributes(snsClient, attributes); snsClient.close(); } public static void setSNSAttributes(SnsClient snsClient, HashMap<String, String> attributes) { try { SetSmsAttributesRequest request = SetSmsAttributesRequest.builder() .attributes(attributes) .build(); SetSmsAttributesResponse result = snsClient.setSMSAttributes(request); System.out.println("Set default Attributes to " + attributes + ". Status was " + result.sdkHttpResponse().statusCode()); } catch (SnsException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } } }
  • Per informazioni dettagliate sulle API, consulta SetSMSAttributes nella Documentazione di riferimento per le API AWS SDK for Java 2.x .

JavaScript
SDK per JavaScript (v3)
Nota

C'è altro da fare. GitHub Trova l'esempio completo e scopri di più sulla configurazione e l’esecuzione nel Repository di esempi di codice AWS.

Creare il client in un modulo separato ed esportarlo.

import { SNSClient } from "@aws-sdk/client-sns"; // The AWS Region can be provided here using the `region` property. If you leave it blank // the SDK will default to the region set in your AWS config. export const snsClient = new SNSClient({});

Importare l'SDK e i moduli client e chiamare l'API.

import { SetSMSAttributesCommand } from "@aws-sdk/client-sns"; import { snsClient } from "../libs/snsClient.js"; /** * @param {"Transactional" | "Promotional"} defaultSmsType */ export const setSmsType = async (defaultSmsType = "Transactional") => { const response = await snsClient.send( new SetSMSAttributesCommand({ attributes: { // Promotional – (Default) Noncritical messages, such as marketing messages. // Transactional – Critical messages that support customer transactions, // such as one-time passcodes for multi-factor authentication. DefaultSMSType: defaultSmsType, }, }), ); console.log(response); // { // '$metadata': { // httpStatusCode: 200, // requestId: '1885b977-2d7e-535e-8214-e44be727e265', // extendedRequestId: undefined, // cfId: undefined, // attempts: 1, // totalRetryDelay: 0 // } // } return response; };
PHP
SDK per PHP
Nota

C'è dell'altro GitHub. Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice AWS.

$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()); }