VoiceGuide IVR Software Main Page
Jump to content

SIP Register Failed - Cisco CallManager replies 401 Unauthorized'

Recommended Posts

Hi,

I have downloaded VoiceGuide_7.6.4 and DialogicHMP30_Drivers_for_VoiceGuide_7.5_gen2_375 successfully install on my laptop
I am using CiscoCallManager to configure Voice Guide i followed below link 
https://www.voiceguide.com/vghelp/source/html/config_ciscocallmanager.htm.
And also added VoIP Registration and VoIP Authentication details in VoiceGuide config file.
Please let me know what is the issue.

Attached files are ConfigFile,Logfile,WireShark capture file

WireSharklog.pcapng

Config.xml

1219_ktTel.txt

1219_0916_vgEngine.txt

Share this post


Link to post

ktTel trace shows that you are trying to register as extension 780 with the (CallManager) system that is at IP 10.99.10.31

(and WireShark shows that VoiceGuide system's IP is 10.99.14.232)

161 093855.970  4504     fn    VoIPProvider_AuthenticationAdd(auth_realm=, auth_identity=, auth_username=voiceguide, auth_password=******)

166 093855.977  4504     fn    VoIPProvider_Register(protocol=SIP, reg_server=10.99.10.31, reg_client=780@10.99.10.31, local_alias=, sH323SupportedPrefixes=)

 

Traces show that Cisco CallManager replies with a '401 - Unauthorized', but no Authentication entry has been loaded into VoiceGuide for extension 780, so VoiceGuide cannot reply to the '401 - Unauthorized'.

In VoiceGuide's Config.xml only an Authentication entry for user "voiceguide" was specified. No Authentication entry for user "780" was specified

in VoiceGuide's Config.xml change:

<AuthUsername>voiceguide</AuthUsername>

to:

<AuthUsername>780</AuthUsername>

(and set the correct password in <AuthPassword> section, to match password expected by Cisco Call Manager)

Then stop and start the VoiceGuide service after saving the Config.xml changes.

Please run WireShark as before before starting VoiceGuide service, and post traces as before if you still have any issues.

 

ws_sip.png

Share this post


Link to post

CallManager is now replying to the REGISTER request with a:

'405 - Method Not Allowed'

(in the traces you supplied before the CallManager was replying with a '401 - Unauthorized')

Have you changed the CallManager configuration to make "780" a SIP Trunk instead of a Device/Extension?

The CallManager reply to a REGISTER request now has a message that "SIP trunk disallows REGISTER"

If you are going to set up a SIP Trunk to point to VoiceGuide IP address then there is no need to do any registrations usually.

Just send the calls down that SIP trunk and VoiceGuide will answer any calls that arrive at it's IP address. No Register needed.

 

Setting up SIP trunk is covered in the "SIP Trunk Method" section of this help file entry:

https://www.voiceguide.com/vghelp/source/html/config_ciscocallmanager.htm

(and setting up SIP Extensions/Devices that VoiceGuide can then Register to use is covered in the "SIP Device Method" section of the above help file entry)

 

ws_sip_register_2.png

Share this post


Link to post

For SIP trunks there is usually no need for any credentials.

On your CallManager the 780 seemed first to be configured as a SIP device. But in your second post 780 seemed first to be configured as a SIP trunk.

Are you using a SIP trunk to connect to VoiceGuide? Or do you want to use individual SIP Devices to connect to VoiceGuide?

SIP trunk is the recommended approach.

Share this post


Link to post

OK if i am using SIP trunk to connect to VoiceGuide then how to trace out SIP trunk is connected to voiceguide because after configuring in call manager when i am making call then there is no response not able to find call is connecting to voice guide or not.  

Share this post


Link to post

Can you see any SIP traffic arriving at VoiceGuide's IP address after you have set up a SIP trunk in CUCM and placed a call that was supposed to go out that SIP trunk?

If you cannot even see any SIP traffic then looks like the SIP trunk was not correctly set up in the CallManager. Please confirm the SIP trunk is pointing to VoiceGuide's IP address and that the routing in the Cisco Call Manager was set up correctly.

WireShark would be used to check for SIP traffic on network. Please make sure WireShark is running on VoiceGuide machine when the calls are attempted.

Share this post


Link to post

WireShark trace shows incoming calls arriving and the ktTel trace shows:

248 134000.971  9360   3 r     CallState(3, 8000001, 0, GCEV_OFFERED, 2, 0, 8, 225@10.99.10.31|, 782@10.99.14.232, [SIP_HDR_Request_URI]{sip:782@10.99.14.232:5060}[SIP_HDR_Contact_URI]{sip:225@10.99.10.31:5060}[SIP_HDR_FROM_DISPLAY]{"Conference Room"}[SIP_HDR_EXPIRES]{180}[SIP_HDR_CALLID]{683b6700-c1b1712f-7dbc2-1f0a630a@10.99.10.31}[SIP_HDR_FROM]{"Conference Room"<sip:225@10.99.10.31>;tag=3165653~4c075c6d-5a3b-4906-9ab9-f8e1d805b877-29059880}[SIP_HDR_TO]{<sip:782@10.99.14.232>}[SIP_Header_Via]{SIP/2.0/UDP 10.99.10.31:5060;branch=z9hG4bK8803d1efc4642}[SIP_Header_From]{"Conference Room"<sip:225@10.99.10.31>;tag=3165653~4c075c6d-5a3b-4906-9ab9-f8e1d805b877-29059880}[SIP_Header_To]{<sip:782@10.99.14.232>}[SIP_Header_Contact]{<sip:225@10.99.10.31:5060>;+u.sip!devicename.ccm.cisco.com="SEPB4A8B9E85EF3"}[SIP_Header_Call-ID]{683b6700-c1b1712f-7dbc2-1f0a630a@10.99.10.31}[SIP_Header_User-Agent]{Cisco-CUCM11.5})
249 134001.031  9572   3 fn    AnswerCall 8000001 (sXMLOptions=[])
250 134001.033  9572   3       dx_adjsv (2, SV_VOLUMETBL, SV_ABSPOS, SV_ADD4DB) default call
251 134001.034  9572   3       CleanAllDelayedPlayRecQueues
252 134001.034  9572   5       zPlayStartQue_Clean
253 134001.034  9572   3       answercall crn=8000001
254 134001.044 12628           extension event - not procesed
255 134001.045  9360   3       ev 11 x868 crnx=8000001, data=04CDE3E8(0A3E0258), q: 0/3
256 134001.045  9360           extension event - not procesed
257 134001.061  9360   3       ev 12 x801 crnx=8000001, data=04CDE458(0A3E0258), q: 0/3
258 134001.061  9360   3 ev    GCEV_TASKFAIL crn=8000001
259 134001.069  9360           GCEV_TASKFAIL ResultInfo: gcValue=137(0x89|EGC_CCLIBSPECIFIC|cclib specific - a catchall) gcMsg=[CCLIB specific] ccLibId=8 ccLibName=[GC_H3R_LIB] ccValue=[0x6||] ccMsg=[IPERR_INTERNAL - see rtf log] additionalinfo=[]
260 134001.069  9360   3 r     Dialogic  GCEV_TASKFAIL 2049 (0 137 6 NOADVICE CCLIB specific IPERR_INTERNAL - see rtf log)
261 134001.070  9360   3 ERROR GCEV_TASKFAIL source:other
262 134001.070  9360   3 ERROR unknown GCEV_TASKFAIL. Source of event unknown.

 

Dialogic RTF log shows:

12/20/2018 13:40:00.966  12068        9360 gc                      ERR1         gc_parmblk_mgr                  ----- CParmBlkMgr::ReleaseCParmBlk(): Could not find GC_PARM_BLKP = 0xa4c357d in map, return EGC_INVPARMBLK
12/20/2018 13:40:01.060  12068       12656 Dm3Odi.dll              Error        Qcd [0:0:1:5:1] CDm3StdComp::Dm3GetErrorResult() -> (Std_MsgError) Message[0x4000] Xid[0x5] Src[0:0:1:5:1] Dest[18:255:0:0:0] ErrorCode[0x7]
12/20/2018 13:40:01.060  12068       12656 libipm_ipvsc            ERR1         CIPVscChannel         ipmB1C1    ---  ::OnStartAlgorithmSession: ch=ipmB1C1 ErrorCode=0x7 -Invalid parameter value.PrevError=0x0
12/20/2018 13:40:01.060  12068       12656 Dm3Odi.dll              Error        Qcd [0:0:1:5:1] CDm3StdComp::Dm3GetErrorResult() -> (Std_MsgError) Message[0x4002] Xid[0x5] Src[0:0:1:5:1] Dest[18:255:0:0:0] ErrorCode[0x7]
12/20/2018 13:40:01.060  12068       12656 libipm_ipvsc            ERR1         CIPVscChannel         ipmB1C1    ---  ::OnStartMediaSession: ch=ipmB1C1 ErrorCode=0x7 -Invalid parameter value., PrevError=0x7
12/20/2018 13:40:01.060  12068       12656 libipm_ipvsc            ERR1         CIPVscChannel         ipmB1C1    ---  ConvertDM3ResultToR4Error: RESULT_COMPONENT_ERROR             error code: 0x7
12/20/2018 13:40:01.060  12068       12656 libipm_ipvsc            ERR1         CIPVscChannel         ipmB1C1    ---  ConvertDM3ResultToR4Error: RESULT_COMPONENT_ERROR             converted error code: 0x2
12/20/2018 13:40:01.060  12068        2316 gc_h3r                  ERR1         mediastate.cpp:1320   !     1 ! << MediaState::ipmEventHandler :IPMEV_ERROR received from media
12/20/2018 13:40:01.060  12068        2316 gc_h3r                  ERR1         mediastate.cpp:1169   !     1 ! mediaPrintLog:st ST_TX_START_2FDX Printing event/transition log
12/20/2018 13:40:01.060  12068        2316 gc_h3r                  ERR1         mediastate.cpp:1189   !     1 ! mediaPrintLog:TRAN_COMPLETE Ev EV_ATTACH , st ST_NULL
12/20/2018 13:40:01.060  12068        2316 gc_h3r                  ERR1         mediastate.cpp:1189   !     1 ! mediaPrintLog:TRAN_COMPLETE Ev EV_GET_LOCAL , st ST_WAIT_FOR_INFO
12/20/2018 13:40:01.060  12068        2316 gc_h3r                  ERR1         mediastate.cpp:1189   !     1 ! mediaPrintLog:TRAN_COMPLETE Ev EV_CONNECT_HDX_TX , st ST_WAIT_FOR_CALL
12/20/2018 13:40:01.060  12068        2316 gc_h3r                  ERR1         mediastate.cpp:1189   !     1 ! mediaPrintLog:TRAN_COMPLETE Ev EV_MODIFY_HDX2FDX , st ST_TX_STARTING
12/20/2018 13:40:01.060  12068        2316 gc_h3r                  ERR1         mediastate.cpp:1189   !     1 ! mediaPrintLog:TRAN_COMPLETE Ev EV_ERROR , st ST_TX_START_2FDX
12/20/2018 13:40:13.738  12068        9360 gc                      ERR1         gc_parmblk_mgr                  ----- CParmBlkMgr::ReleaseCParmBlk(): Could not find GC_PARM_BLKP = 0xa4c2d9d in map, return EGC_INVPARMBLK

 

 

 

kttel_mult_invite.png

ws_mult_invite.png

Share this post


Link to post

Is this running on a laptop? Some laptop computers have problems running HMP. If you are able to install on standalone server class machine that would be preferable.

 

Please also do this:

1. Stop the VoiceGuide service.
2. Stop the Dialogic service.

Please place the attached RtfConfigWin.xml file on your system - unzip attached file first. (file link at very bottom of this post)

for Windows Server 2008 R2 and newer:
3a. make the hidden directory C:\ProgramData visible
3b. go to C:\ProgramData\Dialogic\HMP\cfg

for older versions of windows and Server 2008 32bit :
3a. go to C:\Program Files\Dialogic\cfg

Then:

4. Backup existing RtfConfigWin.xml,
5. Replace it with attached RtfConfigWin.xml (unzip it first)
6. Shutdown and restart Windows.

7. Start WireShark to capture the SIP packets of the incoming call. (see: www.wireshark.org)

8. Start the Dialogic service.
9. Once Dialogic service has fully started then start the VoiceGuide service.

10. After VoiceGuide service has fully started place a call into system.

11. .ZIP up Dialogic logs and VoiceGuide ktTel log and the WireShark .pcap log file that captures the SIP packets.

12. Please post all the above logs here.

 

RtfConfigWin.zip

Share this post


Link to post

Yes i am running this on laptop because was creating a demo version once this successfully done i will install  on Windows server but till then i am follow above steps on my laptop and will post the logs is this fine?

Share this post


Link to post

Sure, we can look at the full RTF logs (generated when the new RtfConfigWin is used) and see if they better show actual cause of problem.

Share this post


Link to post

We will pass this onto Dialogic and advise when we get a response. This may take a few days, so if you are able to install and test on a standalone server machine in meantime then this may be a faster way of resolving this.

Share this post


Link to post

Please check the images below because of this is sue i am not able to re ceive call and any response from Dialogic .

First image from Event logs.

Secong image from C:\ProgramData\Dialogic\HMP\demos\IPMediaServer\Release.

 

image.png

image.png

Share this post


Link to post

Are you running the above IPMediaServer.exe test app on the same laptop on which VoiceGuide was running? Or is this some new system? If on VoiceGuide system then was VoiceGuide running at the time? Only one software at a time can open Dialogic ports.

Dialogic RTF log may tell us more on why the Dialogic's test app did not open any ports. Put the RtfConfigWin we supplied before on this system, restart the Dialogic service and run the IPMediaServer.exe test app and post the RTF log here.

Share this post


Link to post
12 hours ago, SupportTeam said:

Are you running the above IPMediaServer.exe test app on the same laptop on which VoiceGuide was running?

Yes.

 

12 hours ago, SupportTeam said:

If on VoiceGuide system then was VoiceGuide running at the time

yes

 

12 hours ago, SupportTeam said:

Only one software at a time can open Dialogic ports.

you mean voiceguide service should be stop before running IPMediaServer.exe test app

 

I replaced your given RtfCo nfigWin and restarted Dialogic service also there was no voiceguide service running .please check the attached dialogic log

Please check below first image when i run it for first time.

Check the second image after placing call into system.image.png.39f68a9be10d6c23a2eb49de8f0504fe.png

image.png

DialogicLog.zip

Share this post


Link to post
Quote

you mean voiceguide service should be stop before running IPMediaServer.exe test app

Yes.

Looks like even the Dialogic's own IPMediaServer has problems running on this notepad.

Are you able to use a standalone server machine instead?

Share this post


Link to post

Dialogic layer reports to VoiceGuide that it has played the sound file, but the WireShark log shows that no RTP (sound data) was sent out. No sound data was sent out by CUCM either, even though the ACK was set out by CUCM.

 Can't see at this stage why RTP was not exchanged. Will advise if we see something but at this stage recommend trying a server class system.

393 165648.113  9328   3 fn    AnswerCall 8000001 (sXMLOptions=[])
394 165648.113  9328   3       dx_adjsv (2, SV_VOLUMETBL, SV_ABSPOS, SV_ADD4DB) default call

...

408 165648.176 10200   3 ev    GCEV_ANSWERED crn=8000001 (ktTel_HMP30vista v7.6.4, Dec 12 2018 20:31:45)

...

418 165648.186  9328   3 fn    PlayStart(iLineId=3, sFileList=C:\Program Files (x86)\VoiceGuide\Scripts\Credit Card Payment\PayGetId.wav, sXMLOptions=)

...

431 165648.187  9328   3       play(2, iott=0xf3177e8 (len=66785, buff=0xf362340), tpt=0x0, xpb=0xf2a954c) call
432 165648.187  9328   3       play(2, 0xf3177e8, tpt=0x0, xpb=0xf2a954c) => 0, hli=0F2A6F68
433 165648.187  9328   5       zPlayStartQue_Clean
434 165648.211 10200   3       ev 29 x855 crnx=0, data=07B900A8(0DF904C8), q: 0/3
435 165648.211 10200   3 ev    GCEV_LISTEN
436 165656.665 10200   2       ev 30 x81 crnx=0, data=07B907A8(00000000), q: 0/3
437 165656.665 10200   2 ev    TDX_PLAY (Play Completed)

 

 

ws_no_sound.png

Share this post


Link to post

Is the IP address 10.99.14.167 associated with this laptop as well?

WireShark shows Dialogic SIP packets are sent from 10.99.14.232, but in SDP the IP address of 10.99.14.167 is used.

Please ensure that only IP address is assigned to machine.

The Dialogic RTF log does not have much information. Looks like the supplied RtfConfigWin file was not used when these traces were taken.

 

Share this post


Link to post

I am using WiFi  to connect internet on laptop but Dialogic card IP and system IP are different could you please let me know why dialogic card now using system IP?

image.png.365a28ea039d8535dbaf3e2482ef9312.png

image.png.846d3be4c77fcee4a186f57e7eb574f9.png

Share this post


Link to post

We recommend using a system that has only one network connection (wired, not WiFi).

Once you install on a standalone server computer that only has a single network connection please make the IPMediaServer and VoiceGuide tests as before and post traces if you still encounter any problems.

 

Share this post


Link to post

Hi i have installed on stand alone server now everything is working fine.i have converted wav file to U-Law using Audacity.when i am calling using another phone its not playing correctly please check.

VoiceGuideLog.zip

Eng1.wav

Share this post


Link to post

Hi i have created a script which will play a audio file on press 1 it will go to play2 on press 2 it will go to play3 on timeout it will hangup.

but when iam pressing any key its not working only time out is working.

play6.vgs

1225_1500_vgEngine.zip

Share this post


Link to post

Traces shows that the keypresses are sent from the PBX as tones, not as RFC2833 events. Are you able to set the PBX to use "RFC 2833" to send events?

RFC 2833 is the preferred method for sending keypress events over SIP trunks.

Otherwise you can enable for VoiceGuide to react to just the tones being sent by adding this entry:

<dtmf>inband</dtmf>

To the Config.xml file's <Channel><Options> section. Like this:

<Channel>
<Device_Voice>dxxxB1C1</Device_Voice>
<Device_Network>iptB1T1</Device_Network>
<Device_Media>ipmB1C1</Device_Media>
<Protocol>IP</Protocol>
<Script>C:\Program Files (x86)\VoiceGuide\Scripts\Credit Card Payment\Credit Card Payment.vgs</Script>
<AllowDialOut>1</AllowDialOut>
<Options>
<dtmf>inband</dtmf>
</Options>
</Channel>

After saving the new Config.xml the VoiceGuide service needs to be restarted to load the new Config.xml settings.

 

Share this post


Link to post
This topic is now closed to further replies.
×