[Home]

Summary:ASTERISK-21475: CallerID information doesn't persist after a Channel Redirect on a H323 leg (works with other channel technologies)
Reporter:Jacob Miles (milesje)Labels:
Date Opened:2013-04-17 07:12:58Date Closed:
Priority:MinorRegression?
Status:Open/NewComponents:Addons/chan_ooh323 Applications/app_channelredirect
Versions:1.8.21.0 13.18.4 Frequency of
Occurrence
Constant
Related
Issues:
Environment:CentOS 6.4 Asterisk 1.8.13.1 SCCP phones (using chan_sccp-b) Attachments:
Description:A calls B (callerid is displayed on phone B), B transfers A to C (no callerid is displayed on phone C).

If using the transfer button on phone which uses the transfer methods in chan_sccp-b callerid information is correct on phone C, issue is only when using Channel Redirect application either via CLI or AMI.

[Edit by Rusty Newton - adding reporters new description of issue below:]
{quote}
After some further testing, this looks to maybe just an issue with chan_ooh323. If I place a call from a SCCP phone (7971) to my H323 phone (Uniden) it shows the Caller ID info (connectedline name & num) correctly on the SCCP phone, if I then transfer the H323 leg of the call to another SCCP or SIP phone using CLI/AMI Channel Redirect the caller id info (connectedline name) is not displayed anymore. I also tested using only SIP & SCCP phones (without H323) with no issue. This only appears to happen when using chan_ooh323. So i think my original patch does very little if anything to resolve this. Also, it only happens when the H323 leg of the call is the called party, if I make a call from the H323 phone to my SIP or SCCP phone everything works fine and displays correctly after the redirect.
{quote}
Comments:By: Matt Jordan (mjordan) 2013-04-17 07:28:32.849-0500

{{chan_sccp}} is not a module that is part of Open Source Asterisk. Please contact the authors of your module regarding this bug.

By: Jacob Miles (milesje) 2013-04-17 07:34:57.211-0500

I know chan_sccp is not a module in Open Source Asterisk, my issue is that it WORKS with chan_sccp it does not work using Asterisk (chan_sip, chan_ooh323).

By: Jacob Miles (milesje) 2013-04-17 07:57:40.516-0500

I even have a patch to fix this issue, but I can't figure out how to upload the patch to JIRA.

8412a8413,8414
> char *cid_num;
> char *cid_name;
8435a8438,8439
> tmpvars.cid_num = ast_strdupa(chan->caller.id.number.str);
> tmpvars.cid_name = ast_strdupa(chan->caller.id.name.str);
8447c8451
< if (!(tmpchan = ast_channel_alloc(0, tmpvars.state, 0, 0, tmpvars.accountcode, tmpvars.exten, tmpvars.context, tmpvars.linkedid, tmpvars.amaflags, "AsyncGoto/%s", tmpvars.name))) {
---
> if (!(tmpchan = ast_channel_alloc(0, tmpvars.state, tmpvars.cid_num, tmpvars.cid_name, tmpvars.accountcode, tmpvars.exten, tmpvars.context, tmpvars.linkedid, tmpvars.amaflags, "AsyncGoto/%s", tmpvars.name))) {

By: Jacob Miles (milesje) 2013-04-17 08:04:14.593-0500

I have signed the license agreement, but I am waiting for the e-mail confirmation before I can actually upload the source patch.

By: Jacob Miles (milesje) 2013-04-17 08:57:46.074-0500

The only think I can think of with my patch that might need to be tweaked is it would be best to check for the validity of the caller id information before attempting to copy the info from the channel to the temp variable.

By: Rusty Newton (rnewton) 2013-04-18 19:40:23.547-0500

Jacob, now that you have a valid license agreement, please re-upload the patch so that it will be visible.

Please, if possible also attach an Asterisk log showing the problematic scenario before and after your patch. Be sure that VERBOSE and DEBUG at level 5 are being written to the log.

Thanks!

By: Rusty Newton (rnewton) 2013-04-18 19:40:44.974-0500

Also, hit 'Send Back' when you have that done.

By: Jacob Miles (milesje) 2013-04-19 11:24:54.170-0500

After some further testing, this looks to maybe just an issue with chan_ooh323.  If I place a call from a SCCP phone (7971) to my H323 phone (Uniden) it shows the Caller ID info (connectedline name & num) correctly on the SCCP phone, if I then transfer the H323 leg of the call to another SCCP or SIP phone using CLI/AMI Channel Redirect the caller id info (connectedline name) is not displayed anymore.  I also tested using only SIP & SCCP phones (without H323) with no issue.  This only appears to happen when using chan_ooh323.  So i think my original patch does very little if anything to resolve this.  Also, it only happens when the H323 leg of the call is the called party, if I make a call from the H323 phone to my SIP or SCCP phone everything works fine and displays correctly after the redirect.

By: Rusty Newton (rnewton) 2013-04-25 14:24:07.396-0500

Assigning this to Alexander as he is the maintainer for the chan_ooh323 driver.

By: Rusty Newton (rnewton) 2013-04-25 14:25:35.460-0500

Jacob, Alexandr may still want the logging information requested above.

{quote}
Please, if possible also attach an Asterisk log showing the problematic scenario before and after your patch. Be sure that VERBOSE and DEBUG at level 5 are being written to the log.
{quote}

Also you'll want to include debug specific to the H323 channel turned on in the Asterisk log. A PCAP of the whole scenario wouldn't hurt either.

By: Alexander Anikin (may213) 2013-04-25 18:18:12.900-0500

Jacob, i will make test for this issue on my system, but i have one idea:

caller phone display connected line info from ooh323 leg, but when you redir h323 leg to another then connected line info must be changed due to leg changed and i can suggest new channel don't present connected line info but just clear it.


By: Jacob Miles (milesje) 2013-04-26 08:26:58.323-0500

I found somewhat of a work around to fix most of my connected line info display issues.  If I use the option "o([x])" for the Dial application I will keep connected line info after a redirect.  This of course only works on calls in which I know the connected line info that I can manually add to the Dial applications option "o([x])", so this does not work too well when dealing with a H323 trunk.