Beispiel #1
0
    $escreve = fwrite($fp, $msg);
    fclose($fp);
}
if ($_POST) {
    moip_log('Recebendo dados via POST, estes dados serão verificados pelo Moip: ' . print_r($_POST, true));
}
$arrayStatus = array(1 => array('AUTORIZADO', ID_SITUACAO_PEDIDO_APROVADO_CREDITO), 2 => array('INICIADO', ID_SITUACAO_PEDIDO_ANALISE_CREDITO), 3 => array('BOLETO IMPRESSO', ID_SITUACAO_PEDIDO_ANALISE_CREDITO), 4 => array('CONCLUIDO', ID_SITUACAO_PEDIDO_APROVADO_CREDITO), 5 => array('CANCELADO', ID_SITUACAO_PEDIDO_CANCELADO), 6 => array('EM ANALISE', ID_SITUACAO_PEDIDO_ANALISE_CREDITO), 7 => array('ESTORNADO', ID_SITUACAO_PEDIDO_ESTORNADO), 9 => array('REEMBOLSADO', ID_SITUACAO_PEDIDO_REEMBOLSADO));
if (isset($_POST["status_pagamento"])) {
    $numeroPedido = sqlvalue($_POST["id_transacao"], true);
    $situacaoMoip = $_POST["status_pagamento"];
    if ($arrayStatus[$situacaoMoip][1] == ID_SITUACAO_PEDIDO_APROVADO_CREDITO) {
        $where = "AND SPIT_ID_SITUACAO_PEDIDO_ITEM IN (" . ID_SITUACAO_PEDIDO_DIGITACAO . ", " . ID_SITUACAO_PEDIDO_TIMEOUT . ", " . ID_SITUACAO_PEDIDO_ANALISE_CREDITO . ")";
    } else {
        $where = "";
    }
    $queryUpdate = "UPDATE e_PEDIDO_ITEM \r\n\t\t\t\t\tSET SPIT_ID_SITUACAO_PEDIDO_ITEM = " . $arrayStatus[$situacaoMoip][1] . ", DATA_UPDATE = now(), USUARIO_UPDATE = 'RETORNO_MOIP'  \r\n\t\t\t\t\tWHERE PEDI_ID_PEDIDO = (SELECT ID_PEDIDO FROM e_PEDIDO WHERE NUMERO_PEDIDO = " . $numeroPedido . ")\r\n\t\t\t\t\t" . $where . "";
    $mysqli->ExecutarSQL($queryUpdate);
    if ($arrayStatus[$situacaoMoip][1] == ID_SITUACAO_PEDIDO_APROVADO_CREDITO) {
        $idPedidoPagamento = explode('-', $_POST["id_transacao"]);
        $idPedidoPagamento = sqlvalue($idPedidoPagamento[1], false);
        $queryPagamento = "UPDATE e_PEDIDO_PAGAMENTO SET DATA_AUTORIZACAO = now(), TRANSACAO_AUTORIZADA = 'S', USUARIO_AUTORIZACAO = 'MOIP'\r\n\t\t\t\t\t\t\tWHERE ID_PEDIDO_PAGAMENTO = " . $idPedidoPagamento . " AND DATA_AUTORIZACAO IS NULL AND ATIVO = 'S'";
        $mysqli->ExecutarSQL($queryPagamento);
    }
    if ($arrayStatus[$situacaoMoip][1] == ID_SITUACAO_PEDIDO_CANCELADO or $arrayStatus[$situacaoMoip][1] == ID_SITUACAO_PEDIDO_APROVADO_CREDITO) {
        $query = "SELECT\r\n\t\t\t\t\t\tPEDI.ID_PEDIDO,\r\n\t\t\t\t\t\tPESS.NOME,\r\n\t\t\t\t\t\tPESS.EMAIL\r\n\t\t\t\t\tFROM\r\n\t\t\t\t\t\te_PEDIDO PEDI,\r\n\t\t\t\t\t\te_PESSOA PESS\r\n\t\t\t\t\tWHERE\r\n\t\t\t\t\t\tPEDI.NUMERO_PEDIDO = " . $numeroPedido . "\r\n\t\t\t\t\tAND PEDI.PESS_ID_PESSOA = PESS.ID_PESSOA";
        $result = $mysqli->ConsultarSQL($query);
        enviaEmail('situacaoPedido', $result[0]['NOME'], $result[0]['EMAIL'], null, $result[0]['ID_PEDIDO']);
    }
    $query = "INSERT INTO e_RETORNO_PAGAMENTO_MOIP\r\n           (ID_TRANSACAO\r\n           ,VALOR\r\n           ,SITUACAO\r\n           ,STATUS_PAGAMENTO\r\n           ,COD_MOIP\r\n           ,FORMA_PAGAMENTO\r\n           ,TIPO_PAGAMENTO\r\n           ,PARCELAS\r\n           ,EMAIL_CONSUMIDOR\r\n           ,CLASSIFICACAO\r\n           ,CARTAO_BIN\r\n           ,CARTAO_FINAL\r\n           ,CARTAO_BANDEIRA\r\n           ,COFRE\r\n           ,DATA_INSERT\r\n           ,USUARIO_INSERT)\r\n     VALUES\r\n           (" . sqlvalue($_POST['id_transacao'], true) . ",\r\n\t\t    " . sqlvalue($_POST['valor'], true) . ",\r\n\t\t    " . sqlvalue($arrayStatus[$situacaoMoip][0], true) . ",\r\n\t\t    " . sqlvalue($_POST['status_pagamento'], true) . ",\r\n\t\t    " . sqlvalue($_POST['cod_moip'], true) . ",\r\n\t\t    " . sqlvalue($_POST['forma_pagamento'], true) . ",\r\n\t\t    " . sqlvalue($_POST['tipo_pagamento'], true) . ",\r\n\t\t    " . sqlvalue($_POST['parcelas'], true) . ",\r\n\t\t    " . sqlvalue($_POST['email_consumidor'], true) . ",\r\n\t\t    " . sqlvalue($_POST['classificacao'], true) . ",\r\n\t\t    " . sqlvalue($_POST['cartao_bin'], true) . ",\r\n\t\t    " . sqlvalue($_POST['cartao_final'], true) . ",\r\n\t\t    " . sqlvalue($_POST['cartao_bandeira'], true) . ",\r\n\t\t    " . sqlvalue($_POST['cofre'], true) . ",\r\n\t\t    now(),\r\n\t\t    'RETORNO_MOIP')\r\n\t";
    $mysqli->ExecutarSQL($query);
}
Beispiel #2
0
     break;
 case 'despacharPedido':
     set_time_limit(60);
     foreach ($_POST["idPedido"] as $idPedido) {
         $codRastreamento = sqlvalue($_POST['codRastreamento'][$idPedido], true);
         $idPedido = sqlvalue($idPedido, false);
         $query .= "UPDATE e_PEDIDO_ITEM \r\n\t\t\t\t\t\tSET SPIT_ID_SITUACAO_PEDIDO_ITEM = " . ID_SITUACAO_PEDIDO_DESPACHADO . "\r\n\t\t\t\t\t   ,COD_RASTREAMENTO = " . $codRastreamento . "\r\n\t\t\t\t\t   WHERE PEDI_ID_PEDIDO = " . $idPedido . " \r\n\t\t\t\t\t   AND SPIT_ID_SITUACAO_PEDIDO_ITEM = " . ID_SITUACAO_PEDIDO_ATENDIDO . ";\r\n\t\t\t\t\t   ";
     }
     $resultQuery = $mysqli->ExecutarMultiSQL($query);
     $query = "SELECT\r\n\t\t\t\t\t\tPEDI.ID_PEDIDO,\r\n\t\t\t\t\t\tPESS.EMAIL,\r\n\t\t\t\t\t\tPESS.NOME\r\n\t\t\t\t\tFROM\r\n\t\t\t\t\t\te_PEDIDO PEDI,\r\n\t\t\t\t\t\te_PEDIDO_ITEM PEIT,\r\n\t\t\t\t\t\te_PESSOA PESS\r\n\t\t\t\t\tWHERE\r\n\t\t\t\t\t\tPEDI.ID_PEDIDO = PEIT.PEDI_ID_PEDIDO\r\n\t\t\t\t\tAND PEIT.SPIT_ID_SITUACAO_PEDIDO_ITEM = " . ID_SITUACAO_PEDIDO_DESPACHADO . "\r\n\t\t\t\t\tAND PEIT.AVISADO_DESPACHO = 'N'\r\n\t\t\t\t\tAND PEDI.PESS_ID_PESSOA = PESS.ID_PESSOA\r\n\t\t\t\t\tGROUP BY\r\n\t\t\t\t\t\tPEDI.ID_PEDIDO,\r\n\t\t\t\t\t\tPESS.EMAIL,\r\n\t\t\t\t\t\tPESS.NOME";
     $result = $mysqli->ConsultarSQL($query);
     foreach ($result as $value) {
         $idPedido = $value['ID_PEDIDO'];
         $nomePessoa = $value['NOME'];
         $emailPessoa = $value['EMAIL'];
         $enviaEmail = enviaEmail('situacaoPedido', $nomePessoa, $emailPessoa, null, $idPedido, 'S');
         if ($enviaEmail) {
             $query = "UPDATE e_PEDIDO_ITEM SET AVISADO_DESPACHO = 'S' \r\n\t\t\t\t\t\t  WHERE PEDI_ID_PEDIDO = " . $idPedido . " \r\n\t\t\t\t\t\t  AND SPIT_ID_SITUACAO_PEDIDO_ITEM = " . ID_SITUACAO_PEDIDO_DESPACHADO . ";\r\n\t\t\t\t\t\t  ";
             $mysqli->ExecutarSQL($query);
         }
     }
     if ($resultQuery) {
         $retorno = '{ "cod": "sucesso", "mensagem": "' . EDITADO_COM_SUCESSO . '", "redirect": "pedido-despacho" }';
     } else {
         $retorno = '{ "cod": "erro", "mensagem": "' . ERRO_AO_EDITAR . '" }';
     }
     echo $retorno;
     break;
 case "cadastraOcorrenciaPedido":
     $idPedido = sqlvalue($_POST['idPedido'], false);
     $idPessoa = sqlvalue($_POST['idPessoa'], false);
