Development

Explicación del flujo de entrega de PIN transparente

¿Quiere ser capaz de saber qué paso con el mensaje que contenía el PIN de su usuario? Bien, porque eso es exactamente lo que le vamos a mostrar.

December 28 2015

El envío de PIN como una herramienta para que los usuarios puedan autenticar sus cuentas no es novedoso, pero contar con un flujo transparente, saber exactamente dónde está su PIN, saber por qué no llega y ser capaces de comunicar esto a sus clientes es una historia completamente distinta y fascinante.

Los flujos de autenticación de dos factores basados en SMS son simples. Cuando el usuario intenta iniciar sesión en su cuenta, recibe un mensaje SMS con su número de identificación personal (PIN), que brinda seguridad adicional para el acceso. Esto es lo que puede prevenir.

Parece muy fácil. Hay que escribir un par de líneas de código, implementarlas en la app y listo. Hemos agregado toda la lógica de autenticación de dos factores. Así, mejoramos la seguridad de la cuenta del usuario final.

Por lo general, los mensajes se envían al usuario en unos segundos, pero ¿qué pasa si no es así? A veces el mensaje no llega inmediatamente. ¿Se ha preguntado por qué? ¿Quiere ser capaz de saber inmediatamente qué pasó con su mensaje? Bien, porque eso es exactamente lo que le vamos a mostrar.

En este tutorial paso a paso para integrar nuestra suite de mensajería completa en sus procesos, mediante la API HTTP de Infobip, va a obtener una opinión experta sobre estos temas:

*Para familiarizarse con la API HTTP de SMS de Infobip, visite nuestro Tutorial para comenzar.

Envío de SMS

Para comenzar a enviar sus mensajes SMS, necesita crear una solicitud POST HTTP en https://api.infobip.com/sms/1/text/advanced

Su encabezado debe mostrar la autorización y el tipo de contenido.

  • Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
  • Content-Type: application/json

Le mostraremos ejemplos de cómo enviar SMS, establecer parámetros para recibir informes de entrega finales e intermedios y cómo configurar el seguimiento de SMS para las tasas de conversión..

JSON


POST /sms/1/text/advanced HTTP/1.1
Host: api.infobip.com
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Content-Type: application/json

{
   "messages":[
      {
         "from":"InfoSMS",
         "destinations":[
            {
               "to":"41793026731"
            }
         ],
         "text":"Your PIN code is 1a2B3c. Enjoy our app!",
         "intermediateReport":true,
         "notifyUrl":"http://www.example.com/sms/advanced"
      }
    ],
   "tracking":{
         "track":"SMS",
         "type":"One_Time_Pin"
   }
}

Como respuesta, recibirá un estado 200 OK con detalles del mensaje en el cuerpo de la respuesta:

JSON


HTTP/1.1 200 OK
Content-Type: application/json

{
  "bulkId": "1446634544520356423",
  "messages": [
    {
      "to": "41793026731",
      "status": {
        "groupId": 1,
        "groupName": "PENDING",
        "id": 7,
        "name": "PENDING_ENROUTE",
        "description": "Message sent to next instance"
      },
      "smsCount": 1,
      "messageId": "8ef699bc-d4c6-4cf6-8d6e-9a9aa62ad93a"
    }
  ]
}

Uno de los parámetros recibidos en la respuesta es la ID del mensaje que se usó para Enviar las tasas de conversión a la plataforma de Infobip.

Para ver más explicaciones y ejemplos sobre el envío de mensajes, visite esta página de documentación.

Informes de entrega inmediatos

Los informes de entrega inmediatos se usan para recibir información en tiempo real sobre sus mensajes.

Cuando se recibe cualquier error GSM no permanente (como EC_ABSENT_SUBSCRIBER) en el sistema de Infobip, este será reenviado a la URL de notificación* especificada en su servidor de retrollamada. Además de los errores GSM, también le enviaremos en tiempo real la información de precios, el estado del mensaje y los códigos de red y de país.

*La URL de notificación se configura como uno de los parámetros del método API para los mensajes de texto con todas las prestaciones.

Para obtener más información sobre los códigos de error GSM y los estados del mensaje, visite nuestra página de códigos de respuesta.

Más abajo encontrará un ejemplo de un informe de entrega intermedio que será enviado a su servidor de retrollamada:

JSON


