Este microservicio proporciona funcionalidad para enviar notificaciones a los clientes mediante la API de SMS de Twilio. Está construido con Spring Security, Spring Boot y Swagger para la documentación de la API.
El servicio de mensajería utiliza el software/API de Twilio para enviar mensajes de texto (SMS). La integración con Twilio permite enviar notificaciones, alertas o cualquier tipo de mensaje de texto a los destinatarios especificados.
Solo se pueden enviar a un número de teléfono verificado, cuando envíe un SMS desde su número de teléfono de prueba gratuito, comenzará con "Sent from your Twilio trial account -".
La longitud de los mensajes SMS está limitada a 160 caracteres, Cuando se envía un mensaje SMS que excede el límite de caracteres, Twilio automáticamente dividirá el mensaje en segmentos y los enviará de manera concatenada. Sin embargo, ten en cuenta que cada segmento se contará y cobrará por separado como un mensaje individual. Además, algunos caracteres especiales y emojis pueden ocupar más espacio en un segmento y reducir aún más la cantidad de caracteres disponibles.
- Java 8 o superior
- Gradle - Groovy
- Credenciales de la cuenta de Twilio
- Configure las credenciales de Twilio:
- Accede a la documentación de la API:
En el archivo application.properties, proporcione las siguientes propiedades:
twilio.account.sid= "your-twilio-account-sid"
twilio.auth.token= "your-twilio-auth-token"
twilio.phone.from= "your-twilio-phone-number-from"
Abra su navegador web y vaya a http://localhost:9280/swagger-ui.html para ver e interactuar con la API mediante Swagger.
- URL: '/messenger-service/notify'
- Metodo: POST
- Rol Requerido: EMPLEADO
- Cuerpo de la solicitud:
- Respuesta de la solicitud:
{
"orderPin" : 11111
"restaurantName": "nombre del restaurante",
"customerName": "John Doe",
"customerCellPhone": "+573983458212"
}
{
"status": "QUEUED",
"errorCode": "null",
"errorMessage": "null",
"direction": "OUTBOUND_API",
"dateCreated": "2023-06-21",
"dateUpdated": "2023-06-21"
}
La API está protegida mediante Spring Security y el control de acceso basado en roles. Solo los usuarios con el rol EMPLEADO pueden acceder al endpoint /messenger-service/notify.
- server.port: Puerto en el que se ejecuta el microservicio (default: 9280)
- access.token.secret: Clave secreta para la desencriptación del token de acceso