Real-Time


Envío de SMS

Endpoint usado para el envío de un mensaje con plantilla.

El atributo “template_id” hace referencia a la plantilla a utilizar, básicamente su funcionamiento se basa en reemplazar contenido especifico dentro de un mensaje tipo, esto son referenciados dentro del atributo fields.

- Ejemplo de plantilla:

“Su codigo de autorizacion es <clave> con fecha <fecha>. Nunca entregues este codigo.”

- Mensaje final con los parametros enviados:

"Su codigo de autorizacion es 123456 con fecha 05-09-2023 15:59:35. Nunca entregues este codigo."

Petición HTTP POST

POST https://soa.real-time.cl/rt_web_service_ws

                                
    curl -X POST "https://soa.real-time.cl/rt_web_service_ws"
        -H "Content-Type: application/json" 
        -H "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXX" 
        -d '{"template_id":"TEMPLATE_ID_GENERADO","tokenws":"TOKEN_GENERADO_POR_RT",
            "messages":[{"to":"569XXXXXXXX","extra":{"fields":{"clave":"123456","fecha":"05-09-2023 15:59:35"}}}]}' 
                                
                            
                            
    $url = 'https://soa.real-time.cl/rt_web_service_ws';
    $data = array(
        'template_id' => 'TEMPLATE_ID_GENERADO',
        'tokenws' => 'TOKEN_GENERADO_POR_RT',
        'messages' => array(
            array(
                'to' => '569XXXXXXXX',
                'extra' => array(
                    'fields' => array(
                        'clave' => '123456',
                        'fecha' => '05-09-2023 15:59:35'
                    )
                )
            )
        )
    );

    $options = array(
        'http' => array(
            'header'  => "Content-type: application/json\r\n" .
                        "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXX\r\n",
            'method'  => 'POST',
            'content' => json_encode($data),
        ),
    );
    $context  = stream_context_create($options);
    $result = file_get_contents($url, false, $context);

    if ($result === FALSE) { /* Handle error */ }

    var_dump($result);
                            
                        
                            
    import requests

    def send_request():
        # POST https://soa.real-time.cl/rt_web_service_ws

        try:
            response = requests.post(
                url="https://soa.real-time.cl/rt_web_service_ws",
                headers={
                    "Content-Type": "application/json",
                    "Authorization": "Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
                },
                data={
                    "template_id": "TEMPLATE_ID_GENERADO",
                    "tokenws": "TOKEN_GENERADO_POR_RT",
                    "messages": [
                        {
                            "to":"569XXXXXXXX"
                            "extra":{
                                "fields":{
                                    "clave": "123456",
                                    "fecha": "05-09-2023 15:59:35
                                }
                            }
                        }
                    ]
                },
            )
            print('Response HTTP Status Code: {status_code}'.format(
                status_code=response.status_code))
            print('Response HTTP Response Body: {content}'.format(
                content=response.content))
        except requests.exceptions.RequestException:
            print('HTTP Request failed')
                            
                        
                            
    fetch('https://soa.real-time.cl/rt_web_service_ws', {
        method: 'POST',
        headers: {
            'Content-Type': 'application/json',
            'Authorization': 'Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
        },
        body: JSON.stringify({
            template_id: 'TEMPLATE_ID_GENERADO',
            tokenws: 'TOKEN_GENERADO_POR_RT',
            messages: [
                {
                    to: '569XXXXXXXX',
                    extra: {
                        fields: {
                            clave: '123456',
                            fecha: '05-09-2023 15:59:35'
                        }
                    }
                }
            ]
        })
    })
    .then(response => response.json())
    .then(data => console.log(data))
    .catch((error) => {
        console.error('Error:', error);
    });
                            
                        
                            
    import java.io.OutputStream;
    import java.net.HttpURLConnection;
    import java.net.URL;

    public class Main {
        public static void main(String[] args) throws Exception {
            URL url = new URL("https://soa.real-time.cl/rt_web_service_ws");
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("POST");
            conn.setRequestProperty("Content-Type", "application/json; utf-8");
            conn.setRequestProperty("Authorization", "Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
            conn.setDoOutput(true);

            String jsonInputString = "{\"template_id\": \"TEMPLATE_ID_GENERADO\", \"tokenws\": \"TOKEN_GENERADO_POR_RT\", \"messages\": [{\"to\": \"569XXXXXXXX\", \"extra\": {\"fields\": {\"clave\": \"123456\", \"fecha\": \"05-09-2023 15:59:35\"}}}]}";

            try(OutputStream os = conn.getOutputStream()) {
                byte[] input = jsonInputString.getBytes("utf-8");
                os.write(input, 0, input.length);			
            }

            int code = conn.getResponseCode();
            System.out.println(code);
        }
    }
                            
                        

Recuerda reemplazar TEMPLATE_ID_GENERADO y TOKEN_GENERADO_POR_RT con tus credenciales de la API y de cambiar los campos que serán reemplazados en la plantilla de mensaje.

Si la llamada fue exitosa, la API responderá con el status HTTP 200 OK y en el body de respuesta, el contenido correspondiente.

Una respuesta exitosa a la operación retorna un JSON con la siguiente estructura:

                        
{
    "id_trx": "CODIGO_DE_TRANSACCIÓN",
    "obs": "Request in process of sending",
    "status": ture
}
                        
                    

El codigo de transacción entregado en el campo "id_trx" puede ser utilizado para hacer seguimiento del mensaje recien enviado.