Aggiunta di endpoint ad Amazon Pinpoint - Amazon Pinpoint

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à.

Aggiunta di endpoint ad Amazon Pinpoint

Un endpoint rappresenta una destinazione alla quale puoi inviare messaggi, ad esempio un dispositivo mobile, un numero di telefono o un indirizzo e-mail. Prima di inviare messaggi a un membro del gruppo di destinatari, è necessario definire uno o più endpoint per quella persona.

Per definire un endpoint, devi specificare il canale e l'indirizzo. Il canale è il tipo di piattaforma usata per inviare messaggi all'endpoint, ad esempio un servizio di notifica push, SMS o e-mail. L'indirizzo specifica dove inviare il messaggio all'endpoint, ad esempio un token di dispositivo, un numero di telefono o un indirizzo e-mail.

Per aggiungere ulteriori dettagli sui destinatari, puoi arricchire gli endpoint con attributi personalizzati o standard. Questi attributi possono includere dati relativi agli utenti, alle loro preferenze, ai loro dispositivi, alle versioni del client che utilizzano o alle loro posizioni. L'aggiunta di dati di questo tipo agli endpoint ti consente di:

  • Visualizzare grafici relativi al pubblico nella console Amazon Pinpoint.

  • Segmentare il gruppo di destinatari in base agli attributi degli endpoint, in modo da inviare messaggi al target appropriato.

  • Personalizzare i messaggi incorporando variabili dei messaggi che vengono sostituite con i valori degli attributi degli endpoint.

Un'applicazione client JavaScript o per dispositivi mobili registra automaticamente gli endpoint se si integra Amazon Pinpoint utilizzando SDK mobile AWS o la libreria JavaScript di AWS Amplify. Il client registra un endpoint per ogni nuovo utente e aggiorna gli endpoint per gli utenti già registrati. Per registrare gli endpoint da un client JavaScript o per dispositivi mobili, consulta Registrazione di endpoint nell'applicazione.

Esempi

Gli esempi seguenti illustrano come aggiungere un endpoint a un progetto Amazon Pinpoint. L'endpoint rappresenta un membro del gruppo di destinatari che abita a Seattle e usa un iPhone. A questa persona è possibile inviare messaggi tramite il servizio APNs (Apple Push Notification service). L'indirizzo dell'endpoint è il token del dispositivo fornito dal servizio APNs.

AWS CLI

Puoi utilizzare Amazon Pinpoint eseguendo i comandi con l'AWS CLI.

Esempio Comando per l'aggiornamento di endpoint

Per aggiungere o aggiornare un endpoint, usa il comando update-endpoint:

$ aws pinpoint update-endpoint \ > --application-id application-id \ > --endpoint-id endpoint-id \ > --endpoint-request file://endpoint-request-file.json

Dove:

  • application-id è l'ID del progetto Amazon Pinpoint in cui vuoi aggiungere o aggiornare di un endpoint.

  • example-endpoint è l'ID da assegnare a un nuovo endpoint oppure l'ID di un endpoint esistente da aggiornare.

  • endpoint-request-file.json è il percorso di un file JSON locale che contiene l'input per il parametro --endpoint-request.

Esempio File di richiesta endpoint

Il comando update-endpoint di esempio usa un file JSON come argomento per il parametro --endpoint-request. Questo file contiene una definizione di endpoint come la seguente:

{ "ChannelType": "APNS", "Address": "1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s0t1u2v3w4x5y6z7a8b9c0d1e2f", "Attributes": { "Interests": [ "Technology", "Music", "Travel" ] }, "Metrics": { "technology_interest_level": 9.0, "music_interest_level": 6.0, "travel_interest_level": 4.0 }, "Demographic": { "AppVersion": "1.0", "Make": "apple", "Model": "iPhone", "ModelVersion": "8", "Platform": "ios", "PlatformVersion": "11.3.1", "Timezone": "America/Los_Angeles" }, "Location": { "Country": "US", "City": "Seattle", "PostalCode": "98121", "Latitude": 47.61, "Longitude": -122.33 } }

Per gli attributi che è possibile utilizzare per definire un endpoint, consulta lo schema EndpointRequest nella documentazione di riferimento dell'API Amazon Pinpoint.

AWS SDK for Java

Puoi utilizzare l'API Amazon Pinpoint nelle applicazioni Java utilizzando il client fornito da AWS SDK for Java.

Esempio Codice

Per aggiungere un endpoint, inizializza un oggetto EndpointRequest e passalo al metodo updateEndpoint del client AmazonPinpoint:

