aws-sns-sms-service

1.0.0 • Public • Published

# AWS-SNS-SMS

Un módulo simple y eficiente para enviar mensajes SMS utilizando **Amazon SNS** (Simple Notification Service) y **Convergia**. Ideal para integraciones rápidas en aplicaciones Node.js que requieren notificaciones SMS.

---

## Instalación

Instala el módulo usando npm:

```bash
npm install aws-sns-sms-service

Requisitos

Amazon SNS

  • Necesitas una cuenta de AWS.
  • Crea un usuario IAM con permisos para enviar SMS a través de SNS.
  • Obtén las credenciales (key_id y access_key) del usuario IAM.

Convergia

  • Necesitas una cuenta en Convergia.
  • Obtén un token de autenticación para usar su API.

Uso

Enviar notificación usando Amazon SNS

const SMSService = require('aws-sns-sms-service');

const parameters = {
    key_id: 'TU_AWS_ACCESS_KEY_ID', // Clave de acceso de AWS
    access_key: 'TU_AWS_SECRET_ACCESS_KEY', // Clave secreta de AWS
    message: 'Este es un mensaje de prueba.', // Mensaje a enviar
    mobiles: ['520000000000'] // Números de teléfono en formato internacional
};

SMSService.sendNotificationAmazonSNS(parameters)
    .then(response => {
        console.log('Respuesta:', response);
    })
    .catch(error => {
        console.error('Error:', error);
    });

Respuesta esperada:

[
    {
        "mobile": "520000000000",
        "message_id": "8c3ed5ae-6dcc-5ba1-ab45-8c145409a148"
    }
]

Enviar notificación usando Convergia

const SMSService = require('aws-sns-sms-service');

const parameters = {
    token: 'TU_TOKEN_DE_CONVERGIA', // Token de autenticación de Convergia
    message: 'Este es un mensaje de prueba.', // Mensaje a enviar
    mobiles: ['520000000000'] // Números de teléfono en formato internacional
};

SMSService.sendNotificationConvergia(parameters)
    .then(response => {
        console.log('Respuesta:', response);
    })
    .catch(error => {
        console.error('Error:', error);
    });

Respuesta esperada:

[
    {
        "group_id": 39681,
        "group_name": "30/01/2025",
        "id": "9d0e070b649640c0923867f6c6f0f009"
    }
]

Manejo de errores

El módulo devuelve errores detallados en caso de que algo falle. Asegúrate de manejar los errores correctamente en tu aplicación.

SMSService.sendNotificationAmazonSNS(parameters)
    .then(response => {
        console.log('Respuesta:', response);
    })
    .catch(error => {
        console.error('Error al enviar el SMS:', error);
    });

Validación de parámetros

El módulo valida los parámetros antes de enviar los mensajes. Asegúrate de proporcionar los datos correctos:

  • key_id y access_key son obligatorios para Amazon SNS.
  • token es obligatorio para Convergia.
  • message debe ser una cadena no vacía.
  • mobiles debe ser un array de números de teléfono en formato internacional.

Documentación oficial

Amazon SNS

Para más detalles sobre cómo configurar Amazon SNS, consulta la documentación oficial de AWS.

Convergia

Consulta la documentación de Convergia para obtener más información sobre su API.


Contribución

¡Las contribuciones son bienvenidas! Si deseas mejorar este módulo, sigue estos pasos:

  1. Haz un fork del repositorio.
  2. Crea una rama para tu feature (git checkout -b feature/nueva-funcionalidad).
  3. Haz commit de tus cambios (git commit -m 'Añadir nueva funcionalidad').
  4. Haz push a la rama (git push origin feature/nueva-funcionalidad).
  5. Abre un Pull Request.

Licencia

Este proyecto está licenciado bajo la MIT License.


Changelog

v1.0.0

  • Lanzamiento inicial del módulo.
  • Soporte para Amazon SNS y Convergia.

Soporte

Si tienes alguna pregunta o encuentras algún problema, por favor abre un issue en el repositorio.


Package Sidebar

Install

npm i aws-sns-sms-service

Weekly Downloads

15

Version

1.0.0

License

MIT

Unpacked Size

12.6 kB

Total Files

10

Last publish

Collaborators

  • csmasanchez
  • vmaza
  • marcocarrillo