cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
478
Views
0
Helpful
6
Replies

Isdn callback using callerid timings

maurice.walsh
Level 1
Level 1

Hi,

I've got an 801 acting as a callback server to a Cisco 3640, the problem is that the callback is taking nearly 10 seconds.

I've set the dialer enable-timeout to 2 seconds and this works if the 2nd isdn channel is free. if the 2nd channel is in use, then the call from the 3640 doesn't clear down for about 4 seconds and the first call back fails because the channel is in use. The only way this works is to set the enable-timeout to 6 seconds.

You can see that the call comes in at 3:23, but it doesn't free the channel until 3:26, in the mean time the 801 attemps the call back at 3:25.

Anyone got any idea why it takes 3 or 4 seconds to clear down the Isdn channel ?

Maurice

00:03:06: %ISDN-6-LAYER2UP: Layer 2 for Interface BR0, TEI 114 changed to up

00:03:12: ISDN BR0: RX <- CALL_PROC pd = 8 callref = 0xEB

00:03:12: Channel ID i = 0x89

00:03:13: ISDN BR0: RX <- CONNECT pd = 8 callref = 0xEB

00:03:23: ISDN BR0: RX <- SETUP pd = 8 callref = 0x01

00:03:23: Sending Complete

00:03:23: Bearer Capability i = 0x8890

00:03:23: Channel ID i = 0x8A

00:03:23: Calling Party Number i = 0x2183, 'Number1', Plan:ISDN, Type:National

00:03:23: Called Party Number i = 0x81, 'Number2', Plan:ISDN, Type:Unknown

00:03:98784247808: ISDN BR0: Event: Received a DATA call from Number1 on B2 at 64 Kb/s

00:03:98784247808: BR0:2 DDR: Caller id Number1 matched to profile e-Res3640

00:03:98784247808: Di2 DDR: Caller id Callback server starting to e-Res3640 Number1

00:03:23: ISDN BR0: TX -> CALL_PROC pd = 8 callref = 0x81

00:03:25: DDR: Callback timer expired

00:03:25: Di2 DDR: beginning callback to e-Res3640 Number1

00:03:25: BR0 DDR: rotor dialout [priority]

00:03:25: BR0 DDR: Dialing cause Callback return call

00:03:25: BR0 DDR: Attempting to dial 0Number1

00:03:25: DDR: Freeing callback to e-Res3640 Number1

00:03:25: ISDN BR0: TX -> SETUP pd = 8 callref = 0x01

00:03:25: Bearer Capability i = 0x8890

00:03:25: Channel ID i = 0x83

00:03:25: Called Party Number i = 0x80, 'Number1', Plan:Unknown, Type:Unknown

00:03:25: ISDN BR0: RX <- RELEASE_COMP pd = 8 callref = 0x81

00:03:25: Cause i = 0x82A2 - No channel available

00:03:26: ISDN BR0: TX -> DISCONNECT pd = 8 callref = 0x81

00:03:26: Cause i = 0x8095 - Call rejected

00:03:26: ISDN BR0: RX <- RELEASE pd = 8 callref = 0x01

00:03:26: ISDN BR0: TX -> RELEASE_COMP pd = 8 callref = 0x81

6 Replies 6

tepatel
Cisco Employee
Cisco Employee

We need to see the debug events between 3:23 and 3:23..That will inform us exactly when did we send and receive the call DISCONNECT and RELEASE etc..Also need to see when did DISCONNECT reached at 3640 and how much time 3640 recored between DISCONNECT and RELEASE_COMP.

Also pl. enable msec timestamps to be included in debug with following global command

conf t

service timestamps debug date msec

service time log date msec

You do need to change the dialer enable-timeout accordingly..

The timestamp may be different by a second or two on the logs as I couldn't configure NTP.

The Call comes in at 11:02:12 but the Isdn channel doesn't clear down until 11:02:15 ( I Think), I've got the enable-timeout set to 1 in this test, it works always at 7 and sometimes at 6.

e-Res3640 Callback client

ping 172.16.1.26

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 172.16.1.26, timeout is 2 seconds:

.Aug 20 11:02:13.447: Se0/0:15 DDR: rotor dialout [priority]

.Aug 20 11:02:13.447: Se0/0:15 DDR: Dialing cause ip (s=172.16.1.25, d=172.16.1.

26)

