HOME

Dial Engine Pro - Help

 

For common questions see  --->

For applications/samples see --->

* How to use Dial Engine Pro from the command line?
* How to get rid of 'Run Busy Detect' startup message?
* How to use script?
* How to override options?
* How to recover from errors?
* Using the test file to diagnose hardware or software problems
* Developers corner

    * How to use Dial Engine Pro from the command line?
 To enable, in Options>Dialing tab select "Accept command line trailing parameters",  as shown on Figure 3.
Dial Engine Pro accept dialing requests at the command line:
        \application path\dial.exe /(123)-555 6789
or
        \application path\dial.exe 123555 6789
the "/" is not necessary and the dialing sequence does not need to follow any specific format.

Depending on usage Windows may require the command to be enclosed in quotation marks:
        "C:\Program Files\Dial Engine Pro\dial.exe" /4162340553

Preceding a phone number with the double characters "XX" will force dialer not to use Dialing Properties (the number will be dialed exactly as entered).
Preceding a phone number with the characters "ZZ##" will force dialer to use specific Calling Card for that number (ignoring selected Calling Card in Dialing Properties), where ## is Calling Card ID number.

For example to dial 1(876) 123-4567 using Calling Card: "US Sprint Direct Dial via 10103331" :
        \application path\dial.exe /ZZ09 1(876) 123-4567

To fully automate dialing process Dial Engine Pro has the following available options after making a phone call:
1. automatically dropping phone line (after specified time) in Options>Dialing tab window. 
2. close Dial Engine Pro
 or
3. stay minimized (on taskbar or Systray) after manually clicking OK button confirming connected call.
 

Commands accepted by Dial Engine Pro

Command

Task Example Remarks
(555)-2340553 Dial Phone No "....\dial.exe" 5552340553
"....\dial.exe" /5552340553
"....\dial.exe" (555)-2340553
phone number does not need to be formatted:  it will be dialed according to Dialing Properties rules

xx

Ignore Dialing Properties "....\dial.exe" XX5552340553
 "....\dial.exe" xx5552340553
"....\dial.exe" /xx5552340553

ignore Dialing Properties and dial phone number (555)-234 0553 exactly as entered

cc## Select Calling Card "....\dial.exe" CC065552340553 select 06-th Calling Card
loc# Select Current Location "....\dial.exe" loc25552340553 select 2nd Location in Dialing Properties
loc#cc##  using simultaneously "....\dial.exe" loc2cc075552340553 2nd Current Location 07th Calling Card as shown in Dialing Properties
flash flash hook "....\dial.exe" /flash resetting a phone line
0-9,#,*,A-D DTMF tones "....\dial.exe" /{any digits combination} after phone call connection is made sending additional DTMF tones
datamodem connects to another modem "....\dial.exe" /datamodem test for the presence of modem receiving your call
script reads and executes script "....\dial.exe" /script script file set in Options will be used
script <path> reads and executes script "....\dial.exe" /script c:\script11.txt script file specified on command line will be used
hangup End phone call "....\dial.exe" /hangup drop active connection
setup access to Options "....\dial.exe" /setup opens Options window
default set default options ".[...]\dial.exe" /default all options are set to default values
min minimize dialer's window "[...]\dial.exe" /min dialer will start in minimize mode

 * Using script
A script is a plain text file where each line contains an individual command.
To see the list of available commands and a sample script, click on the Help button beside that option.
Note:
Script can be invoked by 2 methods:
1.
 - select this option and specify the script file.
 - save Options by clicking on OK button.
 - mouse right click on DEP systray's icon and select 'Run Script' from pop-up menu
or
 - make outgoing call:
      -when the script begins with dial: command  ---> close dialer and start it from the command prompt
       -in all other cases input the phone number in the field provided above the keypad and click DIAL button.
 When the call changes to 'Connected' state, script execution will begin.
2.
 - start dialer from the command line using one of the following commands:
        <path>dial.exe /script     (this will use the script file specified in Options)
       <path>dial.exe /script:<full path to the script file>     (this will use the script file specified on this line)
Important:
When using scripts it is very important to synchronize timing between commands by using the <wait: # > command.
<monitor_dtmf: #> or <monitor_dtmf> commands must be always followed by the <wait: #> command.
See samples by using Help button beside the 'Use Script' option.
Using Script Simulator:
Click TEST button to start Script Simulator. A new window will pop open showing the real time script execution.
When the script waits for the keypad input, click on the desired key on the DEP keypad.
This is the best way to test your script, fine tune it and make sure that it does what the script was intended to do.
Note:
<dial> command starts a simulated action; it will not use the modem and phone line.
Remarks:
Because Script Simulator does not use a modem at all,  it is possible to test scripts even if the modem is not a voice modem or the modem is not able to generate (or receive) DTMF tones.

Script commands accepted by Dial Engine Pro

COMMAND TASK

err_key:#

when a specified key is pressed,  the <monitor_dtmf: #> or <monitor_dtmf> action will stop and the err_mess will be played.
err_message: <file> message to be played when err_key (above) is invoked.
err_wrong_key_message: # when not expected key is pressed,  the last played message will play again if the value # is 0 <default>
err_wait: # time delay in seconds: must be long enough to play error message
(65 secs max)
err_line: # when err_key is invoked, the script will continue from the specified line after err_wait time delay (above).
err_timeout: # when no response is received, monitoring DTMF tones will stop after # seconds (default is 65 seconds) and the next line command after <wait:# > command will be executed.
dial:<phone number> make outgoing phone call.
When a call already exists this command will be ignored.
     monitor_dtmf:# <action> wait for specified tone# and perform action.
