{"id":41405719,"url":"https://github.com/altiria/sms-nodejs-client","last_synced_at":"2026-01-23T13:24:05.914Z","repository":{"id":57364330,"uuid":"436961191","full_name":"altiria/sms-nodejs-client","owner":"altiria","description":"Cliente NodeJs oficial de Altiria para el envío de SMS transaccionales","archived":false,"fork":false,"pushed_at":"2022-03-28T10:02:55.000Z","size":40,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-24T11:04:24.309Z","etag":null,"topics":["altiria","envio-de-sms","envio-sms","http-client","javascript","javascript-library","js","node-js","nodejs","npm","npm-module","npm-package","sms-gateway","sms-messages","sms-node","sms-nodejs","sms-notifications","sms-pasarela","sms-transaccional","smsapi"],"latest_commit_sha":null,"homepage":"https://www.altiria.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/altiria.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-12-10T11:52:42.000Z","updated_at":"2022-01-10T10:27:17.000Z","dependencies_parsed_at":"2022-09-13T21:00:49.616Z","dependency_job_id":null,"html_url":"https://github.com/altiria/sms-nodejs-client","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/altiria/sms-nodejs-client","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/altiria%2Fsms-nodejs-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/altiria%2Fsms-nodejs-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/altiria%2Fsms-nodejs-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/altiria%2Fsms-nodejs-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/altiria","download_url":"https://codeload.github.com/altiria/sms-nodejs-client/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/altiria%2Fsms-nodejs-client/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28693323,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-23T11:01:27.039Z","status":"ssl_error","status_checked_at":"2026-01-23T11:00:26.909Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["altiria","envio-de-sms","envio-sms","http-client","javascript","javascript-library","js","node-js","nodejs","npm","npm-module","npm-package","sms-gateway","sms-messages","sms-node","sms-nodejs","sms-notifications","sms-pasarela","sms-transaccional","smsapi"],"created_at":"2026-01-23T13:24:04.082Z","updated_at":"2026-01-23T13:24:05.905Z","avatar_url":"https://github.com/altiria.png","language":"JavaScript","readme":"![](http://static.altiria.com/wp-content/themes/altiria/images/logo-altiria.png)\n\n# Altiria, cliente NodeJs js\n\n ![](https://img.shields.io/badge/version-1.0.3-blue.svg)\n\nAltiria SMS NodeJs es un cliente que simplifica al máximo la integración de nuestro API para NodeJs. Por el momento, esta librería abarca las funciones más básicas:\n- **Envíos de SMS individuales** con las siguientes características:\n  - sencillos\n  - concatenados\n  - certificación de entrega con o sin identificador\n  - certificado digital de entrega\n  - uso de remitente\n  - seleccionar codificación\n- **Consultas de crédito**\n\n## Requisitos\n\n- NodeJS: v14.18.1+\n- NPM: 8.3.0+\n\n## Instalación\n\nMediante el gestor de dependencias **npm** ejecutando el siguiente comando:\n\n\u003cpre\u003e\nnpm install sms-altiria-client --save\n\u003c/pre\u003e\n\n\n## Ejemplos de uso\n\n### Envío de SMS\n\nA continuación se describen cada una de las posibilidades de uso de la librería para realizar envíos de SMS.\n\n#### Ejemplo simplificado\n\nSe muestra el código indispensable para realizar un envío básico. No se gestionan las excepciones.\n\n```js\nconst AltiriaClient = require('sms-altiria-client/src/altiria-client');\nconst AltiriaModelTextMessage = require('sms-altiria-client/src/altiria-model-text-message');\n\nlet altiriaClient = new AltiriaClient('miusuario@email.com', 'contraseña');\nlet textMessage = new AltiriaModelTextMessage('346XXXXXXXX', 'Mensaje de prueba');\n(async () =\u003e {\n\tconst data = await altiriaClient.sendSms(textMessage);\n\tconsole.log('Mensaje enviado: ',await data);\n})();\n```\n\n#### Ejemplo básico\n\nSe trata de la opción más sencilla para realizar un envío de SMS.\n\n```js\nconst AltiriaClient = require('sms-altiria-client/src/altiria-client');\nconst AltiriaModelTextMessage = require('sms-altiria-client/src/altiria-model-text-message');\nconst AltiriaGwException = require('sms-altiria-client/src/exception/altiria-gw-exception.js');\nconst JsonException = require('sms-altiria-client/src/exception/json-exception.js');\nconst ConnectionException = require('sms-altiria-client/src/exception/connection-exception.js');\n\nasync function sendSms() {\n\ttry {\n\t    let altiriaClient = new AltiriaClient('miusuario@email.com', 'contraseña');\n\t    let textMessage = new AltiriaModelTextMessage('346XXXXXXXX', 'Mensaje de prueba');\n\t    let data = await altiriaClient.sendSms(textMessage);\n\t    console.log('¡Mensaje enviado!');\n\n\t} catch (error) {\n\t    if(error instanceof AltiriaGwException) {\n\t\t\tconsole.log('Mensaje no aceptado: '+error.getMessage);\n\t\t\tconsole.log('Codigo de error: '+error.getStatus);\n\t    } else if(error instanceof JsonException) {\n\t\t\tconsole.log('Error en la petición: '+error.getMessage);\n\t    } else if(error instanceof ConnectionException) {\n\t\t\tconsole.log('Tiempo de espera agotado: '+error.getMessage);\n\t    }\n\t}\n}\n\nsendSms();\n```\n\n#### Ejemplo básico con timeout personalizado\n\nPermite fijar el tiempo de respuesta en milisegundos. Si se supera se lanzará una **ConnectionException**.\nPor defecto el tiempo de respuesta es de 10 segundos, pero puede ser ajustado entre 1 y 30 segundos.\n\n```js\nconst AltiriaClient = require('sms-altiria-client/src/altiria-client');\nconst AltiriaModelTextMessage = require('sms-altiria-client/src/altiria-model-text-message');\nconst AltiriaGwException = require('sms-altiria-client/src/exception/altiria-gw-exception.js');\nconst JsonException = require('sms-altiria-client/src/exception/json-exception.js');\nconst ConnectionException = require('sms-altiria-client/src/exception/connection-exception.js');\n\nasync function sendSms() {\n\ttry {\n\t    let altiriaClient = new AltiriaClient('miusuario@email.com', 'contraseña', false, 5000);\n\t    let textMessage = new AltiriaModelTextMessage('346XXXXXXXX', 'Mensaje de prueba');\n\t    let data = await altiriaClient.sendSms(textMessage);\n\t    console.log('¡Mensaje enviado!');\n\n\t} catch (error) {\n\t    if(error instanceof AltiriaGwException) {\n\t\t\tconsole.log('Mensaje no aceptado: '+error.getMessage);\n\t\t\tconsole.log('Codigo de error: '+error.getStatus);\n\t    } else if(error instanceof JsonException) {\n\t\t\tconsole.log('Error en la petición: '+error.getMessage);\n\t    } else if(error instanceof ConnectionException) {\n\t\t\tconsole.log('Tiempo de espera agotado: '+error.getMessage);\n\t    }\n\t}\n}\n\nsendSms();\n```\n\n#### Ejemplo básico con remitente\n\nSe trata de la opción más sencilla para realizar un envío de SMS añadiendo remitente. En este caso, se ilustra cómo realizar la autentificación mediante APIKEY, donde \"XXXXXXXXXX\" es el parámetro **apiKey** y \"YYYYYYYYYY\" el parámetro **apiSecret**.\n\n```js\nconst AltiriaClient = require('sms-altiria-client/src/altiria-client');\nconst AltiriaModelTextMessage = require('sms-altiria-client/src/altiria-model-text-message');\nconst AltiriaGwException = require('sms-altiria-client/src/exception/altiria-gw-exception.js');\nconst JsonException = require('sms-altiria-client/src/exception/json-exception.js');\nconst ConnectionException = require('sms-altiria-client/src/exception/connection-exception.js');\n\nasync function sendSms() {\n\ttry {\n\t    let altiriaClient = new AltiriaClient('XXXXXXXXXX', 'YYYYYYYYYY', true);\n\t    let textMessage = new AltiriaModelTextMessage('346XXXXXXXX', 'Mensaje de prueba', 'miRemitente');\n\t    let data = await altiriaClient.sendSms(textMessage);\n\t    console.log('¡Mensaje enviado!');\n\n\t} catch (error) {\n\t    if(error instanceof AltiriaGwException) {\n\t\t\tconsole.log('Mensaje no aceptado: '+error.getMessage);\n\t\t\tconsole.log('Codigo de error: '+error.getStatus);\n\t    } else if(error instanceof JsonException) {\n\t\t\tconsole.log('Error en la petición: '+error.getMessage);\n\t    } else if(error instanceof ConnectionException) {\n\t\t\tconsole.log('Tiempo de espera agotado: '+error.getMessage);\n\t    }\n\t}\n}\n\nsendSms();\n```\n#### Ejemplo con todos los parámetros\n\nSe muestra un ejemplo utilizando todo los parámetros e integrando el módulo **winston** para habilitar el loggin de la librería.\n\n```js\nconst AltiriaClient = require('sms-altiria-client/src/altiria-client');\nconst AltiriaModelTextMessage = require('sms-altiria-client/src/altiria-model-text-message');\nconst AltiriaGwException = require('sms-altiria-client/src/exception/altiria-gw-exception.js');\nconst JsonException = require('sms-altiria-client/src/exception/json-exception.js');\nconst ConnectionException = require('sms-altiria-client/src/exception/connection-exception.js');\nconst winston = require('winston');\n\nasync function sendSms() {\n\t// Logger configuration\n\tconst logConfiguration = {\n\t\ttransports: [\n\t\t\tnew winston.transports.File({\n\t\t\t\tfilename: 'altiria-client.log',\n\t\t\t\tlevel: 'debug'\n\t\t\t})\n\t\t],\n\t\texitOnError: false,\n\t\tformat: winston.format.combine(\n\t\t\twinston.format.timestamp({\n\t\t\t\tformat: 'DD-MMM-YYYY HH:mm:ss'\n\t\t\t}),\n\t\t\twinston.format.printf(info =\u003e `${[info.timestamp]} ${info.level} - ${info.message}`)\n\t\t)\n\t};\n\tconst logger = winston.createLogger(logConfiguration);\n\ttry {\n\t    logger.info('Enviando SMS...');\n\t    let altiriaClient = new AltiriaClient('miusuario@email.com', 'contraseña');\n\t    altiriaClient.setTimeout=5000;\n\t    let textMessage = new AltiriaModelTextMessage('346XXXXXXXX', 'Mensaje de prueba');\n\t    textMessage.setSenderId='miRemitente';\n\t    textMessage.setAck=true;\n\t    textMessage.setIdAck='idAck';\n\t    textMessage.setConcat=true;\n\t    textMessage.setEncoding='unicode';\n\t    textMessage.setCertDelivery=true;\n\t    let data = await altiriaClient.sendSms(textMessage);\n\t    console.log('¡Mensaje enviado!');\n\n\t} catch (error) {\n\t    if(error instanceof AltiriaGwException) {\n\t\t\tconsole.log('Mensaje no aceptado: '+error.getMessage);\n\t\t\tconsole.log('Codigo de error: '+error.getStatus);\n\t    } else if(error instanceof JsonException) {\n\t\t\tconsole.log('Error en la petición: '+error.getMessage);\n\t    } else if(error instanceof ConnectionException) {\n\t\t\tconsole.log('Tiempo de espera agotado: '+error.getMessage);\n\t    }\n\t}\n}\n\nsendSms();\n```\n### Consulta de crédito\n\nA continuación se describen cada una de las posibilidades de uso de la librería para consultar el crédito.\n\n#### Ejemplo básico\n\nEste ejemplo no incluye los parámetros opcionales.\n\n```js\nconst AltiriaClient = require('sms-altiria-client/src/altiria-client');\nconst AltiriaModelTextMessage = require('sms-altiria-client/src/altiria-model-text-message');\nconst AltiriaGwException = require('sms-altiria-client/src/exception/altiria-gw-exception.js');\nconst JsonException = require('sms-altiria-client/src/exception/json-exception.js');\nconst ConnectionException = require('sms-altiria-client/src/exception/connection-exception.js');\n\nasync function getCredit() {\n\ttry {\n\t    let altiriaClient = new AltiriaClient('miusuario@email.com', 'contraseña');\n\t    let credit = await altiriaClient.getCredit();\n\t    console.log('Credito: ',credit);\n\n\t} catch (error) {\n\t    if(error instanceof AltiriaGwException) {\n\t\t\tconsole.log('Solicitud no aceptada: '+error.getMessage);\n\t\t\tconsole.log('Codigo de error: '+error.getStatus);\n\t    } else if(error instanceof JsonException) {\n\t\t\tconsole.log('Error en la petición: '+error.getMessage);\n\t    } else if(error instanceof ConnectionException) {\n\t\t\tconsole.log('Tiempo de espera agotado: '+error.getMessage);\n\t    }\n\t}\n}\n\ngetCredit();\n```\n\n#### Ejemplo con timeout\n\nEste ejemplo permite definir el timeout.\n\n```js\nconst AltiriaClient = require('sms-altiria-client/src/altiria-client');\nconst AltiriaModelTextMessage = require('sms-altiria-client/src/altiria-model-text-message');\nconst AltiriaGwException = require('sms-altiria-client/src/exception/altiria-gw-exception.js');\nconst JsonException = require('sms-altiria-client/src/exception/json-exception.js');\nconst ConnectionException = require('sms-altiria-client/src/exception/connection-exception.js');\n\nasync function getCredit() {\n\ttry {\n\t    let altiriaClient = new AltiriaClient('miusuario@email.com', 'contraseña', false, 5000);\n\t    let credit = await altiriaClient.getCredit();\n\t    console.log('Credito: ',credit);\n\n\t} catch (error) {\n\t    if(error instanceof AltiriaGwException) {\n\t\t\tconsole.log('Solicitud no aceptada: '+error.getMessage);\n\t\t\tconsole.log('Codigo de error: '+error.getStatus);\n\t    } else if(error instanceof JsonException) {\n\t\t\tconsole.log('Error en la petición: '+error.getMessage);\n\t    } else if(error instanceof ConnectionException) {\n\t\t\tconsole.log('Tiempo de espera agotado: '+error.getMessage);\n\t    }\n\t}\n}\n\ngetCredit();\n```\n\n## Licencia\n\nLa licencia de esta librería es de tipo MIT. Para más información consultar el fichero de licencia.\n\n## Ayuda\n\nUtilizamos la sección de problemas de GitHub para tratar errores y valorar nuevas funciones.\nPara cualquier problema durante la intergración contactar a través del email soporte@altiria.com.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faltiria%2Fsms-nodejs-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faltiria%2Fsms-nodejs-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faltiria%2Fsms-nodejs-client/lists"}