.Aug 20 11:02:13.447: Se0/0:15 DDR: Attempting to dial 01666823945

.Aug 20 11:02:13.447: ISDN Se0/0:15: Outgoing call id = 0x806E, dsl 0

.Aug 20 11:02:13.451: ISDN Se0/0:15: Event: Call to 01666823945 at 64 Kb/s

.Aug 20 11:02:13.451: ISDN Se0/0:15: process_pri_call(): call id 0x806E, number

01666823945, speed 64, call type DATA, redialed? f, csm call? f, pdata? f

.Aug 20 11:02:13.451: callED type/plan overridden by call_decode

.Aug 20 11:02:13.451: did't copy oct3a reason: not CALLER_NUMBER_IE

.Aug 20 11:02:13.451: building outgoing channel id for call nfas_int is 0 len i

s 0

.Aug 20 11:02:13.455: ISDN Se0/0:15: TX -> SETUP pd = 8 callref = 0x006D

.Aug 20 11:02:13.455: Bearer Capability i = 0x8890

.Aug 20 11:02:13.455: Channel ID i = 0xA98387

.Aug 20 11:02:13.455: Called Party Number i = 0x81, '01666823945', Plan:

ISDN, Type:Unknown

.Aug 20 11:02:13.619: ISDN Se0/0:15: RX <- CALL_PROC pd = 8 callref = 0x806D

.Aug 20 11:02:13.623: Channel ID i = 0xA98387

.Aug 20 11:02:13.627: ISDN Se0/0:15: LIF_EVENT: ces/callid 1/0x806E CALL_PROCEED

ING

.Aug 20 11:02:13.627: ISDN Se0/0:15: CALL_PROCEEDING id 0x806E

.Aug 20 11:02:13.627: ISDN Se0/0:15: PRI Event: 6, bchan = 6, call type = DATA..

.

.Aug 20 11:02:20.359: ISDN Se0/0:15: RX <- DISCONNECT pd = 8 callref = 0x806D

.Aug 20 11:02:20.359: Cause i = 0x8095 - Call rejected

.Aug 20 11:02:20.363: ISDN Se0/0:15: LIF_EVENT: ces/callid 1/0x806E CALL_DISC

.Aug 20 11:02:20.419: ISDN Se0/0:15: process_disc_ack(): call id 0x806E, ces 0,

call type DATA cause 0x15

.Aug 20 11:02:20.419: ISDN Se0/0:15: TX -> RELEASE pd = 8 callref = 0x006D

.Aug 20 11:02:20.451: ISDN Se0/0:15: RX <- RELEASE_COMP pd = 8 callref = 0x806D

.Aug 20 11:02:20.455: ISDN Se0/0:15: CCPRI_ReleaseCall(): bchan 7, call id 0x806

E, call type DATA

.Aug 20 11:02:20.455: CCPRI_ReleaseChan released b_dsl 0 B_Chan 7.

.Aug 20 11:02:20.455: ISDN Se0/0:15: LIF_EVENT: ces/callid 1/0x806E CALL_CLEARED

.Aug 20 11:02:20.455: ISDN Se0/0:15: received CALL_CLEARED call_id 0x806E

.Aug 20 11:02:20.459: no resend setup, no redial

.Aug 20 11:02:20.459: no resend setup, no redial

.Aug 20 11:02:20.459: Serial0/0:15: wait for isdn carrier timeout, call id=0x806

E

.Aug 20 11:02:20.459: Di7 DDR: Redial: Created on Se0/0:15 for ip (s=172.16.1.25

, d=172.16.1.26).

Success rate is 0 percent (0/5)

e-Res3640#

.Aug 20 11:02:35.459: Di7 DDR: Redial: Timeout. Redial on Se0/0:15 for ip (s=172

.16.1.25, d=172.16.1.26) (attempt 1)

.Aug 20 11:02:35.459: Se0/0:15 DDR: Attempting to dial 01666823945

.Aug 20 11:02:35.459: ISDN Se0/0:15: Outgoing call id = 0x806F, dsl 0

.Aug 20 11:02:35.459: ISDN Se0/0:15: Event: Call to 01666823945 at 64 Kb/s

.Aug 20 11:02:35.459: ISDN Se0/0:15: process_pri_call(): call id 0x806F, number