import com.amazonaws.regions.Regions; import com.amazonaws.services.pinpoint.AmazonPinpoint; import com.amazonaws.services.pinpoint.AmazonPinpointClientBuilder; import com.amazonaws.services.pinpoint.model.*; import java.util.Arrays; public class AddExampleEndpoint { public static void main(String[] args) { final String USAGE = "\n" + "AddExampleEndpoint - Adds an example endpoint to an Amazon Pinpoint application." + "Usage: AddExampleEndpoint <applicationId>" + "Where:\n" + " applicationId - The ID of the Amazon Pinpoint application to add the example " + "endpoint to."; if (args.length < 1) { System.out.println(USAGE); System.exit(1); } String applicationId = args[0]; // The device token assigned to the user's device by Apple Push Notification // service (APNs). String deviceToken = "1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s0t1u2v3w4x5y6z7a8b9c0d1e2f"; // Initializes an endpoint definition with channel type and address. EndpointRequest wangXiulansIphoneEndpoint = new EndpointRequest() .withChannelType(ChannelType.APNS) .withAddress(deviceToken); // Adds custom attributes to the endpoint. wangXiulansIphoneEndpoint.addAttributesEntry("interests", Arrays.asList( "technology", "music", "travel")); // Adds custom metrics to the endpoint. wangXiulansIphoneEndpoint.addMetricsEntry("technology_interest_level", 9.0); wangXiulansIphoneEndpoint.addMetricsEntry("music_interest_level", 6.0); wangXiulansIphoneEndpoint.addMetricsEntry("travel_interest_level", 4.0); // Adds standard demographic attributes. wangXiulansIphoneEndpoint.setDemographic(new EndpointDemographic() .withAppVersion("1.0") .withMake("apple") .withModel("iPhone") .withModelVersion("8") .withPlatform("ios") .withPlatformVersion("11.3.1") .withTimezone("America/Los_Angeles")); // Adds standard location attributes. wangXiulansIphoneEndpoint.setLocation(new EndpointLocation() .withCountry("US") .withCity("Seattle") .withPostalCode("98121") .withLatitude(47.61) .withLongitude(-122.33)); // Initializes the Amazon Pinpoint client. AmazonPinpoint pinpointClient = AmazonPinpointClientBuilder.standard() .withRegion(Regions.US_EAST_1).build(); // Updates or creates the endpoint with Amazon Pinpoint. UpdateEndpointResult result = pinpointClient.updateEndpoint(new UpdateEndpointRequest() .withApplicationId(applicationId) .withEndpointId("example_endpoint") .withEndpointRequest(wangXiulansIphoneEndpoint)); System.out.format("Update endpoint result: %s\n", result.getMessageBody().getMessage()); } }
HTTP

Puoi utilizzare Amazon Pinpoint effettuando richieste HTTP direttamente alla REST API.

Esempio Richiesta PUT per l'endpoint

Per aggiungere una richiesta di endpoint, invia una richiesta PUT alla risorsa Endpoint all'URI seguente:

/v1/apps/application-id/endpoints/endpoint-id

Dove:

  • application-id è l'ID del progetto Amazon Pinpoint in cui vuoi aggiungere o aggiornare di un endpoint.

  • endpoint-id è l'ID che vuoi assegnare a un nuovo endpoint oppure l'ID di un endpoint esistente che vuoi aggiornare.

Nella richiesta includi le intestazioni necessarie e specifica lo schema EndpointRequest in formato JSON come corpo.

PUT /v1/apps/application_id/endpoints/example_endpoint HTTP/1.1 Host: pinpoint.us-east-1.amazonaws.com X-Amz-Date: 20180415T182538Z Content-Type: application/json Accept: application/json X-Amz-Date: 20180428T004705Z Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20180428/us-east-1/mobiletargeting/aws4_request, SignedHeaders=accept;content-length;content-type;host;x-amz-date, Signature=c25cbd6bf61bd3b3667c571ae764b9bf2d8af61b875cacced95d1e68d91b4170 Cache-Control: no-cache { "ChannelType": "APNS", "Address": "1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s0t1u2v3w4x5y6z7a8b9c0d1e2f", "Attributes": { "Interests": [ "Technology", "Music", "Travel" ] }, "Metrics": { "technology_interest_level": 9.0, "music_interest_level": 6.0, "travel_interest_level": 4.0 }, "Demographic": { "AppVersion": "1.0", "Make": "apple", "Model": "iPhone", "ModelVersion": "8", "Platform": "ios", "PlatformVersion": "11.3.1", "Timezone": "America/Los_Angeles" }, "Location": { "Country": "US", "City": "Seattle", "PostalCode": "98121", "Latitude": 47.61, "Longitude": -122.33 } }

Se la richiesta va a buon fine, riceverai una risposta analoga alla seguente:

{ "RequestID": "67e572ed-41d5-11e8-9dc5-db288f3cbb72", "Message": "Accepted" }

Per ulteriori informazioni sulla risorsa Endpoint nell'API Amazon Pinpoint, compresi i metodi HTTP supportati e i parametri della richiesta, consulta Endpoint nella documentazione di riferimento dell'API Amazon Pinpoint.

Per ulteriori informazioni sulla personalizzazione dei messaggi con variabili, consulta la sezione relativa alle variabili dei messaggi nella Guida per l'utente di Amazon Pinpoint.

Per informazioni sulle quote applicabili agli endpoint, ad esempio il numero di attributi che è possibile assegnare, consulta Quote per gli endpoint.