<?php

#Include de la API de Centauro SMS PHP
include_once "lib/centaurosms.php";

//BD
require "../config/Conexion.php";

$id_credencial = '329449792753393';  // Asegúrate de que este valor no esté vacío
$token = 'FalOnOYQeKsuPEvrZkNO'; // Asegúrate de que este valor no esté vacío

$SMS = new CentauroSMS($id_credencial, $token);


//Parametros
$lotemensajesaenviar = isset($_POST["lotemensajesaenviar"])? $_POST["lotemensajesaenviar"]:"";

//BD
$tipomensaje  =isset($_POST["tipomensaje"])? $_POST["tipomensaje"]:"";
$idcliente    =isset($_POST["idcliente"])? $_POST["idcliente"]:"";

function enviarMensaje($telefono, $persona, $mensaje,$tipomensaje,$idcliente) {
    global $SMS; // Indica que vamos a usar la variable global $SMS
    $destinatarios = array("id" => "0","cel" => $telefono,"nom" => $persona);	
    $msg = $mensaje;
    $js = json_encode($destinatarios);
    $result = $SMS->set_sms_send($js,$msg); // Comando para enviar SMS Normales
    if ($result['status']=='200'){ // Donde 200 es el codigo de una conexion exitosa con el servidor
        // Variables
        $status     =$result['status'];
        $nombre     = $result['response'][0]['datos'][0]['Nom'];
        $celular    = $result['response'][0]['datos'][0]['Cel'];
        $messageid  = $result['response'][0]['datos'][0]['Messageid'];
        $statustext = $result['response'][0]['datos'][0]['StatusText'];
        $msg        = $result['response'][0]['datos'][0]['Msg'];
    }else{
        $status     =$result['status'];
        $nombre     = '';
        $celular    = '';
        $messageid  = '';
        $msg        = 'Error';
        if ($result['status']=='307'){ $statustext = "No hay contactos validos en su array";}
        if ($result['status']=='306'){ $statustext = "Error interno, por favor contactenos";}
        if ($result['status']=='305'){ $statustext = "No tiene SMS disponibles para realizar este envio";}
        if ($result['status']=='304'){ $statustext = "Los parametros no son correctos por favor no modifique la API";}
        if ($result['status']=='303'){ $statustext = "Error grave no se recibio parametro de la API";}
        if ($result['status']=='302'){ $statustext = "Servidores fuera de linea";}
        if ($result['status']=='301'){ $statustext = "Error de credenciales";}
        if ($result['status']=='300'){ $statustext = "No se recibieron los parametros necesarios";}

    }
    echo json_encode($result);   
    
    //BD
    $sql="INSERT INTO mensajesenviados(tipomensaje, idcliente,statusid,nom,cel,messageid,statustext,msg)
          VALUES ('$tipomensaje','$idcliente','$status','$nombre','$celular','$messageid','$statustext','$msg')";
    //echo ejecutarConsulta($sql);
    ejecutarConsulta($sql);
}


# Otra forma de enviar SMS armando un String JSON
//Pero si el mensaje es unico
//$js = '{"id":"0","cel":"04140000000","nom":"Pedro Perez"},{"id":"0","cel":"584240000000","nom":"Jose Perez"}';
if($lotemensajesaenviar!=''){
    $num_elementos = 0;
    $js='';
    //$prueba='';
    while ($num_elementos < count($lotemensajesaenviar)) {
        $delimitador = "%";
        $partes = explode($delimitador, $lotemensajesaenviar[$num_elementos]);
        $mensaje  =$partes[2];
        $telefono =$partes[1];
        $persona =$partes[0];
        $idcliente=$partes[3];
        $tipomensaje=$partes[4];
        $arraytelefono = explode("/", $telefono);
        $telefono1 = isset($arraytelefono[0]) ? trim($arraytelefono[0]) : '';
        $telefono2 = isset($arraytelefono[1]) ? trim($arraytelefono[1]) : '';
        
        if($telefono1!=''){
            enviarMensaje($telefono1, $persona, $mensaje,$tipomensaje,$idcliente);
            //$prueba=$prueba.'id-cliente: '.$idcliente.' y tipo de mensaje: '.$tipomensaje;
        }
        if($telefono2!=''){
            enviarMensaje($telefono2, $persona, $mensaje,$tipomensaje,$idcliente);
            //$prueba=$prueba.'id-cliente: '.$idcliente.' y tipo de mensaje: '.$tipomensaje;
        }
        echo $lotemensajesaenviar[$num_elementos];
        $num_elementos = $num_elementos + 1;
    }
   
}else{
    echo "Data vacia";
}




