Post new topic Reply to topic  [ 18 posts ] 

Board index : TeleFlow Forums : TeleFlow Server & Monitor

Author Message
 Post subject: NMS: Cannot dial-out
PostPosted: Fri Nov 27, 2009 11:15 am 
Offline
User avatar

Joined: Fri Feb 06, 2004 11:05 am
Posts: 115
Location: Costa Rica
Briefly...

Infrastructure:
  • Hardware: NMS CG 6060/11-2L/2TE with 1064 DSP MIPS
  • Software:
    • Windows Server 2003 Standard R2
    • TeleFlow Server 2009.7.13.0
    • Natural Access 2005-1, SP 5
  • Telephony: Two ISDN PRI T1s configured with NI2:
    • Nortel PBX (Meridian) T1, connected to the first slot in NMS board for inbound calls
    • PSTN T1 line for outbound calls and faxing, connected to the second slot

Scenario:
The Nortel PBX will receive inbound calls, perform the ACD and forward them to the IVR for attention (over the T1 in slot 0). One of the options in the IVR menu allows the caller to ask for human attendance, upon which the IVR will issue an outbound call (over the T1 in slot 1) to a specific phone number and switch both channels.

Notes:
  • We have a 24-port TeleFlow Server permanent license to handle just one T1, but we borrowed from enGenic a temporary 40-port license for testing with the two T1s, so no licensing issues so far.
  • The initial intention is to have the second t1 (on slot 1) connected to the same Nortel PBX, so as to just dial-out a specific 4-digit extension that routes the call to the first available Customer Interaction Center (CIC) agent. However, there are some hardware limitations on the Nortel PBX that must be resolved first.
  • For now, the second T1 goes out to the PSTN, so as to dial-out a specific 10-digit phone number and a 4-digit extension, routed to the CIC as well (obviously, these calls will have a cost).
  • As we're on a testing scenario, the phone number being used is a 11-digit cellular phone number: '1 (829) 257-4777', local to the Dominican Republic.

Problem:
The outbound call fails:
Code:
16:39:33.109: [302] Place Call
16:39:33.109:    Telephone Number '@pPrimary' evaluates to '18292574777'
16:39:33.109:    Rings before TIMEOUT is '6'
16:39:33.109:    Caller ID '@SEND_ANI' evaluates to ''
16:39:33.109:    Do not capture answering voice length to TeleFlow variable
16:39:33.109:    Silence timeout is ''
16:39:33.109:    Empty Silence timeout defaults to none
16:39:33.109:    Maximum voice length timeout is ''
16:39:33.109:    Empty Maximum voice length timeout defaults to none
16:39:33.109:    ISDN Calling Number Plan is 'ISDN'
16:39:33.109:    ISDN Calling Number Type is 'NATIONAL'
16:39:33.109:    ISDN Called Number Plan is 'ISDN'
16:39:33.109:    ISDN Called Number Type is 'NATIONAL'
16:39:33.109:    Place call to 18292574777
                 and wait for up to 6 rings
16:39:33.109:    Connect on CED
16:39:33.109:    Connect on SIT
16:39:33.109:    send our Caller ID as ''
16:39:33.109:    Do not perform initial voice length detection.
16:39:33.109:    Open port 25
16:39:33.109:       Board: 0 stream: 4 slot: 25
16:39:33.109:    NMS Services:
16:39:33.109:       0. NCC, ADIMGR, 0, 4:25, 15
16:39:33.109:       1. ADI, ADIMGR, 0, 4:25, 15
16:39:33.109:       2. SWI, SWIMGR, 0, 4:25, 15
16:39:33.109:       3. VCE, VCEMGR, 0, 4:25, 15
16:39:33.109:       4. FXM, ADIMGR, 0, 4:25, 15
16:39:33.109:       5. NFX, NFXMGR, 0, 4:25, 15
16:39:33.109:       6. FAX, FAXMGR, 0, 4:25, 15
16:39:33.109:       Event: CTAEVN_OPEN_SERVICES_DONE, Finished 
16:39:33.109:    Using 'isd0' protocol...
16:39:33.109:    Echo canceller not started
16:39:33.109:       Event: NCCEVN_START_PROTOCOL_DONE, CTA_REASON_FINISHED
16:39:33.109:    Setting ISDN overriding timeout (39000 ms)
16:39:33.109:       Event: NCCEVN_CALL_DISCONNECTED, NCC_DIS_DIAL_FAILURE
16:39:33.109:    Cancel override timeout (disconnect event)
16:39:33.109:    Setting system variable '@CALLOUT_RESULT' to 'FAILURE'
16:39:33.109:    Setting system variable '@CALLOUT_REASON' to 'DIAL_FAILURE'
16:39:33.109:       Event: NCCEVN_CALL_RELEASED
16:39:33.109:     u-Event: NCCEVN_CALL_RELEASED
16:39:33.109:       Event: NCCEVN_STOP_PROTOCOL_DONE, CTA_REASON_FINISHED
16:39:33.109:       Event: CTAEVN_DESTROY_CONTEXT_DONE, Finished 
16:39:33.109:    Setting system variable '@SYS_CALL_DIRECTION' to 'OUT'
16:39:33.109:    FAILURE