Beispiel #3
0
function tratarDados($dados)
{
    $con = mysql_connect("cloudservice.cgejdsdl842e.sa-east-1.rds.amazonaws.com", "gpstracker", "d1\$1793689");
    if ($con !== false) {
        mysql_select_db('tracker', $con);
        $gpsSignalIndicator = 'F';
        $latitudeDecimalDegrees = $dados[1];
        $longitudeDecimalDegrees = $dados[2];
        $latitudeHemisphere = $dados[3];
        $longitudeHemisphere = $dados[4];
        $speed = $dados[5];
        $imei = $dados[6];
        $satelliteFixStatus = 'A';
        $phone = '';
        $infotext = $dados[8];
        $dataBem = null;
        $dataCliente = null;
        $ligado = count($dados) > 9 ? $dados[9] : 'N';
        $ativo = count($dados) > 10 ? $dados[10] : 'N';
        $realTime = count($dados) > 11 ? $dados[11] : '';
        //D para diferencial
        $gpsSignalIndicator = $dados[0] == 'S' ? 'F' : 'L';
        //Otavio Gomes - 200120152137
        // Estava aqui o problema do crx1 so enviar o sinal S.
        if ($realTime == 'D') {
            $gpsSignalIndicator = 'D';
        } else {
            $gpsSignalIndicator = 'R';
        }
        $resBem = mysql_query("SELECT id, cliente, envia_sms, name, hodometro, alerta_hodometro, alerta_hodometro_saldo, limite_velocidade FROM bem WHERE imei = '{$imei}'", $con);
        //echo 'Ligado: '.$ligado;
        $dataBem = mysql_fetch_assoc($resBem);
        if ($resBem !== false) {
            $resCliente = mysql_query("SELECT id, celular, dt_ultm_sms, envia_sms, sms_acada, hour(TIMEDIFF(now(), dt_ultm_sms)) horas, minute(TIMEDIFF(now(), dt_ultm_sms)) minutos, nome, email FROM cliente WHERE id = " . $dataBem['cliente'], $con);
            if ($resCliente !== false) {
                $dataCliente = mysql_fetch_assoc($resCliente);
                $texto_sms_localiza = "";
                $texto_sms_alerta_hodometro = "";
                $texto_sms_alerta = "";
                $result = mysql_query("SELECT * FROM preferencias", $con);
                if (mysql_num_rows($result) > 0) {
                    while ($dataPref = mysql_fetch_assoc($result)) {
                        if ($dataPref['nome'] == 'texto_sms_localiza') {
                            $texto_sms_localiza = $dataPref['valor'];
                        }
                        if ($dataPref['nome'] == 'texto_sms_alerta_hodometro') {
                            $texto_sms_alerta_hodometro = $dataPref['valor'];
                        }
                        if ($dataPref['nome'] == 'texto_sms_alerta') {
                            $texto_sms_alerta = $dataPref['valor'];
                        }
                    }
                }
                $movimento = '';
                if ($speed > 0) {
                    $movimento = 'S';
                    if ($dataBem['limite_velocidade'] != "0" && $dataBem['limite_velocidade'] != null && $speed > $dataBem['limite_velocidade']) {
                        if (!checkAlerta($imei, 'Limite Velocidade')) {
                            mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Limite Velocidade')", $con);
                            $msgEmail = "<p><b>Alerta de Limite de Velocidade: </b></p><br><p>O veículo " . $dataBem['name'] . " está trafegando com velocidade de " . $speed . " Km/h, ultrapassando o limite de velocidade definido (" . $dataBem['limite_velocidade'] . " Km/h) em " . date("d/m/Y") . " às " . date("H:i:s") . ".</p><br><i>Equipe InovarSat</i>";
                            enviaEmail($dataCliente['email'], "Alerta de Limite de Velocidade", $msgEmail);
                        }
                    }
                } else {
                    $movimento = 'N';
                }
                // CERCA VIRTUAL
                if ($imei != "") {
                    $consulta = mysql_query("SELECT * FROM geo_fence WHERE imei = '{$imei}'", $con);
                    while ($data = mysql_fetch_assoc($consulta)) {
                        $idCerca = $data['id'];
                        $imeiCerca = $data['imei'];
                        $nomeCerca = $data['nome'];
                        $coordenadasCerca = $data['coordenadas'];
                        $resultCerca = $data['tipo'];
                        $tipoEnvio = $data['tipoEnvio'];
                        $lat_point = $latitudeDecimalDegrees;
                        $lng_point = $longitudeDecimalDegrees;
                        $exp = explode("|", $coordenadasCerca);
                        if (count($exp) < 5) {
                            $strExp = explode(",", $exp[0]);
                            $strExp1 = explode(",", $exp[2]);
                        } else {
                            $int = count($exp) / 2;
                            $strExp = explode(",", $exp[0]);
                            $strExp1 = explode(",", $exp[$int]);
                        }
                        $lat_vertice_1 = $strExp[0];
                        $lng_vertice_1 = $strExp[1];
                        $lat_vertice_2 = $strExp1[0];
                        $lng_vertice_2 = $strExp1[1];
                        if ($lat_vertice_1 < $lat_point or $lat_point < $lat_vertice_2 and $lng_point < $lng_vertice_1 or $lng_vertice_2 < $lng_point) {
                            $result = '0';
                            $situacao = 'fora';
                        } else {
                            $result = '1';
                            $situacao = 'dentro';
                        }
                        if ($result == 0 and $movimento == 'S') {
                            if (!checkAlerta($imei, 'Cerca Violada')) {
                                mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Cerca Violada')", $con);
                                if ($tipoEnvio == 0) {
                                    # Convert the GPS coordinates to a human readable address
                                    /*$tempstr = "http://maps.google.com/maps/geo?q=$lat_point,$lng_point&oe=utf-8&sensor=true&key=ABQIAAAAFd56B-wCWVpooPPO7LR3ihTz-K-sFZ2BISbybur6B4OYOOGbdRShvXwdlYvbnwC38zgCx2up86CqEg&output=csv"; //output = csv, xml, kml, json
                                    		$rev_geo_str = file_get_contents($tempstr);
                                    		$rev_geo_str = preg_replace("/\"/","", $rev_geo_str);
                                    		$rev_geo = explode(',', $rev_geo_str);
                                    		$logradouro = $rev_geo[2] .",". $rev_geo[3] ;*/
                                    /*$consulta1 = mysql_query("SELECT a.*, b.* FROM cliente a INNER JOIN bem b ON a.id = b.cliente WHERE b.imei = '$imei'", $con);
                                    		
                                    		while($data = mysql_fetch_assoc($consulta1)) {
                                    			$emailDestino = $data['email'];
                                    			$nameBem = $data['name'];
                                    			$msgEmail = "<p><b>Alerta de Violação de Perímetro:</b></p><br><p>O veículo ". $nameBem .", está ". $situacao ." do perímetro ". $nomeCerca .", as ". date("H:i:s") ." do dia ". date("d/m/Y") . ".</p><br><i>Equipe InovarSat</i>";
                                    			enviaEmail($emailDestino, "Alerta de Violação de Perímetro", $msgEmail);
                                    		}*/
                                    $json = json_decode(file_get_contents("http://maps.googleapis.com/maps/api/geocode/json?latlng=" . $lat_point . "," . $lng_point . "&sensor=false"));
                                    if (isset($json->status) && $json->status == 'OK') {
                                        $address = $json->results[0]->formatted_address;
                                        $address = utf8_decode($address);
                                    }
                                    //else echo $json->status;
                                    $emailDestino = $dataCliente['email'];
                                    $nameBem = $dataBem['name'];
                                    $msgEmail = "<p><b>Alerta de Violação de Perímetro: </b></p><br><p>O veículo " . $nameBem . ", está " . $situacao . " do perímetro " . $nomeCerca . ", transitando na " . $address . " às " . date("H:i:s") . " do dia " . date("d/m/Y") . ".</p><br><i>Equipe InovarSat</i>";
                                    enviaEmail($emailDestino, "Alerta de Violação de Perímetro", $msgEmail);
                                }
                            }
                        }
                    }
                }
                //FIM CERCA VIRTUAL
                # Write it to the database...
                if ($gpsSignalIndicator != 'L' && !empty($latitudeDecimalDegrees)) {
                    $gpsLat = $latitudeDecimalDegrees;
                    //gprsToGps($latitudeDecimalDegrees, $latitudeHemisphere)
                    $gpsLon = $longitudeDecimalDegrees;
                    //gprsToGps($longitudeDecimalDegrees, $longitudeHemisphere)
                    $gpsLatAnt = 0;
                    $gpsLatHemAnt = '';
                    $gpsLonAnt = 0;
                    $gpsLonHemAnt = '';
                    $alertaACadaSaldo = 0;
                    $resLocAtual = mysql_query("SELECT id, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere FROM loc_atual WHERE imei = '{$imei}' LIMIT 1", $con);
                    $numRows = mysql_num_rows($resLocAtual);
                    if ($numRows == 0) {
                        mysql_query("INSERT INTO loc_atual (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator, converte, ligado) VALUES (now(), '{$imei}', '{$phone}', '{$satelliteFixStatus}', '{$latitudeDecimalDegrees}', '{$latitudeHemisphere}', '{$longitudeDecimalDegrees}', '{$longitudeHemisphere}', '{$speed}', '{$infotext}', '{$gpsSignalIndicator}', 0, '{$ligado}')", $con);
                    } else {
                        mysql_query("UPDATE loc_atual SET date = now(), phone = '{$phone}', satelliteFixStatus = '{$satelliteFixStatus}', latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', speed = '{$speed}', infotext = '{$infotext}', gpsSignalIndicator = '{$gpsSignalIndicator}', converte = 0, ligado = '{$ligado}' WHERE imei = '{$imei}'", $con);
                    }
                    $distance = 0;
                    try {
                        $bemId = $dataBem['id'];
                        $countGeoDistance = mysql_query("SELECT bem FROM geo_distance WHERE bem = {$bemId}", $con);
                        if ($countGeoDistance === false || mysql_num_rows($countGeoDistance) == 0) {
                            mysql_query("INSERT INTO geo_distance (bem, tipo) VALUES({$bemId}, 'I')", $con);
                            mysql_query("INSERT INTO geo_distance (bem, tipo) VALUES({$bemId}, 'F')", $con);
                        }
                        /*envio de sms*/
                        if ($dataCliente['envia_sms'] == 'S' && $dataBem['envia_sms'] == 'S' && !empty($dataCliente['celular']) && !empty($dataCliente['sms_acada'])) {
                            if (empty($dataCliente['dt_ultm_sms'])) {
                                mysql_query("UPDATE cliente SET dt_ultm_sms = convert_tz(now(), 'GMT', 'Brazil/East') WHERE id = " . $dataCliente['id'], $con);
                            } else {
                                $horas = $dataCliente['horas'];
                                $minutos = $dataCliente['minutos'];
                                if (!empty($horas)) {
                                    $horas = $horas * 60;
                                }
                                $tempoTotal = $horas + $minutos;
                                if ($tempoTotal > $dataCliente['sms_acada']) {
                                    $json = json_decode(file_get_contents("http://maps.google.com/maps/api/geocode/json?sensor=false&latlng={$gpsLat},{$gpsLon}&language=es-ES"));
                                    if (isset($json->status) && $json->status == 'OK' && isset($json->results[0]->formatted_address)) {
                                        $address = $json->results[0]->formatted_address;
                                        $address = utf8_decode($address);
                                        $aDataCliente = split(' ', $dataCliente['nome']);
                                        $msg = $texto_sms_localiza;
                                        $msg = str_replace("#CLIENTE", $aDataCliente[0], $msg);
                                        $msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                                        $msg = str_replace("#LOCALIZACAO", $address, $msg);
                                        $msg = str_replace(' ', '+', $msg);
                                        sendSMS($dataCliente['celular'], $msg, '');
                                        if ($retorno < 0) {
                                            mysql_query("INSERT INTO controle(texto) VALUES('envio de sms retorno: {$retorno}')", $con);
                                        } else {
                                            mysql_query("UPDATE cliente SET dt_ultm_sms = convert_tz(now(), 'GMT', 'Brazil/East') WHERE id = " . $dataCliente['id'], $con);
                                        }
                                    }
                                }
                            }
                        }
                        if ($movimento == 'S') {
                            $resGeoDistance = mysql_query("SELECT parou FROM geo_distance WHERE bem = {$bemId} AND tipo = 'I'", $con);
                            if ($resGeoDistance !== false) {
                                $dataGeoDistance = mysql_fetch_assoc($resGeoDistance);
                                if ($dataGeoDistance['parou'] == 'S' || empty($dataGeoDistance['parou'])) {
                                    mysql_query("UPDATE geo_distance SET latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', parou = 'N' WHERE bem = {$bemId} AND tipo = 'I'", $con);
                                }
                            }
                        } else {
                            $resGeoDistance = mysql_query("SELECT latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere FROM geo_distance WHERE bem = {$bemId} AND tipo = 'I'", $con);
                            if (mysql_num_rows($resGeoDistance) > 0) {
                                $update = mysql_query("UPDATE geo_distance SET latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', parou = 'S' WHERE bem =  {$bemId} AND tipo = 'I'", $con);
                                $dataGeoDistance = mysql_fetch_assoc($resGeoDistance);
                                $gpsLatAnt = !strstr($dataGeoDistance['latitudeDecimalDegrees'], "-") ? gprsToGps($dataGeoDistance['latitudeDecimalDegrees'], $dataGeoDistance['latitudeHemisphere']) : $dataGeoDistance['latitudeDecimalDegrees'];
                                $gpsLonAnt = !strstr($dataGeoDistance['longitudeDecimalDegrees'], "-") ? gprsToGps($dataGeoDistance['longitudeDecimalDegrees'], $dataGeoDistance['longitudeHemisphere']) : $dataGeoDistance['longitudeDecimalDegrees'];
                                // $gpsLatAnt = gprsToGps($dataGeoDistance['latitudeDecimalDegrees'], $dataGeoDistance['latitudeHemisphere']);	//$dataGeoDistance['latitudeDecimalDegrees'];
                                // $gpsLonAnt = gprsToGps($dataGeoDistance['longitudeDecimalDegrees'], $dataGeoDistance['longitudeHemisphere']);	//$dataGeoDistance['longitudeDecimalDegrees'];
                                if ($gpsLatAnt != $gpsLat) {
                                    if ($gpsLatAnt != 0 && $gpsLonAnt != 0) {
                                        $geoDistance = distance($gpsLatAnt, $gpsLonAnt, $gpsLat, $gpsLon);
                                        //$strDistance = $json->rows[0]->elements[0]->distance->value;
                                        $distance = (int) $geoDistance;
                                        //(int)($geoDistance*1000)
                                        //echo "******************************IMEI: ". $imei ." | Lat/Long Antiga: ". $gpsLatAnt . ", ". $gpsLonAnt ." | Lat/Long Atual: ". $gpsLat .", ". $gpsLon ." | Geodistance : ". $geoDistance ." | Inteiro: ". $distance ."<br>";
                                        $alertaACada = $dataBem['alerta_hodometro'];
                                        $alertaACadaSaldo = $dataBem['alerta_hodometro_saldo'];
                                        $alertaACadaSaldo = $alertaACadaSaldo - $distance;
                                        if ($alertaACadaSaldo <= 0 && $alertaACada > 0) {
                                            $msg = $texto_sms_alerta_hodometro;
                                            $msg = str_replace("#CLIENTE", $dataCliente['nome'], $msg);
                                            $msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                                            $msg = str_replace("#HODOMETRO", $alertaACada, $msg);
                                            $msg = str_replace(' ', '+', $msg);
                                            //sendSMS($dataCliente['celular'], $msg, '');
                                            $msgEmail = "<p><b>Quilometragem atingida: </b></p><br><p>O veículo " . $dataBem['name'] . " atingiu a quilometragem de " . $dataBem['hodometro'] . "Km rodados às " . date("H:i:s") . " do dia " . date("d/m/Y") . ".</p><br><i>Equipe InovarSat</i>";
                                            //echo $msgEmail;
                                            // enviaEmail($dataCliente['email'], 'Hodômetro - Quilometragem Atingida', $msgEmail);
                                            $alertaACadaSaldo = $alertaACada;
                                        }
                                        // $alertaACadaSaldo = (int)$alertaACadaSaldo;//(int)$alertaACadaSaldo/1000
                                    }
                                }
                            }
                        }
                    } catch (Exception $e) {
                        mysql_query("INSERT INTO controle (texto) VALUES ({$e->getMessage}())", $con);
                    }
                    if (!empty($latitudeDecimalDegrees)) {
                        mysql_query("INSERT INTO gprmc (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator, km_rodado, converte, ligado) VALUES (now(), '{$imei}', '{$phone}', '{$satelliteFixStatus}', '{$latitudeDecimalDegrees}', '{$latitudeHemisphere}', '{$longitudeDecimalDegrees}', '{$longitudeHemisphere}', '{$speed}', '{$infotext}', '{$gpsSignalIndicator}', {$distance}, 0, '{$ligado}')", $con);
                    }
                    if ($alertaACadaSaldo == 0) {
                        mysql_query("UPDATE bem set date = now(), status_sinal = 'R', movimento = '{$movimento}', hodometro = hodometro+{$distance} WHERE imei = '{$imei}'", $con);
                    } else {
                        mysql_query("UPDATE bem set date = now(), status_sinal = 'R', movimento = '{$movimento}', hodometro = hodometro+{$distance}, alerta_hodometro_saldo = {$alertaACadaSaldo} WHERE imei = '{$imei}'", $con);
                    }
                    /*
                    if($numRows == 0){
                    mysql_query("INSERT INTO loc_atual (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator) VALUES (now(), '$imei', '$phone', '$satelliteFixStatus', '$latitudeDecimalDegrees', '$latitudeHemisphere', '$longitudeDecimalDegrees', '$longitudeHemisphere', '$speed', '$infotext', '$gpsSignalIndicator')", $cnx);
                    } else {
                    mysql_query("UPDATE loc_atual set date = now(), phone = '$phone', satelliteFixStatus = '$satelliteFixStatus', latitudeDecimalDegrees = '$latitudeDecimalDegrees', latitudeHemisphere = '$latitudeHemisphere', longitudeDecimalDegrees = '$longitudeDecimalDegrees', longitudeHemisphere = '$longitudeHemisphere', speed = '$speed', infotext = '$infotext', gpsSignalIndicator = '$gpsSignalIndicator' where imei = '$imei'", $cnx);
                    }
                    */
                } else {
                    $resLocAtual = mysql_query("SELECT id, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere FROM loc_atual WHERE imei = '{$imei}' LIMIT 1", $con);
                    $numRows = mysql_num_rows($resLocAtual);
                    if ($numRows == 0) {
                        mysql_query("INSERT INTO loc_atual (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator, converte, ligado) VALUES (now(), '{$imei}', '{$phone}', '{$satelliteFixStatus}', '{$latitudeDecimalDegrees}', '{$latitudeHemisphere}', '{$longitudeDecimalDegrees}', '{$longitudeHemisphere}', '{$speed}', '{$infotext}', '{$gpsSignalIndicator}', 0, '{$ligado}')", $con);
                    } else {
                        mysql_query("UPDATE loc_atual SET date = now(), phone = '{$phone}', satelliteFixStatus = '{$satelliteFixStatus}', latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', speed = '{$speed}', infotext = '{$infotext}', gpsSignalIndicator = '{$gpsSignalIndicator}', converte = 0, ligado = '{$ligado}' WHERE imei = '{$imei}'", $con);
                    }
                    if (!empty($latitudeDecimalDegrees)) {
                        mysql_query("INSERT INTO gprmc (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator, km_rodado, converte, ligado) VALUES (now(), '{$imei}', '{$phone}', '{$satelliteFixStatus}', '{$latitudeDecimalDegrees}', '{$latitudeHemisphere}', '{$longitudeDecimalDegrees}', '{$longitudeHemisphere}', '{$speed}', '{$infotext}', '{$gpsSignalIndicator}', 0, 0, '{$ligado}')", $con);
                    }
                    mysql_query("UPDATE bem set date = now(), status_sinal = 'S' WHERE imei = '{$imei}'", $con);
                }
                if (!empty($ligado)) {
                    mysql_query("UPDATE bem SET ligado = '{$ligado}' where imei = '{$imei}'", $con);
                }
                # Now check to see if we need to send any alerts.
                if ($infotext != "tracker") {
                    $msg = $texto_sms_alerta;
                    $msg = str_replace("#CLIENTE", $dataCliente['nome'], $msg);
                    $msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                    $res = mysql_query("SELECT responsible FROM bem WHERE imei='{$imei}'", $con);
                    while ($data = mysql_fetch_assoc($res)) {
                        switch ($infotext) {
                            case "dt":
                                if (!checkAlerta($imei, 'Rastreador Desat.')) {
                                    $body = "Disable Track OK";
                                    $msg = str_replace("#TIPOALERTA", "Rastreador Desabilitado", $msg);
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Rastreador Desat.')", $con);
                                }
                                break;
                            case "et":
                                if (!checkAlerta($imei, 'Alarme Parado')) {
                                    $body = "Stop Alarm OK";
                                    $msg = str_replace("#TIPOALERTA", "Alarme parado", $msg);
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Alarme Parado')", $con);
                                }
                                break;
                            case "gt":
                                if (!checkAlerta($imei, 'Alarme Movimento')) {
                                    $body = "Move Alarm set OK";
                                    $msg = str_replace("#TIPOALERTA", "Alarme de Movimento ativado", $msg);
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Alarme Movimento')", $con);
                                }
                                break;
                            case "help me":
                                if (!checkAlerta($imei, 'SOS!')) {
                                    $body = "Help!";
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'SOS!')", $con);
                                    $msg = str_replace("#TIPOALERTA", "SOS", $msg);
                                }
                                //Envia comando de resposta: alerta recebido
                                //$send_cmd = "**,imei:". $conn_imei .",E";
                                //socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                //printLog($fh, "Comando de resposta (help me): " . $send_cmd . " imei: " . $conn_imei);
                                break;
                            case "ht":
                                if (!checkAlerta($imei, 'Alarme Velocidade')) {
                                    $body = "Speed alarm set OK";
                                    $msg = str_replace("#TIPOALERTA", "Alarme de velocidade ativado", $msg);
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Alarme Velocidade')", $con);
                                }
                                break;
                            case "it":
                                $body = "Timezone set OK";
                                break;
                            case "low battery":
                                if (!checkAlerta($imei, 'Bateria Fraca')) {
                                    $body = "Low battery!\nYou have about 2 minutes...";
                                    $msg = str_replace("#TIPOALERTA", "Bateria fraca, voce tem 2 minutos", $msg);
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Bateria Fraca')", $con);
                                }
                                //Envia comando de resposta: alerta recebido
                                $send_cmd = "**,imei:" . $conn_imei . ",E";
                                socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                //printLog($fh, "Comando de resposta (low battery): " . $send_cmd . " imei: " . $conn_imei);
                                break;
                            case "move":
                                if (!checkAlerta($imei, 'Movimento')) {
                                    $body = "Move Alarm!";
                                    $msg = str_replace("#TIPOALERTA", "Seu veiculo esta em movimento", $msg);
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Movimento')", $con);
                                }
                                //Envia comando de resposta: alerta recebido
                                $send_cmd = "**,imei:" . $conn_imei . ",E";
                                socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                //printLog($fh, "Comando de resposta (move): " . $send_cmd . " imei: " . $conn_imei);
                                break;
                            case "nt":
                                $body = "Returned to SMS mode OK";
                                break;
                            case "speed":
                                if (!checkAlerta($imei, 'Velocidade')) {
                                    $body = "Speed alarm!";
                                    $msg = str_replace("#TIPOALERTA", "Seu veiculo ultrapassou o limite de velocidade", $msg);
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Velocidade')", $con);
                                }
                                //Envia comando de resposta: alerta recebido
                                $send_cmd = "**,imei:" . $conn_imei . ",E";
                                socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                //printLog($fh, "Comando de resposta (speed): " . $send_cmd . " imei: " . $conn_imei);
                                break;
                            case "stockade":
                                if (!checkAlerta($imei, 'Cerca')) {
                                    $body = "Geofence Violation!";
                                    $msg = str_replace("#TIPOALERTA", "Seu veiculo saiu da cerca virtual", $msg);
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Cerca')", $con);
                                }
                                //Envia comando de resposta: alerta recebido
                                $send_cmd = "**,imei:" . $conn_imei . ",E";
                                socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                //printLog($fh, "Comando de resposta (stockade): " . $send_cmd . " imei: " . $conn_imei);
                                break;
                            case "door alarm":
                                if (!checkAlerta($imei, 'Porta')) {
                                    $body = "Open door!";
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Porta')", $con);
                                }
                                //Envia comando de resposta: alerta recebido
                                $send_cmd = "**,imei:" . $conn_imei . ",E";
                                socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                //printLog($fh, "Comando de resposta (door alarm): " . $send_cmd . " imei: " . $conn_imei);
                                break;
                            case "acc alarm":
                                if (!checkAlerta($imei, 'Alarme Disparado')) {
                                    $body = "ACC alarm!";
                                    $msg = str_replace("#TIPOALERTA", "Alarme disparado", $msg);
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Alarme Disparado')", $con);
                                }
                                //Envia comando de resposta: alerta recebido
                                $send_cmd = "**,imei:" . $conn_imei . ",E";
                                socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                //printLog($fh, "Comando de resposta (acc alarm): " . $send_cmd . " imei: " . $conn_imei);
                                break;
                            case "acc off":
                                $body = "Ignicao Desligada!";
                                $msg = str_replace("#TIPOALERTA", "Seu veiculo esta com a chave desligada", $msg);
                                //mysql_query("INSERT INTO message (imei, message) VALUES ('$imei', 'Ignição')", $cnx);
                                mysql_query("UPDATE bem SET ligado = 'N' where imei = '{$imei}'", $con);
                                //Envia comando de resposta: alerta recebido
                                $send_cmd = "**,imei:" . $conn_imei . ",E";
                                socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                //printLog($fh, "Comando de resposta (acc alarm): " . $send_cmd . " imei: " . $conn_imei);
                                break;
                            case "acc on":
                                $body = "Ignicao Ligada!";
                                $msg = str_replace("#TIPOALERTA", "Seu veiculo esta com a chave ligada", $msg);
                                //mysql_query("INSERT INTO message (imei, message) VALUES ('$imei', 'Ignição')", $cnx);
                                mysql_query("UPDATE bem SET ligado = 'S' where imei = '{$imei}'", $cnx);
                                //Envia comando de resposta: alerta recebido
                                $send_cmd = "**,imei:" . $conn_imei . ",E";
                                socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                //printLog($fh, "Comando de resposta (acc alarm): " . $send_cmd . " imei: " . $conn_imei);
                                break;
                        }
                        //switch
                        $msg = str_replace(' ', '+', $msg);
                        //if($dataCliente['envia_sms'] == 'S' && $dataBem['envia_sms'] == 'S' && $infotext != 'acc on'&& $infotext != 'acc off' && $infotext != 'et')
                        //	sendSMS($dataCliente['celular'], $msg, '');
                        //Enviando e-mail de alerta
                        /*$headers = "From: $email_from" . "\r\n" . "Reply-To: $email_from" . "\r\n";
                        		$responsible = $data['responsible'];
                        		$rv = mail($responsible, "Tracker - $imei", $body, $headers);*/
                        if (isset($body)) {
                            enviaEmail($dataCliente['email'], "Rastreador - {$imei}", $body);
                        }
                    }
                    //while
                }
            } else {
                echo 'Cliente não encontrado. Erro: ' . mysql_error($con);
            }
        } else {
            echo 'Veículo não encontrado. Erro: ' . mysql_error($con);
        }
        mysql_close($con);
    } else {
        echo 'Não foi possivel conectar ao banco. Erro: ' . mysql_error();
    }
}
Beispiel #4
0
     $titulo = 'Atenção';
     $valida = 'false';
     $msg = 'Caro usuário, o FormEntry foi descontinuado. Envie sua vistoria pelo SIGA!';
     //		$msg = 'Login inválido!';
     break;
 case 1:
     $to = $consulta_login['email'];
     if ($_POST['app_version'] != $app_version) {
         $message = "Olá " . $consulta_login['nome'] . "<br><br>";
         $message .= "Favor instalar a nova versão do formulário de vistoria por meio do link abaixo: <br>";
         $message .= "<ul><li><a href=\"http://www.skyengenhariadecampo.com.br/files/Vistoria.form\">http://www.skyengenhariadecampo.com.br/files/Vistoria.form</a></li></ul><br>";
         $message .= "SKY Engenharia de Campo";
         $message .= "<hr>Este email foi enviado automaticamente pelo SIGA via FormEntry";
         $subject = 'FORMULARIO DE VISTORIA - NOVA VERSAO';
         $email_cc = '';
         enviaEmail($to, $subject, $message, $email_from, $email_cc);
         $titulo = 'Atenção';
         $valida = 'false';
         $msg = 'Vistoria não enviada! Favor atualizar a versão do forlulário de vistoria pelo link enviado ao seu email.';
         retornaMensagem($valida, 'true', $titulo, $msg, 'OK');
         exit;
     }
     //Busca moderaçao (0: 5dd, 1: 5dd, 2: 15dd, 3: 1000dd)
     $dias[0] = 15;
     $dias[1] = 15;
     $dias[2] = 15;
     $dias[3] = 1000;
     $moderacao = buscaCampo("moderacao", "SELECT", "vistoria", "moderacao", "os = " . $_POST['os']);
     //Verifica data da vistoria
     //		$dias_max_vistoria = ($consulta_login['nivel_acesso'] == 3 ? 5 : (buscaCampo("moderacao", "SELECT", "vistoria", "moderacao", "os = " . $_POST['os']) == 2 ? 15 : 5));
     $dias_max_vistoria = $dias[$moderacao];
