Cross site call routing

Hi folks. I am having a lot of fun setting up a new system, and I ran into a small roadblock.

I wanted to test out thew new “CDR stats” program for my office. Of course I did not want to mess too much with a system in production. So I am setting up a second asterisk box between my provider and my local pbx. VOIP provider --> FreePBX distro machine + CDR stats --> Existing Elastix PBX (I dint set it up!) :stuck_out_tongue:

The thought is that by forcing calls to go through my FreePBX machine I can get cdr logs. So I have set up a trunk between my FreePBX machine and my elastix machine (hence forth called (XSite). I created an inbound route on my FreePBX machine that routes all calls to my XSite trunk. It seems to go smoothly at first, inbound call makes it to my FreePBX box, FreePBX sends it over the XSite trunk and offers it to my Elastix box. The issue is that my Elastix box send a sip response 603 back at me.

– Called SIP/Xsite2/s
– Got SIP response 603 “Declined” back from 10.0.2.15:5060
– SIP/Xsite2-00000009 is busy

I am fairly certain it is just an issue with how I configured my XSite trunk or route and would really appreciate it if someone could look over my setup.

Trunk settings on FreePBX side

trunk name Xsite2

host=dynamic
type=friend
context=from-internal
secret=MSecret21
canreinvite=no
qualify=yes
insecure=port,invite

Xsite1:[email protected]

I have the reverse settings on the other side and it looks to register fine.

Here is a failed call from the FreePBX side http://pastebin.com/x5aEn4e0 (I have XXXXXXX’ed out the phone numbers)

And from the Elastix side http://pastebin.com/gWH28hVY

I am sure I am missing something simple… But Id really appreciate any help/suggestions I can get.

I don’t think you need the whole setup reversed. You need the trunk setup on one end and the registration string on the other end (I think). You will also need a username= string in the trunk definition matching the registration string username (the first parameter) on the other end.

I also think you’d be better to to have host=dynamic but set host=(otherr host name/IP address).