¿Cómo puedo acceder a los registros de entrega de temas de Amazon SNS para mensajes de SMS?

4 minutos de lectura
0

Quiero acceder a los registros de entrega de temas de Amazon Simple Notification Service (Amazon SNS) para mensajes de SMS.

Solución

Configuración de los atributos de estado de entrega de SMS para Registros de Amazon CloudWatch

Nota: Como alternativa a los siguientes pasos de la consola, puede configurar el estado de entrega de los mensajes mediante los SDK de AWS o la Interfaz de la línea de comandos de AWS (AWS CLI). Si se muestran errores al ejecutar comandos de AWS CLI, consulte Errores de solución de problemas de la AWS CLI. Además, asegúrese de utilizar la versión más reciente de AWS CLI.

  1. Abra la consola de Amazon SNS.

  2. En el panel de navegación, expanda Móvil y, a continuación, seleccione Mensajería de texto (SMS).

  3. En la sección Preferencias de mensajería de texto, seleccione Editar.

  4. Expanda Registro del estado de entrega (opcional).

  5. En Tasa de muestreo correcto, en el recuadro de texto %, escriba 100.

    Nota: La tasa de éxito es el porcentaje de entregas de mensajes correctas que se van a registrar.

  6. En la sección Roles de IAM, en Rol de servicio, seleccione Crear un nuevo rol de servicio y, a continuación, elija Crear roles nuevos. Se abrirá la consola de AWS Identity and Access Management (IAM).

    Nota: Si ya tiene un rol de IAM con los permisos correctos, seleccione Utilizar el rol de servicio existente para usar ese rol de servicio.

  7. En la página de solicitud de permiso de la consola de IAM, seleccione Permitir.

  8. Tras volver a la consola de Amazon SNS, elija Guardar los cambios.

Se crea un rol de IAM para las entregas correctas y erróneas, con la siguiente política y relaciones de confianza para Amazon SNS.

Rol de IAM:

arn:aws:iam::1111111111:role/SNSSuccessFeedback

Política:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents",
        "logs:PutMetricFilter",
        "logs:PutRetentionPolicy"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}

Relaciones de confianza:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sns.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

Visualización de los registros del estado de entrega

  1. Abra la consola de Amazon CloudWatch.

  2. En el panel de navegación, expanda Registros y, a continuación, Grupos de registros.

  3. En el cuadro de búsqueda Filtro, introduzca DirectPublishToPhoneNumber para buscar solo los grupos de registros de SMS para Amazon SNS.

    Nota: En función del operador del número de teléfono de destino, los registros de entrega pueden tardar hasta 72 horas en aparecer en la consola de Amazon SNS.

    Por ejemplo:

    El grupo de registros sns/your-AWS-region/your-AWS-account-ID/DirectPublishToPhoneNumber contiene los registros de las entregas correctas:

    sns/us-east-1/1111111111/DirectPublishToPhoneNumber

    Ejemplos de registros de entregas correctas:

    {
      "notification": {
        "messageId": "34d9b400-c6dd-5444-820d-fbeb0f1f54cf",
        "timestamp": "2016-06-28 00:40:34.558"
      },
      "delivery": {
        "phoneCarrier": "My Phone Carrier",
        "mnc": 270,
        "destination": "+1XXX5550100",
        "priceInUSD": 0.00645,
        "smsType": "Transactional",
        "mcc": 310,
        "providerResponse": "Message has been accepted by phone carrier",
        "dwellTimeMs": 599,
        "dwellTimeMsUntilDeviceAck": 1344
      },
      "status": "SUCCESS"
    }

    El grupo de registros sns/your-AWS-region/your-AWS-account-ID/DirectPublishToPhoneNumber/Failure contiene los registros de las entregas erróneas:

    sns/us-east-1/1111111111/DirectPublishToPhoneNumber/Failure

    Ejemplos de registros de entregas erróneas:

    {
      "notification": {
        "messageId": "1077257a-92f3-5ca3-bc97-6a915b310625",
        "timestamp": "2016-06-28 00:40:34.559"
      },
      "delivery": {
        "mnc": 0,
        "destination": "+1XXX5550100",
        "priceInUSD": 0.00645,
        "smsType": "Transactional",
        "mcc": 0,
        "providerResponse": "Unknown error attempting to reach phone",
        "dwellTimeMs": 1420,
        "dwellTimeMsUntilDeviceAck": 1692
      },
      "status": "FAILURE"
    }
  4. Elija el grupo de registros de SNS que desee visualizar.

  5. En la pestaña Secuencias de registro, elija una secuencia de registro determinada para ver los registros de entrega de SMS.

  6. Para ver el estado de entrega de su mensaje SMS, expanda el evento de registro y compruebe providerResponse.

Visualización de los números de teléfono desactivados

Los destinatarios pueden optar por recibir mensajes SMS de su cuenta de AWS en el teléfono. Para obtener más información, consulte Opting out of receiving SMS messages.

  1. Abra la consola de Amazon SNS.
  2. En el panel de navegación, expanda la sección Móvil y, a continuación, seleccione Mensajería de texto (SMS).
  3. Para ver los números de teléfono desactivados, vaya a la sección Números de teléfono desactivados.

Información relacionada

Monitoring Amazon SNS topics using CloudWatch

Setting SMS messaging preferences

Viewing Amazon CloudWatch metrics and logs for SMS deliveries