[asterisk-commits] trunk r15220 - in /trunk/channels: chan_misdn.c
misdn/isdn_lib.c
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Mon Mar 27 03:13:15 MST 2006
Author: crichter
Date: Mon Mar 27 04:13:11 2006
New Revision: 15220
URL: http://svn.digium.com/view/asterisk?rev=15220&view=rev
Log:
fixed hicom busy bug, we now see if the systemphone is busy, also fixed the immediate=yes does not work anymore issue
Modified:
trunk/channels/chan_misdn.c
trunk/channels/misdn/isdn_lib.c
Modified: trunk/channels/chan_misdn.c
URL: http://svn.digium.com/view/asterisk/trunk/channels/chan_misdn.c?rev=15220&r1=15219&r2=15220&view=diff
==============================================================================
--- trunk/channels/chan_misdn.c (original)
+++ trunk/channels/chan_misdn.c Mon Mar 27 04:13:11 2006
@@ -3324,6 +3324,16 @@
}
+ /* check if we should jump into s when we have no dad */
+ {
+ int im;
+ misdn_cfg_get( bc->port, MISDN_CFG_IMMEDIATE, &im, sizeof(im));
+ if ( im && ast_strlen_zero(bc->dad) ) {
+ do_immediate_setup(bc, ch , chan);
+ break;
+ }
+ }
+
chan_misdn_log(5,bc->port,"CONTEXT:%s\n",ch->context);
if(!ast_canmatch_extension(ch->ast, ch->context, bc->dad, 1, bc->oad)) {
Modified: trunk/channels/misdn/isdn_lib.c
URL: http://svn.digium.com/view/asterisk/trunk/channels/misdn/isdn_lib.c?rev=15220&r1=15219&r2=15220&view=diff
==============================================================================
--- trunk/channels/misdn/isdn_lib.c (original)
+++ trunk/channels/misdn/isdn_lib.c Mon Mar 27 04:13:11 2006
@@ -1553,6 +1553,7 @@
manager_t *mgr = (manager_t *)dat;
msg_t *msg = (msg_t *)arg;
mISDNuser_head_t *hh;
+ int reject=0;
struct misdn_stack *stack=find_stack_by_mgr(mgr);
int port;
@@ -1681,8 +1682,8 @@
if (bc) {
int myprocid=bc->l3_id&0x0000ffff;
hh->dinfo=(hh->dinfo&0xffff0000)|myprocid;
- cb_log(3,stack->port,"Repaired reject Bug, new dinfo: %x\n",hh->dinfo);
- return 0;
+ cb_log(3,stack->port,"Reject dinfo: %x cause:%d\n",hh->dinfo,bc->cause);
+ reject=1;
}
}
}
@@ -1833,9 +1834,18 @@
if(!isdn_get_info(msgs_g,event,1)) {
cb_log(4, stack->port, "Unknown Event Ind: prim %x dinfo %x\n",hh->prim, hh->dinfo);
} else {
+ if (reject) {
+ switch(bc->cause){
+ case 17:
+ cb_log(1, stack->port, "Siemens Busy reject..\n");
+
+ break;
+ default:
+ return 0;
+ }
+ }
cb_event(event, bc, glob_mgr->user_data);
}
-
} else {
cb_log(4, stack->port, "No BC found with l3id: prim %x dinfo %x\n",hh->prim, hh->dinfo);
More information about the asterisk-commits
mailing list