01666823945, speed 64, call type DATA, redialed? f, csm call? f, pdata? f

.Aug 20 11:02:35.459: callED type/plan overridden by call_decode

.Aug 20 11:02:35.459: did't copy oct3a reason: not CALLER_NUMBER_IE

.Aug 20 11:02:35.459: building outgoing channel id for call nfas_int is 0 len i

s 0

.Aug 20 11:02:35.463: ISDN Se0/0:15: TX -> SETUP pd = 8 callref = 0x006E

.Aug 20 11:02:35.463: Bearer Capability i = 0x8890

.Aug 20 11:02:35.463: Channel ID i = 0xA98387

.Aug 20 11:02:35.463: Called Party Number i = 0x81, '01666823945', Plan:

ISDN, Type:Unknown

.Aug 20 11:02:35.619: ISDN Se0/0:15: RX <- CALL_PROC pd = 8 callref = 0x806E

.Aug 20 11:02:35.619: Channel ID i = 0xA98387

.Aug 20 11:02:35.623: ISDN Se0/0:15: LIF_EVENT: ces/callid 1/0x806F CALL_PROCEED

ING

.Aug 20 11:02:35.623: ISDN Se0/0:15: CALL_PROCEEDING id 0x806F

.Aug 20 11:02:35.623: ISDN Se0/0:15: PRI Event: 6, bchan = 6, call type = DATA

.Aug 20 11:02:41.875: Se0/0:7 DDR: idle timeout

.Aug 20 11:02:41.875: Se0/0:7 DDR: disconnecting call

.Aug 20 11:02:41.875: ISDN Se0/0:15: Event: Hangup call to call id 0x806D

.Aug 20 11:02:41.875: ISDN Se0/0:15: process_disconnect(): call id 0x806D, call

type is DATA, b_idb 0x6137CB90, ces 1, cause Normal call clearing(0x10)

.Aug 20 11:02:41.875: %ISDN-6-DISCONNECT: Interface Serial0/0:7 disconnected fr

om 01312294987 Point801, call lasted 105 seconds

.Aug 20 11:02:41.879: ISDN Se0/0:15: TX -> DISCONNECT pd = 8 callref = 0x006C

.Aug 20 11:02:41.879: Cause i = 0x8090 - Normal call clearing

.Aug 20 11:02:42.003: ISDN Se0/0:15: RX <- RELEASE pd = 8 callref = 0x806C

.Aug 20 11:02:42.007: ISDN Se0/0:15: CCPRI_ReleaseCall(): bchan 8, call id 0x806

D, call type DATA

.Aug 20 11:02:42.007: CCPRI_ReleaseChan released b_dsl 0 B_Chan 8

.Aug 20 11:02:42.007: ISDN Se0/0:15: LIF_EVENT: ces/callid 1/0x806D CALL_CLEARED

.Aug 20 11:02:42.007: ISDN Se0/0:15: received CALL_CLEARED call_id 0x806D

.Aug 20 11:02:42.007: no resend setup, no redial

.Aug 20 11:02:42.011: no resend setup, no redial

.Aug 20 11:02:42.059: %LINK-3-UPDOWN: Interface Serial0/0:7, changed state to do

wn

.Aug 20 11:02:42.059: Se0/0:15 DDR: has total 4 call(s), dial_out 3, dial_in 1

.Aug 20 11:02:42.059: Se0/0:7 DDR: disconnecting call

.Aug 20 11:02:42.063: %DIALER-6-UNBIND: Interface Se0/0:7 unbound from profile D

i1

.Aug 20 11:02:42.063: ISDN Se0/0:15: TX -> RELEASE_COMP pd = 8 callref = 0x006C

.Aug 20 11:02:42.395: ISDN Se0/0:15: RX <- DISCONNECT pd = 8 callref = 0x806E

.Aug 20 11:02:42.399: Cause i = 0x8095 - Call rejected

.Aug 20 11:02:42.399: ISDN Se0/0:15: LIF_EVENT: ces/callid 1/0x806F CALL_DISC

.Aug 20 11:02:42.447: ISDN Se0/0:15: process_disc_ack(): call id 0x806F, ces 1,

call type DATA cause 0x15

.Aug 20 11:02:42.447: ISDN Se0/0:15: TX -> RELEASE pd = 8 callref = 0x006E

