Llamadas salientes portech mv-378 con asterisk

asterisk

El siguiente código muestra como aprovechar para las llamadas salientes los 8 canales de nuestro portech mv-378; el código original aquí­:

en el extensions.conf, definimos:

[globals]

TRY1=SIP/GSMtrunk
TRY2=SIP/GSMtrunk1
TRY3=SIP/GSMtrunk2
TRY4=SIP/GSMtrunk3
TRY5=SIP/GSMtrunk4
TRY6=SIP/GSMtrunk5
TRY7=SIP/GSMtrunk6
TRY8=SIP/GSMtrunk7

;////////////////////////////////////////////
; ////// moviles ///////////////////////////
;////////////////////////////////////////////

[macro-encuentra-linea]
exten => s,1,set(TRIES=0) ; inicializamos la variable
exten => s,n(nextone),set(TRIES=$[${TRIES} + 1]) ; incrementa 1 a TRIES
exten => s,n,set(DIALSTRING=${TRY${TRIES}}) ; asignamos el valor de TRYn al DIALSTRING
exten => s,n,gotoif($[«${DIALSTRING}» = «»]?donehere) ; vemos si la variable = «» entonces no hay canales
exten => s,n,ChanIsAvail(${DIALSTRING}) ; para ver si el canal esta activo
exten => s,n,gotoif($[${AVAILSTATUS} = 0]?:nextone)
exten => s,n,gotoif($[${GROUP_COUNT(${DIALSTRING})} >= 1]?nextone) ; el canal esta ocupado
exten => s,n,set(GROUP()=${DIALSTRING}) ; Encontramos linea !!!!
exten => s,n,Dial(${DIALSTRING}/${ARG1}) ; Marcamos
exten => s,n,GotoIf($[«${DIALSTATUS}» = «BUSY»]?donehere) ; no podemos llamar :-(
exten => s,n,NoOp(«Vamos al siguiente canal»);
exten => s,n,goto(nextone) ; TEMP
exten => s,n(donehere),MacroExit() ; finalizamos, no hay canales

[moviles]
exten => _6XXXXXXXX,1,Macro(encuentra-linea,${EXTEN})
exten => _6XXXXXXXX,n,hangup()

3 comentarios sobre «Llamadas salientes portech mv-378 con asterisk»

  1. Hola. como este dispositivo envia sms, esto se lo puede realizar desde asterisk?? como en el caso cuando se conecta un telefono celular a asterisk y
    exten => 123,1,MobileSendSMS(nokia,12345678,Hola mundo) algo asi??

  2. Aquí tienes el php de ejemplo:

    #!/usr/bin/php -q

    n»;

    die;

    }

    sleep(2);

    $cmd = «$usernamer»;

    fputs($fp, $cmd, strlen($cmd));

    if ($debug)

    echo fread($fp, 128);

    sleep(1);

    $cmd = «$passwordr»;

    fputs($fp, $cmd, strlen($cmd));

    if ($debug)

    echo fread($fp, 128);

    sleep(1);

    $cmd = «moduler»;

    fputs($fp, $cmd, strlen($cmd));

    if ($debug)

    echo fread($fp, 128);

    sleep(2);

    $cmd = «ate1r»;

    fputs($fp, $cmd, strlen($cmd));

    if ($debug)

    echo fread($fp, 128);

    sleep(1);

    //Select SMS Message Format… (0=PDU Mode, 1=Text Mode)

    $cmd = «at+cmgf=1r»;

    fputs($fp, $cmd, strlen($cmd));

    sleep(1);

    if ($debug)

    echo fread($fp, 128);

    sleep(1);

    //List SMS Messages…

    $cmd = «AT+CMGL=»REC UNREAD»r»;

    //$cmd = «AT+CMGL=»ALL»r»;

    fputs($fp, $cmd, strlen($cmd));

    sleep(1);

    $res = » «;

    $ttlres = «»;

    stream_set_timeout($fp, 5); //5 seconds read timeout

    while ($res != «»)

    {

    $res = fread($fp, 256);

    if ($debug)

    echo $res;

    $ttlres .= $res;

    }

    echo «SMS Read Finished!n»;

    $sms_list = explode(‘+CMGL: ‘, $ttlres);

    //print_r($sms_list);

    foreach($sms_list as $sms)

    {

    $sms_hdr = explode(«n», $sms, 2);

    $arr_sms = parse_csv($sms_hdr[0]);

    //print_r($arr_sms);

    if ((count($arr_sms) > 2))

    {

    add_sms($arr_sms[2], $arr_sms[4], trim($sms_hdr[1]));

    if ($delete_read)

    {

    //Delete Message…

    $cmd = «at+cmgd={$arr_sms[0]}r»;

    fputs($fp, $cmd, strlen($cmd));

    sleep(1);

    }

    }

    if ($debug)

    echo fread($fp, 128);

    }

    fclose($fp);

    ?>

  3. The only problem is when you setup this fertaue and you press the RED led button, you are inmediatly calling to the specify device and if you press any number from your phone, you can see the digits you are pressing Imagine you setup the BLF to when you press the led, call a Trunk, and that trunk give you tone, you can’t see what numbers your are pressing Setup and check and you will see.I mean thisI press the LED button > In my screen have to be someting saying: Please enter number:

Responder a Paul Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.