Brekeke Forum Index » Brekeke PBX Forum

Post new topic   Reply to topic
Exchange UM 403 on REFER from Exchange->Brekeke
Author Message
dtosi
Brekeke Junior Member


Joined: 03 Dec 2008
Posts: 5

PostPosted: Wed Dec 03, 2008 3:53 pm    Post subject: Exchange UM 403 on REFER from Exchange->Brekeke Reply with quote

1. Brekeke Product Name and version: Brekeke PBX, Version 2.2.6.2

2. Java version: Java 6 Update 10

3. OS type and the version: Windows 2003 Server R2

4. UA (phone), gateway or other hardware/software involved: Linksys SPA942, ITSPs Gafachi and QuantumVoice, Exchange 2007 UM

5. Select your network pattern from http://www.brekeke-sip.com/bbs/network/networkpatterns.html : Pattern 8

6. Your problem:
I am attempting to connect Brekeke to my Exchange 2007 server to use their swelt speech-enabled auto attendants as well as their unified messaging features. I followed the directions to connect to OCS from Brekeke (http://www.brekeke-sip.com/wiki/index.php?telepark.wiki=02416f48) and I can call into Exchange 2007 UM just great. I can even use the Outlook 'Play on Phone' feature which issues an INVITE command and that rings though to my phone just great. The problem comes when I try to transfer to an extension from the auto-attendant I get a 403 error. Here's the SIP command that Exchange 2007 UM issues:

Code:

REFER sip:NNNNNNNNN@192.168.1.50:4832;transport=tcp SIP/2.0
FROM: <sip:400@tussrv013.inphonite.com:5065>;epid=862E3FB003;tag=bbef61b0b2
TO: <sip:NNNNNNNNN@sip.gafachi.com:5060>;tag=b391427dfp
CSEQ: 1 REFER
CALL-ID: 7f93e38a-bcdf5750-da1335ea-313c751e@192.168.1.50
MAX-FORWARDS: 70
VIA: SIP/2.0/TCP 192.168.1.42:5065;branch=z9hG4bKf6a5323
CONTACT: <sip:tussrv013.inphonite.com:5065;transport=Tcp;maddr=192.168.1.42;ms-opaque=a9de9ba88e0256c2>;automata
CONTENT-LENGTH: 0
REFER-TO: <sip:508@192.168.1.50:4832;transport=tcp;user=phone>
REFERRED-BY: <sip:400@tussrv013.inphonite.com:5065>
USER-AGENT: RTCC/3.0.0.0


And here is the result from Brekeke:

Code:
SIP/2.0 403 Forbidden
Via: SIP/2.0/TCP 192.168.1.42:5065;branch=z9hG4bKf6a5323
From: <sip:400@tussrv013.inphonite.com:5065>;epid=862E3FB003;tag=bbef61b0b2
To: <sip:NNNNNNNNN@sip.gafachi.com:5060>;tag=b391427dfp
Call-ID: 7f93e38a-bcdf5750-da1335ea-313c751e@192.168.1.50
CSeq: 1 REFER
Content-Length: 0


I *think* I need to create a dialing plan that captures the refer and submits it to the PBX similar to the rules I created to get Brekeke to allow INVITES. I tried several different plans and nothing seemed to work. Can someone help me out here?

Thanks-
David Tosi
Back to top
View user's profile
taitan
Brekeke Master Guru


Joined: 15 Mar 2008
Posts: 237

PostPosted: Tue Dec 09, 2008 1:04 am    Post subject: Reply with quote

Do you have a user ("NNNNNNNNN" in this case) in the Brekeke PBX?
I think you need to create a user in the user setting of the PBX.
Back to top
View user's profile
dtosi
Brekeke Junior Member


Joined: 03 Dec 2008
Posts: 5

PostPosted: Tue Dec 09, 2008 7:15 am    Post subject: Reply with quote

Thanks for the reply. Unfortunately NNNNNNNNN is the inbound phone number. In this case it's my cell phone. Any other ideas? I tried to create a rule that turned auth off but that didn't seem to do the trick.

Thanks-
David Tosi
Back to top
View user's profile
taitan
Brekeke Master Guru


Joined: 15 Mar 2008
Posts: 237

PostPosted: Wed Dec 10, 2008 12:48 am    Post subject: Reply with quote

Is 508 a PBX user? and is it registered in the SIP Server?
Back to top
View user's profile
dtosi
Brekeke Junior Member


Joined: 03 Dec 2008
Posts: 5

PostPosted: Wed Dec 10, 2008 7:18 am    Post subject: Reply with quote

Taitan-

Again, thanks for looking at this. I guess I should have defined the roles in the first post.
    - 508 is a registered extension in Brekeke
    - 400 is the Exchange UM Auto Attendant
    - 192.168.1.42 is the IP Address of the Exchange Server
    - 192.168.1.50 is the IP Address of the Brekeke Server
    - NNNNNNNNN is the inbound phone number
    - sip.gafachi.com is the ITSP provider I am testing with

Thanks again and I hope this helps!
-David Tosi
Back to top
View user's profile
james
Brekeke Master Guru


Joined: 10 Dec 2007
Posts: 501

PostPosted: Wed Dec 10, 2008 6:52 pm    Post subject: Reply with quote

Is the Brekeke SIP Server working on the port 4832? (Is it the SIP SIP Server's listening port??)

Do you have the user "508" in your Brekeke PBX?
Back to top
View user's profile
dtosi
Brekeke Junior Member


Joined: 03 Dec 2008
Posts: 5

PostPosted: Thu Dec 11, 2008 9:04 am    Post subject: Reply with quote

Brekeke is configured for the default port (5060). User 508 is configured both in the PBX as a User and in the SIP server under User Authentication.

Thanks!
-David Tosi
Back to top
View user's profile
taitan
Brekeke Master Guru


Joined: 15 Mar 2008
Posts: 237

PostPosted: Thu Dec 11, 2008 8:10 pm    Post subject: Reply with quote

dtosi,

Can you capture packets on the server PC?
Let me know who returned "403 Forbidden" response packet.

Can you make a call to "508" from the inbound phone without call transfer?
Back to top
View user's profile
dtosi
Brekeke Junior Member


Joined: 03 Dec 2008
Posts: 5

PostPosted: Fri Dec 12, 2008 8:58 am    Post subject: Reply with quote

Boy George I think I've figured it out. To fix the authentication problem I needed to add the Exchange Auto-Attendant (in my case 400) as an authenticated user. Also, I needed to add two more dialing rules to get everything working correctly.

Additional Rule #1: This is for forwarding to VM. You need to set each user's VoiceMail extension for 77{EXT} to work correctly. Note, that it adds the Diversion header needed for Exchange UM to correctly forward to VM. Also, for whatever reason Brekeke loses the Diversion header on the 3rd INVITE, so I had to add the extension to the To line. Note that 401 is the Exchange Pilot number.

Matching Patterns
Code:
$port=15062
$localhost=true
$registered=false
$outbound=false
$request=^INVITE
$getUri( From )=!_ocs
To=sip:77(.{3})

Deploy Patterns
Code:
$transport=TCP
$auth=false
&net.sip.transport.follow.request=true
To=sip:401@192.168.1.42;tag=%1
Diversion=<tel:%1>;reason=user-busy;screen=no;privacy=off

Additional Rule #2: This is a workaround for the problem with the lost Diversion header on the 3rd INVITE that Brekeke sends to Exchange. Anyways, it grabs the extension from the header's tag. Seems to work great.

Matching Patterns
Code:
$request=^INVITE.+tag\=(.{3})
To=sip:401@

Deploy Patterns
Code:
$transport=TCP
$auth=false
&net.sip.transport.follow.request=true
Diversion=<tel:%1>;reason=user-busy;screen=no;privacy=off

I will have to test more but I think I am well on my way. Thanks for everybody help!

-David Tosi
Back to top
View user's profile
taitan
Brekeke Master Guru


Joined: 15 Mar 2008
Posts: 237

PostPosted: Mon Dec 15, 2008 6:10 pm    Post subject: Reply with quote

Wow...
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    Brekeke Forum Index » Brekeke PBX Forum All times are GMT - 7 Hours
Page 1 of 1