.Aug 20 11:02:42.483: ISDN Se0/0:15: RX <- RELEASE_COMP pd = 8 callref = 0x806E

.Aug 20 11:02:42.483: ISDN Se0/0:15: CCPRI_ReleaseCall(): bchan 7, call id 0x806

F, call type DATA

.Aug 20 11:02:42.483: CCPRI_ReleaseChan released b_dsl 0 B_Chan 7

.Aug 20 11:02:42.487: ISDN Se0/0:15: LIF_EVENT: ces/callid 1/0x806F CALL_CLEARED

.Aug 20 11:02:42.487: ISDN Se0/0:15: received CALL_CLEARED call_id 0x806F

.Aug 20 11:02:42.487: no resend setup, no redial

.Aug 20 11:02:42.487: no resend setup, no redial

.Aug 20 11:02:42.487: Serial0/0:15: wait for isdn carrier timeout, call id=0x806

F

.Aug 20 11:02:42.487: Di7 DDR: Redial: Removed on Se0/0:15 for ip (s=172.16.1.25

, d=172.16.1.26) (1 attempts tried)

.Aug 20 11:02:42.487: DDR: Dialing failed, 5 packets unqueued and discarded

.Aug 20 11:02:43.059: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0:

7, changed state to down

.Aug 20 11:02:57.487: Se0/0:15 DDR: re-enable timeout

DB801 - Callback server

Aug 20 11:02:12.559: ISDN BR0: RX <- SETUP pd = 8 callref = 0x01

Aug 20 11:02:12.559: Sending Complete

Aug 20 11:02:12.563: Bearer Capability i = 0x8890

Aug 20 11:02:12.563: Channel ID i = 0x8A

Aug 20 11:02:12.563: Calling Party Number i = 0x2183, '2088973470', Plan

:ISDN, Type:National

Aug 20 11:02:12.567: Called Party Number i = 0x81, '823945', Plan:ISDN,

Type:Unknown

Aug 20 11:02:12.575: ISDN BR0: Incoming call id = 0x18, dsl 0

Aug 20 11:02:12.579: ISDN BR0: received HOST_INCOMING_CALL call_id 0x18

Aug 20 11:02:12.579: ISDN BR0: HOST_INCOMING_CALL: voice_answer_data = FALSE

Aug 20 11:02:12.583: ISDN BR0: Event: Received a DATA call from 2088973470 on B2

at 64 Kb/s

Aug 20 11:02:12.583: BR0:2 DDR: Caller id 2088973470 matched to profile e-Res364

0

Aug 20 11:02:12.583: Di2 DDR: Caller id Callback server starting to e-Res3640 20

88973470

Aug 20 11:02:12.595: ISDN BR0: TX -> CALL_PROC pd = 8 callref = 0x81

Aug 20 11:02:13.583: DDR: Callback timer expired

Aug 20 11:02:13.583: Di2 DDR: beginning callback to e-Res3640 2088973470

Aug 20 11:02:13.583: BR0 DDR: rotor dialout [priority]

Aug 20 11:02:13.583: BR0 DDR: Dialing cause Callback return call

Aug 20 11:02:13.587: BR0 DDR: Attempting to dial 02088973470

Aug 20 11:02:13.587: ISDN BR0: Outgoing call id = 0x8014, dsl 0

Aug 20 11:02:13.587: DDR: Freeing callback to e-Res3640 2088973470

Aug 20 11:02:13.591: ISDN BR0: Event: Call to 02088973470 at 64 Kb/s

Aug 20 11:02:13.591: ISDN BR0: process_bri_call(): call id 0x8014, called_number

02088973470, speed 64, call type DATA

Aug 20 11:02:13.595: CC_CHAN_GetIdleChanbri: dsl 0

Aug 20 11:02:13.595: Found idle channel B1

Aug 20 11:02:13.599: ISDN BR0: TX -> SETUP pd = 8 callref = 0x14

Aug 20 11:02:13.603: Bearer Capability i = 0x8890

Aug 20 11:02:13.603: Channel ID i = 0x83

Aug 20 11:02:13.607: Called Party Number i = 0x80, '02088973470', Plan:U

nknown, Type:Unknown

Aug 20 11:02:13.711: ISDN BR0: RX <- RELEASE_COMP pd = 8 callref = 0x94

Aug 20 11:02:13.715: Cause i = 0x82A2 - No channel available

