que es

miércoles, 2 de noviembre de 2022

outcall asterisk

 Creación de archivo bash para enviar archivo para realizar llamadas.


 Send_client.sh
#!/bin/bash
llamar="$1"
copiar=$(cp -ap $llamar /tmp/)
mover=$(mv /tmp/$llamar /var/spool/asterisk/outgoing/)

#cp -ap outcall_cliente.call /tmp/ && mv /tmp/outcall_cliente.call /var/spool/asterisk/outgoing/
#cp -ap $llamar /tmp/ && mv /tmp/$llamar /var/spool/asterisk/outgoing/

$copiar && $mover

Fin de archivo bash.

Archivo que va outgoing

out_tax2.call
Channel: SIP/GWCOMCEL2/333676325
Context: cliente
Extension: 99
Priority: 1
Set: num=33332854356

Fin archivo outcall

archivo php para la creación de archivo y revisión de permisos.

<?php
##outcall
$troncal = "SIP/GW/";
$numCliente = 6028879020;
$context = "cliente";
$ext = 194;
$prioridad = "Priority: 1";
$numTaxi = 3333015633;


$file_handle = fopen("out_tax2.call", "w");
fwrite($file_handle, "Channel: ".$troncal.$numCliente."\n");
fwrite($file_handle, "Context: ".$context."\n");
fwrite($file_handle, "Extension: ".$ext."\n");
fwrite($file_handle, $prioridad."\n");
fwrite($file_handle, "Set: num=".$numTaxi."\n");

fclose($file_handle);

echo "archivo creado\n";


#echo ("out_tax2.call");
#echo fileperms('out_tax2.call')."\n";
#
$permisos =  substr(sprintf("%o", fileperms("out_tax2.call")), -3)."\n";
$outCall_file = 'out_tax2.call';
#revisa usario y grupo asterisk
#
$usuario = posix_getpwuid(fileowner($outCall_file));
$grupo =  posix_getgrgid(filegroup($outCall_file));
//extrae grupo usuario y grupo
//
$usrFile = $usuario["name"];
$grFile = $grupo["name"];

#print_r($grupo);
#print_r(array_keys($grupo, "name"));
#print_r(in_array('name', $grupo));

print_r($usuario["name"]."\n");
echo $grupo["name"]."\n\n";
echo $usrFile.":".$grFile."\n";
echo $permisos."\n";

//valida permisos, usuario y grupo
if ( $permisos != 755 ){
   chmod($outCall_file, 0755);
   #echo "archivo con permisos\n";
}
if ($usrFile != "asterisk" ){
   chown($outCall_file, "asterisk");
}
if ($grFile != "asterisk" ){
   chgrp($outCall_file, "asterisk");
}

#system("chown asterisk:asterisk out_tax2.call && chmod 755 out_tax2.call")
#system("cp -p out_tax2.call /tmp/ && mv /tmp/out_tax2.call /var/spool/asterisk/outgoing/");


/*
Channel: SIP/GWCOMCEL2/6028879020
Context: cliente
Extension: 999
Priority: 1
Set: num=333333333

*/

?>





No hay comentarios:

Publicar un comentario