Bloquear llamadas entre extensiones

Discussion in 'Elastix 2.x' started by ish, Nov 2, 2010.

  1. ish

    ish

    Joined:
    Apr 28, 2010
    Messages:
    61
    Likes Received:
    0
    Tengo dos empresas en la misma centralita.

    Troncal 1 es de la empresa 1
    Troncal 2 es de la empresa 2

    Extension 1000 Secretaria empresa1
    Extension 1001 Comercial empresa1

    Extension 2000 Secretaria empresa2
    Extension 2002 comercial empresa2

    La ruta de entrada de la troncal 1 va a la extension 1000
    La ruta de entrada de la troncal 2 va a la extension 2000

    Las extensiones 1000 y 1001 salen por la troncal 1
    Las extensiones 2000 y 2001 salen por la troncal 2

    hasta aqui todo bien. Tengo las empresas totalmente separas.

    El problema es que al estar en la misma centralita pueden llamarse entre ellas, si marcan la extension adecuala (osea desde la empresa 1 si marcan 2000, llaman a la empresa 2)

    Y quiero evitar que esto suceda.

    Como puedo hacerlo?

    Muchas gracias.
     
  2. jgutierrez

    Joined:
    Feb 28, 2008
    Messages:
    5,737
    Likes Received:
    0
    Se me ocurriría escribir un contexto de la siguiente forma en extensions_custom.conf

    Code:
    [bloquear]
    exten => _XXXX,1,Answer
    exten => _XXXX,n,GotoIf($[ $[ ${CALLERID(num)} > 999 ] and $[ ${CALLERID(num)} < 2000 ] ]?servidorA)
    exten => _XXXX,n,GotoIf($[ $[ ${CALLERID(num)} > 1999 ] and $[ ${CALLERID(num)} < 3000 ] ]?servidorB)
    exten => _XXXX,n,Goto(ext-local,${EXTEN},1)
    exten => _XXXX,n(servidorA),ExecIf($[$[ ${EXTEN} > 1999 ] and $[ ${EXTEN} < 3000 ] ],Hangup,)
    exten => _XXXX,n(servidorB),ExecIf($[$[ ${EXTEN} > 999 ] and $[ ${EXTEN} < 2000 ] ],Hangup,)
    
    En el mismo archivo, pones al inicio de [from-internal-custom]
    include => bloquear

    Luego desde la consola ejecutas:
    asterisk -rx "module reload"

    No lo he probado pero me imagino que así te podría funcionar, si tienes algún problema pegas la salida del CLI (asterisk -r) desde el momento en que vas a llamar a una extensión del otro servidor
     
  3. jcasaravilla

    Joined:
    Aug 4, 2008
    Messages:
    55
    Likes Received:
    0
    interesante articulo , lo voy a probar en laboratorio

    saludos
     
  4. fraggle4

    Joined:
    Apr 22, 2009
    Messages:
    98
    Likes Received:
    0
    Es mas fácil instalar el modulo Custom Contexts.
    Este modulo se usa mucho para multi-tenant aunque no fue concebido para tal fin:
    Después de instalarlo, prepara dos contextos, 1 para cada empresa.
    En Dial Rules Empresa1, colocar 1XXX
    Mas abajo buscas ext-local y seleciones "Apply Rules"
    En Dial Rules Empresa2 pone 2XXX con los mismos pasos.
    Las extensiones de cada empresa van en su contexto respectivo.
    También se puede separar troncales por empresa, limitar marcacion a ciertos destinos externos, restringir horarios etc. entre muchas cosas, con la ventaja de tener todas las modificaciones del dialplan visibles en un solo lugar. Es cosa de probar.
     
  5. jcasaravilla

    Joined:
    Aug 4, 2008
    Messages:
    55
    Likes Received:
    0
    efectivamente e encontrado mas sencillo de administrar la solucion con el
    modulo custom contexts

    saludos
     

Share This Page