Interconnect 2 Elastix servers

Discussion in 'General' started by ericng, Apr 18, 2009.

  1. ericng

    Joined:
    May 14, 2008
    Messages:
    78
    Likes Received:
    0
    I am having two Elastix servers (each with E1 lines & DID numbers) setup and want to connect these 2 servers so that incoming calls from one server (server A) can be forwarded to another server (server B) complete with caller ID & dialed number ID at the receiving end.

    I have been attempting using IAX2 trunks but get only the caller ID at the receiving end.

    Hope someone can shed some lights in how the above can be carried out.


    Thanks


    Eric
     
  2. raj

    raj

    Joined:
    Apr 19, 2009
    Messages:
    149
    Likes Received:
    0
    Hi,

    did you find any help one this? im also into almost same situation and am very new to elastix please help @ experts.
     
  3. rafael

    Joined:
    May 14, 2007
    Messages:
    1,454
    Likes Received:
    1
  4. raj

    raj

    Joined:
    Apr 19, 2009
    Messages:
    149
    Likes Received:
    0
    Thank you Rafael not only for URL but for quickest ever response i got on any forum.

    one more thing im sorry for asking it here.....as its not a related thread but please forgive me..i need quick answer thats why im asking...!

    i need help with configuring Digium's TE212P card with dual ports but we will be using only single port since we have only single E1. any pointers? please.
     
  5. ericng

    Joined:
    May 14, 2008
    Messages:
    78
    Likes Received:
    0
    I managed to figure out how can I get the caller id and the dialed number id at the receiving end. The line exten =>,n,ExecIf($["${REALCALLERIDNUM:1:2}" ="],Set,REALCALLERIDNUM=${CALLERID(number)}) in context [macro-outbound-callerid] in extensions_additional.conf need to change to as follows:-

    [macro-outbound-callerid]
    include => macro-outbound-callerid-custom
    exten => s,1,ExecIf($["${CALLINGPRES_SV}" != o""],SetCallerPres,${CALLINGPRES_SV})
    exten => s,n,ExecIf($["${REALCALLERIDNUM:1:2}" = ""],Set,REALCALLERIDNUM=${CALLERID(dnid)})
    exten => s,n(start),GotoIf($[ $["${REALCALLERIDNUM}" = ""] | $["${KEEPCID}" != "TRUE"] | $["${OUTKEEPCID_${ARG1}}" = "on"] ]?normcid)
    exten => s,n,Set(USEROUTCID=${REALCALLERIDNUM})
    exten => s,n,GotoIf($["foo${DB(AMPUSER/${REALCALLERIDNUM}/device)}" = "foo"]?bypass)
    exten => s,n(normcid),Set(USEROUTCID=${DB(AMPUSER/${REALCALLERIDNUM}/outboundcid)})
    exten => s,n(bypass),Set(EMERGENCYCID=${DB(DEVICE/${REALCALLERIDNUM}/emergency_cid)})
    exten => s,n,Set(TRUNKOUTCID=${OUTCID_${ARG1}})
    exten => s,n,GotoIf($[ $["${EMERGENCYROUTE:1:2}" = ""] | $["${EMERGENCYCID:1:2}" = ""] ]?trunkcid)
    exten => s,n,Set(CALLERID(all)=${EMERGENCYCID})
    exten => s,n(exit),MacroExit()
    exten => s,n(trunkcid),ExecIf($["${TRUNKOUTCID:1:2}" != ""],Set,CALLERID(all)=${TRUNKOUTCID})
    exten => s,n(usercid),GotoIf($["${USEROUTCID:1:2}" = ""]?exit)
    exten => s,n,Set(CALLERID(all)=${USEROUTCID})
    exten => s,n(hidecid),ExecIf($["${CALLERID(name)}"="hidden"],SetCallerPres,prohib_passed_screen)


    ie, the Set,REALCALLERIDNUM=${CALLERID(number)}) need to change to Set,REALCALLERIDNUM=${CALLERID(dnid)}). The problem that I faced is this gets overwritten whenever freepbx or the Elastix GUI doing an update.

    Hope someone can shed some lights on how the changes can be made permanent and not to be overwritten by freepbx or Elastix GUI updates.


    Thanks


    Eric
     
  6. rafael

    Joined:
    May 14, 2007
    Messages:
    1,454
    Likes Received:
    1
    In theory you should make the changes in extensions_custom.conf
     
  7. mila

    Joined:
    May 1, 2009
    Messages:
    9
    Likes Received:
    0
    ehm hallo, first sorry if i has a bad english speach, because i'm from indonesia and cannot speak in english language, now i have same problem to config elastix from GUI, where i want to interconnecting 2 server elastix 1.3 with x-lite as client, this is url of my config, can anyone to help me , ..thanks for your respons my question..:side:
    http://pastebin.com/f5c6dc60d
     
  8. mila

    Joined:
    May 1, 2009
    Messages:
    9
    Likes Received:
    0
    ehm, in it is http://pastebin.com/f5c6dc60d , i has reading "elastix without tears" but it is same for false in config, my problem is client1 from server 1 cannot calling client2 from server2,..thankyou before
     
  9. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    Hi every body.

    I use a trunk IAX2 between 2 Elastix server and that's work fine.

    into each server, make a trunk like this:

    Server 1
    Code:
    host=192.168.1.28 // @IP server 2
    type=friend
    qualify=yes
    context=from-internal
    disallow=all
    allow=alaw&gsm&h263&h263p
    canreinvite=yes
    Server 2
    Code:
    host=192.168.1.38 // @IP server 1
    type=friend
    qualify=yes
    context=from-internal
    disallow=all
    allow=alaw&gsm&h263&h263p
    canreinvite=yes
    Into outbound route on server 1
    add dial plan into dial pattern, for exemple: 13x
    choice your IAX trunk

    Make the same prog into server 2

    enjoy.
     
  10. mila

    Joined:
    May 1, 2009
    Messages:
    9
    Likes Received:
    0
    hey guys, i has succeess to interconnection 2 elastix server, and my config via GUI elastix in freePBX

    correction to my last config is

    first: I must has 2 extension on each my server elastix
    ( 1.extension with SIP
    2.extension with IAX2)
    second : to interconnection 2 server elastix, we must making trunk in each server with IAX2 protokol..

    and my config is success, but if you want to know my configuration in details, you can send your email to " mila_st3@yahoo.co.id "
    ...thanks for your respons of my question,
     
  11. raj

    raj

    Joined:
    Apr 19, 2009
    Messages:
    149
    Likes Received:
    0
    Hey Mila,

    as you said email me for configuration details and i emailed you but still waiting for your response.
     
  12. mila

    Joined:
    May 1, 2009
    Messages:
    9
    Likes Received:
    0
    oks...i'm promise to give you email with file in pdf but it is tomorrow, i must to making the file in english language for you, because i have a bad english speak, just to little...sorry for your waiting my respons. march 05'2009 9.00 AM in GMT+07.00.. iwill send my email for you..^_^
     
  13. raj

    raj

    Joined:
    Apr 19, 2009
    Messages:
    149
    Likes Received:
    0
    Thank you mila awaiting your mail then.
     
  14. ericng

    Joined:
    May 14, 2008
    Messages:
    78
    Likes Received:
    0
    I was able to connect 2 Elastix servers but I always getting the caller id and not DNID at the receiving end.

    My setup is as follows:-

    DID incoming call ---> Elastix Server 1 -----------> Elastix Server 2 ---> SIP Phone

    DID calls have been received at Server 1, then through IAX2 interconnection, calls to be forwarded to Server 2 and received by SIP phone registered at Server 2. I have configured DNID as follows in extensions_custom.conf:

    [dnid-custom]
    exten => _X.,1,Set(DID=${EXTEN})
    exten => _X.,2,Set(CALLERID(name) CALLERID(num)=8${CALLERID(dnid)})
    ;exten => _X.,n,Goto(s,1)
    exten => _X.,3,SetGlobalVar(ADM=8${CALLERID(dnid)})
    include => from-pstn

    I want the SIP phone to receive DNID instead of the caller ID. Through my testing, I realised that I need to change the following in extensions_additional.conf:


    [macro-outbound-callerid]
    ...
    exten => s,n,ExecIf($["${REALCALLERIDNUM:1:2}" = ""],Set,REALCALLERIDNUM=${CALLERID(number)})

    to:

    [macro-outbound-callerid]
    ...
    exten => s,n,ExecIf($["${REALCALLERIDNUM:1:2}" = ""],Set,REALCALLERIDNUM=${CALLERID(dnid)})

    ie. to change REALCALLERIDNUM=${CALLERID(number)} to REALCALLERIDNUM=${CALLERID(dnid)}

    I have been testing to include in macro-outbound-callerid-custom context but has not been successfull.

    Hope someone can shed some lights on how the above can be done ? Although I can manually change in extensions_additional.conf but it gets overwritten whenever freepbx is doing any updates.


    Thanks and regards,

    Eric Ng
     
  15. raj

    raj

    Joined:
    Apr 19, 2009
    Messages:
    149
    Likes Received:
    0
    how do you define codecs to be used with IAX2 Trunk? which codecs are already installed on Elastix?
     
  16. rejil.rajan

    Joined:
    Apr 8, 2007
    Messages:
    154
    Likes Received:
    0
    Hi Raj

    You define them in the trunks using allow=<codec1>,<codec2>. The codec available in the system you can find using the command show codecs from Asterisk Console
     
  17. rejil.rajan

    Joined:
    Apr 8, 2007
    Messages:
    154
    Likes Received:
    0
    Hi Eric

    Can you explain the below scenario with an example so we can understand the issue better and give u a better solution to do it
     
  18. danardf

    Joined:
    Dec 3, 2007
    Messages:
    8,069
    Likes Received:
    12
    I not agree with you.
    show codecs, give only that asterisk can support and not the codecs enable.

    If you want to know all codecs installed into asterisk, see the codecs into this directory: /usr/lib/asterisk/modules/.

    To enable the codecs into the trunk, see my post into this subject.
    disallow=all
    allow=code1&codec2&codec3
     
  19. ericng

    Joined:
    May 14, 2008
    Messages:
    78
    Likes Received:
    0
    Hi Rejil,

    I have DID numbers say 21714123 at server 1 and the caller using his h/p say 6578912345 call to 21714123 Through IAX2 interconnection to the server 2, call was configured to receive at sip phone at server 2 but the phone screen receiving caller id 6578912345. That was not what I want to achieve.

    If I did modification as above in extensions_additional.conf with my DNID configuration, I got "14123 6578912345" on sip phone at server 2. That's what I want to achieve as the users at server2 knows what number caller is attempted to call and his phone number.

    I am currently manually maintain the settings in extensions_additional.conf whenever there is update by Freepbx. I need to look for a solution that settings can be permanent stored there even freepbx is doing the update.

    Really appreciate that if someone can provide some hints to the problem.
     
  20. rejil.rajan

    Joined:
    Apr 8, 2007
    Messages:
    154
    Likes Received:
    0
    Hi Eric

    Can you try make those changes by copying those lines to extensions_custom.conf and putting them in a new context.

    The changes in extensions_custom.conf will not be erased during the Amportal reload
     

Share This Page