Exchange UM 403 on REFER from Exchange->Brekeke

Discuss any topic about Brekeke PBX.

Moderator: Brekeke Support Team

Post Reply
dtosi
Posts: 5
Joined: Wed Dec 03, 2008 1:04 pm

Exchange UM 403 on REFER from Exchange->Brekeke

Post by dtosi »

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/ ... terns.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.p ... i=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: Select all

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: Select all

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
taitan
Posts: 237
Joined: Sat Mar 15, 2008 10:39 pm

Post by taitan »

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.
dtosi
Posts: 5
Joined: Wed Dec 03, 2008 1:04 pm

Post by dtosi »

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
taitan
Posts: 237
Joined: Sat Mar 15, 2008 10:39 pm

Post by taitan »

Is 508 a PBX user? and is it registered in the SIP Server?
dtosi
Posts: 5
Joined: Wed Dec 03, 2008 1:04 pm

Post by dtosi »

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
james
Posts: 501
Joined: Mon Dec 10, 2007 12:56 pm

Post by james »

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?
dtosi
Posts: 5
Joined: Wed Dec 03, 2008 1:04 pm

Post by dtosi »

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
taitan
Posts: 237
Joined: Sat Mar 15, 2008 10:39 pm

Post by taitan »

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?
dtosi
Posts: 5
Joined: Wed Dec 03, 2008 1:04 pm

Post by dtosi »

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 Pattern

Code: Select all

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

Code: Select all

$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 Pattern

Code: Select all

$request=^INVITE.+tag\=(.{3})
To=sip:401@
Deploy Pattern

Code: Select all

$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
taitan
Posts: 237
Joined: Sat Mar 15, 2008 10:39 pm

Post by taitan »

Wow...
Post Reply