Aug 20 11:02:13.723: ISDN BR0: received HOST_DISCONNECT_ACK call_id 0x8014

Aug 20 11:02:13.723: ISDN BR0: Error: Unfound B-channel on Disconnect_Ack - call

id 0x8014

Aug 20 11:02:13.727: ISDN BR0: HOST_DISC_ACK Voice cid 0x8014 error

Aug 20 11:02:15.587: ISDN BR0: Guard timer expired, reject the call

Aug 20 11:02:15.587: ISDN BR0: process_disconnect(): call id 0x18, call type is

DATA, b_idb 0x27CF110, ces 1, cause 0x15

Aug 20 11:02:15.595: ISDN BR0: TX -> DISCONNECT pd = 8 callref = 0x81

Aug 20 11:02:15.595: Cause i = 0x8095 - Call rejected

Aug 20 11:02:15.691: ISDN BR0: RX <- RELEASE pd = 8 callref = 0x01

Aug 20 11:02:15.703: ISDN BR0: received HOST_DISCONNECT_ACK call_id 0x18

Aug 20 11:02:15.703: ISDN BR0: HOST_DISCONNECT_ACK: call type is DATA

Aug 20 11:02:15.707: ISDN BR0: received HOST_DISCONNECT_ACK call_id 0x18

Aug 20 11:02:15.711: ISDN BR0: HOST_DISCONNECT_ACK: call type is DATA

Aug 20 11:02:15.715: ISDN BR0: TX -> RELEASE_COMP pd = 8 callref = 0x81

Aug 20 11:02:34.595: ISDN BR0: RX <- SETUP pd = 8 callref = 0x01

Aug 20 11:02:34.599: Sending Complete

Aug 20 11:02:34.599: Bearer Capability i = 0x8890

Aug 20 11:02:34.599: Channel ID i = 0x8A

Aug 20 11:02:34.603: Calling Party Number i = 0x2183, '2088973470', Plan

:ISDN, Type:National

Aug 20 11:02:34.603: Called Party Number i = 0x81, '823945', Plan:ISDN,

Type:Unknown

Aug 20 11:02:34.611: ISDN BR0: Incoming call id = 0x19, dsl 0

Aug 20 11:02:34.615: ISDN BR0: received HOST_INCOMING_CALL call_id 0x19

Aug 20 11:02:34.619: ISDN BR0: HOST_INCOMING_CALL: voice_answer_data = FALSE

Aug 20 11:02:34.619: ISDN BR0: Event: Received a DATA call from 2088973470 on B2

at 64 Kb/s

Aug 20 11:02:34.619: BR0:2 DDR: Caller id 2088973470 matched to profile e-Res364

0

Aug 20 11:02:34.623: Di2 DDR: call to e-Res3640 already pending

Aug 20 11:02:34.631: ISDN BR0: TX -> CALL_PROC pd = 8 callref = 0x81

Aug 20 11:02:37.623: ISDN BR0: Guard timer expired, reject the call

Aug 20 11:02:37.623: ISDN BR0: process_disconnect(): call id 0x19, call type is

DATA, b_idb 0x27CF110, ces 1, cause 0x15

Aug 20 11:02:37.631: ISDN BR0: TX -> DISCONNECT pd = 8 callref = 0x81

Aug 20 11:02:37.631: Cause i = 0x8095 - Call rejected

Aug 20 11:02:37.707: ISDN BR0: RX <- RELEASE pd = 8 callref = 0x01

Aug 20 11:02:37.719: ISDN BR0: received HOST_DISCONNECT_ACK call_id 0x19

Aug 20 11:02:37.723: ISDN BR0: HOST_DISCONNECT_ACK: call type is DATA

Aug 20 11:02:37.727: ISDN BR0: received HOST_DISCONNECT_ACK call_id 0x19

Aug 20 11:02:37.727: ISDN BR0: HOST_DISCONNECT_ACK: call type is DATA

Aug 20 11:02:37.731: ISDN BR0: TX -> RELEASE_COMP pd = 8 callref = 0x81

Aug 20 11:02:43.587: BRI0: wait for isdn carrier timeout, call id=0x8014

Aug 20 11:02:43.587: DDR: Dialing failed, 0 packets unqueued and discarded

Aug 20 11:02:43.587: ISDN BR0: Event: Hangup call to call id 0x8014