Beispiel #5
0
<?php

if (isset($_POST['submit'])) {
    $dados = filtraDados($_POST);
    $mensagem = verificaErrosContato($dados['nome'], $dados['email'], $dados['mensagem']);
    if (empty($mensagem)) {
        enviaEmail($dados['email'], $dados['nome'], $dados['pesquisa'], $dados['mensagem']);
        $mensagem = "Mensagem enviada com sucesso!";
        unset($_POST);
    }
}
?>

<div id="content">
	<div id="outer1">
            <h1 class="tituloGrande">Entre em Contato com o DJ</h1>
            <div id="innerContato">
                <h2>
                    Preencha o formulário abaixo, envie sua mensagem e aguarde o retorno<br>
                    Observação:<span class="asterisco">*</span>Campo de Preenchimento Obrigatório
                </h2>
                <form action="<?php 
echo HOME . '?p=contato';
?>
" method="post" enctype="multipart/form-data">
                    <p class="separaCampo">
                        <label for="nome"><span class="rotuloForm">Nome Completo <span class="asterisco">*</span></label>
                        <input type="text" name="nome" maxlength="30" value="<?php 
echo @strip_tags($_POST['nome']);
?>
">
/*RETORNO PAGAMENTO MOIP*/
$query = "SELECT\r\n\t\t\t\tMAX(COD_MOIP) COD_MOIP,\r\n\t\t\t\tCASE IFNULL(SITUACAO, 'N') WHEN 'N' THEN DESCRICAO_PEDIDO_ITEM_SITUACAO ELSE SITUACAO END SITUACAO,\r\n\t\t\t\tID_PEDIDO_ITEM_SITUACAO\r\n\t\t\tFROM\r\n\t\t\t\te_PEDIDO LEFT JOIN e_RETORNO_PAGAMENTO_MOIP\r\n\t\t\t\t\t\t\t\tON NUMERO_PEDIDO = ID_TRANSACAO,\r\n\t\t\t\te_PEDIDO_ITEM_SITUACAO \r\n\t\t\tWHERE\r\n\t\t\t\tNUMERO_PEDIDO = '" . $numeroPedido . "'\r\n\t\t\tAND fn_situacao_pedido(ID_PEDIDO) = ID_PEDIDO_ITEM_SITUACAO\r\n\t\t\tGROUP BY\r\n\t\t\t\tSITUACAO,\r\n\t\t\t\tDESCRICAO_PEDIDO_ITEM_SITUACAO,\r\n\t\t\t\tID_PEDIDO_ITEM_SITUACAO\r\n\t\t\t\tLIMIT 1";
$listaRetornoPagamentoMoip = $mysqli->ConsultarSQL($query);
$Status = $_SESSION['sessionStatusMoIP'];
if (!$Status) {
    $Status = $listaRetornoPagamentoMoip[0]['SITUACAO'];
}
$smarty->assign('situacaoMoip', $Status);
$CodigoMoIP = $_SESSION['sessionCodigoMoIP'];
if (!$CodigoMoIP) {
    $CodigoMoIP = $listaRetornoPagamentoMoip[0]['COD_MOIP'];
}
$codMoip = mask($CodigoMoIP, '####.####.####');
$smarty->assign('codMoip', $codMoip);
if ($listaRetornoPagamentoMoip[0]['ID_PEDIDO_ITEM_SITUACAO'] == ID_SITUACAO_PEDIDO_ANALISE_CREDITO) {
    enviaEmail('situacaoPedido', $_SESSION['sessionNome'], $_SESSION['login'], null, $idPedido);
}
/**/
/*CONVERSAO FACEBOOK*/
//$arrayConversaoFacebook = array('6010232729684','6010236300884','6010236570684','6010236710284');
//$smarty->assign('arrayConversaoFacebook', $arrayConversaoFacebook);
/**/
/*BTG*/
$smarty->assign('valor_total', $totalPedidoFinal);
$smarty->assign('frete', $valorFretePedido);
$smarty->assign('dt_prevista_para_entrega', $prazoEntregaPedido);
$smarty->assign('metodo_de_pagamento', $listaPedidoPagamento[0]['DESCRICAO']);
$smarty->assign('banco1', $listaPedidoPagamento[0]['DESCRICAO_FORMA_PAGAMENTO']);
$smarty->assign('cod_compra', $numeroPedido);
$smarty->assign('nm_etapa', $sessao);
$countProdutoCarrinho = count($listaPedido);
Beispiel #7
0
     }
     echo $retorno;
     break;
 case "enviaNovaSenha":
     $idPessoa = $_POST["idPessoa"];
     $novaSenha1 = RandomString(8);
     $novaSenha = md5($novaSenha1);
     $senhaPessoa = sqlvalue($novaSenha, true);
     $query = "SELECT EMAIL, NOME FROM e_PESSOA WHERE ID_PESSOA = " . $idPessoa . "";
     $result = $mysqli->ConsultarSQL($query);
     $emailPessoa = $result[0]['EMAIL'];
     $nomePessoa = $result[0]['NOME'];
     $query = "UPDATE e_PESSOA SET SENHA = " . $senhaPessoa . " WHERE ID_PESSOA = " . $idPessoa . "";
     $resultQuery = $mysqli->ExecutarSQL($query);
     if ($resultQuery) {
         $enviaEmail = enviaEmail('novaSenha', $nomePessoa, $emailPessoa, $novaSenha1);
         $retorno = '{ "cod": "sucesso", "mensagem": "' . SENHA_ENVIADA_SUCESSO . '" }';
     } else {
         $retorno = '{ "cod": "erro", "mensagem": "' . ERRO_ENVIAR_SENHA . '" }';
     }
     echo $retorno;
     break;
 case "editaTabelasPessoa":
     $id = $_POST["id"];
     $descricao = sqlvalue($_POST["descricao"], true);
     $tabela = str_replace("descricao", "", $_POST["tabela"]);
     if ($tabela == "PessoaConceito") {
         $query = "UPDATE e_PESSOA_CONCEITO SET DESCRICAO = " . $descricao . ", DATA_UPDATE = now(), USUARIO_UPDATE = '" . USUARIO_LOGADO . "' WHERE ID_PESSOA_CONCEITO = " . $id . "";
     } elseif ($tabela == "PessoaSituacao") {
         $query = "UPDATE e_PESSOA_SITUACAO SET DESCRICAO_SITUACAO = " . $descricao . ", DATA_UPDATE = now(), USUARIO_UPDATE = '" . USUARIO_LOGADO . "' WHERE ID_PESSOA_SITUACAO = " . $id . "";
     } elseif ($tabela == "PessoaCategoria") {
Beispiel #8
0
    return isset($_POST[$valor]) ? $_POST[$valor] : '';
}
function validaEmail($email)
{
    return filter_var($email, FILTER_VALIDATE_EMAIL);
}
function enviaEmail($de, $assunto, $mensagem, $para, $email_servidor)
{
    $headers = "From: {$email_servidor}\r\n" . "Reply-To: {$de}\r\n" . "Return-Path: {$de}\r\n" . "X-Mailer: PHP/" . phpversion() . "\r\n";
    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
    mail($para, '[CONTATO SITE] ' . (empty($assunto) ? 'Assunto não informado' : $assunto), nl2br($mensagem), $headers);
}
$email_servidor = "Contato Grama Forte <*****@*****.**>";
$para = "*****@*****.**";
$de = pegaValor("email");
$assunto = pegaValor("assunto");
$nome = pegaValor("nome");
$mensagem = "<html><body>";
$mensagem .= "Nova mensagem vinda do site!<br><br>";
$mensagem .= "<b>Nome:</b> " . pegaValor("nome") . "<br><br>";
$mensagem .= "<b>Email:</b> " . $de . "<br><br>";
$mensagem .= "<b>Telefone:</b> " . pegaValor("telefone") . "<br><br>";
$mensagem .= "<b>Mensagem:</b> " . pegaValor("mensagem");
$mensagem .= "</body></html>";
if ($nome && validaEmail($de) && $mensagem) {
    enviaEmail($de, $assunto, $mensagem, $para, $email_servidor);
    echo '{"enviouEmail": true}';
} else {
    echo '{"enviouEmail": false}';
}
Beispiel #9
0
function emailReenviaVistoria($nome, $to, $os, $email_cc)
{
    $message = "Olá " . $nome . ", <br><br>";
    $message .= "Conforme informado pelo consultor, favor reenviar a vistoria de <b>OS " . $os . "</b> que apresentou inconsistência nos dados.<br><br>Att,<br><br>";
    $message .= "SKY Engenharia de Campo";
    $message .= "<hr>Este email foi enviado automaticamente pelo Sistema Engenharia de Campo<br>";
    $subject = "REENVIO DE VISTORIA - OS " . $os;
    $email_from = $GLOBALS['email_from'];
    //	$email_cc = ;
    return enviaEmail($to, $subject, $message, $email_from, $email_cc);
}
Beispiel #10
0
function interact($socket)
{
    global $fh;
    global $command_path;
    global $firstInteraction;
    global $remip;
    global $remport;
    $loopcount = 0;
    $conn_imei = "";
    /* TALK TO YOUR CLIENT */
    $rec = "";
    // Variavel que indica se comando est� em banco ou arquivo.
    $tipoComando = "arquivo";
    //"arquivo";
    //Checando o protocolo
    $isGIMEI = false;
    $isGPRMC = false;
    $send_cmd = "";
    # Read the socket but don't wait for data..
    while (@socket_recv($socket, $rec, 2048, 0x40) !== 0) {
        # If we know the imei of the phone and there is a pending command send it.
        if ($conn_imei != "") {
            if ($tipoComando == "arquivo" and file_exists("{$command_path}/{$conn_imei}")) {
                $send_cmd = file_get_contents("{$command_path}/{$conn_imei}");
                socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                unlink("{$command_path}/{$conn_imei}");
                printLog($fh, "Arquivo de comandos apagado: " . $send_cmd . " imei: " . $conn_imei);
            } else {
                if ($tipoComando == "banco" and file_exists("{$command_path}/{$conn_imei}")) {
                    //Conecta e pega o comando pendente
                    $cnx = mysql_connect("cloudservice.cgejdsdl842e.sa-east-1.rds.amazonaws.com", "gpstracker", "d1\$1793689") or die("Could not connect: " . mysql_error());
                    mysql_select_db('tracker', $cnx);
                    $res = mysql_query("SELECT c.command FROM command c WHERE c.imei = '{$conn_imei}' ORDER BY date DESC LIMIT 1", $cnx);
                    while ($data = mysql_fetch_assoc($res)) {
                        $send_cmd = $data['command'];
                        echo 'acessou o comando';
                    }
                    // Deletando comando
                    //mysql_query("DELETE FROM command WHERE imei = $conn_imei");
                    mysql_close($cnx);
                    socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                    unlink("{$command_path}/{$conn_imei}");
                    printLog($fh, "Comandos do arquivo apagado: " . $send_cmd . " imei: " . $conn_imei);
                } else {
                    //Se nao tiver comando na fila e for a primeira iteracao, obtem o ultimo comando v�lido enviado
                    if ($firstInteraction == true) {
                        sleep(1);
                        $send_cmd = "**,imei:" . $conn_imei . ",C,02m";
                        //Obtendo o ultimo comando
                        $cnx = mysql_connect("cloudservice.cgejdsdl842e.sa-east-1.rds.amazonaws.com", "gpstracker", "d1\$1793689") or die("Could not connect: " . mysql_error());
                        mysql_select_db('tracker', $cnx);
                        $res = mysql_query("SELECT c.command FROM command c WHERE c.command like '**,imei:" . $conn_imei . ",C,%' and c.imei = {$conn_imei} ORDER BY date DESC LIMIT 1", $cnx);
                        while ($data = mysql_fetch_assoc($res)) {
                            $send_cmd = $data['command'];
                        }
                        mysql_close($cnx);
                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                        printLog($fh, "Comando de start: " . $send_cmd . " imei: " . $conn_imei);
                        $firstInteraction = false;
                    }
                }
            }
            // Comando enviado
            printLog($fh, date("d-m-y h:i:sa") . " Sent: {$send_cmd}");
        }
        # Some pacing to ensure we don't split any incoming data.
        sleep(1);
        # Timeout the socket if it's not talking...
        # Prevents duplicate connections, confusing the send commands
        $loopcount++;
        if ($loopcount > 120) {
            return;
        }
        #remove any whitespace from ends of string.
        $cnx = mysql_connect("cloudservice.cgejdsdl842e.sa-east-1.rds.amazonaws.com", "gpstracker", "d1\$1793689");
        mysql_select_db('tracker', $cnx);
        if ($rec != "") {
            $rec = trim($rec);
            if (strpos($rec, "GPRMC") === false) {
                /* M�DULO IMEI GEN�RICO */
                $isGIMEI = true;
                $loopcount = 0;
                if ($fh != null) {
                    printLog($fh, date("d-m-y h:i:sa") . " Got : {$rec}");
                }
                $parts = explode(',', $rec);
                if (strpos($parts[0], "#") === FALSE) {
                    /* Andrew's tracker is different....
                    			Array
                    			(
                    				[0] => imei:354779030525274
                    				[1] => tracker
                    				[2] => 0909221022
                    				[3] => +61417801658
                    				[4] => F
                    				[5] => 022234.000
                    				[6] => A
                    				[7] => 3506.5232
                    				[8] => S
                    				[9] => 13829.5988
                    				[10] => E
                    				[11] => 0.00
                    				[12] =>
                    			)
                    			*/
                    # $imei                       = substr($parts[0],0, -1);
                    # Only worry about the rest if there is data to get
                    if (count($parts) > 1) {
                        $imei = substr($parts[0], 5);
                        $infotext = mysql_real_escape_string($parts[1]);
                        $trackerdate = mysql_real_escape_string($parts[2]);
                        $gpsSignalIndicator = mysql_real_escape_string($parts[4]);
                        $speed = 0;
                        //Se gpsSignalIndicator <> L, pega o outros dados
                        if ($gpsSignalIndicator != 'L') {
                            $phone = mysql_real_escape_string($parts[3]);
                            $satelliteFixStatus = mysql_real_escape_string($parts[6]);
                            $latitudeDecimalDegrees = mysql_real_escape_string($parts[7]);
                            $latitudeHemisphere = mysql_real_escape_string($parts[8]);
                            $longitudeDecimalDegrees = mysql_real_escape_string($parts[9]);
                            $longitudeHemisphere = mysql_real_escape_string($parts[10]);
                            $speed = mysql_real_escape_string($parts[11]);
                        }
                        //inicio verifica geofence
                        mysql_select_db('tracker', $cnx);
                        $texto_sms_localiza = "";
                        $texto_sms_alerta_hodometro = "";
                        $texto_sms_alerta = "";
                        $result = mysql_query("select * from preferencias", $cnx);
                        while ($dataPref = mysql_fetch_assoc($result)) {
                            if ($dataPref['nome'] == 'texto_sms_localiza') {
                                $texto_sms_localiza = $dataPref['valor'];
                            }
                            if ($dataPref['nome'] == 'texto_sms_alerta_hodometro') {
                                $texto_sms_alerta_hodometro = $dataPref['valor'];
                            }
                            if ($dataPref['nome'] == 'texto_sms_alerta') {
                                $texto_sms_alerta = $dataPref['valor'];
                            }
                        }
                        if ($imei != "") {
                            $consulta = mysql_query("SELECT * FROM geo_fence WHERE imei = '{$imei}'", $cnx);
                            while ($data = mysql_fetch_assoc($consulta)) {
                                $idCerca = $data['id'];
                                $imeiCerca = $data['imei'];
                                $nomeCerca = $data['nome'];
                                $coordenadasCerca = $data['coordenadas'];
                                $resultCerca = $data['tipo'];
                                $tipoEnvio = $data['tipoEnvio'];
                                strlen($latitudeDecimalDegrees) == 9 && ($latitudeDecimalDegrees = '0' . $latitudeDecimalDegrees);
                                $g = substr($latitudeDecimalDegrees, 0, 3);
                                $d = substr($latitudeDecimalDegrees, 3);
                                $strLatitudeDecimalDegrees = $g + $d / 60;
                                $latitudeHemisphere == "S" && ($strLatitudeDecimalDegrees = $strLatitudeDecimalDegrees * -1);
                                strlen($longitudeDecimalDegrees) == 9 && ($longitudeDecimalDegrees = '0' . $longitudeDecimalDegrees);
                                $g = substr($longitudeDecimalDegrees, 0, 3);
                                $d = substr($longitudeDecimalDegrees, 3);
                                $strLongitudeDecimalDegrees = $g + $d / 60;
                                $longitudeHemisphere == "S" && ($strLongitudeDecimalDegrees = $strLongitudeDecimalDegrees * -1);
                                $strLongitudeDecimalDegrees = $strLongitudeDecimalDegrees * -1;
                                $lat_point = $strLatitudeDecimalDegrees;
                                $lng_point = $strLongitudeDecimalDegrees;
                                $exp = explode("|", $coordenadasCerca);
                                if (count($exp) < 5) {
                                    $strExp = explode(",", $exp[0]);
                                    $strExp1 = explode(",", $exp[2]);
                                } else {
                                    $int = count($exp) / 2;
                                    $strExp = explode(",", $exp[0]);
                                    $strExp1 = explode(",", $exp[$int]);
                                }
                                $lat_vertice_1 = $strExp[0];
                                $lng_vertice_1 = $strExp[1];
                                $lat_vertice_2 = $strExp1[0];
                                $lng_vertice_2 = $strExp1[1];
                                if ($lat_vertice_1 < $lat_point or $lat_point < $lat_vertice_2 and $lng_point < $lng_vertice_1 or $lng_vertice_2 < $lng_point) {
                                    $result = '0';
                                    $situacao = 'fora';
                                } else {
                                    $result = '1';
                                    $situacao = 'dentro';
                                }
                                if ($result != $resultCerca and round($speed * 1.852, 0) > 0) {
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Cerca " . $nomeCerca . " Violada!')", $cnx);
                                    if ($tipoEnvio == 0) {
                                        echo $url = 'http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=falsei';
                                        $data = @file_get_contents($url);
                                        $jsondata = json_decode($data, true);
                                        echo $jsondata['Status'][0];
                                        // if we get a placemark array and the status was good, get the addres
                                        if (is_array($jsondata) && $jsondata['status'] == 'ok') {
                                            $addr = $jsondata['Placemark'][0]['address'];
                                            echo $addr;
                                        }
                                        # Convert the GPS coordinates to a human readable address
                                        https:
                                        //maps.googleapis.com/maps/api/js?v=3.exp&signed_in=true
                                        $tempstr = "http://maps.google.com/maps/geo?q={$lat_point},{$lng_point}&oe=utf-8&sensor=false&key=AIzaSyAHtRwtz8ReaYTsyPOD83ojXSgcGw-koe0";
                                        //output = csv, xml, kml, json
                                        $rev_geo_str = file_get_contents($tempstr);
                                        $rev_geo_str = preg_replace("/\"/", "", $rev_geo_str);
                                        $rev_geo = explode(',', $rev_geo_str);
                                        $logradouro = $rev_geo[2] . "," . $rev_geo[3];
                                        require "lib/class.phpmailer.php";
                                        include "/var/www/config.php";
                                        $consulta1 = mysql_query("SELECT a.*, b.* FROM cliente a INNER JOIN bem b ON (a.id = b.cliente) WHERE b.imei = '{$imei}'", $cnx);
                                        while ($data = mysql_fetch_assoc($consulta1)) {
                                            $emailDestino = $data['email'];
                                            $nameBem = $data['name'];
                                            $mensagem = "O veiculo " . $nameBem . ", esta " . $situacao . " do perimetro " . $nomeCerca . ", as " . date("H:i:s") . " do dia " . date("d/m/Y") . ", no local " . $logradouro . " e trafegando a " . round($speed * 1.852, 0) . " km/h.";
                                            $msg = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">";
                                            $msg .= "<html>";
                                            $msg .= "<head></head>";
                                            $msg .= "<body style=\"background-color:#fff;\" >";
                                            $msg .= "<p><strong>Alerta de Violacao de Perimetro:</strong><br /><br />";
                                            $msg .= $mensagem . "<br /><br />";
                                            $msg .= "Equipe Telocalizei<br />";
                                            $msg .= "(31)3044-9029<br />";
                                            $msg .= "(31)3081-1662<br />";
                                            $msg .= "(31)8500-0207<br />";
                                            $msg .= "<a href=\"http://www.telocalizei.com.br\">www.telocalizei.com.br</a></p>";
                                            $msg .= "</body>";
                                            $msg .= "</html>";
                                            $mail = new PHPMailer();
                                            $mail->Mailer = "smtp";
                                            $mail->IsHTML(true);
                                            $mail->CharSet = "utf-8";
                                            $mail->SMTPSecure = "ssl";
                                            $mail->Host = HOST_SMTP;
                                            $mail->Port = "465";
                                            $mail->SMTPAuth = AUTENT_SMTP;
                                            $mail->Username = USER_SMTP;
                                            $mail->Password = SENHA_SMTP;
                                            $mail->From = "*****@*****.**";
                                            $mail->FromName = "TELOCALIZEI - RASTREAMENTO ONLINE";
                                            $mail->AddAddress($emailDestino);
                                            $mail->AddReplyTo($mail->From, $mail->FromName);
                                            $mail->Subject = "TELOCALIZEI - Alerta de Violacao de Perimetro";
                                            $mail->Body = $msg;
                                            if (!$mail->Send()) {
                                                echo "Erro de envio: " . $mail->ErrorInfo;
                                            } else {
                                                echo "Mensagem enviada com sucesso!";
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        // if imei
                        //final verifica geofence
                        $dataBem = null;
                        $dataCliente = null;
                        $resBem = mysql_query("select id, cliente, envia_sms, name, alerta_hodometro, alerta_hodometro_saldo from bem where imei = '{$imei}'", $cnx);
                        $dataBem = mysql_fetch_assoc($resBem);
                        $resCliente = mysql_query("select id, celular, dt_ultm_sms, envia_sms, sms_acada, hour(timediff(now(), dt_ultm_sms)) horas, minute(timediff(now(), dt_ultm_sms)) minutos, nome from cliente where id = {$dataBem['cliente']}", $cnx);
                        $dataCliente = mysql_fetch_assoc($resCliente);
                        # Write it to the database...
                        if ($gpsSignalIndicator != 'L') {
                            $movimento = '';
                            if ($speed > 0) {
                                $movimento = 'S';
                            } else {
                                $movimento = 'N';
                            }
                            $gpsLat = gprsToGps($latitudeDecimalDegrees, $latitudeHemisphere);
                            $gpsLon = gprsToGps($longitudeDecimalDegrees, $longitudeHemisphere);
                            $gpsLatAnt = 0;
                            $gpsLatHemAnt = '';
                            $gpsLonAnt = 0;
                            $gpsLonHemAnt = '';
                            $alertaACadaSaldo = 0;
                            $resLocAtual = mysql_query("select id, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere from loc_atual where imei = '{$imei}' limit 1", $cnx);
                            $numRows = mysql_num_rows($resLocAtual);
                            if ($numRows == 0) {
                                //mysql_query("insert into logs evento values ('ok') ");
                                mysql_query("INSERT INTO loc_atual (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator, converte) VALUES (now(), '{$imei}', '{$phone}', '{$satelliteFixStatus}', '{$latitudeDecimalDegrees}', '{$latitudeHemisphere}', '{$longitudeDecimalDegrees}', '{$longitudeHemisphere}', '{$speed}', '{$infotext}', '{$gpsSignalIndicator}', 1)", $cnx);
                            } else {
                                mysql_query("UPDATE loc_atual set date = now(), phone = '{$phone}', satelliteFixStatus = '{$satelliteFixStatus}', latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', speed = '{$speed}', infotext = '{$infotext}', gpsSignalIndicator = '{$gpsSignalIndicator}' where imei = '{$imei}'", $cnx);
                            }
                            $distance = 0;
                            try {
                                $bemId = $dataBem[id];
                                $countGeoDistance = mysql_query("select bem from geo_distance where bem = {$bemId}", $cnx);
                                if ($countGeoDistance === false || mysql_num_rows($countGeoDistance) == 0) {
                                    mysql_query("insert into geo_distance (bem, tipo) values({$bemId}, 'I')", $cnx);
                                    mysql_query("insert into geo_distance (bem, tipo) values({$bemId}, 'F')", $cnx);
                                }
                                /*envio de sms*/
                                if ($dataCliente['envia_sms'] == 'S' && $dataBem['envia_sms'] == 'S' && !empty($dataCliente['celular']) && !empty($dataCliente['sms_acada'])) {
                                    if (empty($dataCliente['dt_ultm_sms'])) {
                                        mysql_query("update cliente set dt_ultm_sms = convert_tz(now(), 'GMT', 'Brazil/East') where id = {$dataCliente['id']}", $cnx);
                                    } else {
                                        $horas = $dataCliente['horas'];
                                        $minutos = $dataCliente['minutos'];
                                        if (!empty($horas)) {
                                            $horas = $horas * 60;
                                        }
                                        $tempoTotal = $horas + $minutos;
                                        if ($tempoTotal > $dataCliente['sms_acada']) {
                                            $json = json_decode(file_get_contents("http://maps.google.com/maps/api/geocode/json?sensor=false&latlng={$gpsLat},{$gpsLon}&language=es-ES"));
                                            if (isset($json->status) && $json->status == 'OK' && isset($json->results[0]->formatted_address)) {
                                                $address = $json->results[0]->formatted_address;
                                                $address = utf8_decode($address);
                                                $aDataCliente = split(' ', $dataCliente['nome']);
                                                $msg = $texto_sms_localiza;
                                                $msg = str_replace("#CLIENTE", $aDataCliente[0], $msg);
                                                $msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                                                $msg = str_replace("#LOCALIZACAO", $address, $msg);
                                                $msg = str_replace(' ', '+', $msg);
                                                sendSMS($dataCliente['celular'], $msg, '');
                                                if ($retorno < 0) {
                                                    mysql_query("insert into controle(texto) values('envio de sms retorno: {$retorno}')", $cnx);
                                                } else {
                                                    mysql_query("update cliente set dt_ultm_sms = convert_tz(now(), 'GMT', 'Brazil/East') where id = {$dataCliente['id']}", $cnx);
                                                }
                                            }
                                        }
                                    }
                                }
                                if ($movimento == 'S') {
                                    $resGeoDistance = mysql_query("select parou from geo_distance where bem = {$bemId} and tipo = 'I'", $cnx);
                                    $dataGeoDistance = mysql_fetch_assoc($resGeoDistance);
                                    if ($dataGeoDistance[parou] == 'S' || empty($dataGeoDistance[parou])) {
                                        mysql_query("update geo_distance set latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', parou = 'N' where bem =  {$bemId} and tipo = 'I'", $cnx);
                                    }
                                } else {
                                    $resGeoDistance = mysql_query("select latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere from geo_distance where bem = {$bemId} and tipo = 'I'", $cnx);
                                    if (mysql_num_rows($resGeoDistance) > 0) {
                                        $update = mysql_query("update geo_distance set latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', parou = 'S' where bem =  {$bemId} and tipo = 'I'", $cnx);
                                        $dataGeoDistance = mysql_fetch_assoc($resGeoDistance);
                                        $gpsLatAnt = gprsToGps($dataGeoDistance["latitudeDecimalDegrees"], $dataGeoDistance[latitudeHemisphere]);
                                        $gpsLonAnt = gprsToGps($dataGeoDistance["longitudeDecimalDegrees"], $dataGeoDistance[longitudeHemisphere]);
                                        if ($gpsLatAnt != $gpsLat) {
                                            if ($gpsLatAnt != 0 && $gpsLonAnt != 0) {
                                                /*
                                                if(isset($json->rows[0]->elements[0]->distance)){
                                                	$strDistance = $json->rows[0]->elements[0]->distance->value;
                                                	$distance = $strDistance+0;
                                                
                                                	$alertaACada = $dataBem['alerta_hodometro'];
                                                	$alertaACadaSaldo = $dataBem['alerta_hodometro_saldo'];
                                                	$alertaACadaSaldo = ($alertaACadaSaldo*1000) - $distance;
                                                	if($alertaACadaSaldo <= 0 && $alertaACada > 0){
                                                		$msg = $texto_sms_alerta_hodometro;
                                                		$msg = str_replace("#CLIENTE", $aDataCliente[0], $msg);
                                                		$msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                                                		$msg = str_replace("#HODOMETRO", $alertaACada, $msg);
                                                		$msg = str_replace(' ', '+', $msg);
                                                		sendSMS($dataCliente['celular'], $msg, '');
                                                		$alertaACadaSaldo = $alertaACada;
                                                	}
                                                	$alertaACadaSaldo = (int)$alertaACadaSaldo/1000;
                                                }
                                                */
                                                $geoDistance = distance($gpsLatAnt, $gpsLonAnt, $gpsLat, $gpsLon);
                                                //$strDistance = $json->rows[0]->elements[0]->distance->value;
                                                //$distance = (int)($geoDistance*1000);
                                                $distance = (double) $geoDistance;
                                                $alertaACada = $dataBem['alerta_hodometro'];
                                                $alertaACadaSaldo = $dataBem['alerta_hodometro_saldo'];
                                                $alertaACadaSaldo = $alertaACadaSaldo * 1000 - $distance;
                                                if ($alertaACadaSaldo <= 0 && $alertaACada > 0) {
                                                    $msg = $texto_sms_alerta_hodometro;
                                                    $msg = str_replace("#CLIENTE", $aDataCliente[0], $msg);
                                                    $msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                                                    $msg = str_replace("#HODOMETRO", $alertaACada, $msg);
                                                    $msg = str_replace(' ', '+', $msg);
                                                    //sendSMS($dataCliente['celular'], $msg, '');
                                                    $alertaACadaSaldo = $alertaACada;
                                                }
                                                $alertaACadaSaldo = (int) $alertaACadaSaldo / 1000;
                                            }
                                        }
                                    }
                                }
                            } catch (Exception $e) {
                                mysql_query("INSERT INTO controle (texto) VALUES ({$e->getMessage}())", $cnx);
                            }
                            mysql_query("INSERT INTO gprmc (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator, km_rodado, address, converte) VALUES (now(), '{$imei}', '{$phone}', '{$satelliteFixStatus}', '{$latitudeDecimalDegrees}', '{$latitudeHemisphere}', '{$longitudeDecimalDegrees}', '{$longitudeHemisphere}', '{$speed}', '{$infotext}', '{$gpsSignalIndicator}', {$distance}, '{$address}', 1)", $cnx);
                            // Otavio Gomes - 15012015 1427 - So atualizar o hodometro se a distancia for maior que 10m
                            if ($alertaACadaSaldo == 0) {
                                mysql_query("UPDATE bem set date = now(), status_sinal = 'R', movimento = '{$movimento}', hodometro = hodometro+{$distance} WHERE imei = '{$imei}'", $cnx);
                            } else {
                                mysql_query("UPDATE bem set date = now(), status_sinal = 'R', movimento = '{$movimento}', hodometro = hodometro+{$distance}, alerta_hodometro_saldo = {$alertaACadaSaldo} WHERE imei = '{$imei}'", $cnx);
                            }
                            /*
                            if($numRows == 0){
                            	mysql_query("INSERT INTO loc_atual (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator) VALUES (now(), '$imei', '$phone', '$satelliteFixStatus', '$latitudeDecimalDegrees', '$latitudeHemisphere', '$longitudeDecimalDegrees', '$longitudeHemisphere', '$speed', '$infotext', '$gpsSignalIndicator')", $cnx);
                            } else {
                            	mysql_query("UPDATE loc_atual set date = now(), phone = '$phone', satelliteFixStatus = '$satelliteFixStatus', latitudeDecimalDegrees = '$latitudeDecimalDegrees', latitudeHemisphere = '$latitudeHemisphere', longitudeDecimalDegrees = '$longitudeDecimalDegrees', longitudeHemisphere = '$longitudeHemisphere', speed = '$speed', infotext = '$infotext', gpsSignalIndicator = '$gpsSignalIndicator' where imei = '$imei'", $cnx);
                            }
                            */
                        } else {
                            mysql_query("UPDATE bem set date = now(), status_sinal = 'S' WHERE imei = '{$imei}'", $cnx);
                        }
                        # Now check to see if we need to send any alerts.
                        if ($infotext != "tracker") {
                            $msg = $texto_sms_alerta;
                            $msg = str_replace("#CLIENTE", $aDataCliente[0], $msg);
                            $msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                            $res = mysql_query("SELECT responsible FROM bem WHERE imei='{$imei}'", $cnx);
                            while ($data = mysql_fetch_assoc($res)) {
                                switch ($infotext) {
                                    case "dt":
                                        $body = "Disable Track OK";
                                        $msg = str_replace("#TIPOALERTA", "Rastreador Desabilitado", $msg);
                                        break;
                                    case "et":
                                        $body = "Stop Alarm OK";
                                        $msg = str_replace("#TIPOALERTA", "Alarme parado", $msg);
                                        break;
                                    case "gt":
                                        $body = "Move Alarm set OK";
                                        $msg = str_replace("#TIPOALERTA", "Alarme de Movimento ativado", $msg);
                                        break;
                                    case "help me":
                                        $body = "Help!";
                                        mysql_query("INSERT INTO message (imei, message) VALUES ('\${$conn_imei}', 'SOS!')", $cnx);
                                        $msg = str_replace("#TIPOALERTA", "SOS", $msg);
                                        //Envia comando de resposta: alerta recebido
                                        $send_cmd = "**,imei:" . $conn_imei . ",E";
                                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                        //printLog($fh, "Comando de resposta (help me): " . $send_cmd . " imei: " . $conn_imei);
                                        break;
                                    case "ht":
                                        $body = "Speed alarm set OK";
                                        $msg = str_replace("#TIPOALERTA", "Alarme de velocidade ativado", $msg);
                                        break;
                                    case "it":
                                        $body = "Timezone set OK";
                                        break;
                                    case "low battery":
                                        $body = "Low battery!\nYou have about 2 minutes...";
                                        $msg = str_replace("#TIPOALERTA", "Bateria fraca, voce tem 2 minutos", $msg);
                                        mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Bat. Fraca')", $cnx);
                                        //Envia comando de resposta: alerta recebido
                                        $send_cmd = "**,imei:" . $conn_imei . ",E";
                                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                        //printLog($fh, "Comando de resposta (low battery): " . $send_cmd . " imei: " . $conn_imei);
                                        break;
                                    case "move":
                                        $body = "Move Alarm!";
                                        $msg = str_replace("#TIPOALERTA", "Seu veiculo esta em movimento", $msg);
                                        mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Movimento')", $cnx);
                                        //Envia comando de resposta: alerta recebido
                                        $send_cmd = "**,imei:" . $conn_imei . ",E";
                                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                        //printLog($fh, "Comando de resposta (move): " . $send_cmd . " imei: " . $conn_imei);
                                        break;
                                    case "nt":
                                        $body = "Returned to SMS mode OK";
                                        break;
                                    case "speed":
                                        $body = "Speed alarm!";
                                        $msg = str_replace("#TIPOALERTA", "Seu veiculo ultrapassou o limite de velocidade", $msg);
                                        mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Velocidade')", $cnx);
                                        //Envia comando de resposta: alerta recebido
                                        $send_cmd = "**,imei:" . $conn_imei . ",E";
                                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                        //printLog($fh, "Comando de resposta (speed): " . $send_cmd . " imei: " . $conn_imei);
                                        break;
                                    case "stockade":
                                        $body = "Geofence Violation!";
                                        $msg = str_replace("#TIPOALERTA", "Seu veiculo saiu da cerca virtual", $msg);
                                        mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Cerca')", $cnx);
                                        //Envia comando de resposta: alerta recebido
                                        $send_cmd = "**,imei:" . $conn_imei . ",E";
                                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                        //printLog($fh, "Comando de resposta (stockade): " . $send_cmd . " imei: " . $conn_imei);
                                        break;
                                    case "door alarm":
                                        $body = "Open door!";
                                        mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Porta')", $cnx);
                                        //Envia comando de resposta: alerta recebido
                                        $send_cmd = "**,imei:" . $conn_imei . ",E";
                                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                        //printLog($fh, "Comando de resposta (door alarm): " . $send_cmd . " imei: " . $conn_imei);
                                        break;
                                    case "acc alarm":
                                        $body = "ACC alarm!";
                                        $msg = str_replace("#TIPOALERTA", "Seu veiculo esta com a chave ligada", $msg);
                                        mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Ignição')", $cnx);
                                        //Envia comando de resposta: alerta recebido
                                        $send_cmd = "**,imei:" . $conn_imei . ",E";
                                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                        //printLog($fh, "Comando de resposta (acc alarm): " . $send_cmd . " imei: " . $conn_imei);
                                        break;
                                    case "acc off":
                                        $body = "Ignicao Desligada!";
                                        $msg = str_replace("#TIPOALERTA", "Seu veiculo esta com a chave desligada", $msg);
                                        //mysql_query("INSERT INTO message (imei, message) VALUES ('$imei', 'Ignição')", $cnx);
                                        mysql_query("UPDATE bem SET ligado = 'N' where imei = '{$imei}'", $cnx);
                                        //Envia comando de resposta: alerta recebido
                                        $send_cmd = "**,imei:" . $conn_imei . ",E";
                                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                        //printLog($fh, "Comando de resposta (acc alarm): " . $send_cmd . " imei: " . $conn_imei);
                                        break;
                                    case "acc on":
                                        $body = "Ignicao Ligada!";
                                        $msg = str_replace("#TIPOALERTA", "Seu veiculo esta com a chave ligada", $msg);
                                        //mysql_query("INSERT INTO message (imei, message) VALUES ('$imei', 'Ignição')", $cnx);
                                        mysql_query("UPDATE bem SET ligado = 'S' where imei = '{$imei}'", $cnx);
                                        //Envia comando de resposta: alerta recebido
                                        $send_cmd = "**,imei:" . $conn_imei . ",E";
                                        socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                                        //printLog($fh, "Comando de resposta (acc alarm): " . $send_cmd . " imei: " . $conn_imei);
                                        break;
                                }
                                //switch
                                $msg = str_replace(' ', '+', $msg);
                                //if($dataCliente['envia_sms'] == 'S' && $dataBem['envia_sms'] == 'S' && $infotext != 'acc on'&& $infotext != 'acc off' && $infotext != 'et')
                                //	sendSMS($dataCliente['celular'], $msg, '');
                                //Enviando e-mail de alerta
                                $headers = "From: {$email_from}" . "\r\n" . "Reply-To: {$email_from}" . "\r\n";
                                $resBem = mysql_query("\r\n\t\t\t\t\t\t\t\t\t\tSELECT id, cliente, envia_sms, name, hodometro, alerta_hodometro, alerta_hodometro_saldo,\r\n\t\t\t\t\t\t\t\t\t\t\t   limite_velocidade\r\n\t\t\t\t\t\t\t\t\t      FROM bem\r\n\t\t\t\t\t\t\t\t\t\t WHERE imei = '{$imei}'", $cnx);
                                printLog($fh, $resBem);
                                $dataBem = mysql_fetch_assoc($resBem);
                                if ($resBem !== false) {
                                    $resCliente = mysql_query("SELECT id, celular, dt_ultm_sms, envia_sms, sms_acada, hour(TIMEDIFF(now(), dt_ultm_sms)) horas, minute(TIMEDIFF(now(), dt_ultm_sms)) minutos, nome, email FROM cliente WHERE id = " . $dataBem['cliente'], $cnx);
                                    if ($resCliente !== false) {
                                        $dataCliente = mysql_fetch_assoc($resCliente);
                                    }
                                }
                                $emailDestino = $dataCliente['email'];
                                enviaEmail($emailDestino, "[Te Localizei] Alerta", $body);
                            }
                            //while
                        }
                        mysql_close($cnx);
                    } else {
                        /* If we got here, we got an imei ONLY - not even 'imei:' first
                        			This seems to be some sort of 'keepalive' packet
                        			The TK-201 is not stateless like the TK-102, it
                        			needs to retain a session.  Basically, we just reply with 'ON'
                        			anything else seems to cause the device to reset the connection.
                        		 */
                        @socket_send($socket, "ON", 2, 0);
                        printLog($fh, date("d-m-y h:i:sa") . " Sent: ON");
                    }
                } else {
                    /*Here is where we land on the first iteration of the loop
                    		on a new connection. We get from the gps: ##,imei:<IMEI>,A;
                    		It seems the correct reply is 'LOAD' so that's what we send.
                    	  */
                    $init = $parts[0];
                    $conn_imei = substr($parts[1], 5);
                    $cmd = $parts[2];
                    if ($cmd = "A") {
                        @socket_send($socket, "LOAD", 4, 0);
                        // Abrindo arquivo de log do imei
                        abrirArquivoLog($conn_imei);
                        printLog($fh, date("d-m-y h:i:sa") . " Connection from {$remip}:{$remport}");
                        printLog($fh, date("d-m-y h:i:sa") . " Got : {$rec}");
                        printLog($fh, date("d-m-y h:i:sa") . " Sent: LOAD");
                    }
                }
            } else {
                /* M�DULO GPRMC */
                if (strpos($rec, "GPRMC") > -1) {
                    $isGPRMC = true;
                }
                $loopcount = 0;
                //printLog($fh, date("d-m-y h:i:sa") . " Got : $rec");
                $parts = explode(',', $rec);
                $cnx = mysql_connect("cloudservice.cgejdsdl842e.sa-east-1.rds.amazonaws.com", "gpstracker", "d1\$1793689");
                /*
                Array
                (
                	[0] => 0908242216
                	[1] => 0033663282263
                	[2] => GPRMC
                	[3] => 212442.000
                	[4] => A
                	[5] => 4849.0475
                	[6] => N
                	[7] => 00219.4763
                	[8] => E
                	[9] => 2.29
                	[10] =>
                	[11] => 220809
                	[12] =>
                	[13] =>
                	[14] => A*70
                	[15] => L
                	[16] => imei:359587017313647
                	[17] => 101Q
                	[18] =>
                
                )
                */
                if (count($parts) > 1) {
                    $trackerdate = mysql_real_escape_string($parts[0]);
                    $phone = mysql_real_escape_string($parts[1]);
                    $gprmc = mysql_real_escape_string($parts[2]);
                    $satelliteDerivedTime = mysql_real_escape_string($parts[3]);
                    $satelliteFixStatus = mysql_real_escape_string($parts[4]);
                    $latitudeDecimalDegrees = mysql_real_escape_string($parts[5]);
                    $latitudeHemisphere = mysql_real_escape_string($parts[6]);
                    $longitudeDecimalDegrees = mysql_real_escape_string($parts[7]);
                    $longitudeHemisphere = mysql_real_escape_string($parts[8]);
                    $speed = mysql_real_escape_string($parts[9]);
                    $bearing = mysql_real_escape_string($parts[10]);
                    $utcDate = mysql_real_escape_string($parts[11]);
                    // = $parts[12];
                    // = $parts[13];
                    $checksum = mysql_real_escape_string($parts[14]);
                    $gpsSignalIndicator = mysql_real_escape_string($parts[15]);
                    if (preg_match("/imei/", $parts[16])) {
                        $infotext = "gprmc";
                        //Nenhum comando enviado pelo gps
                        $imei = mysql_real_escape_string($parts[16]);
                        $other = mysql_real_escape_string($parts[17]);
                    } else {
                        $infotext = mysql_real_escape_string($parts[16]);
                        $imei = mysql_real_escape_string($parts[17]);
                        $other = mysql_real_escape_string($parts[18] . ' ' . $parts[19]);
                    }
                    if ($infotext == "") {
                        $infotext = "gprmc";
                    }
                    if (preg_match("/:/", substr($imei, 5))) {
                        $imei = substr($imei, 6);
                    } else {
                        $imei = substr($imei, 5);
                    }
                    /*
                    $imei = split(':', trim($imei));
                    if(count($imei) > 1){
                    	$imei = $imei[1];
                    }
                    */
                    $conn_imei = $imei;
                    abrirArquivoLog($conn_imei);
                    printLog($fh, date("d-m-y h:i:sa") . " Connection from {$remip}:{$remport}");
                    printLog($fh, date("d-m-y h:i:sa") . " Got : {$rec}");
                    //inicio verifica geofence
                    mysql_select_db('tracker', $cnx);
                    if ($imei != "") {
                        $consulta = mysql_query("SELECT * FROM geo_fence WHERE imei = '{$imei}'", $cnx);
                        while ($data = mysql_fetch_assoc($consulta)) {
                            $idCerca = $data['id'];
                            $imeiCerca = $data['imei'];
                            $nomeCerca = $data['nome'];
                            $coordenadasCerca = $data['coordenadas'];
                            $resultCerca = $data['tipo'];
                            $tipoEnvio = $data['tipoEnvio'];
                            strlen($latitudeDecimalDegrees) == 9 && ($latitudeDecimalDegrees = '0' . $latitudeDecimalDegrees);
                            $g = substr($latitudeDecimalDegrees, 0, 3);
                            $d = substr($latitudeDecimalDegrees, 3);
                            $strLatitudeDecimalDegrees = $g + $d / 60;
                            $latitudeHemisphere == "S" && ($strLatitudeDecimalDegrees = $strLatitudeDecimalDegrees * -1);
                            strlen($longitudeDecimalDegrees) == 9 && ($longitudeDecimalDegrees = '0' . $longitudeDecimalDegrees);
                            $g = substr($longitudeDecimalDegrees, 0, 3);
                            $d = substr($longitudeDecimalDegrees, 3);
                            $strLongitudeDecimalDegrees = $g + $d / 60;
                            $longitudeHemisphere == "S" && ($strLongitudeDecimalDegrees = $strLongitudeDecimalDegrees * -1);
                            $strLongitudeDecimalDegrees = $strLongitudeDecimalDegrees * -1;
                            $lat_point = $strLatitudeDecimalDegrees;
                            $lng_point = $strLongitudeDecimalDegrees;
                            $exp = explode("|", $coordenadasCerca);
                            if (count($exp) < 5) {
                                $strExp = explode(",", $exp[0]);
                                $strExp1 = explode(",", $exp[2]);
                            } else {
                                $int = count($exp) / 2;
                                $strExp = explode(",", $exp[0]);
                                $strExp1 = explode(",", $exp[$int]);
                            }
                            $lat_vertice_1 = $strExp[0];
                            $lng_vertice_1 = $strExp[1];
                            $lat_vertice_2 = $strExp1[0];
                            $lng_vertice_2 = $strExp1[1];
                            if ($lat_vertice_1 < $lat_point or $lat_point < $lat_vertice_2 and $lng_point < $lng_vertice_1 or $lng_vertice_2 < $lng_point) {
                                $result = '0';
                                $situacao = 'fora';
                            } else {
                                $result = '1';
                                $situacao = 'dentro';
                            }
                            if ($result != $resultCerca and round($speed * 1.852, 0) > 0) {
                                mysql_query("INSERT INTO message (imei, message) VALUES ('{$imeiCerca}', 'Cerca " . $nomeCerca . " Violada!')", $cnx);
                                if ($tipoEnvio == 0) {
                                    # Convert the GPS coordinates to a human readable address
                                    $tempstr = "http://maps.google.com/maps/geo?q={$lat_point},{$lng_point}&oe=utf-8&sensor=false&key=AIzaSyAHtRwtz8ReaYTsyPOD83ojXSgcGw-koe0";
                                    //output = csv, xml, kml, json
                                    $rev_geo_str = file_get_contents($tempstr);
                                    $rev_geo_str = preg_replace("/\"/", "", $rev_geo_str);
                                    $rev_geo = explode(',', $rev_geo_str);
                                    $logradouro = $rev_geo[2] . "," . $rev_geo[3];
                                    require "lib/class.phpmailer.php";
                                    include "/var/www/config.php";
                                    $consulta1 = mysql_query("SELECT a.*, b.* FROM cliente a INNER JOIN bem b ON (a.id = b.cliente) WHERE b.imei = '{$imeiCerca}'", $cnx);
                                    while ($data = mysql_fetch_assoc($consulta1)) {
                                        $emailDestino = $data['email'];
                                        $nameBem = $data['name'];
                                        $mensagem = "O veiculo " . $nameBem . ", esta " . $situacao . " do perimetro " . $nomeCerca . ", as " . date("H:i:s") . " do dia " . date("d/m/Y") . ", no local " . $logradouro . " e trafegando a " . round($speed * 1.852, 0) . " km/h.";
                                        $msg = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">";
                                        $msg .= "<html>";
                                        $msg .= "<head></head>";
                                        $msg .= "<body style=\"background-color:#fff;\" >";
                                        $msg .= "<p><strong>Alerta de Violacao de Perimetro:</strong><br /><br />";
                                        $msg .= $mensagem . "<br /><br />";
                                        $msg .= "Equipe BarukSat<br />";
                                        $msg .= "(85)88462069<br />";
                                        $msg .= "<a href=\"http://www.systemtracker.com.br\">www.systemtracker.com.br</a></p>";
                                        $msg .= "</body>";
                                        $msg .= "</html>";
                                        $mail = new PHPMailer();
                                        $mail->Mailer = "smtp";
                                        $mail->IsHTML(true);
                                        $mail->CharSet = "utf-8";
                                        $mail->SMTPSecure = "ssl";
                                        $mail->Host = HOST_SMTP;
                                        $mail->Port = "465";
                                        $mail->SMTPAuth = AUTENT_SMTP;
                                        $mail->Username = USER_SMTP;
                                        $mail->Password = SENHA_SMTP;
                                        $mail->From = "*****@*****.**";
                                        $mail->FromName = "TELOCALIZEI - RASTREAMENTO ONLINE";
                                        $mail->AddAddress($emailDestino);
                                        $mail->AddReplyTo($mail->From, $mail->FromName);
                                        $mail->Subject = "TELOCALIZEI - Alerta de Violacao de Perimetro";
                                        $mail->Body = $msg;
                                        if (!$mail->Send()) {
                                            echo "Erro de envio: " . $mail->ErrorInfo;
                                        } else {
                                            echo "Mensagem enviada com sucesso!";
                                        }
                                    }
                                }
                            }
                        }
                    }
                    // if imei
                    //final verifica geofence
                    if ($gpsSignalIndicator != 'L') {
                        $movimento = '';
                        if ($speed > 0) {
                            $movimento = 'S';
                        } else {
                            $movimento = 'N';
                        }
                        $gpsLat = gprsToGps($latitudeDecimalDegrees, $latitudeHemisphere);
                        $gpsLon = gprsToGps($longitudeDecimalDegrees, $longitudeHemisphere);
                        $gpsLatAnt = 0;
                        $gpsLatHemAnt = '';
                        $gpsLonAnt = 0;
                        $gpsLonHemAnt = '';
                        $resLocAtual = mysql_query("select id from loc_atual where imei = '{$imei}' limit 1", $cnx);
                        $numRows = mysql_num_rows($resLocAtual);
                        if ($numRows == 0) {
                            mysql_query("INSERT INTO loc_atual (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator, converte) VALUES (now(), '{$imei}', '{$phone}', '{$satelliteFixStatus}', '{$latitudeDecimalDegrees}', '{$latitudeHemisphere}', '{$longitudeDecimalDegrees}', '{$longitudeHemisphere}', '{$speed}', '{$infotext}', '{$gpsSignalIndicator}', 1)", $cnx);
                        } else {
                            $dataLocAtual = mysql_fetch_assoc($resLocAtual);
                            $gpsLatAnt = $dataLocAtual[latitudeDecimalDegrees];
                            $gpsLatHemAnt = $dataLocAtual[latitudeHemisphere];
                            $gpsLonAnt = $dataLocAtual[longitudeDecimalDegrees];
                            $gpsLonHemAnt = $dataLocAtual[longitudeHemisphere];
                            mysql_query("UPDATE loc_atual set date = now(), phone = '{$phone}', satelliteFixStatus = '{$satelliteFixStatus}', latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', speed = '{$speed}', infotext = '{$infotext}', gpsSignalIndicator = '{$gpsSignalIndicator}' where imei = '{$imei}'", $cnx);
                        }
                        $distance = 0;
                        try {
                            $bemId = $dataBem[id];
                            $countGeoDistance = mysql_query("select bem from geo_distance where bem = {$bemId}", $cnx);
                            if ($countGeoDistance === false || mysql_num_rows($countGeoDistance) == 0) {
                                mysql_query("insert into geo_distance (bem, tipo) values({$bemId}, 'I')", $cnx);
                                mysql_query("insert into geo_distance (bem, tipo) values({$bemId}, 'F')", $cnx);
                            }
                            /*envio de sms*/
                            if ($dataCliente['envia_sms'] == 'S' && $dataBem['envia_sms'] == 'S' && !empty($dataCliente['celular']) && !empty($dataCliente['sms_acada'])) {
                                if (empty($dataCliente['dt_ultm_sms'])) {
                                    mysql_query("update cliente set dt_ultm_sms = convert_tz(now(), 'GMT', 'Brazil/East') where id = {$dataCliente['id']}", $cnx);
                                } else {
                                    $horas = $dataCliente['horas'];
                                    $minutos = $dataCliente['minutos'];
                                    if (!empty($horas)) {
                                        $horas = $horas * 60;
                                    }
                                    $tempoTotal = $horas + $minutos;
                                    if ($tempoTotal > $dataCliente['sms_acada']) {
                                        $json = json_decode(file_get_contents("http://maps.google.com/maps/api/geocode/json?sensor=false&latlng={$gpsLat},{$gpsLon}&language=es-ES"));
                                        if (isset($json->status) && $json->status == 'OK' && isset($json->results[0]->formatted_address)) {
                                            $address = $json->results[0]->formatted_address;
                                            $address = utf8_decode($address);
                                            $aDataCliente = split(' ', $dataCliente['nome']);
                                            $msg = $texto_sms_localiza;
                                            $msg = str_replace("#CLIENTE", $aDataCliente[0], $msg);
                                            $msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                                            $msg = str_replace("#LOCALIZACAO", $address, $msg);
                                            $msg = str_replace(' ', '+', $msg);
                                            sendSMS($dataCliente['celular'], $msg, '');
                                            if ($retorno < 0) {
                                                mysql_query("insert into controle(texto) values('envio de sms retorno: {$retorno}')", $cnx);
                                            } else {
                                                mysql_query("update cliente set dt_ultm_sms = convert_tz(now(), 'GMT', 'Brazil/East') where id = {$dataCliente['id']}", $cnx);
                                            }
                                        }
                                    }
                                }
                            }
                            if ($movimento == 'S') {
                                $resGeoDistance = mysql_query("select parou from geo_distance where bem = {$bemId} and tipo = 'I'", $cnx);
                                $dataGeoDistance = mysql_fetch_assoc($resGeoDistance);
                                if ($dataGeoDistance[parou] == 'S' || empty($dataGeoDistance[parou])) {
                                    mysql_query("update geo_distance set latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', parou = 'N' where bem =  {$bemId} and tipo = 'I'", $cnx);
                                }
                            } else {
                                $resGeoDistance = mysql_query("select latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere from geo_distance where bem = {$bemId} and tipo = 'I'", $cnx);
                                if (mysql_num_rows($resGeoDistance) > 0) {
                                    $update = mysql_query("update geo_distance set latitudeDecimalDegrees = '{$latitudeDecimalDegrees}', latitudeHemisphere = '{$latitudeHemisphere}', longitudeDecimalDegrees = '{$longitudeDecimalDegrees}', longitudeHemisphere = '{$longitudeHemisphere}', parou = 'S' where bem =  {$bemId} and tipo = 'I'", $cnx);
                                    $dataGeoDistance = mysql_fetch_assoc($resGeoDistance);
                                    $gpsLatAnt = gprsToGps($dataGeoDistance[latitudeDecimalDegrees], $dataGeoDistance[latitudeHemisphere]);
                                    $gpsLonAnt = gprsToGps($dataGeoDistance[longitudeDecimalDegrees], $dataGeoDistance[longitudeHemisphere]);
                                    if ($gpsLatAnt != $gpsLat) {
                                        if ($gpsLatAnt != 0 && $gpsLonAnt != 0) {
                                            /*
                                            $json = json_decode(file_get_contents('http://dev.virtualearth.net/REST/V1/Routes/Driving?o=xml&wp.0=$gpsLatAnt,$gpsLonAnt&wp.1=$gpsLat,$gpsLon&avoid=minimizeTolls&key=AqMJv19uaRKDbu-wSgUt3paCfXETZjBafVBMDXX9Rc4XyqmM6l4R_A8TgEXuWT6G'));
                                            if(isset($json->rows[0]->elements[0]->distance)){
                                            }
                                            */
                                            /*
                                            $json = json_decode(file_get_contents("http://maps.googleapis.com/maps/api/distancematrix/json?sensor=false&origins=$gpsLatAnt,$gpsLonAnt&destinations=$gpsLat,$gpsLon"));
                                            if(isset($json->rows[0]->elements[0]->distance)){
                                            	$strDistance = $json->rows[0]->elements[0]->distance->value;
                                            	$distance = $strDistance+0;
                                            
                                            	$alertaACada = $dataBem['alerta_hodometro'];
                                            	$alertaACadaSaldo = $dataBem['alerta_hodometro_saldo'];
                                            	$alertaACadaSaldo = ($alertaACadaSaldo*1000) - $distance;
                                            	if($alertaACadaSaldo <= 0 && $alertaACada > 0){
                                            		$msg = $texto_sms_alerta_hodometro;
                                            		$msg = str_replace("#CLIENTE", $aDataCliente[0], $msg);
                                            		$msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                                            		$msg = str_replace("#HODOMETRO", $alertaACada, $msg);
                                            		$msg = str_replace(' ', '+', $msg);
                                            		sendSMS($dataCliente['celular'], $msg, '');
                                            		$alertaACadaSaldo = $alertaACada;
                                            	}
                                            	$alertaACadaSaldo = (int)$alertaACadaSaldo/1000;
                                            }
                                            */
                                            $geoDistance = distance($gpsLatAnt, $gpsLonAnt, $gpsLat, $gpsLon, 'K');
                                            //$strDistance = $json->rows[0]->elements[0]->distance->value;
                                            $distance = (int) ($geoDistance * 1000);
                                            $alertaACada = $dataBem['alerta_hodometro'];
                                            $alertaACadaSaldo = $dataBem['alerta_hodometro_saldo'];
                                            $alertaACadaSaldo = $alertaACadaSaldo * 1000 - $distance;
                                            if ($alertaACadaSaldo <= 0 && $alertaACada > 0) {
                                                $msg = $texto_sms_alerta_hodometro;
                                                $msg = str_replace("#CLIENTE", $aDataCliente[0], $msg);
                                                $msg = str_replace("#VEICULO", $dataBem['name'], $msg);
                                                $msg = str_replace("#HODOMETRO", $alertaACada, $msg);
                                                $msg = str_replace(' ', '+', $msg);
                                                //sendSMS($dataCliente['celular'], $msg, '');
                                                $alertaACadaSaldo = $alertaACada;
                                            }
                                            $alertaACadaSaldo = (int) $alertaACadaSaldo / 1000;
                                        }
                                    }
                                }
                            }
                        } catch (Exception $e) {
                            mysql_query("INSERT INTO controle (texto) VALUES ({$e->getMessage}())", $cnx);
                        }
                        mysql_query("UPDATE bem set date = date, status_sinal = 'R', movimento = '{$movimento}', hodometro=hodometro+{$distance} WHERE imei = '{$imei}'", $cnx);
                        mysql_query("INSERT INTO gprmc (date, imei, phone, satelliteFixStatus, latitudeDecimalDegrees, latitudeHemisphere, longitudeDecimalDegrees, longitudeHemisphere, speed, infotext, gpsSignalIndicator, km_rodado, converte) VALUES (now(), '{$imei}', '{$phone}', '{$satelliteFixStatus}', '{$latitudeDecimalDegrees}', '{$latitudeHemisphere}', '{$longitudeDecimalDegrees}', '{$longitudeHemisphere}', '{$speed}', '{$infotext}', '{$gpsSignalIndicator}', {$distance}, 1)", $cnx);
                    } else {
                        mysql_query("UPDATE bem set date = date, status_sinal = 'S' WHERE imei = '{$imei}'", $cnx);
                    }
                    # Now check to see if we need to send any alerts.
                    if (trim($infotext) != "gprmc") {
                        $res = mysql_query("SELECT responsible FROM bem WHERE imei='{$imei}'", $cnx);
                        while ($data = mysql_fetch_assoc($res)) {
                            switch ($infotext) {
                                case "dt":
                                    $body = "Alerta de rastreador desligado.";
                                    break;
                                case "et":
                                    $body = "Alerta de parada.";
                                    break;
                                case "gt":
                                    $body = "Alerta de movimento.";
                                    break;
                                case "help me":
                                    $body = "SOS!";
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'SOS!')", $cnx);
                                    break;
                                case "ht":
                                    $body = "Alerta de velocidade";
                                    break;
                                case "it":
                                    $body = "Timezone configurado";
                                    break;
                                case "low battery":
                                    $body = "Bateria baixa\nResta cerca de 2 minutos...";
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Bat. Fraca')", $cnx);
                                    break;
                                case " bat:":
                                    $body = "Bateria baixa\nResta cerca de 2 minutos...";
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Bat. Fraca')", $cnx);
                                    break;
                                case "Low batt":
                                    $body = "Bateria baixa\nResta cerca de 2 minutos...";
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Bat. Fraca')", $cnx);
                                    break;
                                case "move":
                                    $body = "Alerta de movimento!";
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Movimento')", $cnx);
                                    break;
                                case "nt":
                                    $body = "Voltou ao modo SMS";
                                    break;
                                case "speed":
                                    $body = "Alarme de velocidade";
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Velocidade')", $cnx);
                                    break;
                                case "stockade":
                                    $body = "Alerta de cerca violada";
                                    mysql_query("INSERT INTO message (imei, message) VALUES ('{$imei}', 'Cerca')", $cnx);
                                    break;
                            }
                            //switch
                            //Enviando e-mail de alerta
                            $headers = "From: {$email_from}" . "\r\n" . "Reply-To: {$email_from}" . "\r\n";
                            $resBem = mysql_query("SELECT id, cliente, envia_sms, name, hodometro, alerta_hodometro, alerta_hodometro_saldo, limite_velocidade FROM bem WHERE imei = '{$imei}'", $con);
                            $dataBem = mysql_fetch_assoc($resBem);
                            if ($resBem !== false) {
                                $resCliente = mysql_query("SELECT id, celular, dt_ultm_sms, envia_sms, sms_acada, hour(TIMEDIFF(now(), dt_ultm_sms)) horas, minute(TIMEDIFF(now(), dt_ultm_sms)) minutos, nome, email FROM cliente WHERE id = " . $dataBem['cliente'], $con);
                                if ($resCliente !== false) {
                                    $dataCliente = mysql_fetch_assoc($resCliente);
                                }
                            }
                            $msg = $body;
                            $emailDestino = $dataCliente['email'];
                            enviaEmail($emailDestino, "[Te Localizei] Alerta", $body);
                        }
                        //while
                    }
                } else {
                    //GRPMC nao precisa reter a sessao
                }
                //No protocolo GPRMC cada nova conex�o � um IP. Enviando comando no fim da conexao, ap�s obter os dados.
                if (file_exists("{$command_path}/{$conn_imei}")) {
                    $send_cmd = file_get_contents("{$command_path}/{$conn_imei}");
                    socket_send($socket, $send_cmd, strlen($send_cmd), 0);
                    mysql_query("DELETE FROM command WHERE imei = {$conn_imei}");
                    unlink("{$command_path}/{$conn_imei}");
                    printLog($fh, "Comandos do Banco e Arquivo apagados: " . $send_cmd . " imei: " . $conn_imei);
                }
                mysql_close($cnx);
                break;
            }
        }
        //Checando se utilizou os dois protocolos para uma escuta
        if ($isGIMEI == true and $isGPRMC == true) {
            //printLog($fh, "ATENCAO: falha na obtencao do protocolo. Kill pid.");
        }
        $rec = "";
    }
    //while
}
Beispiel #11
0
function emailSenha($nome, $email, $senha)
{
    $message = "<div style=\"" . $GLOBALS['style'] . "\">Olá " . $nome . ", <br><br>";
    $message .= "Sua senha de acesso ao SIGA é: <b> " . $senha . "</b>.<br><br>";
    $message .= "<b>" . $GLOBALS['nome_from'] . "</b>" . $GLOBALS['nome_signature'];
    $message .= "</div>";
    $subject = "SIGA - REENVIO DE SENHA";
    $email_from = '';
    return enviaEmail($email, $subject, $message, $email_from, '', '');
}
        $wpdb->delete('sp_emails_informativo', array('id' => $idEmailInformativo));
    }
    // Registro o email para o qual deve ser encaminhado o informativo
    $wpdb->insert('sp_emails_informativo', array('nome' => $nome, 'email' => $email, 'ip' => retornaIpCliente()));
    //Se a inclusão foi com sucesso, associamos os projetos selecionados
    if (isset($wpdb->insert_id)) {
        $idEmailInformativo = $wpdb->insert_id;
        $erro = false;
        //Para cada projeto selecionado faço a associação com o email
        foreach ($aryProjetos as $idProjeto) {
            $wpdb->insert('sp_projetos_emails_informativo', array('idProjeto' => $idProjeto, 'idEmailInformativo' => $idEmailInformativo));
            if (!$wpdb->insert_id) {
                $erro = true;
                break;
            }
        }
        if (!$erro) {
            $retorno = array('success' => true, 'mensagem' => utf8_encode('E-mail cadastrado com sucesso'));
            $destino = '*****@*****.**';
            $assunto = 'Teste e-mail wordpress';
            $mensagem = '<strong>Testando o envio de emails pelo wordpress</strong>';
            /* necessário para utilizar emails com cópia */
            $multiplos_destinos = array('*****@*****.**', '*****@*****.**');
            $arr = enviaEmail($multiplos_destinos, $assunto, $mensagem);
            //$arr = enviaEmail($destino, $assunto, $mensagem);
        } else {
            $retorno = array('success' => false, 'mensagem' => utf8_encode('Erro ao efetuar o cadastrado do e-mail'));
        }
        echo json_encode($retorno);
    }
}
         $queryListaCasamentoEndereco .= "UPDATE e_LISTA_CASAMENTO_ENDERECO\r\n\t\t\t\t\t\t\t\t\t\t\t        SET \r\n\t\t\t\t\t\t\t\t\t\t\t           NOME_CONTATO = " . sqlvalue($value['nome'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,DATA_EVENTO = " . sqlvalue($value['data'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,HORA_EVENTO = " . sqlvalue($value['hora'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,LOCAL_EVENTO = " . sqlvalue($value['local'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,ENDERECO = " . sqlvalue($value['rua'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,NUMERO = " . sqlvalue($value['numero'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,COMPLEMENTO = " . sqlvalue($value['complemento'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,BAIRRO = " . sqlvalue($value['bairro'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,MUNICIPIO = " . sqlvalue($value['cidade'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,CEP_ID_CEP = " . sqlvalue($value['cep'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,ESTADO = " . sqlvalue($value['estado'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,REFERENCIA = " . sqlvalue($value['referencia'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,TELEFONE_PRINCIPAL = " . sqlvalue($value['foneDados1'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,CELULAR = " . sqlvalue($value['foneDados3'], true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t           ,DATA_UPDATE = now()\r\n\t\t\t\t\t\t\t\t\t\t\t           ,USUARIO_UPDATE = 'actions/lista-casamento.php'\r\n\t\t\t\t\t\t\t\t\t\t\t    WHERE TIPO_ENDERECO = " . sqlvalue($key, true) . "\r\n\t\t\t\t\t\t\t\t\t\t\t    AND LICA_ID_LISTA_CASAMENTO = " . $idListaCasamento . ";\r\n\t\t\t\t\t\t\t\t\t\t\t    ";
     }
     $queryListaCasamentoEndereco .= "SELECT @@ROWCOUNT NRO_LINHAS";
     $result = $mysqli->ConsultarSQL($queryListaCasamentoEndereco);
     $nroLinhas = $result[0]['NRO_LINHAS'];
     if ($nroLinhas > 0) {
         $retorno = '{"retorno": "sucesso", "atualiza": "S"}';
     } else {
         $retorno = '{"retorno": "erro"}';
     }
     echo $retorno;
     break;
 case 'enviarEmailListaCasamento':
     $idListaCasamento = $_POST['idListaCasamento'];
     $emails = $_POST['emails'];
     $enviaEmail = enviaEmail('divulgaListaCasamento', $idListaCasamento, $emails);
     if ($enviaEmail) {
         $retorno = '{"retorno": "sucesso"}';
     } else {
         $retorno = '{"retorno": "erro"}';
     }
     echo $retorno;
     break;
 case 'adicionaProduto':
     $idPessoa = sqlvalue($_POST['idPessoa'], false);
     $idProduto = sqlvalue($_POST['idProduto'], false);
     $queryIdListaCasamento = "SELECT TOP 1 ID_LISTA_CASAMENTO FROM e_LISTA_CASAMENTO WHERE PESS_ID_PESSOA = " . $idPessoa . " AND ATIVO = 'S'";
     $resultIdListaCasamento = $mysqli->ConsultarSQL($queryIdListaCasamento);
     $idListaCasamento = sqlvalue($resultIdListaCasamento[0]['ID_LISTA_CASAMENTO'], false);
     if ($idListaCasamento) {
         $queryAdicionaProduto = "IF NOT EXISTS (SELECT 1 FROM e_LISTA_CASAMENTO_PRODUTO WHERE PCAV_ID_PRODUTO_COMBINACAO_ATRIBUTO_VALOR = " . $idProduto . " AND LICA_ID_LISTA_CASAMENTO = " . $idListaCasamento . ")\r\n\t\t\t\t\t\t\t\t\t\tBEGIN\r\n\t\t\t\t\t\t\t\t\t\tINSERT INTO e_LISTA_CASAMENTO_PRODUTO\r\n\t\t\t\t\t\t\t\t\t           (LICA_ID_LISTA_CASAMENTO\r\n\t\t\t\t\t\t\t\t\t           ,PCAV_ID_PRODUTO_COMBINACAO_ATRIBUTO_VALOR\r\n\t\t\t\t\t\t\t\t\t           ,QTD_SOLICITADA\r\n\t\t\t\t\t\t\t\t\t           ,USUARIO_INSERT)\r\n\t\t\t\t\t\t\t\t\t     VALUES\r\n\t\t\t\t\t\t\t\t\t           (" . $idListaCasamento . "\r\n\t\t\t\t\t\t\t\t\t           ," . $idProduto . "\r\n\t\t\t\t\t\t\t\t\t           ,1\r\n\t\t\t\t\t\t\t\t\t           ,'actions/lista-casamento.php');\r\n\t\t\t\t\t\t\t\t\t\tSELECT @@ROWCOUNT NRO_LINHAS\r\n\t\t\t\t\t\t\t\t\t\tEND\r\n\t\t\t\t\t\t\t\t\t\tELSE\r\n\t\t\t\t\t\t\t\t\t\tBEGIN\r\n\t\t\t\t\t\t\t\t\t\tSELECT 'S' EXISTE\r\n\t\t\t\t\t\t\t\t\t\tEND\r\n\t\t\t\t\t\t\t\t\t";