Adicionar endpoints ao Amazon Pinpoint - Amazon Pinpoint

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

Adicionar endpoints ao Amazon Pinpoint

Um endpoint representa um destino para o qual é possível enviar mensagens, como um dispositivo móvel, um número de telefone ou um endereço de e-mail. Para poder enviar mensagens a um membro de seu público-alvo, você deve definir um ou mais endpoints para esse indivíduo.

Ao definir um endpoint, você especifica o canal e o endereço. O canal é o tipo de plataforma que você usa para enviar mensagens para o endpoint. Os exemplos de canais incluem um serviço de notificação por push, SMS ou e-mail. O endereço especifica para onde enviar mensagem ao endpoint, como um token de dispositivo, um número de telefone ou um endereço de e-mail.

Para adicionar mais detalhes sobre o seu público-alvo, você pode enriquecer seus endpoints com atributos padrão e personalizados. Esses atributos podem incluir dados sobre seus usuários, suas preferências, seus dispositivos, as versões do cliente que usam ou seus locais. Quando adiciona esse tipo de dados a seus endpoints, você pode:

  • Visualizar gráficos sobre seu público-alvo no console do Amazon Pinpoint.

  • Segmentar seu público-alvo com base em atributos de endpoint para que possa enviar suas mensagens ao público-alvo correto.

  • Personalizar suas mensagens incorporando variáveis na mensagem que são substituídas pelos valores dos atributos do endpoint.

Um aplicativo cliente móvel ou JavaScript registra endpoints automaticamente se você integrar o Amazon Pinpoint usando os SDKs do AWS Mobile ou a biblioteca Amplify JavaScript da AWS. O cliente registra um endpoint para cada novo usuário e atualiza endpoints para usuários que retornam. Para registrar endpoints de um cliente móvel ou JavaScript, consulte Registrar endpoints no aplicativo.

Exemplos

Os exemplos a seguir mostram como adicionar um endpoint a um projeto do Amazon Pinpoint. O endpoint representa um membro do público-alvo que vive em Seattle e usa um iPhone. Essa pessoa pode receber mensagens por meio do Apple Push Notification service (APNs). O endereço do endpoint é o token do dispositivo que é fornecido pelo APNs.

AWS CLI

Você pode usar o Amazon Pinpoint executando comandos com a AWS CLI.

exemplo Comando Update endpoint

Para adicionar ou atualizar um endpoint, use o comando update-endpoint:

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

Em que:

  • application-id é o ID do projeto do Amazon Pinpoint no qual você está adicionando ou atualizando um endpoint.

  • example-endpoint é o ID que você está atribuindo a um novo endpoint ou o ID de um endpoint existente que você está atualizando.

  • endpoint-request-file.json é o caminho para um arquivo JSON local que contém a entrada para o parâmetro --endpoint-request.

exemplo Arquivo de solicitação de endpoint

O comando update-endpoint de exemplo usa um arquivo JSON como o argumento para o parâmetro --endpoint-request. Esse arquivo contém uma definição de endpoint, como a seguinte:

{ "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 } }

Para os atributos que você pode usar para definir um endpoint, consulte o esquema EndpointRequest na Referência da API do Amazon Pinpoint.

AWS SDK for Java

Você pode usar a API do Amazon Pinpoint em seus aplicativos Java usando o cliente fornecido pelo AWS SDK for Java.

exemplo Código

Para adicionar um endpoint, inicialize um objeto EndpointRequest e passe-o para o método updateEndpoint do cliente do 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

Você pode usar o Amazon Pinpoint fazendo solicitações HTTP diretamente para a API REST.

exemplo Solicitação PUT endpoint

Para adicionar um endpoint, envie uma solicitação PUT para o recurso Endpoint no seguinte URI:

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

Em que:

  • application-id é o ID do projeto do Amazon Pinpoint no qual você está adicionando ou atualizando um endpoint.

  • endpoint-id é o ID que você está atribuindo a um novo endpoint ou o ID de um endpoint existente que você está atualizando.

Em sua solicitação, inclua os cabeçalhos necessários e forneça o JSON EndpointRequest como o 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 sua solicitação for bem-sucedida, você receberá uma resposta como a seguinte:

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

Para obter mais informações sobre o recurso Endpoint na API do Amazon Pinpoint, incluindo os métodos HTTP e os parâmetros de solicitação compatíveis, consulte Endpoint na Referência da API do Amazon Pinpoint.

Para obter mais informações sobre como personalizar mensagens com variáveis, consulte Variáveis de mensagens no Guia do usuário do Amazon Pinpoint.

Para obter informações sobre as cotas que se aplicam a endpoints, como o número de atributos que você pode atribuir, consulte Cotas de endpoint.