Speculations:
  • I guess that the fact of having two ISDN PRI T1s with master clocks provided by different sources, makes it difficult for the NMS board to synchronize the D-Channels and successfully perform the outbound call. If I'm right, I guess this will also affect when I try to switch both channels (the one with the inbound call from the PBX and the one with the outbound call over the PSTN).

    Solutions?
    If this is the problem, how can I synch the clocks? Should I request that the Nortel PBX inherits the master clock given by the PSTN T1? How do I reflect this on the NMS configuration (.cfg) files?
  • If I just connect the PSTN T1 on slot 0, configured as 12-channels for inbound calls and 11-channels for outbound calls, the call-switching works perfectly. So the PSTN T1 works just fine for outbound calls when dialing-out another 10-digit local phone number, but omiting the 4-digit extension (seems I cannot dial it to reach CIC, so the 10-digit phone number I'm talking about here is a direct CIC number which does not goes through the Nortel PBX at all).

    So, might it be a numbering issue? I also tried dialing just the 10-digit direct CIC phone number over the test scenario, but I got the same result.

    Solutions?
    Should I change the called number types (NATIONAL, LOCAL, INTERNATIONAL) on the Place Call step? What's the syntax for dialing a 4-digit extension after dialing out the 10-digit number (may I use "p"auses or should I "w"ait for dial-tones)? Or should I use two Place Calls steps to do this (reusing the connected call from the first step, on the second step)?

Finally...
On some of the tests, instead of the DIAL_FAILURE value assigned to @CALLOUT_REASON variable, I got 'DIALTONE'... Does that mean the T1 channel didn't provide a dial tone?


Thanks, in advance, for your support and guide.


Back to top
 Profile  
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Fri Nov 27, 2009 5:03 pm 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
You clock configuration may not be your whole problem, but it is a huge one. The scenario you describe will not work as long as the two spans in your system are getting their clocks from two separate sources.

You *might* be able to tell your Nortel PBX to get its clock from the NMS card. That is entirely within the realm of Nortel. There shouldn't be anything special you need to do in your CG configuration. In fact, you can't change the clocking source for an individual trunk. However, if your Nortel PBX also interfaces with the PSTN, you may just be moving the problem from your TeleFlow IVR to your Nortel PBX.


Back to top
 Profile WWW 
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Fri Nov 27, 2009 5:11 pm 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
The second half of your problem is much easier to solve. In order to dial an extension, you first dial only the 10-digit number with the Place Call step. Then, down the success path of this step, place a Wait step followed by a Send TT step. You'll have to experiment with the duration of the Wait step. I suggest you call the CIC yourself and time how long it takes before it is ready to receive an extension. Pad this value a little because telecom equipment don't always answer right away. The Send TT step will do the work of dialing your 4-digit extension.

Note that you won't get call control following the Send TT step, and so it would be best to switch your original caller in right away. They may hear ringing, hold music, or whatever, and then they will hear the agent answer the phone. This is effectively a "blind transfer".

Assuming you get your out-dialing issues resolved, this should work well.


Back to top
 Profile WWW 
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Fri Nov 27, 2009 5:22 pm 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
Some final points:

An @CALLOUT_REASON of "NO_DIALTONE" does indicate that the last Place Call step failed because there was no dial-tone on the channel. Although, on a T1 configured as ISDN, the dial-tone is not a "tone", but a signal on the D-channel. The meaning is the same though, the T1 channel is not ready to dial
out.

The settings of the called number plan and types are - or should be - provided by your telecom provider. You need to check with them what you need to set them to.

I hope I have helped you somewhat. Good luck with your testing.
- Tim.


Back to top
 Profile WWW 
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Wed Dec 23, 2009 9:37 am 
Offline
User avatar

Joined: Fri Feb 06, 2004 11:05 am
Posts: 115
Location: Costa Rica
Trying to avoid the conflict of having two different clocks, I adviced our customer to connect the IVR exclusively to the PBX.

So, they now have two T1s from the PBX to the IVR server, connected to trunks 0 and 1 on the NMS CG6060 board: One for receiving calls, the other one for routing calls to CIC.

However, they cannot still perform outbound calls on the second T1... the same 'DIAL_FAILURE' error appears:

Code:
11:46:51.906: [302] Place Call
11:46:51.906:    Telephone Number '@pPrimary' evaluates to '2829'
11:46:51.906:    Rings before TIMEOUT is '6'
11:46:51.906:    Caller ID '@SEND_ANI' evaluates to ''
11:46:51.906:    Do not capture answering voice length to TeleFlow variable
11:46:51.906:    Silence timeout is ''
11:46:51.906:    Empty Silence timeout defaults to none
11:46:51.906:    Maximum voice length timeout is ''
11:46:51.906:    Empty Maximum voice length timeout defaults to none
11:46:51.906:    ISDN Calling Number Plan is 'ISDN'
11:46:51.906:    ISDN Calling Number Type is 'NATIONAL'
11:46:51.906:    ISDN Called Number Plan is 'ISDN'
11:46:51.906:    ISDN Called Number Type is 'NATIONAL'
11:46:51.906:    Place call to 2829
                 and wait for up to 6 rings
11:46:51.906:    Connect on CED
11:46:51.906:    Connect on SIT
11:46:51.906:    send our Caller ID as ''
11:46:51.906:    Do not perform initial voice length detection.
11:46:51.906:    Open port 25
11:46:51.906:       Board: 0 stream: 4 slot: 25
11:46:51.906:    NMS Services:
11:46:51.906:       0. NCC, ADIMGR, 0, 4:25, 15
11:46:51.906:       1. ADI, ADIMGR, 0, 4:25, 15
11:46:51.906:       2. SWI, SWIMGR, 0, 4:25, 15
11:46:51.906:       3. VCE, VCEMGR, 0, 4:25, 15
11:46:51.906:       4. FXM, ADIMGR, 0, 4:25, 15
11:46:51.906:       5. NFX, NFXMGR, 0, 4:25, 15
11:46:51.906:       6. FAX, FAXMGR, 0, 4:25, 15
11:46:51.906:       Event: CTAEVN_OPEN_SERVICES_DONE, Finished
11:46:51.906:    Using 'isd0' protocol...
11:46:51.906:    Echo canceller not started
11:46:51.906:       Event: NCCEVN_START_PROTOCOL_DONE, CTA_REASON_FINISHED
11:46:51.906:    Setting ISDN overriding timeout (39000 ms)
11:46:51.906:       Event: NCCEVN_CALL_DISCONNECTED, NCC_DIS_DIAL_FAILURE
11:46:51.906:    Cancel override timeout (disconnect event)
11:46:51.906:    Setting system variable '@CALLOUT_RESULT' to 'FAILURE'
11:46:51.906:    Setting system variable '@CALLOUT_REASON' to 'DIAL_FAILURE'
11:46:51.906:       Event: NCCEVN_CALL_RELEASED
11:46:51.906:     u-Event: NCCEVN_CALL_RELEASED
11:46:51.906:       Event: NCCEVN_STOP_PROTOCOL_DONE, CTA_REASON_FINISHED
11:46:51.906:       Event: CTAEVN_DESTROY_CONTEXT_DONE, Finished
11:46:51.906:    Setting system variable '@SYS_CALL_DIRECTION' to 'OUT'
11:46:51.906:    FAILURE


I also tested the NMS board with the ctatest diagnostic utility from the NMS drivers: When I issue the Place Call command, I get the "invalid handle" message (CTAERR_INVALIDHDL or something like that).

The trunkmon utility shows no alerts (local or remote) and no frame or synch errors while this happens.

So, I'm not sure about a number of things... The PBX guys ask me if I have activated both D-channels (one from each T1) or if I'm managing both T1s (46/47 voice channels) with just one D-channel (48th). I have no clue, so I need to know:
  • If I'm using one or two D-channels
  • If I'm using just one, how do I activate or use the second D-channel
  • if I'm using two D-channels, how do I specify their clock sources so that they are both in synch to the PBX's clock (which acts as Master)

I'm pasting the board configuration file here because the forum page does not allow .cfg files:
Code:
#===============================================================================
#     PDOM-CG6060.cfg
#
#     This file configures the board to run Voice and Fax with ISDN PRI
#
#     Board settings:
#     Product = CG_6060 or  CG_6060C
#
#===============================================================================

#---------------------------
#  Clock configuration
#---------------------------
Clocking.HBus.ClockMode                      = STANDALONE
Clocking.HBus.ClockSource                    = NETWORK
Clocking.HBus.ClockSourceNetwork             = 1

# (NMS) use of DSP.C5x[x].Os is recommended
DSP.C5x[0..47].Os                            = dspos6u
DSP.C5x[0..47].Libs                          = cg6klibu
DSP.C5x[0..47].XLaw                          = MU_LAW

# (fesq) This would apply if I get the T1 Trunk from the PSTN: { NO | YES }
Hdlc[0..15].Boot                             = YES

# (NMS) There are only 46 channels, so this limit must be explicit
#Hdlc[0..15].RxTimeSlot                       = 48
#Hdlc[0..15].TxTimeSlot                       = 48

#---------------------------
#  T1 configuration
#---------------------------
NetworkInterface.T1E1[0..1].Type            = T1
NetworkInterface.T1E1[0..1].Impedance       = DSX1
NetworkInterface.T1E1[0..1].LineCode        = B8ZS
NetworkInterface.T1E1[0..1].FrameType       = ESF
NetworkInterface.T1E1[0..1].SignalingType   = PRI
NetworkInterface.T1E1[0..1].D_Channel       = ISDN

# (fesq) Should it be 0X7E as used in most T1s?
DSPStream.VoiceIdleCode[0..1]               = 0x7F
DSPStream.SignalIdleCode[0..1]              = 0x00

#-------------------------------------------------------------------------------
# Resource Management
#-------------------------------------------------------------------------------
# Before modifying this resource definition string refer to the CG6060 or
# CG6060C Installation and Developers Manual.
#-------------------------------------------------------------------------------

Resource[0].Name          = MAINPOOL
Resource[0].Size          = 48
Resource[0].TCPs          = nocc isd0
Resource[0].StartTimeSlot = 0

Resource[0].Definitions = \
  (dtmf.det_all & ptf.det_2f & tone.gen & callp.gnc & ptf.det_4f & \
    (nmsfax | \
      (rvoice.rec_mulaw & rvoice.play_mulaw) | \
      (rvoice.rec_alaw & rvoice.play_alaw) | \
      (rvoice.rec_lin & rvoice.play_lin) | \
      (voice.rec_16 & (voice.play_16_100 | voice.play_16_150 | voice.play_16_200)) | \
      (voice.rec_24 & (voice.play_24_100 | voice.play_24_150 | voice.play_24_200)) | \
      (voice.rec_32 & (voice.play_32_100 | voice.play_32_150 | voice.play_32_200)) | \
      (voice.rec_64 & (voice.play_64_100 | voice.play_64_150 | voice.play_64_200)) | \
      (wave.rec_11_16b & wave.play_11_16b) | \
      (wave.rec_11_8b & wave.play_11_8b) | \
      (oki.rec_24 & (oki.play_24_100 | oki.play_24_150 | oki.play_24_200)) | \
      (oki.rec_32 & (oki.play_32_100 | oki.play_32_150 | oki.play_32_200)) | \
      (ima.rec_24 & ima.play_24) | \
      (ima.rec_32 & ima.play_32) | \
      (gsm_ms.frgsm_rec & gsm_ms.frgsm_play) | \
    g726.rec_32 | g726.play_32))
Resource[0].Dsps          = 0 1 2 3 4 5 6 7

DLMFiles[0] = c6060igen
DLMFiles[1] = cg6060fax
DebugMask   = 0x0


Back to top
 Profile  
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Wed Dec 23, 2009 6:26 pm 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
You need to run one instance of 'isdncta' for each D-channel. These utilities must be running at all times in order for your D-channels to be active. For NI2, the syntax for each of the isdncta commands is as follows.

for trunk 1:
Code:
isdncta.exe -b0 -a0 -o20 -c1

for trunk 2:
Code:
isdncta.exe -b0 -a1 -o20 -c1


As for the clock source, you only specify that once for the entire board, and you already have that correct in you board-level configuration file:

Code:
Clocking.HBus.ClockSource         = NETWORK
Clocking.HBus.ClockSourceNetwork  = 1


Are you certain your call plan settings are correct? I think that they are odd for a PBX installation (but I wouldn't know for certain). You could try 'DEFAULT' for all of them and see if that makes a difference.


Back to top
 Profile WWW 
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Mon Dec 28, 2009 1:44 pm 
Offline
User avatar

Joined: Fri Feb 06, 2004 11:05 am
Posts: 115
Location: Costa Rica
Thanks a lot, Tim.

The call plan settings are fine, we checked them out with the PBX guys.

However I wasn't running the second instance of isdncta... my fault!

Everything's up and running now, thanks a lot!


Back to top
 Profile  
 
 Post subject: Re: NMS: Cannot dial-out - Now it's faxes!
PostPosted: Wed Dec 30, 2009 4:13 pm 
Offline
User avatar

Joined: Fri Feb 06, 2004 11:05 am
Posts: 115
Location: Costa Rica
Ok, channel switching for voice calls are working just fine, but I have also a faxing application trying to perform outbound calls...

Originally I had this faxing app on a T1 connected directly to the PSTN and worked just fine.

Now that I have two T1s connected to a local PBX, I have to ask the PBX for an outside line before faxing out... and this is what's not working :(

In order to get an outside line I have to dial this:
  • 8880 to get a double tone, which means "enter authorization code"
  • 2787 which is the authorization code itself
  • 9 to get the outside line
  • 10-digit fax number, as in (809) 227-3277

So, I tried the Fax Send step with "8880w278798092273277", but it fails:
Code:
[25] Fax Send                                                                   
   Rings before TIMEOUT is '10'                                                 
   Telephone number '@pTestNumber' evaluates to '8880w278798092273277'         
   File to send '@pDestDirectory\@vFaxFile' evaluates to                       
     'F:\IVR-Fax40\TIFF\11010000010269_8096160098_A_C_20091230.tif'             
   Adding file 'F:\IVR-Fax40\TIFF\11010000010269_8096160098_A_C_20091230.tif'   
   Open port 40                                                                 
      Board: 0 stream: 4 slot: 40                                               
   NMS Services:                                                               
      0. NCC, ADIMGR, 0, 4:40, 15                                               
      1. ADI, ADIMGR, 0, 4:40, 15                                               
      2. SWI, SWIMGR, 0, 4:40, 15                                               
      3. VCE, VCEMGR, 0, 4:40, 15                                               
      4. FXM, ADIMGR, 0, 4:40, 15                                               
      5. NFX, NFXMGR, 0, 4:40, 15                                               
      6. FAX, FAXMGR, 0, 4:40, 15                                               
      Event: CTAEVN_OPEN_SERVICES_DONE, Finished                               
   Using 'isd0' protocol...                                                     
   Echo canceller not started                                                   
      Event: NCCEVN_START_PROTOCOL_DONE, CTA_REASON_FINISHED                   
   Setting ISDN overriding timeout (63000 ms)                                   
      Event: NCCEVN_PLACING_CALL                                               
      Event: NCCEVN_CALL_PROCEEDING                                             
      Event: NCCEVN_EXTENDED_CALL_STATUS_UPDATE, NCC_X_STATUS_INFO_PROGRESSDESCR
    u-Event: NCCEVN_EXTENDED_CALL_STATUS_UPDATE, NCC_X_STATUS_INFO_PROGRESSDESCR
      Event: NCCEVN_CALL_DISCONNECTED, NCC_DIS_REORDER                         
   Cancel override timeout (disconnect event)                                   
   Setting system variable '@CALLOUT_RESULT' to 'BUSY'                         
   Setting system variable '@CALLOUT_REASON' to 'REORDER'                       
      Event: NCCEVN_CALL_RELEASED                                               
    u-Event: NCCEVN_CALL_RELEASED                                               
      Event: NCCEVN_STOP_PROTOCOL_DONE, CTA_REASON_FINISHED                     
      Event: CTAEVN_DESTROY_CONTEXT_DONE, Finished                             
   BUSY


Then the PBX guys tell me that I must first issue the 8880 to get the double tone and then issue the rest of the digits, because that's the way it's supposed to work...

So, I try a Place Call step dialing out "8880" to get a connection and leave the rest of the digits to the Fax Send step... The Place Call step finishes with @CALLOUT_RESULT = 'FAILURE', @CALLOUT_REASON = 'DIALTONE' and goes no further...

If I force the Failure path from the Place Call step to go to the Fax Send step anyway, the Fax Send step fails with @CALLOUT_REASON = 'DISCONNECT' because the Place Call could not connect...

It seems that the double tone that asks for an authorization code is not being recognized as a successfull dial-out connection and the call is disconnected completely.

I also tried this:
Code:
[85] Place Call                   
   Telephone Number is '8880,2787'
...
   Place call to 8880,2787   
   and wait for up to 10 rings
   Connect on CED             
   Connect on SIT             
...
   Setting ISDN overriding timeout (63000 ms)                                   
      Event: NCCEVN_PLACING_CALL                                               
      Event: NCCEVN_CALL_PROCEEDING                                             
      Event: NCCEVN_EXTENDED_CALL_STATUS_UPDATE, NCC_X_STATUS_INFO_PROGRESSDESCR
    u-Event: NCCEVN_EXTENDED_CALL_STATUS_UPDATE, NCC_X_STATUS_INFO_PROGRESSDESCR
      Event: NCCEVN_CALL_DISCONNECTED, NCC_DIS_REMOTE_NOANSWER                 
   Cancel override timeout (disconnect event)                                   
   Setting system variable '@CALLOUT_RESULT' to 'NOANSWER'                     
   Setting system variable '@CALLOUT_REASON' to 'MAX_RINGS'                     
      Event: NCCEVN_CALL_RELEASED                                               
    u-Event: NCCEVN_CALL_RELEASED                                               
      Event: NCCEVN_STOP_PROTOCOL_DONE, CTA_REASON_FINISHED                     
      Event: CTAEVN_DESTROY_CONTEXT_DONE, Finished                             
   Setting system variable '@SYS_CALL_DIRECTION' to 'OUT'                       
   TIMEOUT                                                                     


So, as this attempt also gets NCCEVN_CALL_DISCONNECTED, the Fax Send step also fails with @CALLOUT_REASON = 'DISCONNECT'.

I'd like to only use the Fax Send step so as to keep the call control (recognition of the destination answer as voice or fax machine), but it's OK if I have to use two steps to accomplish and connect the outbound call and blindly execute the Fax Send assuming a remote fax was connected.

Any suggestions?


Back to top
 Profile  
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Tue Jan 05, 2010 12:09 pm 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
Okay... I'm not sure what to suggest here. I suspect your going to have a problem getting past that double-tone.

First of all, in your Fax Send step, you're using a 'w' instead of a ','. I don't think that will give you the desired effect. However, the Fax Send step uses the same dial-out logic as the Place Call step, so if the comma didn't work in Place Call, it won't work in the Fax Send.

I think you are on the right track with using a Place Call first and then routing to a Fax step if the call is successful. Its nice to have the CED (fax-tone) detection, but its not necessary. Make sure that you blank-out the voice detection fields in your Place Call properties; these are "Variable to receive initial voice length", "Silence Timeout", and "Maximum voice length". That will cause the Place Call step to skip the second pass of call progress analysis, which it would otherwise use to measure the voice length.

Also, try calling just 8880 with the Place Call step, and if that succeeds, use a Send TT Step to dial the authorization code, 9 for the outside line and the fax number.


Back to top
 Profile WWW 
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Thu Jan 07, 2010 8:06 am 
Offline
User avatar

Joined: Fri Feb 06, 2004 11:05 am
Posts: 115
Location: Costa Rica
Tim wrote:
I think you are on the right track with using a Place Call first and then routing to a Fax step if the call is successful. Its nice to have the CED (fax-tone) detection, but its not necessary. Make sure that you blank-out the voice detection fields in your Place Call properties; these are "Variable to receive initial voice length", "Silence Timeout", and "Maximum voice length". That will cause the Place Call step to skip the second pass of call progress analysis, which it would otherwise use to measure the voice length.


Nice... they have the default values; I'll blank them out.

Tim wrote:
Also, try calling just 8880 with the Place Call step, and if that succeeds, use a Send TT Step to dial the authorization code, 9 for the outside line and the fax number.


So, should I also blank out the "Telephone number to dial" field in the Fax Send step?


Back to top
 Profile  
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Thu Jan 07, 2010 3:56 pm 
Offline
User avatar

Joined: Fri Feb 06, 2004 11:05 am
Posts: 115
Location: Costa Rica
Ok, I'm making progress here...

The Place Call step without the voice detection variables is connecting just fine now :) So I'm going ahead with the Send TT step.

The Fax Send step needs a fax number, so I left it intact and predialed everything before...

If a global flag set as @pTestMode=1 exists (read from a Configuration.XML file) then I define @pDialOutExt to have the PBX extension and defined @vDialstring to have the authorization code plus the '9' digit before the actual fax number, which I leave intact for the Fax Send step to dial out. This way I may also use @pTestMode=0 in order to skip all of that and go straight to the Fax Send step.

Code:
18:35:02.843:     [85] Place Call
18:35:02.843:        Telephone Number '@pDialOutExt' evaluates to '8880'
18:35:02.843:        Rings before TIMEOUT is '3'
18:35:02.843:        Do not capture answering voice length to TeleFlow variable
18:35:02.843:        Silence timeout is ''
18:35:02.843:        Empty Silence timeout defaults to none
18:35:02.843:        Maximum voice length timeout is ''
18:35:02.843:        Empty Maximum voice length timeout defaults to none
18:35:02.843:        ISDN Calling Number Plan is 'ISDN'
18:35:02.843:        ISDN Calling Number Type is 'NATIONAL'
18:35:02.843:        ISDN Called Number Plan is 'ISDN'
18:35:02.843:        ISDN Called Number Type is 'NATIONAL'
18:35:02.843:        Place call to 8880
                     and wait for up to 3 rings
18:35:02.843:        Connect on CED
18:35:02.843:        Connect on SIT
18:35:02.843:        Do not perform initial voice length detection.
18:35:02.843:        Open port 40
18:35:02.843:           Board: 0 stream: 4 slot: 40
18:35:02.843:        NMS Services:
18:35:02.843:           0. NCC, ADIMGR, 0, 4:40, 15
18:35:02.843:           1. ADI, ADIMGR, 0, 4:40, 15
18:35:02.843:           2. SWI, SWIMGR, 0, 4:40, 15
18:35:02.843:           3. VCE, VCEMGR, 0, 4:40, 15
18:35:02.843:           4. FXM, ADIMGR, 0, 4:40, 15
18:35:02.843:           5. NFX, NFXMGR, 0, 4:40, 15
18:35:02.843:           6. FAX, FAXMGR, 0, 4:40, 15
18:35:02.843:           Event: CTAEVN_OPEN_SERVICES_DONE, Finished 
18:35:02.843:        Using 'isd0' protocol...
18:35:02.843:        Echo canceller not started
18:35:02.843:           Event: NCCEVN_START_PROTOCOL_DONE, CTA_REASON_FINISHED
18:35:02.843:        Setting ISDN overriding timeout (21000 ms)
18:35:02.906:           Event: NCCEVN_PLACING_CALL
18:35:02.906:           Event: NCCEVN_CALL_PROCEEDING
18:35:02.906:           Event: NCCEVN_CALL_CONNECTED, NCC_CON_SIGNAL
18:35:02.906:        Cancel override timeout (call connected)
18:35:02.906:        Setting system variable '@CALLOUT_RESULT' to 'CONNECT'
18:35:02.906:        Setting system variable '@CALLOUT_REASON' to 'CONNECT'
18:35:02.906:        Setting system variable '@SYS_CALL_DIRECTION' to 'OUT'
18:35:02.906:        Setting system variable '@SYS_CALLREF' to '9488'

18:35:02.906:     [101] Send TT
18:35:02.906:        Touch tones to generate '@vDialstring' evaluates to ',,2787,,9'
18:35:02.906:        Tones: ',,2787,,9'
18:35:11.671:           Event: ADIEVN_TONES_DONE, Finished 

I first tested setting @vDialstring='2787,9' but the result was the same:
Code:
18:35:11.671:     [25] Fax Send
18:35:11.671:        Rings before TIMEOUT is '10'
18:35:11.671:        Telephone number '@vFaxNumber' evaluates to '8097326894'
18:35:11.671:        File to send '@pDestDirectory\@vFaxFile' evaluates to
                        'F:\IVR-Fax40\TIFF\11010000010269_8096160098_A_C_20091230.tif'
18:35:11.671:        Adding file 'F:\IVR-Fax40\TIFF\11010000010269_8096160098_A_C_20091230.tif'
18:35:11.671:        FaxSend using current connection
18:35:11.671:           File 1 = 'F:\IVR-Fax40\TIFF\11010000010269_8096160098_A_C_20091230.tif'
18:35:11.671:        Waiting for NFXEVN_SESSION_DONE: 5200B
18:35:11.671:           Event: NFXEVN_SEND_STARTED  *** (00052008)
18:35:46.671:           Event: NFXEVN_SESSION_DONE  *** (NFXERR_NO_REMOTE)
18:35:46.671:  DEBUG: Exiting loop, event.id = 0x5200b, event.value = 0x5021c
18:35:46.671:        Hanging up
18:35:46.718:           Event: NCCEVN_CALL_DISCONNECTED
18:35:46.718:           Event: NCCEVN_CALL_RELEASED
18:35:46.718:         u-Event: NCCEVN_CALL_RELEASED
18:35:46.718:           Event: NCCEVN_STOP_PROTOCOL_DONE, CTA_REASON_FINISHED
18:35:46.718:           Event: CTAEVN_DESTROY_CONTEXT_DONE, Finished 
18:35:46.718:        FAILURE

18:35:46.718:     [102] Run Flowchart
18:35:46.718:        Flowchart is 'Logger'
18:35:46.718:        Setting local variable '@LOG_CODE' to 'fc_Main'
18:35:46.718:        Setting local variable '@DATA' to 'Error al enviar el fax hacia 8097326894'


I manually tested this whole dialing sequence and the test fax answers at the first ring, so the handshake should take place... Any idea what's failing now?


Back to top
 Profile  
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Fri Jan 08, 2010 1:21 pm 
Offline
User avatar

Joined: Fri Feb 06, 2004 11:05 am
Posts: 115
Location: Costa Rica
Did a little more research on the error code: I see the NFXERR_NO_REMOTE seems to be related to the Digital Identification Signal (DIS) not being received...

Might it be related to some PBX-introduced delay or noise in the communication between the NMS board and the remote fax? Should I test with yet another fax machine (I've used two so far with the same result)?

Any hints?


Back to top
 Profile  
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Fri Jan 08, 2010 6:45 pm 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
You could try putting another Place Call step in place of your Fax Send step. That way you can try different options than those offered by Fax Send. For instance, you could route the successful path to a Record step. That way, you will be able to listen to these extra tones you suspect you're getting from your PBX. You could also enable Call Progress Analysis for this 2nd Place Call step and see what it detects. Perhaps you can figure out how to get past whatever audio is interfering, and see if you can detect a fax (CED) tone.


Back to top
 Profile WWW 
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Fri Jan 08, 2010 6:57 pm 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
Secondly, the Fax Send step is supposed to allow you to send a fax without a phone number. The fact that it doesn't is a bug. I'm not sure when it was introduced, but the original design called for being able to send a fax during an existing phone call. I should get that put on the engineering queue and have it changed back.


Back to top
 Profile WWW 
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Mon Jan 11, 2010 9:42 am 
Offline
User avatar

Joined: Fri Feb 06, 2004 11:05 am
Posts: 115
Location: Costa Rica
No prize for bug-hunting? :wink:

I have this sequence:
  • Place Call (initiating connection) to "8880"
  • Send TT to dial the auth code and the extra "9"
  • Fax Send with the destination fax number

... which fails with NFXERR_NO_REMOTE because no DIS signal is detected.

So, following your advice, I tried this:
  • Place Call (initiating connection) to "8880"
  • Send TT to dial the auth code and the extra "9"
  • Place Call (current connection) with the destination fax number
  • Record up to 45s

... but failed with NCCERR_NOT_CAPABLE:
Code:
12:06:39.546: [85] Place Call
12:06:39.546:    Telephone Number '@pDialOutExt' evaluates to '8880'
12:06:39.546:    Rings before TIMEOUT is '3'
12:06:39.546:    Do not capture answering voice length to TeleFlow variable
12:06:39.546:    Silence timeout is ''
12:06:39.546:    Empty Silence timeout defaults to none
12:06:39.546:    Maximum voice length timeout is ''
12:06:39.546:    Empty Maximum voice length timeout defaults to none
12:06:39.546:    ISDN Calling Number Plan is 'ISDN'
12:06:39.546:    ISDN Calling Number Type is 'NATIONAL'
12:06:39.546:    ISDN Called Number Plan is 'ISDN'
12:06:39.546:    ISDN Called Number Type is 'NATIONAL'
12:06:39.546:    Place call to 8880
                 and wait for up to 3 rings
12:06:39.546:    Connect on CED
12:06:39.546:    Connect on SIT
12:06:39.546:    Do not perform initial voice length detection.
12:06:39.546:    Open port 40
12:06:39.546:       Board: 0 stream: 4 slot: 40
12:06:39.546:    NMS Services:
12:06:39.546:       0. NCC, ADIMGR, 0, 4:40, 15
12:06:39.546:       1. ADI, ADIMGR, 0, 4:40, 15
12:06:39.546:       2. SWI, SWIMGR, 0, 4:40, 15
12:06:39.546:       3. VCE, VCEMGR, 0, 4:40, 15
12:06:39.546:       4. FXM, ADIMGR, 0, 4:40, 15
12:06:39.546:       5. NFX, NFXMGR, 0, 4:40, 15
12:06:39.546:       6. FAX, FAXMGR, 0, 4:40, 15
12:06:39.546:       Event: CTAEVN_OPEN_SERVICES_DONE, Finished 
12:06:39.546:    Using 'isd0' protocol...
12:06:39.546:    Echo canceller not started
12:06:39.546:       Event: NCCEVN_START_PROTOCOL_DONE, CTA_REASON_FINISHED
12:06:39.546:    Setting ISDN overriding timeout (21000 ms)
12:06:39.609:       Event: NCCEVN_PLACING_CALL
12:06:39.609:       Event: NCCEVN_CALL_PROCEEDING
12:06:39.625:       Event: NCCEVN_CALL_CONNECTED, NCC_CON_SIGNAL
12:06:39.625:    Cancel override timeout (call connected)
12:06:39.625:    Setting system variable '@CALLOUT_RESULT' to 'CONNECT'
12:06:39.625:    Setting system variable '@CALLOUT_REASON' to 'CONNECT'
12:06:39.625:    Setting system variable '@SYS_CALL_DIRECTION' to 'OUT'
12:06:39.625:    Setting system variable '@SYS_CALLREF' to '11376'

12:06:39.625: [101] Send TT
12:06:39.625:    Touch tones to generate '@vDialstring' evaluates to ',,2787,,9'
12:06:39.625:    Tones: ',,2787,,9'
12:06:48.390:       Event: ADIEVN_TONES_DONE, Finished 

12:06:48.390: [122] Place Call
12:06:48.390:    Telephone Number '@vFaxNumber' evaluates to '8097326894'
12:06:48.390:    Rings before TIMEOUT is '5'
12:06:48.390:    On-hook time is '500'
12:06:48.390:    Do not capture answering voice length to TeleFlow variable
12:06:48.390:    Silence timeout is ''
12:06:48.390:    Empty Silence timeout defaults to none
12:06:48.390:    Maximum voice length timeout is ''
12:06:48.390:    Empty Maximum voice length timeout defaults to none
12:06:48.390:    ISDN Calling Number Plan is 'ISDN'
12:06:48.390:    ISDN Calling Number Type is 'NATIONAL'
12:06:48.390:    ISDN Called Number Plan is 'ISDN'
12:06:48.390:    ISDN Called Number Type is 'NATIONAL'
12:06:48.390:    Place call to 8097326894
                 on the current connection using a flash hook length of 500
                 and wait for up to 5 rings
12:06:48.390:    Connect on CED
12:06:48.390:    Connect on SIT
12:06:48.390:    Do not perform initial voice length detection.
12:06:48.390:    ERROR: PlaceCall::nccHoldCall failed
12:06:48.390:          (1835009) NCCERR_NOT_CAPABLE
12:06:48.390:    FAILURE


So, I tried this:
  • Place Call (initiating connection) to "8880"
  • Send TT to dial the auth code and the extra "9"
  • Send TT with the destination fax number
  • Record up to 45s

... and worked. I'll send the recording by e-mail (the forum does not allow attaching of WAVs) in which I notice a sudden bump/silence around the 11th second during the fax handshake. I tested several times and the same interruption happens every time.

I don't know if that's enough to thwart the communication between both devices, considering the remote fax continues to send its handshake signal several times...

Hints?


Back to top
 Profile  
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Tue Jan 12, 2010 5:22 pm 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
I think you might be there. All you are missing is the ability for the Fax Send step to take over in place of that Record step. Unfortunately, the TeleFlow Server you have won't allow that. So... your prize for bug-hunting will have to be an updated TFServer without the bug.

I'll see if I can find out how long that will be...


Back to top
 Profile WWW 
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Thu Jan 14, 2010 11:56 am 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
I sent you an email with a patch to TeleFlow. It should allow you to issue a Fax Step with no phone number. You can try your most-recent test with a Fax Send instead of the Record step. Hopefully, this will do the trick.


Back to top
 Profile WWW 
 
 Post subject: Re: NMS: Cannot dial-out
PostPosted: Thu Jan 14, 2010 5:33 pm 
Offline
Site Admin

Joined: Wed Dec 31, 1969 5:00 pm
Posts: 329
Location: Vancouver, BC
I just sent the email again; this time with a link to the patch.


Back to top
 Profile WWW 
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 18 posts ] 

Board index : TeleFlow Forums : TeleFlow Server & Monitor


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Style by Midnight Phoenix & N.Design Studio
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.