{
  "results": [
    {
      "bulkId": "BULK-ID-123-xyz",
      "messageId": "c9823180-94d4-4ea0-9bf3-ec907e7534a6",
      "to": "41793026731",
      "sentAt": "2015-10-04T13:01:52.933+0000",
      "doneAt": "2015-10-04T13:02:00.134+0000",
      "smsCount": 1,
      "price": {
        "pricePerMessage": 0.0001000000,
        "currency": "EUR"
      },
      "status": {
        "groupId": 3,
        "groupName": "PENDING",
        "id": 1,
        "name": "PENDING_WAITING_DELIVERY",
        "description": "Message sent, waiting for delivery report"
      },
      "error": {
        "groupId": 1,
        "groupName": "HANDSET_ERRORS",
        "id": 27,
        "name": "EC_ABSENT_SUBSCRIBER",
        "description": "Absent Subscriber",
        "permanent": false
      }
    }
  ]
}

Informes de entrega finales

Una vez que se reciban los informes de entrega finales de los mensajes enviados desde el sistema de Infobip, estos serán reenviados a la URL de notificación en su servidor de retrollamada especificada.

Recibirá el resultado en su URL de notificación, y este tendrá la misma estructura que el informe de entrega intermedio:

JSON


{
  "results": [
    {
      "bulkId": "BULK-ID-123-xyz",
      "messageId": "MESSAGE-ID-123-xyz",
      "to": "41793026727",
      "sentAt": "2015-06-04T13:01:52.937+0000",
      "doneAt": "2015-06-04T13:02:01.204+0000",
      "smsCount": 1,
      "price": {
        "pricePerMessage": 0.0001000000,
        "currency": "EUR"
      },
      "status": {
        "groupId": 3,
        "groupName": "DELIVERED",
        "id": 5,
        "name": "DELIVERED_TO_HANDSET",
        "description": "Message delivered to handset"
      },
      "error": {
        "groupId": 0,
        "groupName": "OK",
        "id": 0,
        "name": "NO_ERROR",
        "description": "No Error",
        "permanent": false
      }
    }
  ]
}

Solución de seguimiento de conversión

Cuando realiza una campaña por SMS, una de las tareas más importantes es realizar un seguimiento del desempeño y medir su tasa de conversión de usuarios. Por ejemplo, si está enviando PIN únicos por SMS, es muy importante realizar un seguimiento de la tasa de conversión para optimizar su flujo y sus procesos.

El seguimiento de conversión tiene que iniciar cada vez que comienza su proceso y tiene que finalizar cuando se completa la conversión. Solo cuando se cierra el bucle, consideramos que fue una conversión exitosa.

Inicio del proceso de seguimiento de conversión

Nuestra solución de seguimiento de SMS rastreará automáticamente cada mensaje enviado desde la plataforma de Infobip. Solo configure el parámetro de seguimiento, ingrese el tipo de campaña, y el seguimiento de SMS comenzará automáticamente.

Esos elementos se configuran en los objetos con seguimiento cuando realiza el envío de un mensaje SMS.

Envío de la tasa de conversión

Cuando un usuario realiza la acción correctamente luego de recibir un SMS, como por ejemplo, ingresar el PIN único en su app, puede enviarnos esa información para medir las tasas de conversión.

Para el envío de la tasa de conversión, solo necesitamos la ID del mensaje recibida luego del envío de un mensaje SMS. La ID del mensaje tiene que enviarse a nuestro destino final cuando se completa la conversión. Este es el destino final para el envío de las tasas de conversión:

Ejemplo: Envío de la ID del mensaje para mensajes convertidos

Este ejemplo muestra cómo enviar la ID del mensaje cuando se completa la conversión.

JSON


POST /ct/1/log/end/9304a5a3ab19-1ca1-be74-76ad87651ed25f35 HTTP/1.1
Host: api.infobip.com
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Content-Type: application/json
As a response, you will receive a processKey that is used for getting conversion rates and statistics:
JSON
{
    "processKey": "A37D448C1ACCA02FABA745522558326C" 
} 

Como respuesta, recibirá una processKey que se utiliza para obtener tasas y estadísticas de conversión:

JSON

{
    "processKey": "A37D448C1ACCA02FABA745522558326C" 
} 

Si desea obtener más asesoramiento para brindar un flujo de autenticación de dos factores más transparente en su negocio, contáctenos a support@infobip.com!