Aug 20 11:02:43.591: ISDN BR0: process_disconnect(): call id 0x8014, call type i

s DATA, b_idb 0x27CCF38, ces 1, cause 0x10

Aug 20 11:02:43.591: CC: dsl 0 No CCB Src->HOST cid 0x8014, ev 0x5 ces 1

Aug 20 11:02:43.595: ISDN BR0: received HOST_QUERY_RESPONSE call_id 0x8014

The server should fully disconnect the call first before it callback so that the client is ready by that time..I agree with that. In your case thats not the case..Pl. let me know the ios on both the side, i want to duplicate in my lab and will come up with some resolution...Tejal

I have just tested in my lab..I can see that the callback server will disconnect the first call before originating the callback. There is a delay in between of 15 secs which is "dialer enable-timeout" which defaults to 15 secs.

Here is the debug

*Mar 5 16:45:11.732: ISDN BR0: RX <- SETUP pd = 8 callref = 0x35

*Mar 5 16:45:11.736: Bearer Capability i = 0x8890

*Mar 5 16:45:11.740: Channel ID i = 0x89

*Mar 5 16:45:11.740: Signal i = 0x40 - Alerting on - pattern 0

*Mar 5 16:45:11.744: Calling Party Number i = 0x2180, '4081235800'

*Mar 5 16:45:11.748: Called Party Number i = 0xA1, '4081236800'

*Mar 5 16:45:11.752: Locking Shift to Codeset 6

*Mar 5 16:45:11.756: Codeset 6 IE 0x3C i = 0x1103, '4081235800'

*Mar 5 16:45:11.768: BR0:1 DDR: Caller id 4081235800 matched to profile abcd

*Mar 5 16:45:11.768: Di1 DDR: Caller id Callback server starting to abcd 4081235800

*Mar 5 16:45:11.784: ISDN BR0: TX -> RELEASE_COMP pd = 8 callref = 0xB5

*Mar 5 16:45:11.784: Cause i = 0x8095 - Call rejected

SKYWALKER-01#

*Mar 5 16:45:26.768: DDR: Callback timer expired

*Mar 5 16:45:26.768: Di1 DDR: beginning callback to abcd 4081235800

*Mar 5 16:45:26.772: BR0 DDR: rotor dialout [priority]

*Mar 5 16:45:26.772: BR0 DDR: Dialing cause Callback return call

*Mar 5 16:45:26.776: BR0 DDR: Attempting to dial 91235800

*Mar 5 16:45:26.776: DDR: Freeing callback to abcd 4081235800

*Mar 5 16:45:26.788: ISDN BR0: TX -> SETUP pd = 8 callref = 0x01

*Mar 5 16:45:26.792: Bearer Capability i = 0x8890

*Mar 5 16:45:26.792: Channel ID i = 0x83

*Mar 5 16:45:26.796: Keypad Facility i = '91235800'

*Mar 5 16:45:26.876: ISDN BR0: RX <- SETUP_ACK pd = 8 callref = 0x81

*Mar 5 16:45:26.880: Channel ID i = 0x89

*Mar 5 16:45:28.904: ISDN BR0: RX <- CALL_PROC pd = 8 callref = 0x81

You can see that there is 15 secs delay between RX <- SETUP and TX -> SETUP for a callback. So on the server, you need to have dialer enable-timeout long enough till the call get totally disconnected..In your case it looks like you have set it lower then 7 secs..so the server is initiating the callback early.

I need to try and have a quick callback and 15 seconds isn't good enough. I n your case I think you may be able to reduce the enable-timeout to 3 seconds and it may be ok, this is because your initial RX <- setup and the Call rejected happen within 1 second, in my case the RX <- setup and Call rejected is seperated by 3 seconds. 11:02:12:559 and 11:02:15.595 on my second log file

The Callback server is an 801 on 12.1, it's only a test setup at the moment so I'll update it to the latest and see if that helps.

Thanks for all your help so far.

I've updated the 801 to 12.2 and it's now a lot better, if there are no channels in use when the call comes in, then I'm getting a callback with enable-timeout set to 1, if 1 channel is in use then the I need to set the enable-timeout to 4.

I think I'll specify that the callback process needs both channels and the router cannot be used for anything other than the service that uses callback.

Thanks again for your help.