Asigne su API actual a BroadNet
La mayoría de API de SMS comparten un pequeño conjunto de conceptos con nombres diferentes. Busque el concepto en la primera columna, independientemente de cómo lo denomine su proveedor, y utilice el equivalente BroadNet. Los nombres de los campos son exactamente como aparecen en la especificación OpenAPI.
| Concepto | Forma habitual en otros proveedores | BroadNet |
|---|---|---|
| Host API | Un host API regional para su cuenta | https://api.broadnet.meLas credenciales de prueba, y adónde enviar el tráfico de prueba, llegan con su acceso de prueba: solicítelo en /signup y le respondemos en un día hábil. |
| Autenticación | Un ID de cuenta y un secreto a través de autenticación básica, o un encabezado de clave API | Authorization: Bearer <token>Un token de acceso por cuenta. |
| Enviar un mensaje | Una solicitud HTTP POST a un punto final de mensajes | POST /sms/sendSmsEl cuerpo de la solicitud es JSON. |
| Remitente | from, sender, originator | senderIdUn identificador de remitente alfanumérico o un número, registrado por país. |
| Destinatario | to, destination, msisdn | destinationNumberFormato internacional, como en el ejemplo de especificación |
| Texto del mensaje | body, text, content | messageEl texto del mensaje, exactamente como lo verá el destinatario. |
| Codificación de caracteres y partes del mensaje | Calculado por el proveedor o devuelto por una llamada a la API independiente. | messageType
|
| Envío programado | Un campo send_at o de tiempo programado | isSchedule · gmt · timeOmita estos campos para enviar el mensaje inmediatamente. |
| ID del mensaje | Un campo de ID en la respuesta JSON | 200 OK → 2603121407537573731El cuerpo de respuesta de |
| Varios destinatarios | Un punto final de lote o un bucle | POST /sms/sendSmsGroupDataUn array |
| Webhook de estado de entrega | Una URL de devolución de llamada por solicitud o por cuenta. | Webhook URL on your accountEl estado de entrega se envía a la URL webhook configurada en su cuenta. |
| Consulta sobre el estado de la entrega | Una solicitud GET para el mensaje por su ID | GET /websmpp/websmsstatusAPI HTTP heredada. Pasa el ID del mensaje como |
| Exportación del informe de entrega | Exportación CSV en la consola | /websmpp/api/dlrreportAPI HTTP heredada. Un informe de entrega en formato XLSX para un rango de fechas. |
| Respuestas de error | Un estado HTTP más un código de error del proveedor | 400 · 401 · 500400: error de validación o campo faltante. 401: token Bearer no válido o faltante. 500: error inesperado del servidor. |
| SMPP | Las sesiones SMPP se vinculan al SMSC del proveedor. | bind · submit_sm · deliver_smSesiones SMPP v3.4 como transmisor, receptor o transceptor. Las confirmaciones de entrega llegan como |
| Envío mediante una URL HTTP GET | Una URL GET con credenciales en los parámetros. | GET /websmpp/websmsAPI HTTP heredada. |
| SDK | Una biblioteca de clientes por idioma. | @broadnet/cpaas-sdkExiste un SDK oficial para TypeScript y Node.js. Para otros lenguajes, genere un cliente a partir de la especificación OpenAPI. |
Aquí se muestra el mismo envío como una sola solicitud. Reemplace los campos de remitente, destinatario y texto de su proveedor con senderId, destinationNumber y message :
curl -X POST https://api.broadnet.me/sms/sendSms \
-H "Authorization: Bearer $BROADNET_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"senderId": "ACME",
"destinationNumber": "447700900101",
"message": "Your code is 8123",
"messageType": "TEXT"
}'
# 200 OK — the response body is the message ID, e.g. 2603121407537573731Para comprobar un mensaje, consulte su estado con el ID del mensaje que devolvió la solicitud de envío:
# Status lookup on the legacy HTTP API (/websmpp), by message ID
curl "https://api.broadnet.me/websmpp/websmsstatus?respid=2603121407537573731&format=json" \
-H "Authorization: Bearer $BROADNET_TOKEN"
# "status": "DELIVRD" (or UNDELIV, EXPIRED, REJECTD)Mueva sus identificadores de remitente
Los identificadores de remitente alfanuméricos y los códigos cortos suelen ser portátiles, sujetos a las normas de registro de cada operador y regulador. El registro pertenece a la ruta que sigue su tráfico, así que planifíquelo antes de que cualquier mensaje de producción se envíe a BroadNet.
- 1
Enumere todos los identificadores de remitente, los países a los que envían mensajes y el tipo de tráfico que transportan: OTP, transaccional o de marketing.
- 2
Consulta las normas de cada país. En los Emiratos Árabes Unidos, los identificadores de remitente se registran conforme a las normas TDRA a través del operador, con un identificador por entidad jurídica y por caso de uso. En Arabia Saudita, se requiere la aprobación CST y del operador, y los remitentes extranjeros se vinculan a través de un agregador local con licencia CST.
- 3
Su ingeniero de migración envía los registros para las rutas de BroadNet, y el equipo de cumplimiento de BroadNet realiza el seguimiento de cada uno hasta su aprobación.
- 4
Inicie la transmisión en paralelo en un país solo después de que el identificador del remitente haya sido aprobado allí para las rutas de BroadNet. Hasta entonces, continúe enviando a través de su proveedor actual.
Las normas para cada mercado se encuentran en las páginas de reglamentos. Normativa sobre SMS por país
Ejecutar ambos proveedores en paralelo
Mantén activo tu proveedor actual y agrega BroadNet como una segunda ruta detrás de un conmutador en tu propio código. Envía primero a tus números verificados, luego una pequeña parte del tráfico real y compara ambas rutas en los mismos destinos.
Comparar, por país y operador:
- La combinación de estados de entrega: entregado, no entregado, caducado y rechazado.
- El tiempo transcurrido desde que se envía un mensaje hasta que se recibe su comprobante de entrega.
- El remitente que aparece en el teléfono.
- El recuento de segmentos para el mismo texto, desde
POST /sms/identify.
Elija la ruta por destinatario en lugar de por mensaje, de modo que todos los reintentos OTP para un usuario pasen por el mismo proveedor. Un conmutador de enrutamiento mínimo:
// Send a share of recipients through BroadNet; the rest stay on your
// current provider. BROADNET_SHARE is a percentage (0-100) you control.
const BROADNET_SHARE = Number(process.env.BROADNET_SHARE ?? "0");
// Same recipient -> same bucket, so OTP retries stay on one provider.
function bucket(to: string): number {
let h = 0;
for (const c of to) h = (h * 31 + c.charCodeAt(0)) >>> 0;
return h % 100;
}
export async function sendSms(to: string, text: string, senderId: string) {
if (bucket(to) < BROADNET_SHARE) return sendViaBroadNet(to, text, senderId);
return sendViaCurrentProvider(to, text, senderId); // your existing code
}
async function sendViaBroadNet(to: string, text: string, senderId: string) {
const res = await fetch("https://api.broadnet.me/sms/sendSms", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.BROADNET_TOKEN}`,
"Content-Type": "application/json",
},
// Use UNICODE for non-GSM text; POST /sms/identify tells you which.
body: JSON.stringify({ senderId, destinationNumber: to, message: text, messageType: "TEXT" }),
});
if (!res.ok) throw new Error(`BroadNet send failed: ${res.status}`);
return { provider: "broadnet", messageId: await res.text() };
}Aumentar el tráfico por etapas
Traslada el volumen de producción a BroadNet por etapas, según tus necesidades, un país o caso de uso a la vez. Permanece en cada etapa hasta que las confirmaciones de entrega coincidan con lo que enviaste, y luego pasa a la siguiente.
- Pruebas
Solo se aceptan números verificados. Confirme la identidad del remitente, el texto del mensaje y los comprobantes de entrega.
- 5%
Una pequeña parte del tráfico real. El tráfico OTP a un solo país devuelve confirmaciones de entrega rápidas y claras.
- 25%
Volumen suficiente para comparar las tarifas de envío y los plazos de entrega con su proveedor actual.
- 100%
Todo el tráfico para ese país o caso de uso. Tu proveedor actual seguirá activo hasta que las confirmaciones de entrega coincidan con lo que enviaste.
Cuánto tiempo tarda
El aumento del tráfico puede tardar el tiempo que usted decida. El proceso de incorporación sigue un único procedimiento: respondemos a las solicitudes de acceso de prueba en un día hábil, la integración técnica tarda de 2 a 5 días hábiles y la validación de rutas con la aprobación del ID del remitente tarda de 3 a 10 días hábiles. La mayoría de los mercados pasan de la fase de descubrimiento a la puesta en marcha en 5 a 15 días hábiles; los mercados donde los reguladores tardan más en aprobar los ID de remitente requieren más tiempo. Consulta los pasos de incorporación
Vuelva a su proveedor actual sin interrupción del servicio
Para revertir los cambios, utilice el mismo interruptor a la inversa: reduzca el porcentaje de tráfico enviado a través de BroadNet al último valor que funcionó o a cero. Su integración actual y sus registros de ID de remitente se mantienen activos en todo momento, por lo que basta con reducir el porcentaje. No es necesario reconstruir nada.
- Mantenga activas las credenciales de su proveedor actual, los registros de ID de remitente y el punto final webhook hasta que todo el tráfico se haya transferido y las confirmaciones de entrega coincidan con lo que usted envió.
- Antes de empezar, pónganse de acuerdo sobre qué desencadena una reversión, por ejemplo, una caída en la proporción de mensajes entregados en un país, y quién está autorizado a decidirlo.
- Mantén tu gestor webhook en funcionamiento después de una reversión: las confirmaciones de entrega de los mensajes ya enviados a través de BroadNet aún pueden llegar.
- Retire la ruta antigua solo después de que todo el tráfico pase sin problemas por BroadNet y las confirmaciones de entrega coincidan con lo que usted envió.
¿Quién es responsable de qué?
Una migración afecta a tu código, a tus registros de remitentes y al tráfico en tiempo real. Así es como se divide el trabajo.
| Tarea | Su equipo | BroadNet |
|---|---|---|
| Mapeo de campos y cambios de código | Realiza los cambios en el código y toma el control del conmutador de enrutamiento. | Su ingeniero de migración asigna sus cargas útiles, identificadores de remitente y recibos actuales a la API BroadNet. |
| Credenciales | Almacene el token de acceso de forma segura y manténgalo fuera del control de versiones. | Emite el token de acceso y, para SMPP, las credenciales de inicio de sesión. |
| Registro de ID de remitente | Proporcione a la empresa los documentos que solicite cada organismo regulador. | Tramita las inscripciones para sus rutas y realiza el seguimiento de cada una hasta su aprobación. |
| Validación de ruta | Confirma los resultados de la prueba en tus propios números de teléfono. | Pruebas de entrega en cada mercado antes del tráfico de producción. |
| Aumento del tráfico y reversión | Decida cada paso, qué desencadena una reversión y quién la decide. | Se puede contactar con un ingeniero de migración específico durante la ejecución en paralelo y la transición. |
| Entrega después de que BroadNet acepte un mensaje | Supervise las confirmaciones de entrega en sus propios sistemas. | Enruta cada mensaje desde su plataforma al operador e informa de la confirmación de entrega. |
| Incidentes de producción | Infórmales a developers@broadnet.me. | Soporte técnico 24/7 para cuentas de producción, con respuesta P1 en 15 minutos. |
| Retirada de la antigua ruta | Cierra la cuenta con tu proveedor anterior. | Confirma que los identificadores de remitente, el rendimiento y las confirmaciones de entrega se hayan liquidado antes de cerrarlo. |
Documentación relacionada
Preguntas frecuentes
¿Tengo que reescribir mi integración para migrar a BroadNet ?
Normalmente no. Se modifican el host, el encabezado de autenticación y algunos nombres de campos: el campo del remitente pasa a ser senderId, el del destinatario destinationNumber y el del texto message. Las integraciones SMPP redirigen su enlace existente a BroadNet con nuevas credenciales.
¿Puedo conservar mis identificadores de remitente?
En general, sí, sujeto a las normas de registro de cada operador y regulador. Los registros se presentan en las rutas de BroadNet antes de la puesta en marcha: en los Emiratos Árabes Unidos bajo las normas TDRA, y en Arabia Saudita con la aprobación CST y del operador.
¿Cuánto tiempo tarda una migración?
La mayoría de los mercados pasan de la fase de descubrimiento a la de puesta en marcha en 5 a 15 días hábiles; los mercados donde los reguladores tardan más en aprobar los identificadores de remitente tardan más. El aumento del tráfico posterior dura el tiempo que usted decida.
¿Qué sucede si las tasas de entrega disminuyen mientras aumento el tráfico?
Reduzca el porcentaje de tráfico enviado a través de BroadNet al último paso que funcionó, o a cero. Su proveedor actual sigue activo, por lo que el tráfico continúa fluyendo. Luego, revise las confirmaciones de entrega del país afectado con su ingeniero de migración antes de volver a intentarlo.
¿Tiene algún coste el servicio de asistencia para la migración?
No. El soporte para la migración y la ventana de ejecución en paralelo están incluidos en tu cuenta. Solo pagas por los mensajes que envías.
Solicitar acceso de prueba · respuesta en un día hábil
Obtenga sus credenciales, envíe mensajes de prueba a su propio número verificado y configure su integración actual con un ingeniero de telecomunicaciones BroadNet antes de que se mueva cualquier tráfico de producción.