<action> can be any valid script command except <play:>.
Often, it will be <go_line:#> or <hangup>
This command (or group) must be followed by <wait:# > command.
monitor_multi_dtmf:# <action> wait for specified series of tones# and perform action.
<action> can be any valid script command except <play:>.
Often, it will be <goto_line:#> or <hangup>
This command (or group) must be followed by <wait:# > command.
monitor_dtmf store all keystrokes in file tones.txt, until # (pound) key is pressed.
This command must be followed by a <wait:# > command
dialdtmf:<0...9,#,*> send DTMF tones
wait:# program waits # of secs before executing next command
go_line:# jumps to specified script line
go_line:# loop:# repeated jumping to specified line # times (loop #)
go_line:# loop:# go_line:## after # times (loop #) jumping to script line #, it will continue script execution from line ##.
alert:<file> this is one of the <action>.  It will play the selected file over PC speakers to alert the operator.
callerid:<CallerID> <go_line:#> when the Caller ID matches expected value, then
the script execution will jump to the specified script line
callerid this command will put Caller ID on clipboard
answer:<#> incoming call will be answered after # of rings
runapp:<path to executable> it will launch the specified file
runapp:<path to executable>/callerid it will launch the specified file with the Caller ID as a trailing parameter
flash it will perform flashook or off-hook
hangup disconnect and drop the phone line
end disconnect, drop the phone line and end script processing
delete delete the script file
// this line is ignored (it is used for making comments)
   

 Important:
     err_... commands when used, should precede all other commands.
                but it is not necessary to use them at all.
     Script must end with <end> command. 

Ask me, if you need another command or action. 
Script will be invoked automatically the next time Dial Engine Pro is called or manually by using systray DEP icon's pop-up menu.            back to the top

 * How to recover from errors?
Resetting DEP options to default values may help.

 To do that start DEP with "default" as a trailing parameter:
   [...] \dial.exe /default            
back to the top

  * Using the test file to diagnose hardware or software problems
 
1. Click  here to download the test file (371 kB)
 2. Run it and use it the same way you were using the original file, until the problem (error) appears.
 3. Close program.
 4. Find TapiLog.txt log file in the same folder the test file was run from.
 5. Send that file to
author.
     Please make sure to add comments saying what you are doing externally and where you think the problem is.
Note:
 When the error is a 'run-time' type error it causes the premature program termination and TapiLog.txt log file will not be generated.
In that case run the test file with /tapilog suffix (<path><dial_test.exe /tapilog) and the second diagnostic window will open. Just save it's content and send it to author.
           back to the top

* How to get rid of 'Run Busy Detect' startup message?
 A properly detected busy signal is very important for the determination of the Connected phone line state.
It is recommended to use the Detect Busy utility. See it in the >Options>Hardware tab.
If for some reason your device cannot detect busy (for example, your phone company may provide voice mail instead of a busy signal), there are 3 other methods you can use:
1.
Disconnect phone line from your modem and c
lick on Start button beside this option. Enter any number when asked.
Click OK and wait until no dialtone detection will end.  Real time call progress is displayed in small box beside the Start button.
2.
Make a phone call and measure the time it takes to the first audible ring. Manually insert that number into the Busy Detect option in the Tools>Options>Hardware tab and click OK to save the options. The value should be between 8-13 seconds for most modems.
3.
 Find the dial.ini file located in:
Windows XP:
C:\Documents and Settings\<user name>\Application Data\Dial Engine Pro\dial.ini
Windows Vista and Windows 7:
C:\Users\<user name>\AppData\Roaming\Dial Engine Pro\dial.ini

Open it in a word editor (Notepad, MsWord) and do the following:
 - find Busy Detect=0 and change it to Busy Detect=1
 - find Busy Delay Timer and change it to Busy Delay Timer=13

Note:
The busy detect value is stored into dial.ini on dialer's termination.                                 
back to the top

* How to override options?
 Normally options should be set by the user using DEP's Options window.
There are several ways to access Options window:
 - double click on DEP systray icon
 - mouse right click on DEP systray icon and from pull-up menu select Options
 - start DEP with /setup suffix:    [path]dial.exe /setup

The options preferences are stored in:
Windows XP:
C:\Documents and Settings\<user name>\Application Data\Dial Engine Pro\dial.ini
Windows Vista and Windows 7:
C:\Users\<user name>\AppData\Roaming\Dial Engine Pro\dial.ini

To set all options to default values run application with /default suffix:  <path>dial.exe /default        back to the top
 

* Developers corner
 Dialer can be controlled by using the following 3 methods:
   * from the command line prompt:  see How to use Dial Engine Pro from the command line?
   * Simple VB code sample how to invoke dialer and make a phone call.
   * Windows text messaging by using SendMessage() API
Note:
     1.
       For the list of available commands see: http://www.phonedialerpro.com/faq_dep.htm#command_line
     2.
       When using SendMessage() API:

   LRESULT SendMessage(      
    HWND hWnd,
    UINT Msg,
    WPARAM wParam,
    LPARAM lParam
   );

    hWnd
          retrieve and use the value stored in Windows registry: HKEY_CURRENT_USER\Software\Jacek Kozlowski\Excel Dialer Pro\hkey
     Msg
          use WM_COPYDATA
     wParam
          0
     lParam
           structure containing information to be send
           .lpData   should contain command
           .dwData = 1 use only with commands: "", "min" and "setup"
           .dwData = 2 use only with "script...." command
           .dwData = 3 use with all other commands                                            back to the top

 


© 2008 Phone Dialer Pro - Home -   - Contact Us -   - Advertisers -   - Support -   - Site Map -

Copyright © 1999-2008 . All rights reserved.
Last revised: February 14, 2010