home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / me100.zip / doc.zip / VCECMDSR.TXT
Text File  |  1994-10-04  |  85KB  |  2,412 lines

  1. 8.   VOICE COMMANDS
  2.  
  3.       The modem may be configured in response to AT voice commands to
  4.     provide enhanced Adaptive Differential Pulse Code Modulation (ADPCM)
  5.     coding and decoding for the compression and decompression of digitized
  6.     voice.  ADPCM compression supports the efficient sto rage of voice
  7.     messages, while optional coder silence deletion and decoder silence
  8.     interpolation significantly increase compression rates The ADPCM Voice
  9.     Mode supports three submodes once a voice connection is established
  10.     (see #CLS command): Online Voice Command Mode, Voice Receive Mode, and
  11.     Voice Transmit Mode.
  12.  
  13. 8.1. VOICE SUBMODES
  14.  
  15. 8.1.1.    Online Voice Command Mode
  16.  
  17.       Online Voice Command Mode is the default Voice submode entered when
  18.     the #CLS=8 command is issued, and may also be entered from Voice
  19.     Receive Mode or Voice Transmit Mode.  Entry into Online Voice Command
  20.     Mode is indicated to the DTE via the VCON message, after which AT
  21.     commands can be entered without aborting the telephone line connection.
  22.     If the modem is the answerer, it enters Online Voice Command Mode
  23.     immediately after going off-hook, and can report instances of DTMF
  24.     tones and calling tones to the DTE.  If the modem is the originator, it
  25.     enters Online Voice Command Mode based on detection of the ringback
  26.     cadence going away, upon expiration of the ringback never came timer,
  27.     or upon detection of answer tone, and the modem can report DTMF tones,
  28.     answer tones, busy tone, and dial tone to the DTE.  (Note that DTMF
  29.     tone reporting is supported in this mode if DTMF reporting is enabled
  30.     via the #VTD command.) When this mode is entered as a result of going
  31.     off-hook with the D or A command, VCON is always sent to the DTE, after
  32.     which the modem accepts commands.  If this mode is entered from Voice
  33.     Transmit Mode, the DTE has issued the <DLE><ETX>, and the modem res
  34.     ponds with VCON.  If this mode is entered from the Voice Receive Mode
  35.     because of a key abort, the modem issues the <DLE><ETX> followed by
  36.     VCON.  If the #VLS command has switched in a handset or other device in
  37.     place of the telephone line, Online Voice Command Mode is immediately
  38.     entered, whereas if the telephone line is selected, a physical
  39.     connection with another station must occur before entering this mode.
  40.  
  41. 8.1.2.    Voice Receive Mode
  42.  
  43.       Voice Receive Mode is entered when the DTE issues the #VRX command
  44.     because it wants to receive voice data.  This typically occurs when
  45.     either recording a greeting message, or when recording voice messages
  46.     from a remote station.  In Voice Receive Mode, voice samples from the
  47.     modem analog-to-digital converter (ADC) are sent to the ADPCM codec for
  48.     compression, and can then be read by the host.  AT commands control the
  49.     codec bits-per-sample rate and select (optional) silence deletion
  50.     including adjustment of the silence detection period.  In this mode,
  51.     the modem detects and reports DTMF, dial tone, busy tone cadence, and
  52.     inactivity (periods of silence) as enabled by the #VTD and #VSS
  53.     commands, respectively.  The modem can exit the Voice Receive Mode only
  54.     via a DTE Key Abort, or via Deadman Timer expiration (S30).
  55.  
  56. 8.1.3.    Voice Transmit Mode
  57.  
  58.       Voice Transmit Mode is entered when the DTE issues the #VTX command
  59.     because it wants to transmit voice data.  In this mode, the modem
  60.     continues to detect and report DTMF and calling tones if enabled by the
  61.     #VTD command.  This mode is typically used when playing back greeting
  62.     messages or previously received/recorded messages.  In this mode, voice
  63.     decompression is provided by the codec, and decompressed data is
  64.     reconstituted into analog voice by the DAC at the original voice
  65.     compression quantization sample-per-bits rate.  Optional silence
  66.     interpolation is enabled if silence delet ion was selected for voice
  67.     compression.
  68.  
  69.  
  70. 8.2. VOICE CAPABILITIES
  71.  
  72. 8.2.1.    Call Establishment - Originate
  73.  
  74.       Directed Originate (Dial as a specific modem type) For most call
  75.     originations, it is known ahead of time what type of call is being
  76.     attempted, and it is acceptable to disconnect if the remote side of the
  77.     connection does not cooperate.  In this case, the modem can be
  78.     configured ahead of time with the existing +FCLASS (and +FAA=0) or the
  79.     #CLS command to be a data, fax, or voice modem.  For Data and Fax
  80.     Modes, the modem subsequently either succeeds with the desired type of
  81.     connection, or eventually hangs up.  For the Voice Mode, the DTE has
  82.     the option of hanging up if there are indications that the remote
  83.     station has not answered in voice, thus implementing a directed
  84.     originate for voice.  The following are the three connection type
  85.     choices: Voice The modem dials and reports call progress to the DTE,
  86.     which reduces to reporting "NO DIALTONE," or "BUSY." The modem allows
  87.     the DTE to program a time period, which if elapsed after any ringback
  88.     is detected, forces the modem to assume the remote has gone off-hook.
  89.     A secondary time period (safety valve) can define a maximum elapsed
  90.     time after dialing for receiving no ringback before the modem assumes
  91.     that the remote has gone off-hook.  This safety valve is devised in
  92.     case the remote picks up the telephone before any ringback is
  93.     generated, and no other tones are detected.  In this mode, the modem is
  94.     attempting to make a voice connection only and therefore, while
  95.     waiting for ringback to disappear, it is also feasible to disconnect
  96.     upon detection something which is definitely not voice from the remote,
  97.     such as any answer tone.  The modem provides detection of "ringback
  98.     went away or never came".  Fax The modem dials and reports call
  99.     progress to the DTE as in all modes.  A fax Class 1 or Class 2
  100.     handshake is pursued according to the current configuration.  Data The
  101.     modem dials and reports call progress to the DTE as in all modes.  A
  102.     data handshake is pursued according to the current configuration.
  103.     Adaptive Originate (Dial with Voice/Data/Fax Discrimination) The DTE
  104.     may wish to originate a call which adapts to the remote answerer.  For
  105.     instance, the user may wish to send a voice message if a human picks up
  106.     the telephone, but a facsimile if a fax machine answers.  The modem can
  107.     facilitate this type of adaptive originate by extending what it does
  108.     for the directed originate modes.  After determining that the remote
  109.     station has picked up the line, the modem goes back to Online Voice
  110.     Command Mode, thus terminating the "connecting state." Once in this
  111.     mode, the modem reports what it receives from the answerer via specific
  112.     result codes to the DTE.  The DTE can then have the option of pursuing
  113.     a data, fax, or voice connection.
  114.  
  115. 8.2.2.    Call Establishment - Answer
  116.  
  117.       Directed Answer (Answer as a specific modem type) If the DTE wants to
  118.     be only one kind of answerer (i.e., voice, fax, or data), it can
  119.     configure the modem to answer exclusively in the chosen mode.  Voice
  120.     The modem is configured to answer in Voice Mode only and assumes the
  121.     caller will cooperate.  After going off-hook, the voice VCON is issued,
  122.     no answer tone is generated, and the modem is immediately placed in
  123.     Online Voice Command Mode.  The DTE typically responds by sending a
  124.     greeting message of some type, and DTMF tone recognition/reporting can
  125.     be enabled.  Eventually, an incoming voice message can be recorded by
  126.     the host.  (Unpredictable results occur if the caller is not prepared
  127.     for a voice call.) Fax The modem is configured to answer in Class 1 or
  128.     Class 2 Fax Mode only, and it assumes the caller is going to cooperate.
  129.     This configuration has the effect of disabling Voice Mode, forcing
  130.     +FCLASS to either 1 or 2, and forcing both +FAA and +FAE to 0.  Data
  131.     The modem is configured to answer in Data Mode only and assumes the
  132.     caller is going to cooperate.  This configuration has the effect of
  133.     disabling Voice Mode, forcing +FCLASS = 0, and forcing both +FAA and
  134.     +FAE to 0.  Adaptive Answer (Answer with Voice/Data/Fax Discrimination)
  135.     In normal operation, it is desirable for a modem supporting fax and
  136.     voice to provide the ability to discriminate between the two when
  137.     answering unsolicited or unattended calls.  (It is most often the case
  138.     that a fax is received or a voice message recorded when nobody is
  139.     present.) Data/Fax Discrimination If the DTE wishes to allow for a data
  140.     or fax call, the +FCLASS and +FAA or +FAE commands can be configured
  141.     for adaptive answer between data and Class 1 or Class 2 fax.  Voice/Fax
  142.     Discrimination This is the most important discrimination capability
  143.     needed from the user's standpoint.  The modem must be configured for
  144.     Voice (#CLS=8), causing the modem to enter Online Voice Command Mode
  145.     immediately upon going off-hook.  In Voice Mode, the DTE automatically
  146.     receives indications of DTMF tones and Calling Tones.  The DTE can now
  147.     switch to Voice Transmit Mode in order to play a greeting message,
  148.     perhaps one which instructs the caller how to enter specific DTMF
  149.     sequences to switch modes.  The DTE can then react to the response, or
  150.     the lack thereof, to such a message.  The modem supports switching to a
  151.     Class 1 or Class 2 answer mode by virtue of the #CLS=1 or 2 commands,
  152.     and if such a switch is made and fails, the modem reports the failure
  153.     but does not hang up, allowing the DTE further experimentation time.
  154.     If the user wishes to switch to Class 1 or 2, but also wants the DTE to
  155.     indeed hang up the line if the fax fails, the +FCLASS command should be
  156.     used instead of the #CLS command.  The only difference between these
  157.     commands is that issuing +FCLASS cancels the modem's memory of voice,
  158.     whereas #CLS causes the modem to remain off-hook, even if a fax or data
  159.     handshake fails, until it receives an H command.  Voice/Data/Fax
  160.     Discrimination The DTE can try data modem operation after an answer by
  161.     changing the #CLS setting to 0.  A data handshake attempt can be added
  162.     based upon DTMF responses or lack thereof.
  163.  
  164. 8.2.3.    Voice Data Transfer
  165.  
  166.       A significant area of concern when handling the transfer of voice
  167.     data is the data transfer rate on the modem/DTE interface.  Data
  168.     transfer rates can be expressed as the number of interrupts which must
  169.     be serviced per time period to keep up.  This is a function of the
  170.     sampling rate and compression method (if any) used by the modem, and
  171.     the DTE interface speed required to handle the data flow on the
  172.     telephone line side.  Table 8-1 demonstrates the relationship between
  173.     the sampling rate, interrupt rate, and DTE speed necessary for the
  174.     modem to support various compression ratios.  The 16C550 UART is
  175.     strongly recommended to support Voice Mode operation, and is essential
  176.     for M S Windows environments.
  177.  
  178. Table 8-1.  7.2 KHZ Sample Rate DTE Speeds
  179.  
  180.     Modem Samples per 8-bit Byte
  181.     Required Asynchronous  DTE Speed (8N1 Format)
  182.     Implied DTE Speed Supported
  183.  
  184.     2 (4-bits)
  185.      36,000 bps
  186.      38.4 kbps
  187.  
  188.     2.66 (3-bits)
  189.      27,000 bps
  190.      38.4 kbps
  191.  
  192.     4 (2-bits)
  193.      18,000 bps
  194.      19.2 kbps
  195.  
  196.     Note: The current exclusive sampling rate is 7.2 kHz.
  197.  
  198.  
  199.  
  200.  
  201. 8.2.4.    Tone and Status Monitoring_ Shielded <DLE> Statuses
  202.  
  203.       The modem can detect specific tones and other status information, and
  204.     report these to the DTE while in any of the three voice submodes.  The
  205.     modem simultaneously looks for 1300 and 1100 Hz calling tones when
  206.     answering, and for CCITT and Bell answer tones when originating.  The
  207.     modem can also detect dial or busy tones in any of the three voice
  208.     submodes.  All detected tones, as well as certain other statuses
  209.     addressed in Table 8-2 such as silence and "telset off-hook" (i.e.,
  210.     handset off-hook) are reported as shielded codes.  When in Online
  211.     Voice Command Mode or Voice Transmit Mode, the codes in Table 8-2 are
  212.     sent to the DTE immediately upon verification by the modem of the
  213.     associated tone, status, or cadence.  In this mode, the 2-character
  214.     code is not buffered, nor does the DTE have the ability to stop the
  215.     code with flow control.  If the DTE has started (but not completed)
  216.     sending any AT command, the Tone Monitoring function is disabled until
  217.     the command has been received and processed.  The modem can
  218.     discriminate between single and multiple DTMF tones received.  If
  219.     calling tone, dial tone, busy tone, or answer tone is detected, this
  220.     detection is reported repeatedly (at reasonable intervals) if the DTE
  221.     takes no action, and the tone continues to be detected.
  222.  
  223. Table 8-2. Shielded Codes Sent to the DTE
  224.  
  225. Code Sent to DTE
  226. Meaning
  227.  
  228. <DLE>0 - <DLE>9, <DLE>*, <DLE>#, <DLE>A -<DLE>D
  229.  
  230.       DTMF.  Digits 0 through 9, *, #, or A through D detected by the
  231.     modem, i.e., user has pressed a key on a local or remote telephone.
  232.     The modem sends only one <DLE> code per DTMF button pushed.
  233. <DLE>a
  234.  
  235.       Answer Tone (CCITT).  Send to the DTE when the V.25/T.30 2100 Hz
  236.     Answer Tone (Data or Fax) is detected.  If the DTE fails to react to
  237.     the code, and the modem continues to detect Answer tone, the code is
  238.     repeated as often as once every half second.
  239.  
  240. <DLE>b
  241.  
  242.       Busy.  Sent in Voice Receive Mode when the busy cadence is detected,
  243.     after any remaining data in the voice receive buffer.  The modem sends
  244.     the busy <DLE>b code every 4 seconds if busy continues to be detected
  245.     and the DTE does not react.  This allows the DTE the flexibility of
  246.     ignoring what could be a false busy detection.
  247.  
  248. <DLE>c
  249.  
  250.       Calling Tone.  Sent when the T.30 1100 Hz Calling Tone (Fax Modem) is
  251.     detected in any of the voice operating modes.  The modem assumes that
  252.     the calling tone is valid and sends this code only after 4 seconds of
  253.     proper cadence has been detected.  If the DTE does not react to the
  254.     <DLE>c, and calling tone continues, the code is sent again as often as
  255.     once every 4 seconds.
  256.  
  257. <DLE>d
  258.  
  259.       Dialtone.  Sent in Voice Receive Mode when dial tone is detected
  260.     after any remaining data in the voice receive buffer.  The modem sends
  261.     the <DLE>j code every 3 seconds if dial tone continues to be detected
  262.     and the DTE does not react.  This allows the DTE the flexibility of
  263.     ignoring what could be a false dial tone detection.
  264.  
  265. <DLE>e
  266.  
  267.       European Data Modem Calling Tone.  Sent when the V.25 1300 Hz Calling
  268.     Tone (Data Modem) is detected in a voice submode.  The modem assumes
  269.     that the calling tone is valid, and sends this code only after 4
  270.     seconds of proper cadence has been detected.  If the DTE does not
  271.     react to the <DLE>e and calling tone continues, the code is sent again
  272.     as often as once every 4 seconds.
  273.  
  274. <DLE>f
  275.  
  276.       Bell Answer Tone.  Sent when Bell 2225 Hz Answer Tone (Data) is
  277.     detected.  If the DTE fails to react to the code and the modem
  278.     continues to detect Answer tone, the code is repeated as often as every
  279.     1/2 second.
  280.  
  281. <DLE>h
  282.  
  283.       Hung Up Handset.  Sent immediately when the modem detects that the
  284.     local handset has hung-up (i.e., has transitioned from off-hook to
  285.     on-hook) while in any of the three voice submodes.
  286.  
  287. <DLE>o
  288.  
  289.       Overrun.  Sent in Voice Receive Mode if the voice receive data buffer
  290.     overflows, in which case, the latest data is lost in favor of retaining
  291.     the oldest data in the buffer.  (The DTE may not have been reading data
  292.     from the modem lately.) The modem inserts t he <DLE>o at the end of the
  293.     buffer, thus marking the location where data was lost by the DTE.  The
  294.     modem does not append<E> <D><DLE>o codes to the buffer contiguously.
  295.     If more than one data byte is lost before the DTE begins reading again,
  296.     there is only on <DLE>o code in the data stream.  However, if the DTE
  297.     resumes reading, and then once again allows the buffer to overflow, a
  298.     new <DLE>o is appended to the data by the modem.  Thus, the<E>
  299.     <D><DLE>o does not indicate how many bytes of contiguous data has been
  300.     lost, but may report multiple gaps of lost data in the data stream.
  301.  
  302. <DLE>q
  303.  
  304.       Quiet.  Sent in Voice Receive Mode following any remaining data in
  305.     the receive voice buffer when the silence detection timer (#VSP)
  306.     expires and there has been voice data passed to the DTE.  Note that
  307.     with #VSS=0, the Quiet message never occurs.  But with silence
  308.     deletion turned on, #VSS may not in itself be sufficient since "cracks
  309.     and pops" for a short duration directly after a connection should not
  310.     be considered voice.  In general, <DLE>q is sent if first there was
  311.     sound, and now there is no sound, and means that somebody has stopped
  312.     talking, and according to the criteria selected in the #VSP and #VSS
  313.     settings, is probably not going to start again.  If the DTE ignores the
  314.     <DLE>q code, the modem automatically resets its timer and sends the
  315.     code again if the # VSP time period again expires.  This allows the DTE
  316.     time to react to what may be a false silence detection.
  317.  
  318.  
  319. Table 8-2. Shielded Codes Sent to the DTE (Cont'd)
  320.  
  321. Code Sent to DTE
  322.  
  323. Meaning
  324.  
  325. <DLE>s
  326.  
  327.       Silence.  Sent in Voice Receive Mode after the silence detection
  328.     timer (#VSP) expires and if valid voice has not been detected (#VSS).
  329.     In general, <DLE>s is sent if no sound was detected at all.  This
  330.     differs slightly from Quiet (<DLE>q) in that it can be used by the DTE
  331.     in its discrimination algorithms as a means of determining if anything
  332.     at all is coming from the remote station.  If the DTE ignores the
  333.     <DLE>s code, the modem automatically resets its timer and sends the
  334.     code again if the #VSP time period a gain expires.  This allows the DTE
  335.     time to react to what may be a false detection of silence.
  336.  
  337. <DLE>t
  338.  
  339.       Handset Off-Hook.  Sent one time when the local handset transition
  340.     from on-hook to off-hook is detected in any of the three voice
  341.     submodes.
  342.  
  343. <DLE>u
  344.  
  345.       Underrun.  Sent in Voice Transmit Mode when the voice transmit buffer
  346.     becomes empty without receiving a <DLE><ETX> or <DLE><CAN> command
  347.     first.  The modem remains in transmit mode, but issues the <DLE>u to
  348.     indicate that silence is being generated.  When the DTE resumes sending
  349.     bytes, the modem allows a small number of bytes to build up in the
  350.     buffer before re-enabling the transmitter to avoid repeated underruns.
  351.     However, with the underrun condition, the modem does not wait for the
  352.     XOFF threshold (or timer) to be met before resuming, as it does on an
  353.     initial transmit or resume operation because the remote listener may be
  354.     unaware of the underrun, and keeping the silence short may serve to
  355.     mask the underrun altogether.
  356.  
  357.  
  358. <DLE><ETX>
  359.  
  360.       End of Stream.  <DLE><ETX> is sent to denote the end of a voice data
  361.     stream, similar to fax Class 1 and 2.  This occurs in Voice Receive
  362.     Mode only after the DTE issues the key abort.
  363.  
  364. 8.2.5.    Shielded <DLE> Commands from the DTE
  365.  
  366.       Most commands issued for voice are implemented as extensions to the
  367.     AT command set, and are accepted only if the modem is in a valid
  368.     command mode, such as Online Voice Command Mode.  However, there are
  369.     some operations which are available to the DTE without necessitating a
  370.     switch to Online Voice Command Mode.  The most obvious of these is the
  371.     <DLE><ETX> which the DTE issues during Voice Transmit Mode to terminate
  372.     an output message.  Table 8-3 lists shielded <DLE> commands recognized
  373.     by the modem.
  374.  
  375. 8.2.6.    Voice Record
  376.  
  377.       To effect recording of a message received via a handset or
  378.     microphone, the DTE must configure the modem for Voice Mode (#CLS=8),
  379.     and select the proper relay setup (#VLS) to instruct the modem whether
  380.     to use the auxiliary device.  The modem responds to the #VLS command by
  381.     issuing a relay activate command to select the input device.  When a
  382.     device other than the telephone line is selected, the modem immediately
  383.     enters Online Voice Command Mode (indicated by VCON).  DTMF detection
  384.     is therefore enabled as soon as the DTE selects the device, such as a
  385.     handset, although the user still needs to physically pick up the
  386.     telephone and "press buttons." Even if the DTE has not entered Voice
  387.     Receive or Transmit Modes (#VTX or #VRX), these DTMF tones are
  388.     delivered via shielded codes identically to when a physical telephone
  389.     connection exists but the DTE has not yet commanded receive or
  390.     transmit.  When the DTE decides to record the message, it issues the
  391.     #VRX command and upon command receipt, the modem immediately switches
  392.     to Voice Receive Mode.  Since the microphone or handset is switched in,
  393.     the modem immediately issues the CONNECT message indicating that the
  394.     modem has switched to Voice Receive Mode and is beginning the transfer
  395.     of ADPCM voice data as well as shielded DTMF tones, and other tones and
  396.     statuses.  In this recording state, the modem (if so configured)
  397.     monitors for line silence.  If the #VSP period expires, the modem sends
  398.     the <DLE>q or <DLE>s code to the DTE.
  399.  
  400.     Recording can be canceled only via two events:
  401.     1.   The DTE sends any character to the modem. This is the key abort,
  402.          and is the normal method of terminating the receive mode.
  403.  
  404.     2.   The S30 deadman timer expires, which is generally an undesired
  405.          event.
  406.  
  407. Table 8-3.  Shielded DTE Codes
  408.  
  409. Code Sent to Modem
  410.  
  411. Meaning
  412.  
  413. <DLE><ETX>
  414.  
  415.       Terminate.  Sent during Voice Transmit Mode to indicate that the DTE
  416.     has finished transmitting a voice message.  The modem completes
  417.     transmission of any remaining data in the voice transmit buffer before
  418.     responding with the VCON message and entering Online Voice Command
  419.     Mode.  (This command is ignored by the modem when not in Voice Transmit
  420.     Mode.)
  421.  
  422. <DLE><CAN>
  423.  
  424.       Cancel.  Sent during Voice Transmit Mode to indicate that the DTE has
  425.     finished transmitting a voice message and wants the modem to discard
  426.     any remaining data in the voice transmit buffer.  The modem immediately
  427.     purges its buffer, and then responds with the VCON message entering
  428.     Online Voice Command Mode.  (This command is ignored by the modem when
  429.     not in Voice Transmit Mode.)
  430.  
  431. <DLE>p
  432.  
  433.       Pause.  Sent during Voice Transmit Mode to force the modem to suspend
  434.     sending voice data to the selected output device(s).  Any data
  435.     currently in the voice transmit buffer is saved until either a resume
  436.     (<DLE>r), or cancel <DLE><CAN>, is received, in which case the data is
  437.     lost.  If a <DLE><ETX> is received during the paused state, the modem
  438.     processes it normally, and also automatically resumes transmission of
  439.     the data left in the buffer (appended with <DLE><ETX>).  Any other data
  440.     received from the DTE while in this paused state is placed in the
  441.     transmit buffer according to available space, with flow control active.
  442.     (This command is ignored in other voice submodes.)
  443.  
  444. <DLE>r
  445.  
  446.       Resume.  Sent during Voice Transmit Mode to force the modem to resume
  447.     sending voice data to the selected output device(s).  Any data
  448.     currently in the voice transmit buffer is now played.  (This command is
  449.     ignored in other voice modes.) The pause and resume commands are
  450.     different than a simple suspension of data; data in the buffer is
  451.     "frozen" and not played when the DTE pauses.
  452.  
  453.  
  454. 8.2.7.    Voice Playback
  455.  
  456.       To effect playback of a message recorded via a handset or microphone,
  457.     or of a message recorded during a voice call, the DTE must configure
  458.     the modem for Voice Mode (#CLS=8) and select the proper relay setup
  459.     (#VLS) to instruct the modem whether to use the handset or speaker.
  460.     The modem responds to the #VLS command by issuing a relay activate
  461.     command to select the input device.  The hardware must provide a means
  462.     of selecting a handset and/or microphone instead of the telephone line,
  463.     as this input device.  When a device other that the telephone line is
  464.     selected, the modem immediately enters Online Voice Command Mode
  465.     (indicated by VCON).  DTMF detection is thus enabled as soon as the DTE
  466.     selects the device, such as a handset, although the user still needs to
  467.     physically pick up the telephone before he can issue DTMF tones.  Once
  468.     selected, however, the user can indeed pick up the telephone and "press
  469.     buttons." Even if the DTE has not entered Voice Receive or Transmit
  470.     Modes (#VTX or #VRX), these DTMF tones are delive red via shielded
  471.     codes, identically to when a physical telephone connection exists but
  472.     the DTE has not yet commanded receive nor transmit.  When the DTE
  473.     decides to play the message, it issues the #VTX command, and the modem
  474.     immediately switches to Voice Transmit Mode.  Since the speaker or
  475.     handset is already switched in, the modem immediately issues the
  476.     CONNECT message indicating that the modem is in Voice Transmit Mode
  477.     and is expecting voice data from the DTE.  A subsequent <DLE><ETX> has
  478.     to be issued to switch back to Online Voice Command Mode.
  479.  
  480. 8.2.8.    Voice Call Termination
  481.  
  482. Local Disconnect
  483.  
  484.       The DTE can disconnect from a telephone call by commanding a mode
  485.     change to Online Voice Command Mode (if not already in it), and by
  486.     issuing the H command.  Remote Disconnect Detection When in Voice
  487.     Receive Mode, the modem sends the proper shielded <DLE> code when loop
  488.     break, dial tone, or busy tone is detected.  The modem stays in Voice
  489.     Receive Mode, however, until the DTE issues a key abort to force Online
  490.     Voice Command Mode.  The DTE must issue the H command if it wishes to
  491.     hang up.
  492.  
  493. 8.2.9.    Mode Switching
  494.  
  495. Voice to Fax
  496.  
  497.       If the modem is in Online Voice Command Mode (i.e., it has gone
  498.     off-hook with #CLS=8 in effect), the DTE can attempt a fax handshake by
  499.     setting #CLS=1 or #CLS=2, followed by the A or D command corresponding
  500.     to fax receive or send.  This has the effect of beginning a fax Class
  501.     1 or Class 2 handshake (see #CLS command).  Unsuccessful Fax Connection
  502.     Attempt to Voice A fax handshake which does not succeed, attempted as
  503.     the result of the DTE modifying the #CLS setting from voice (8) to fax
  504.     (1 or 2), does not result in the modem hanging up, allowing the DTE the
  505.     flexibility of commanding a switch back to Voice Mode with #CLS=8.
  506.     Voice to Data If the modem is in the Online Voice Command Mode, the DTE
  507.     can attempt a data handshake by setting #CLS=0 followed by the A or D
  508.     command.  This has the effect of beginning a Data Mode handshake
  509.     according to the current Data Mode S-register and command settings.
  510.     Unsuccessful Data Connection Attempt to Voice A data handshake which
  511.     does not succeed, attempted as the result of the DTE modifying the #CLS
  512.     setting from voice (8) to data (0), does not result in the modem
  513.     hanging up, allowing the DTE the flexibility of commanding a switch
  514.     back to Voice Mode with #CL S=8.
  515.  
  516. 8.2.10.   Caller ID
  517.  
  518.       The modem supports Caller ID by passing the information received in
  519.     Bell 202 FSK format to the DTE after the first RING detect.  The modem
  520.     supports both formatted and unformatted reporting of Caller ID
  521.     information received in ICLID (Incoming Call Line ID) format as
  522.     supported in certain areas of the U.S.  and Canada.  The DTE enables
  523.     this feature via the #CID command.
  524.  
  525. 8.3. AT VOICE COMMAND SUMMARY
  526.  
  527.       Table 8-4 provides a complete summary of the AT voice commands
  528.     described in detail in Sections 8.3.1 and 8.3.2.
  529.  
  530. 8.3.1.    Global AT Command Set Extensions
  531.  
  532.       The AT commands in the following section are global, meaning that
  533.     they can be issued in any appropriate mode (i.e., any #CLS setting).
  534.     For consistency, the command set is divided into action commands and
  535.     parameters (non-action commands).  Those commands which are action
  536.     commands (i.e., those which cause some change in the current operating
  537.     behavior of the modem) are identified as such, and the remaining
  538.     commands are parameters.
  539.  
  540.     ATA - Answering in Voice
  541.  
  542.     The answer action command works analogously to the way it works in
  543.     Data and Fax Modes except for the following:
  544.  
  545.     1.   When configured for Voice Mode (#CLS=8), the modem enters Online
  546.          Voice Command Mode immediately after going off-hook.  When the
  547.          #CLS=8  command is issued, the modem can be programmed to look
  548.          for 1100 and 1300 Hz calling tones (see #VTD), thus eliminatng the
  549.          need to do so as part of A command processing.  After the VCON
  550.          message is issued, the modem re-enters Online Voice Command Mode
  551.          while sending any incoming DTMF or Calling Tone indications to the
  552.          DTE as described in Section 8.2.5.
  553.  
  554.      2.  After answering in Voice Mode (#CLS=8), the DTE, as part of its
  555.          call discrimination processing, can decide to change the #CLS
  556.          setting to attempt receiving a fax in Class 1, or to make a data
  557.          connection. In such a case, the DTE commands the modem to proceed
  558.          with the data or fax handshake via the A command even though the
  559.          modem is already off-hook.
  560.  
  561. Result Code:
  562.  
  563. VCON Issued in Voice Mode (#CLS=8) immediately after going off-hook.
  564.  
  565.  
  566. Table 8-4.  AT Voice Commands
  567.  
  568. Command
  569.  
  570. Function
  571.  
  572. A
  573. Answering in Voice Mode.
  574.  
  575. D
  576. Dial command in Voice Mode.
  577.  
  578. H
  579. Hang up in Voice Mode.
  580.  
  581. Z
  582. Reset from Voice Mode.
  583.  
  584. #BDR
  585. Select baud rate (turn off autobaud).
  586.  
  587. #CID
  588. Enable Caller ID detection and select reporting format.
  589.  
  590. #CLS
  591. Select data, fax, or voice.
  592.  
  593. #MDL?
  594. Identify model.
  595.  
  596. #MFR?
  597. Identify manufacturer.
  598.  
  599. #REV?
  600. Identify revision level.
  601.  
  602. #VBQ?
  603. Query buffer size.
  604.  
  605. #VBS
  606. Bits per sample (ADPCM).
  607.  
  608. #VBT
  609. Beep tone timer.
  610.  
  611. #VCI?
  612. Identify compression method (ADPCM).
  613.  
  614. #VLS
  615. Voice line select (ADPCM).
  616.  
  617. #VRA
  618. Ringback goes away timer (originate).
  619.  
  620. #VRN
  621. Ringback never came timer (originate).
  622.  
  623. #VRX
  624. Voice Receive Mode (ADPCM)
  625.  
  626. #VSD
  627. Silence deletion tuner (voice receive, ADPCM).
  628.  
  629. #VSK
  630. Buffer skid setting.
  631.  
  632. #VSP
  633. Silence detection period (voice receive, ADPCM).
  634.  
  635. #VSR
  636. Sampling rate selection (ADPCM).
  637.  
  638. #VTD
  639. DTMF/tone reporting capability.
  640.  
  641. #VTX
  642. Voice Transmit Mode (ADPCM).
  643.  
  644. ATD - Dial Command in Voice
  645.       The dial action command works analogously to the way it works in Data
  646.     or Fax modes.  When in Voice Mode (#CLS=8):
  647.  
  648.       1.  The modem attempts to determine when the remote has picked up the
  649.     telephone line and once this determination has been made, the VCON
  650.     message is sent to the DTE.  This determination is initially made based
  651.     upon ringback detection and disappearance.  (Se e #VRA and #VRN
  652.     commands.)
  653.  
  654.       2.  Once connected in Voice Mode, the modem immediately enters the
  655.     command state and switches to Online Voice Command Mode which enables
  656.     unsolicited reporting of DTMF and answer tones to the DTE.
  657.  
  658. Parameters:    Same as Data and Fax modes.
  659.  
  660. Result Codes:
  661.  
  662. VCON Issued in Voice Mode (#CLS=8) when the modem determines that the
  663.     remote modem or handset has gone off-hook, or when returning to the
  664.     Online Voice Command Mode.  (See #VRA and #VRN.)
  665.  
  666. NO ANSWER Issued in Voice Mode (#CLS=8) when the modem determines
  667.     that the remote has not picked up the line before the S7 timer expires.
  668.  
  669.  
  670. ATH - Hang Up in Voice
  671.       This command works the same as in Data and Fax modes by hanging up
  672.     (disconnecting) the telephone line.  There are, however, some specific
  673.     considerations when in Voice Mode:
  674.  
  675.       1.  The H command forces #CLS=0, but does not destroy any of the
  676.     voice parameter settings such as #VBS, #VSP, etc.  Therefore, if the
  677.     DTE wishes to issue an H command and then pursue another voice call, it
  678.     must issue a subsequent #CLS=8 command, but it ne edn't reestablish the
  679.     voice parameter settings again unless a change in the settings is
  680.     desired.
  681.  
  682.       2.  The #BDR setting is forced back to 0, re-enabling autobaud.
  683.  
  684.       3.  If the #VLS setting is set to select a device which is not, or
  685.     does not include the telephone line (such as a local handset or
  686.     microphone), the H command deselects this device and reselects the
  687.     normal default setting (#VLS =0).  Normally, the DTE shou ld not issue
  688.     the H command while connected to a local device such as a handset,
  689.     because merely selecting this device results in VCON.  The normal
  690.     sequence of terminating a session with such a device is to use the #VLS
  691.     command to select the telephone line, which by definition makes sure it
  692.     is on-hook.
  693.  
  694.     Parameters:    Same as Data and Fax modes.
  695.  
  696.     Result Codes:  Same as Data and Fax modes.
  697.  
  698.  
  699. ATZ - Reset from Voice Mode
  700.  
  701.       This command works the same as in Data and Fax modes.  In addition,
  702.     the Z command resets all voice related parameters to default states,
  703.     forces the #BDR=0 condition (autobaud enabled), and forces the
  704.     telephone line to be selected with the handset on-hook.  No voice
  705.     parameters are stored in NVRAM so the profile loaded does not affect
  706.     the voice aspects of this command.
  707.  
  708. Parameters:    Same as Data and Fax modes.
  709.  
  710. Result Codes:  Same as Data and Fax modes.
  711.  
  712.  
  713. #BDR - Select Baud Rate (Turn off Autobaud)
  714.  
  715.       This command forces the modem to select a specific DTE/modem baud
  716.     rate without further speed sensing on the interface.  When a valid
  717.     #BDR=n command is entered, the OK result code is sent at the current
  718.     assumed speed.  After the OK has been sent, the modem switches to the
  719.     speed indicated by the #BDR=n command it has just received.  When in
  720.     Online Voice Command Mode and the #BDR setting is nonzero (no autobaud
  721.     selected), the modem supports a full duplex DTE interface.  This means
  722.     that the DTE can enter commands at any time, even if the modem is in
  723.     the process of sending a shielded code indicating DTMF detection to
  724.     the DTE.  When in Online Voice Command Mode and the #BDR setting is
  725.     zero (autobaud selected), shielded code reporting to the DTE is
  726.     disabled.  [Note that when #BDR has been set nonzero, the modem employs
  727.     the S30 Deadman Timer, and this timer starts at the point where #BDR is
  728.     set nonzero.  If this period expires (nominally 60 seconds) with no
  729.     activity on the DTE interface, the modem reverts to #BDR=0 and #CLS=0.]
  730.  
  731. Parameters:    n = 0 - 48 (New baud rate is n*2400 bps)
  732.  
  733. Default:  0
  734.  
  735. Result Codes:
  736.  
  737. OK        If n = 0 - 48.
  738. ERROR     Otherwise.
  739.  
  740. Command options:
  741.  
  742. #BDR?     Returns the current setting of the #BDR command as an ASCII decimal value in result code format.
  743.  
  744. #BDR=?    Returns a message indicating the speeds that are supported.
  745.  
  746. #BDR=0    Enables autobaud detection on the DTE interface.
  747.  
  748. #BDR=n    Where 1<n<48.  Sends OK message at current speed, then
  749.           switches to the new speed defined by n*2400 bps unless and until
  750.           another #BDR=n command is received.  Autobaud is disabled, and
  751.           the character format is maintained at the format most recently
  752.           detected.
  753.  
  754.  
  755. #CID - Enable Caller ID Detection and Select Reporting Format
  756.  
  757.       This command selects or disables Caller ID recognition and reporting
  758.     in any mode.
  759.  
  760. Parameters:    n = 0, 1, or 2
  761.  
  762. Default:  0
  763.  
  764. Result Codes:
  765.  
  766. OK   n = 0, 1, or 2.
  767. ERROR     Otherwise.
  768.  
  769.  
  770. Command options:
  771.  
  772. #CID?  Returns the current setting (0,1 or 2) of the #CID command as
  773.     an ASCII decimal value in result code format.
  774.  
  775. #CID=? Returns the message, "0,1,2".
  776.  
  777. #CID=0 Disables Caller ID.
  778.  
  779. #CID=1 Enables formatted Caller ID reporting of ICLID SDM (Single Data
  780.     Message)  and MDM (Multiple Data Message) packets.
  781.  
  782. #CID=2 Enables unformatted Caller ID reporting of any ICLID packet received
  783.     after the first RING cycle
  784.     including SDM, MDM, or call waiting packets.
  785.  
  786. #CLS - Select Data, Fax,
  787.     or Voice This command selects Data, Fax, or Voice Mode from operation
  788.     in any mode.  Parameters: n = 0, 1, 2, or 8 Default: 0 Result Codes: OK
  789.     If n = 0, 1, 2, or 8.  ERROR Otherwise.  Command options:
  790.  
  791. #CLS? - Returns the current setting (0,1,2, or 8) of the #CLS command as an
  792.     ASCII decimal value in result code format.  #CLS=?  Returns the
  793.     message, "0,1,2,8".
  794.  
  795. #CLS=0 Data. This is similar to
  796.     setting +FCLASS=0, and instructs the modem to act like a data modem on
  797.     subsequent answer or originate operations.  When a disconnect or
  798.     inactivity time out in the non-autobaud mode is detected, the modem
  799.     automatically sets the #CLS setting to 0 and hangs up.  This ensures
  800.     that the modem is always in a known state despite disorderly DTE
  801.     behavior.
  802.  
  803. #CLS=1 Class 1 fax. This is similar to setting +FCLASS=1,
  804.     and instructs the modem to be a Class 1 fax modem.  Once this is set,
  805.     either the +FAA or +FAE command can be used to force subsequent answers
  806.     to be Class 1 adaptive answers.
  807.  
  808. #CLS=2 Class 2 fax. This is similar to setting +FCLASS=2, and instructs the
  809.     modem to be a Class 2 fax modem.  Once this is set, the +FAA command
  810.     can be used to force subsequent answers to be Class 2 adaptive answers.
  811.  
  812. #CLS=8 Voice Mode. This is the main setting the DTE uses to effect
  813.     directed or adaptive answer or originate sequences involving voice
  814.     modes.  All telephone calls initialized by #CLS=8 result (after answer
  815.     or successful call progress) in the modem in Online Voice Command Mode.
  816.  
  817. #MDL? - Identify Model. This command requests the model number or name of
  818.     the modem.  (The response returned may be altered by the OEM via the
  819.     ConfigurACE utility program.)
  820.  
  821. Command option:
  822.  
  823. #MDL? -  RC96V24AC
  824.  
  825. #MFR? - Identify Manufacturer This command requests the modem manufacturer.
  826.     (The response returned may be altered by the OEM via the ConfigurACE
  827.     utility program.)
  828.  
  829. Command option:
  830.  
  831. #MFR? -  ROCKWELL
  832.  
  833. #REV?  - Identify Revision Level This command requests the revision level
  834.     of the modem.  (The response returned may be altered by the OEM via
  835.     the ConfigurACE utility program.)
  836.  
  837. Command option:
  838.  
  839. #REV? - XXXX-XXXX-XXX YYY     (Those places occupied by "X"'s represent the part number, while those places occupied by `Y"'s represent the revision number. The values are determined at time of production.)
  840.  
  841.  
  842. 8.3.2. AT#V Commands Enabled Only in Voice Mode (#CLS=8)
  843.  
  844.       The commands described in the following subsection are extensions to
  845.     the command set which the modem recognizes only when configured for
  846.     Voice Mode with the #CLS=8 command.
  847.  
  848. #VBQ? - Query Buffer Size
  849.  
  850.       This query-only command returns the size of the modem's voice
  851.     transmit and voice receive buffers in ASCII decimal, followed by the OK
  852.     result code.
  853.  
  854. Parameters:    None
  855.  
  856. Command option:
  857.  
  858. #VBQ?  Returns the size of the modem voice transmit and voice receive buffers.
  859.  
  860. #VBS - Bits Per Sample (Compression Factor)
  861.       This command selects the degree of ADPCM voice compression to be
  862.     used.
  863.  
  864. Parameters:    n = 2, 3, or 4  (Voice compression bits per sample)
  865.  
  866. Default:  4
  867.  
  868. Result Codes:
  869. OK   If n = 2, 3, or 4.
  870. ERROR     Otherwise.
  871.  
  872. Command options:
  873.  
  874. #VBS?  Returns the current setting of the #VBS command as an ASCII decimal
  875.     value in result code format.
  876.  
  877. #VBS=?  Returns "2,3,4", which are the ADPCM compression bits/sample rates
  878.     available.  These bits/sample rates are correlated with the #VCI?
  879.     query command response which provides the single compression method
  880.     available.
  881.  
  882. #VBS=2    Selects 2 bits per sample.
  883.  
  884. #VBS=3    Selects 3 bits per sample.
  885.  
  886. #VBS=4    Selects 4 bits per sample.
  887.  
  888. #VBT - Beep Tone Timer
  889.  
  890.       This command defines the time period, in 10ths of a second up to 4
  891.     seconds (40) which is used by the modem as the DTMF or fixed tone
  892.     duration for generating tones via the D command while in Online Voice
  893.     Command Mode.
  894.  
  895. Parameters:    n = 0 - 40 (0 - 4 seconds)
  896.  
  897. Default:  10
  898.  
  899. Result Codes:
  900. OK   If n = 0 - 40.
  901. ERROR     Otherwise.
  902.  
  903. Command options:
  904.  
  905. #VBT?     Returns the current setting of the #VBT command as an ASCII
  906.     decimal value in result code format.
  907.  
  908. #VBT=?    Returns the message, "0-40".
  909.  
  910. #VBT=0    Disables the tone generation capability.
  911.  
  912. #VBT=1 to 40   Sets tone duration time.
  913.  
  914. #VCI? - Identify Compression Method
  915.  
  916.       This command queries the modem as to its compression method and raw
  917.     bits-per-sample capability.  <OP0C0>;<D> pairs, separated by <LF0>s.
  918.     Within each line, the <O> is left justified, and is separated from the
  919.     <D> by the semicolon character and separated fro m the bits-per-sample
  920.     string by another semicolon.<F255P255C255>
  921.  
  922. Parameters:    None
  923.  
  924. Command option:
  925.  
  926. #VCI?     Returns the message, "ROCKWELL;ADPCM;8".
  927.  
  928. #VLS - Voice Line Select
  929.  
  930.       This action command can be used to select which devices are routed
  931.     through the modem.
  932.  
  933. Parameters: n = 0, 1, 2, 3, or 4 [This is the device position number
  934.     (not device number) as reflected in response to #VLS=?]
  935.  
  936. Default:  0
  937.  
  938. Result Codes:
  939. OK   If n = 0, 1, 2, 3, or 4.
  940. VCON If device selected does not connect to the telephone line.  (A speaker
  941.      is such a device, but a telephone line with speaker ON is not such a
  942.      device, and generates OK.) ERROR If n does not equal 0, 1, 2, 3, or 4,
  943.      or if already off-hook.
  944.  
  945. Command options:
  946.  
  947. #VLS?  This query returns the current setting of the #VLS command as an
  948.     ASCII decimal value in result code format.
  949.  
  950. #VLS=?  This query requests a report of the device types available
  951.     for selection.  The response is a series of numbers separated by
  952.     commas, and each number indicates a device position number.  Currently,
  953.     device position numbers do happen to correspond to device type numbers
  954.     as shown in Table 8-5, but this correlation is not required (i.e., 0's
  955.     could be placed in the first few device position number locations to
  956.     correspond to multiple telephone line connections).
  957.  
  958.       #VLS=0 The default option on the modem.  This command instructs the
  959.     modem that when entering any of the three voice operating submodes
  960.     (Online Command, Transmit, or Receive), that the telephone line
  961.     interface should be routed through the modem.  The OK response is sent
  962.     to the DTE, and any previous connection is lost (i.e., the modem ends
  963.     up on-hook as a result of issuing this command to connect to the
  964.     telephone line).
  965.  
  966. #VLS=1 This command instructs the modem to route only the handset through
  967.     the modem.  This setting can be chosen before recording a greeting message.
  968.  
  969. #VLS=2 This command instructs the modem to route only the speaker
  970.     through the modem.  This setting can be chosen before playing back any
  971.     message.  The modem immediately switches to Online Voice Command Mode ,
  972.     and the VCON response is generated for completeness.  However, since
  973.     this is an output only device, nothing of consequence can happen until
  974.     the DTE sends the #VTX command.
  975.  
  976. #VLS=3 This command instructs the modem that only the auxiliary input
  977.     device (microphone) should be routed through the modem.  This setting
  978.     can be chosen before recording a greeting message.
  979.  
  980. #VLS=4 This command is the same as #VLS =0, except that the modem  enables
  981.     the internal speaker as well as the telephone line/handset circuit.
  982.  
  983.  
  984.  
  985. Table 8-5.  Device Types Supported by #VLS
  986.  
  987. ASCII Digit
  988.  
  989. Device Type and Considerations
  990.  
  991. 0
  992.       Telephone Line with Telephone handset.  This is the default device
  993.     selected.  In this configuration, the user can pick up a handset which
  994.     is connected to the same telephone line as the modem, and * record both
  995.     sides of a conversation with a remote station.  The modem currently
  996.     supports one telephone line/handset, which is in the first position of
  997.     the #VLS=?  response.  (Note that the modem can interface to multiple
  998.     telephone lines by having "0"'s in multiple positions in the #VLS ?
  999.     response.) If a telephone line is selected, the modem must be on-hook
  1000.     or it hangs up.  The OK message is generated.
  1001.  
  1002.  
  1003. 1
  1004.       Transmit/Receive Device (other than telephone line).  This is a
  1005.     handset, headset, or speaker-phone powered directly by the modem.  When
  1006.     such a device is selected, the modem immediately enters Online Voice
  1007.     Command Mode, DTMF monitoring is enabled if applicable, and the VCON
  1008.     response is sent.  The modem supports one such device as the second
  1009.     device listed in the #VLS=?  response.
  1010.  
  1011.  
  1012. 2
  1013.       Transmit Only Device.  Normally, this is the onboard speaker.  When
  1014.     this device is selected, the modem immediately enters Online Voice
  1015.     Command Mode, and the VCON response is sent.  The modem supports
  1016.     selection of the internal speaker as the third device listed in
  1017.     #VLS= ? response.
  1018.  
  1019.  
  1020. 3
  1021.       Receive Only Device.  Normally, this is a microphone.  When such a
  1022.     device is selected, the modem immediately enters Online Voice Command
  1023.     Mode, DTMF monitoring is enabled if applicable, and the VCON response
  1024.     is sent.  The modem supports one microphone as the fourth element
  1025.     returned in the #VLS =?  response.
  1026.  
  1027.  
  1028. 4
  1029.       Telephone line with Speaker ON and handset.  This device type can be
  1030.     used to allow the DTE to select the telephone line/handset (if picked
  1031.     up) with the modem speaker also turned ON.  This can be used by the DTE
  1032.     to allow the user to monitor an incoming message as it is recorded.
  1033.  
  1034.  
  1035. #VRA - Ringback Goes Away Timer (Originate)
  1036.  
  1037.       This command can be used, when originating a voice call (#CLS=8) to
  1038.     set the "Ringback Goes Away" timer value, i.e., an amount of time (in
  1039.     units of 100 ms) measured from when the ringback cadence stops once
  1040.     detected.  If ringback is not detected within this period, the modem
  1041.     assumes that the remote has picked up the line and switches to Online
  1042.     Voice Command Mode.  Every time a ringback cycle is detected, this
  1043.     timer is reset.
  1044.  
  1045. Parameters:    n = 0 - 255  (0 - 2.55 seconds)
  1046.  
  1047. Default:  70
  1048. Result Code:   OK
  1049. Result Code:
  1050. OK   If n = 0 - 255.
  1051. ERROR     Otherwise.
  1052.  
  1053. Command options:
  1054.  
  1055. #VRA?  Returns the current setting of the #VRA command as an ASCII decimal
  1056.     value in result code format.
  1057.  
  1058. #VRA=? Returns the message, "0-255".
  1059.  
  1060. #VRA=0 Turns off the "ringback goes away timer." After one ringback, the
  1061.     dialing  modem sends VCON and enters Online Voice Command Mode
  1062.     immediately.
  1063.  
  1064. #VRA=n Where n defines the period without ringback (after at least one
  1065.     ringback has been detected) in 100 ms units.
  1066.  
  1067.  
  1068. #VRN - Ringback Never Came Timer (Originate)
  1069.  
  1070.       This command can be used when originating a voice call (#CLS=8) to
  1071.     set the "Ringback Never Came" timer value, i.e., an amount of time (in
  1072.     units of 100 ms) measured from completion of dialing.  If ringback is
  1073.     not detected within this period, the modem assumes the remote has
  1074.     picked up the line and switches to Online Voice Command Mode.
  1075.  
  1076. Parameters:    n = 0 - 255  (0 - 2.55 seconds)
  1077.  
  1078. Default:  100
  1079.  
  1080. Result Code:
  1081. OK   If n = 0 - 255.
  1082. ERROR     Otherwise.
  1083.  
  1084. Command options:
  1085.  
  1086. #VRN?  Returns the current setting of the #VRN command as an ASCII decimal
  1087.     value in result code format. #VRN=?    Returns the message, "0-255".
  1088.  
  1089. #VRN=0 Turns off the "ringback never came timer." After dialing, the modem
  1090.     sends VCON and immediately enters Online Voice Command Mode.
  1091.  
  1092. #VRN=n Where n defines the period without ringback after dialing in  100 ms
  1093.     units.
  1094.  
  1095.  
  1096. #VRX - Voice Receive
  1097.  
  1098.       This action command is only valid if the modem is in the Online Voice
  1099.     Command Mode (indicated previously with the VCON message), and is the
  1100.     switch to the Voice Receive Mode.  This command is used when a voice
  1101.     file is to be received from the line, microphon e, or handset.  The
  1102.     #VLS command should have been previously issued to select the input
  1103.     source.
  1104.  
  1105. Parameters:    None
  1106.  
  1107. Result Codes:
  1108. CONNECT   When voice transfer from modem to DTE can begin.
  1109. ERROR     If #VLS=0 and not connected to any input device.
  1110.  
  1111.  
  1112. #VSD - Enable Silence Deletion (Voice Receive)
  1113.  
  1114.       This command is used to enable or disable Voice Receive Mode silence
  1115.     deletion.
  1116.  
  1117. Parameters:    n = 0 or1
  1118.  
  1119. Default:  0 or 1
  1120.  
  1121. Result Code:
  1122. OK   If n = 1.
  1123. ERROR     Otherwise.
  1124.  
  1125. Command options:
  1126.  
  1127. #VSD?  Returns the current setting of the #VSD command as an ASCII decimal
  1128.     value in result code format.
  1129.  
  1130. #VSD=?  Returns the message, "1".
  1131.  
  1132. #VSD=0    Turns off the silence deletion.
  1133.  
  1134. #VSD=1 Turns on the silence deletion if the silence sensitivity setting
  1135.     #VSS is nonzero.  The aggressiveness of the silence deletion is
  1136.     controlled by #VSS.
  1137.  
  1138.  
  1139.  
  1140. #VSK - Buffer Skid Setting
  1141.  
  1142.       This command queries and sets the number of bytes of spare space,
  1143.     after the XOFF threshold is reached, in the modem's buffer during Voice
  1144.     Transmit Mode.  This equates to the "skid" spare buffer space, or the
  1145.     amount of data the DTE can continue to send after being told to stop
  1146.     sending data by the modem, before the modem voice transmit buffer
  1147.     overflows.
  1148.  
  1149. Parameter:     n = 255  (Number of bytes of "skid spare buffer space)
  1150.  
  1151. Default:  255
  1152.  
  1153. Result Code:
  1154. OK   If n = 255.
  1155. ERROR     Otherwise.
  1156.  
  1157. Command options:
  1158.  
  1159. #VSK?     Returns the current setting of the #VSK command as an ASCII decimal value in result code format.
  1160.  
  1161. #VSK=?    Returns the message, "255".
  1162.  
  1163. #VSK=n    n defines the 255 unused bytes remaining in the modem voice transmit buffer after an XOFF is sent to the DTE.
  1164.  
  1165.  
  1166.  
  1167. #VSP - Silence Detection Period (Voice Receive)
  1168.       This command sets the Voice Receive Mode silence detection period
  1169.     (inactivity timer) value.  The parameter, in units of 100 ms, can be
  1170.     used when receiving voice data.  This is an amount of time, which if
  1171.     elapsed without receiving any ADPCM data, causes the modem to send the
  1172.     <DLE>s or <DLE>q codes after insuring that the buffer is empty.  There
  1173.     are two cases:
  1174.  
  1175.       1.  With the modem's silence deletion feature enabled, the #VSP
  1176.     setting is in effect an inactivity timer.  The modem must reset this
  1177.     timer on every byte of voice data received.
  1178.  
  1179.       2.  With the modem's silence deletion feature disabled, the modem
  1180.     determines what constitutes silence.  This involves monitoring and
  1181.     debouncing the modem value for average energy.  If this debounced value
  1182.     is less than an arbitrary threshold constituting the modem's
  1183.     definition of silence for a period greater than that defined by the
  1184.     #VSP setting, the modem sends the <DLE>q or <DLE>s shielded code to the
  1185.     DTE.
  1186.  
  1187. Parameters:    n = 0 - 255 (0 - 25.5 seconds)
  1188.  
  1189. Default:  55
  1190.  
  1191. Result Code:
  1192. OK   If n = 0 - 255.
  1193. ERROR     Otherwise.
  1194.  
  1195. Command options:
  1196.  
  1197. #VSP?  Returns the current setting of the #VSP command as an ASCII decimal
  1198.     value in result code format. #VSP=?    Returns the message, "0-255".
  1199.  
  1200. #VSP=0 Turns off the silence period detection timer.
  1201. #VSP=n Where n defines the period without received voice data in 100 ms units.
  1202.  
  1203.  
  1204. #VSR - Sampling Rate Selection
  1205.  
  1206.       This parameter, along with the bits per sample (#VBS) command,
  1207.     determines the necessary DTE interface speed to transmit and receive in
  1208.     the Voice Mode.
  1209.  
  1210. Parameter:     n = 7200  (7200 Hz sampling rate)
  1211.  
  1212. Default:  7200
  1213.  
  1214. Result Codes:
  1215. OK   If n = 7200.
  1216. ERROR     Otherwise.
  1217.  
  1218. Command options:
  1219.  
  1220. #VSR?  Returns the current setting of the #VSR command as an ASCII decimal
  1221.     value in result code format.
  1222.  
  1223. #VSR=?    Returns the message, "7200".
  1224.  
  1225. #VSR=7200 Default.
  1226.  
  1227.  
  1228. #VSS - Silence Detection Tuner (Voice Receive)
  1229.  
  1230.       This command enables or disables the Voice Receive mode silence
  1231.     detection, and controls the sensitivity employed by the modem in
  1232.     compressing periods of silence.
  1233.  
  1234. Parameters:    n = 0 - 3
  1235.  
  1236. Default:  2
  1237.  
  1238. Result Codes:
  1239. OK   If n = 0 - 3.
  1240. ERROR     Otherwise.
  1241.  
  1242. Command options:
  1243.  
  1244. #VSS?  Returns the current setting of the #VSS command as an ASCII decimal
  1245.     value in result code format.
  1246.  
  1247. #VSS=? Returns the message, "0-3".
  1248.  
  1249. #VSS=0 Disables silence detection by the modem when in Voice Receive Mode.
  1250.  
  1251. #VSS=1 Least sensitive setting.  When this command is received by the
  1252.     modem, the system is configured to a state which is least likely to
  1253.     detect and compress periods of silence, but still able to do so if the
  1254.     line is really quiet.
  1255.  
  1256. #VS=2 Midrange setting (default).  When this command is received by
  1257.     the modem, the system is configured to a state which is likely to be
  1258.     the best overall compromise on normal telephone lines.
  1259.  
  1260. #VSS=3 Most sensitive setting.  When this command is received by the
  1261.     modem, the system is configured to a state which is most likely to
  1262.     detect and compress periods of silence.
  1263.  
  1264.  
  1265.  
  1266. #VTD - DTMF Tone Reporting
  1267.       This command queries and controls which types of tones can be
  1268.     detected and reported to the DTE via shielded codes in Voice Transmit,
  1269.     Voice Receive, and Online Voice Command Modes.
  1270.  
  1271. Parameters: i,j,k (three ASCII hexadecimal bit maps)
  1272.  
  1273.  
  1274.  
  1275. Default: 3F,3F,3F
  1276.  
  1277. Result Codes:
  1278. OK If bits supported with #VTD=?  are selected.
  1279. ERROR Otherwise.
  1280.  
  1281. Command options:
  1282.  
  1283. VTD?  Returns the current setting of the #VTD command as an ASCII decimal
  1284.     value in result code format.
  1285.  
  1286. #VTD=?  Returns the tone reporting capabilities of the modem.
  1287.  
  1288. #VTD=i,j,k Where i,j,k corresponds (in ASCII hexadecimal) to the  desired
  1289.     capabilities, as shown in Table 8-6, for Voice Transmit, Voice
  1290.     Receive, and Online Voice Command Modes, respectively.
  1291.  
  1292.  
  1293.  
  1294. Table 8-6.  #VTD Tone Detection/Reporting Bit Settings
  1295.  
  1296. Bit    |     Description
  1297. ---    |     -----------
  1298.  
  1299.  
  1300. 0
  1301. 0 = Disable DTMF tone capability;
  1302. 1 = Enable DTMF tone capability 1.
  1303.  
  1304. 1
  1305.  
  1306. 0 = Disable V.25 1300 Hz Calling tone capability;
  1307. 1 = Enable V.25 1300 Hz Calling tone capability 1.
  1308.  
  1309. 2
  1310.  
  1311. 0 = Disable T.30 1100 Hz Facsimile Calling tone capability;
  1312. 1 = Enable T.30 1100 Hz Facsimile Calling tone capability 1.
  1313.  
  1314. 3
  1315.  
  1316. 0 = Disable V.25/T.30 2100 Hz Answer tone capability;
  1317. 1 = Enable V.25/T.30 2100 Hz Answer tone capability 1.
  1318.  
  1319. 4
  1320.  
  1321. 0 = Disable Bell 2225 Hz Answer tone capability;
  1322. 1 = Enable Bell 2225 Hz Answer tone capability 1.
  1323.  
  1324. 5
  1325.  
  1326. 0 = Disable call progress tone and cadence (e.g., busy and dial tone)
  1327.     capability;
  1328. 1 = Enable call progress tone and cadence (e.g., busy and dial tone)
  1329.     capability 1.
  1330.  
  1331. 6-7
  1332.  
  1333. Reserved.
  1334.  
  1335. Notes:
  1336.       1.  The modem detects this tone/cadence, and reports it via a
  1337.     shielded code to the DTE.
  1338.  
  1339.  
  1340.  
  1341.  
  1342. #VTS - Generate Tone Signals (Online Voice Command)
  1343.  
  1344.       This action command can be issued to play one of more DTMF or other
  1345.     tones (such as a "beep") if and only if the modem is in the Online
  1346.     Voice Command Mode.  The modem parses and plays the tones defined in
  1347.     the parameter in the order listed, and no key abort is accepted.  The
  1348.     parameter can have three types of elements separated by commas: Dual or
  1349.     Single Tones: These are represented by a substring enclosed in square
  1350.     brackets ("[ ]") within the parameter.  Each such substring consists of
  1351.     three sub-elements corresponding to 2 frequencies in Hz (0, or
  1352.     200-3000) and a duration (ASCII decimal in units of 100 ms).
  1353.  
  1354. Varying DTMF Digits: This is represented by a substring enclosed in curly
  1355.     braces ("{ }") within the parameter.  Each such substring consists of
  1356.     two sub-elements corresponding to a DTMF digits (0-9,A-D,*,#), and
  1357.     alternate durations in units of 100 ms.
  1358.  
  1359. Parameters: The tone generation consists of elements in a list with each
  1360.     element separated by commas.
  1361.  
  1362. Result Codes:
  1363. OK Command to play tones on currently selected device is accepted.
  1364. ERROR Command was not issued during Online Voice Command Mode or string is
  1365.     grammatically incorrect.
  1366.  
  1367.  
  1368.  
  1369. #VTX - Voice Transmit
  1370.  
  1371.       This action command can be issued if and only if the modem is in the
  1372.     Online Voice Command Mode (indicated previously with the VCON message),
  1373.     and is the switch to Voice Transmit Mode.  #VTX is used when a voice
  1374.     file is to be transmitted to the line, speaker , or handset.  The #VLS
  1375.     command should have been previously issued to select the output source.
  1376.  
  1377. Parameters:    None
  1378.  
  1379. Result Codes:
  1380. CONNECT   When voice transmission by DTE can begin.
  1381. ERROR     If #VLS =0 and output device not connected.
  1382.  
  1383.  
  1384.  
  1385.  
  1386. 8.4. S-REGISTERS
  1387.  
  1388. The following S-register is global, meaning that it can be set in any
  1389.     appropriate mode (i.e., any #CLS setting).
  1390.  
  1391. S30 - Deadman (Inactivity) Timer
  1392.  
  1393. Range:    n = 0 - 255
  1394.  
  1395. Default:  0 (OFF, which means DTE should usually set it to some value for
  1396.     Voice)
  1397.  
  1398. Command options:
  1399.  
  1400. S30=0     Deadman timer off. No matter how long it might continue, the
  1401.     modem never spontaneously hangs up the telephone line or switches to
  1402.     autobaud mode as a result of inactivity.
  1403.  
  1404. S30=1 to 255   This is the period of time (in seconds), which if expired
  1405.     causes the modem to hang up the telephone line if it is off-hook and
  1406.     no data has passed during the period.  The timer is also active
  1407.     whenever the #BDR setting is non-zero.  In order to avoid a state
  1408.     where speed sense is disabled (even though the PC can crash, come back
  1409.     up, and try to issue commands at what should be a supported speed), the
  1410.     inactivity time-out occurs if there is no data passed on the DTE
  1411.     interface within the S30 period, even if the modem is on-hook.  DTE
  1412.     software must not select a nonzero setting for #BDR until it is ready
  1413.     to establish a telephone call or virtual connection to a speaker or
  1414.     microphone.  When there is an inactivity time out with #CLS=8, the
  1415.     modem always forces #CLS=0 and #BDR=0.
  1416.  
  1417.  
  1418. 8.5. RESULT CODES FOR VOICE OPERATION
  1419.  
  1420. VCON
  1421.  
  1422.       VCON is sent when the modem is configured for voice (#CLS=8), or when
  1423.     after answering or originating a call, the modem enters the Online
  1424.     Voice Command Mode for the first time.  Typically, this is immediately
  1425.     after an off-hook in answer mode, and after ringback ceases in
  1426.     originate mode.  VCON is also sent when the DTE requests a switch from
  1427.     Voice Transmit Mode to Online Voice Command Mode by issuing a
  1428.     <DLE><ETX> to the modem, or when the DTE requests a switch from Voice
  1429.     Receive Mode to Online Voice Command Mode via the key abort.
  1430.  
  1431. CONNECT
  1432.  
  1433.       CONNECT is sent when switching from the Online Voice Command Mode to
  1434.     either Voice Receive Mode via the #VRX command, or to Voice Transmit
  1435.     Mode via the #VTX command.  This message is sent to the DTE to inform
  1436.     it that it may begin receiving or send ing ADPCM data.
  1437.  
  1438.  
  1439.  
  1440.  
  1441. 8.6. EXAMPLES OF VOICE OPERATION
  1442.  
  1443. See Tables 8-7 through 8-13.
  1444.  
  1445.  
  1446.  
  1447. Table 8-7.  Record a Greeting Message
  1448.  
  1449.  
  1450. DTE to Modem
  1451.  
  1452.      Modem to DTE
  1453.  
  1454.      Description and Interpretation
  1455.  
  1456. #CLS=8
  1457.  
  1458.      Configure the modem for Voice Mode.
  1459.  
  1460.  
  1461.      OK
  1462.      The modem confirms command implemented, and is now set up for voice.
  1463.  
  1464. #VBS=4
  1465.  
  1466.       The DTE asks for 4-bit compression.  The DTE needs to work at 38,400
  1467.     bps since after start and stop bits are added, the speed increases to
  1468.     36,000 bps.
  1469.  
  1470.  
  1471.       OK
  1472.       The modem is configured for 4-bit compression.
  1473.  
  1474. S30=60
  1475.  
  1476.       DTE wants to insure that the modem can recover even if DTE dies with
  1477.     the baud rate set to a speed which cannot be speed sensed.
  1478.  
  1479.  
  1480.       OK
  1481.       Modem now has deadman timer set to 1 minute.  If no activity takes
  1482.     place after a connection, or no DTE activity takes place after #BDR is
  1483.     changed, the modem reverts to #CLS=0, #BDR=0.
  1484.  
  1485. #BDR=16
  1486.  
  1487.       The DTE knows that compression requires a 38,400 bps speed, so it
  1488.     forces this as the new speed.  (For this example, lets say that the DTE
  1489.     was sending all commands, including this one, at 2400 bps.)
  1490.  
  1491.  
  1492.       OK
  1493.       This OK message is sent at 2400 bps, but the modem then switches
  1494.     to 38,400 bps.  All subsequent commands are assumed to be sent at
  1495.     38,400 bps.  If the DTE does not switch to 38,400 bps after the
  1496.     OK<CR><LF>, it will not recognize the data stream coming from the
  1497.     modem.  The S30 timer is now active.
  1498.  
  1499. #VSP=20
  1500.  
  1501.       The DTE changes its own speed to 38,400 bps and sends this command to
  1502.     set up the silence detection period for 2 seconds.
  1503.  
  1504.  
  1505.       OK
  1506.       The modem agrees.  When receiving voice data, 2 seconds of silence
  1507.     terminates the Receive Mode.  For handset operation, this amounts to a
  1508.     hang up.
  1509.  
  1510. #VSD=1
  1511.  
  1512.       This enables silence deletion.
  1513.  
  1514.  
  1515.       OK
  1516.       The modem confirms command reception.
  1517.  
  1518. #VSS =1
  1519.  
  1520.       The DTE has decided to use level "1" silence detection sensitivity,
  1521.     meaning it is making it somewhat more difficult to delete and compress
  1522.     silence for the modem, but expects that when the user has hung up the
  1523.     handset, the silence is indeed detected.  The DTE has tried to improve
  1524.     the quality of the message because it knows this is a handset
  1525.     operation.  Also, since silence deletion has been enabled, the #VSP
  1526.     setting for silence detection now becomes basically an inactivity
  1527.     timer.  If silence deletion is turned off here instead of enabled, the
  1528.     #VSP timer is based upon average energy readings from the modem.
  1529.  
  1530.  
  1531.       OK
  1532.       The modem confirms command reception.
  1533.  
  1534. #VLS=?
  1535.  
  1536.       Find out what type of devices are supported by the product.
  1537.  
  1538.       0,1,2,3,4
  1539.  
  1540.       OK
  1541.       The modem tells the DTE that is has a telephone line with handset
  1542.     (#VLS=0), an input/output device such as a handset or speaker-phone
  1543.     (#VLS=1), and an output only device such as a speaker.
  1544.  
  1545. #VLS=1
  1546.  
  1547.       Select the handset as the input device to be used by the modem.
  1548.  
  1549.  
  1550.       VCON
  1551.       The modem agrees, switches out the telephone line, switches in the
  1552.     handset, and the modem enters Online Voice Command Mode.  Since this is
  1553.     a handset, and since the baud rate has been preselected with #BDR, this
  1554.     also means that DTMF detection and reporting is now enabled.  The user
  1555.     can pick up the telephone and send tones at this point, which are
  1556.     delivered as shielded codes to the DTE, although the voice data is not
  1557.     yet being passed.
  1558.  
  1559.  
  1560.  
  1561. Table 8-7.  Record a Greeting Message
  1562.  
  1563. DTE to Modem
  1564.  
  1565.       Modem to DTE
  1566.  
  1567.       Description and Interpretation
  1568.  
  1569. #VRX
  1570.  
  1571.       This tells the modem that the DTE is ready to receive a voice message
  1572.     at the current compression/sampling settings.
  1573.  
  1574.  
  1575.       CONNECT
  1576.       The modem tells the DTE that it can now expect data.  The modem
  1577.     enters Voice Receive Mode.  DTMF monitoring is still enabled as well as
  1578.     ADPCM data flow.
  1579.  
  1580.  
  1581.       <Data>
  1582.       User says: "Hello, this is me, press * to skip this message.  I'm
  1583.     happy that you have called, so press 5 to send your fax, or you can
  1584.     leave your message at the beep." User then hangs up, the message is
  1585.     buffered to the DTE, and the DTE waits for the message to end.  The DTE
  1586.     should have some kind of maximum timer running to ensure that the user
  1587.     won't speak longer than some predetermined limit.  Alternatively, the
  1588.     DTE can require the user to enter a DTMF tone to terminate transmission
  1589.     of the message to the DTE.
  1590.  
  1591.       <DLE>q
  1592.       The modem has noticed (#VSP time out) that the user has finished.
  1593.     The modem reports this while staying in Voice Receive Mode.  DTMF
  1594.     detection and reporting is still active.  The DTE now has the entire
  1595.     greeting message on disk.
  1596.  
  1597.  
  1598.       <DLE>*
  1599.       The user has inadvertently pressed the "*" button, but the DTE is not
  1600.     interested in this presently.
  1601.  
  1602.       !
  1603.       The DTE issues a key abort to switch to Online Voice Command Mode.
  1604.  
  1605.  
  1606.       <DLE><ETX>
  1607.  
  1608.  
  1609.       VCON
  1610.       The modem exits Voice Receive Mode and switches to Online Voice
  1611.     Command Mode.
  1612.  
  1613.  
  1614. #VLS=0
  1615.  
  1616.       The DTE did not really have to do this, but wants to make sure that
  1617.     it gets no more DTMF codes from the handset.  Selection of the
  1618.     telephone line here forces the modem out of Online Voice Command Mode,
  1619.     which is equivalent to hanging up.
  1620.  
  1621.  
  1622.       OK
  1623.  
  1624.  
  1625.  
  1626.  
  1627.  
  1628. Table 8-8. Playback a Greeting Message
  1629.  
  1630. DTE to Modem
  1631.  
  1632.       Modem to DTE
  1633.  
  1634.       Description and Interpretation
  1635.  
  1636. #CLS=8
  1637.  
  1638.       Configure the modem for Voice Mode.
  1639.  
  1640.  
  1641.       OK
  1642.       The modem confirms command reception, and is now set up for voice.
  1643.  
  1644.  
  1645. #VBS=4
  1646.  
  1647.       The DTE asks for 4-bit compression.  The data from the DTE needs to
  1648.     travel at 38,400 bps since after start and stop bits are added, the
  1649.     speed increases to 36,000 bps.
  1650.  
  1651.  
  1652.       OK
  1653.       The modem is configured for 4-bit compression.
  1654.  
  1655.  
  1656. #BDR=16
  1657.  
  1658.       The DTE knows that compression requires a 38,400 bps speed, so it
  1659.     forces this as the new speed.  (For this example, lets say that the DTE
  1660.     was sending all commands, including this one, at 4800 bps.)
  1661.  
  1662.  
  1663.       OK
  1664.       This OK message is sent at 4800 bps, but the modem switches to 38,400
  1665.     bps.  All subsequent commands are assumed to be sent at 38,400 bps.
  1666.     The DTE should switch after the <CR><LF> following the OK.  The S30
  1667.     timer is now active.
  1668.  
  1669.  
  1670. #VSD=1
  1671.  
  1672.       This enables silence insertion.
  1673.  
  1674.  
  1675.       OK
  1676.       The modem confirms command reception.(#VSS is unnecessary for
  1677.     playback.)
  1678.  
  1679.  
  1680. #VLS=2
  1681.  
  1682.       Select the speaker as the output device to be used by the modem.
  1683.  
  1684.  
  1685.       VCON
  1686.       The modem confirms command reception, and enters Online Voice Command
  1687.     Mode.  Since this is an output only device, nothing more can happen
  1688.     yet.
  1689.  
  1690.  
  1691. #VTX
  1692.  
  1693.       This tells the modem that the DTE is ready to send voice per the
  1694.     current compression/sampling settings.
  1695.  
  1696.  
  1697.       CONNECT
  1698.       The modem tells the DTE that it can now send data.  The modem enters
  1699.     Voice Transmit Mode and ADPCM data flow begins.
  1700.  
  1701.       <Data>
  1702.       The DTE sends data.  The modem waits 1 second before starting to
  1703.     transmit to the speaker to ensure uninterrupted data flow.  If the
  1704.     voice transmit buffer runs empty, the transmitter is disabled.
  1705.  
  1706.       <DLE><ETX>
  1707.       The DTE has finished its transmission and now instructs the modem to
  1708.     enter Online Voice Command Mode after emptying the voice transmit
  1709.     buffer.
  1710.  
  1711.  
  1712.       VCON
  1713.       The modem tells the DTE it is done.  If the DTE sends the <DLE><ETX>
  1714.     before the modem has finished transmitting all the data in its buffer,
  1715.     the DTE must wait for this response.  (VCON indicates that the DTE can
  1716.     send more data at any time with #VTX.)
  1717.  
  1718.  
  1719.  
  1720.  
  1721. Table 8-9. Answer Call/Play Greeting/Record Message
  1722.  
  1723. DTE to Modem
  1724.  
  1725.       Modem to DTE
  1726.  
  1727.       Description and Interpretation
  1728.  
  1729. #CLS=8
  1730.  
  1731.       Configure the modem for Voice Mode.  Note that the #BDR setting is
  1732.     assumed to be zero here, meaning that no time-out occurs forcing
  1733.     #CLS=0.
  1734.  
  1735.  
  1736.       OK
  1737.       The modem agrees, and is now set up for voice.
  1738.  
  1739.  
  1740. #VBS=4
  1741.  
  1742.       The DTE asks for 4-bit compression for greeting message playback.
  1743.     The DTE needs to work at 38,400 bps since after start and stop bits are
  1744.     added, the speed increases to 36,000 bps.
  1745.  
  1746.  
  1747.       OK
  1748.       The modem is configured for 3-bit compression.
  1749.  
  1750.  
  1751. #VSD=1
  1752.  
  1753.       This enables silence deletion.
  1754.  
  1755.  
  1756.       OK
  1757.       The modem confirms command reception.
  1758.  
  1759.  
  1760. #VSS =2
  1761.  
  1762.       Set silence detection sensitivity.
  1763.  
  1764.       OK
  1765.       The modem confirms command reception.
  1766.  
  1767.  
  1768. #VLS=0
  1769.  
  1770.       Select the telephone line as the source, ensuring that the modem is
  1771.     now on-hook.  DTMF detection is now off regardless of the previous
  1772.     setting of #VLS.
  1773.  
  1774.     OK
  1775.       The modem confirms command reception, and it switches in the
  1776.     telephone line.
  1777.  
  1778.       RING
  1779.       Some time later, we receive the first call.  (Note that the modem
  1780.     also processes Caller ID information at this time.)
  1781.  
  1782.  
  1783. #CLS=8
  1784.  
  1785.       Configure the modem for Voice Mode again.  Although the modem has
  1786.     already been so configured, it is a good idea to select #CLS=8 directly
  1787.     following a RING because in normal use, any S30 time-out or hang up
  1788.     during Voice Mode forces #CLS=0.
  1789.  
  1790.       OK
  1791.       The modem agrees, and is now definitely set up for voice.
  1792.  
  1793.  
  1794. #BDR=16
  1795.  
  1796.       The DTE knows that compression requires a 38,400 bps speed, so it
  1797.     forces this as the new speed.  (For this example, lets say that the DTE
  1798.     was sending all commands, including this one, at 9600 bps.)
  1799.  
  1800.       OK
  1801.       This OK message is sent at 9600 bps, but the modem then switches to
  1802.     38,400 bps.  All subsequent commands are assumed to be sent at 38,400
  1803.     bps until either another #BDR command is received or until the S30
  1804.     timer expires.  The S30 timer is now activated, and the default is 60
  1805.     seconds.
  1806.  
  1807.       A
  1808.       The DTE tells the modem to answer.
  1809.  
  1810.       VCON
  1811.       The modem is now in Online Voice Command Mode.  DTMF and calling tone
  1812.     detection is enabled.
  1813.  
  1814.  
  1815.  
  1816. Table 8-9.  Answer Call/Play Greeting/Record Message (Cont'd)
  1817.  
  1818. DTE to Modem
  1819.  
  1820.       Modem to DTE
  1821.  
  1822.       Description and Interpretation
  1823.  
  1824.  
  1825. #VTX
  1826.  
  1827.       The DTE does not wait for any tones, and tells the modem that it is
  1828.     ready to send a voice greeting at the current compression and sampling
  1829.     settings (4-bit/7200).
  1830.  
  1831.  
  1832.       CONNECT
  1833.       The modem tells the DTE that it can now send data.  The modem enters
  1834.     Voice Transmit Mode and DTMF monitoring is still enabled as well as the
  1835.     ADPCM data flow.
  1836.  
  1837.       <Data>
  1838.       The DTE sends greeting message data.  The modem waits up to 1 second
  1839.     or until XOFF threshold is reached before starting to transmit to
  1840.     ensure uninterrupted data flow.  If the voice transmit buffer runs
  1841.     empty, the transmission is disabled.
  1842.  
  1843.       <DLE><ETX>
  1844.       The DTE has finished with its transmission, and now instructs the
  1845.     modem to enter Online Voice Command Mode since this is the telephone
  1846.     line.
  1847.  
  1848.  
  1849.       VCON
  1850.       The modem tells the DTE it is done.  If the DTE sends the <DLE><ETX>
  1851.     before the modem has finished transmitting all the data in its voice
  1852.     transmit buffer, the DTE must wait for this response.
  1853.  
  1854.  
  1855. #VBT=12
  1856.  
  1857.       The DTE requests that DTMF digits be sent as "beeps" with the #VTS
  1858.     command while in Online Voice Command Mode, with each "beep" having a
  1859.     duration of 1.2 seconds.
  1860.  
  1861.  
  1862.       OK
  1863.       The modem confirms command reception
  1864.  
  1865.  
  1866. #VTS=#
  1867.  
  1868.       The DTE sends a "BEEP" to annotate its greeting message.  This beep
  1869.     is a 1.2 second long DTMF #.  During this period, the no abort is
  1870.     possible from the DTE, and should not be necessary.
  1871.  
  1872.  
  1873.       OK
  1874.       After the modem sends the "BEEP", it sends VCON to inform the DTE
  1875.     that it is ready to move on.  DTMF pass through is re-enabled.
  1876.  
  1877.  
  1878. #VBS=3
  1879.  
  1880.       The DTE asks for 3-bit compression to recorded message.  The DTE
  1881.     needs to work at 38,400 bps since after start and stop bits are added
  1882.     the speed increases to 27,000<N>bps.
  1883.  
  1884.  
  1885.       OK
  1886.       The modem is configured for 3-bit compression.
  1887.  
  1888.  
  1889. #VRX
  1890.  
  1891.       The DTE instructs the modem to turn the line around and begin
  1892.     recording a message from the remote.
  1893.  
  1894.  
  1895.       CONNECT
  1896.       The modem sets things up and enables ADPCM data transfer to the DTE
  1897.     with the current silence deletion setting.
  1898.  
  1899.  
  1900.       <Data>
  1901.       ADPCM data is shipped to the DTE with shielded DTMF tones folded in.
  1902.     The modem is looking for silence, busy, dial tone, and loop break.  The
  1903.     DTE records everything in its storage media.
  1904.  
  1905.  
  1906.       <DLE>b
  1907.       The caller has finished, hung up, and in this case, a busy cadence
  1908.     was detected before anything else such as expiration of the #VSP
  1909.     silence detection period.
  1910.  
  1911.       X
  1912.       The DTE uses a key abort to respond to a busy detection.
  1913.  
  1914.  
  1915.       <DLE><ETX>
  1916.  
  1917.       VCON
  1918.       The modem is now in Online Voice Command Mode.
  1919.  
  1920.       H
  1921.       DTE sends modem to #CLS=0 with #BDR=0.
  1922.  
  1923.  
  1924.  
  1925.  
  1926. Table 8-10.  Answer Call/Record Message/Receive Fax
  1927.  
  1928. DTE to Modem
  1929.  
  1930.       Modem to DTE
  1931.  
  1932.       Description and Interpretation
  1933.  
  1934. #CLS=8
  1935.  
  1936.       Configure the modem for Voice Mode.
  1937.  
  1938.  
  1939.       OK
  1940.       The modem agrees, and is now set up for voice.
  1941.  
  1942.  
  1943. #VBS=3
  1944.  
  1945.       The DTE asks for 3-bit compression.  The DTE needs to work at 38,400
  1946.     bps since after start and stop bits are added, the speed increases to
  1947.     27,000 bps.
  1948.  
  1949.  
  1950.       OK
  1951.       The modem is configured for 3-bit compression.
  1952.  
  1953.  
  1954. #VSS=2
  1955.  
  1956.       Set silence sensitivity.  (We assume #VSD=1.)
  1957.  
  1958.       OK
  1959.       The modem confirms command reception.
  1960.  
  1961.  
  1962. #VLS=0
  1963.  
  1964.       This selects the telephone line, and ensures that it is on-hook.
  1965.  
  1966.  
  1967.       OK
  1968.       The modem confirms command reception, and switches in the telephone
  1969.     line.
  1970.  
  1971.  
  1972. #CLS=8
  1973.  
  1974.       This ensure things are set up for voice.
  1975.  
  1976.       OK
  1977.       The modem confirms command reception, and is now set up for voice.
  1978.  
  1979.  
  1980.       RING
  1981.       Sometime later, the next call is received.  The modem answers.
  1982.  
  1983.  
  1984. #BDR=16
  1985.  
  1986.       The DTE knows that compression requires a 38,400 bps speed, so it
  1987.     forces this as the new speed.  (For this example, lets say that the DTE
  1988.     was sending all commands, including this one, at 9600 bps.)
  1989.  
  1990.       OK
  1991.       This OK message is sent at 9600 bps, but the modem then switches to
  1992.     38,400 bps.  All subsequent commands are assumed to be sent at 38,400
  1993.     bps.  The S30 timer is now active.
  1994.  
  1995.       A
  1996.       The DTE answers.
  1997.  
  1998.       VCON
  1999.       The modem is now in Online Voice Command Mode.  DTMF and calling tone
  2000.     detection is enabled.
  2001.  
  2002.  
  2003. #VTX
  2004.  
  2005.       The DTE does not wait for any tones, and tells the modem that it is
  2006.     ready to send a voice greeting at the current compression and sampling
  2007.     settings.
  2008.  
  2009.  
  2010.       CONNECT
  2011.       The modem tells the DTE that it can now send data.  The modem enters
  2012.     Voice Transmit Mode and DTMF monitoring is still enabled as well as
  2013.     ADPCM data flow.
  2014.  
  2015.       <Data>
  2016.  
  2017.       The DTE sends greeting message data.  The modem waits 1 second before
  2018.     starting to transmit to ensure uninterrupted data flow.  If the voice
  2019.     transmit buffer runs empty, the transmission is disabled.
  2020.  
  2021.       <DLE><ETX>
  2022.  
  2023.       The DTE has finished its transmission and now instructs the modem to
  2024.     enter Online Voice Command Mode.
  2025.  
  2026.  
  2027.       VCON
  2028.       The modem tells the DTE it is done.  If the DTE sends the <DLE><ETX>
  2029.     before the modem has finished transmitting all the data in its voice
  2030.     transmit buffer, this response is delayed until the buffer is empty.
  2031.  
  2032.  
  2033. #VBT=13
  2034.  
  2035.       The DTE requests that DTMF digits be dialed as "beeps" while in
  2036.     Online Voice Command Mode, with each "beep" having a duration of 1.3
  2037.     seconds.
  2038.  
  2039.  
  2040.       OK
  2041.       The modem agrees.
  2042.  
  2043.  
  2044. #VTS=
  2045. [1000,0,20],9,
  2046.  
  2047.       The DTE sends a "BEEP" to annotate its greeting message.  This beep
  2048.     is a 2 second long 1000 Hz tone, followed by a 1.3 second long DTMF 9.
  2049.     During this period, the DTE is locked out.
  2050.  
  2051.  
  2052.       OK
  2053.       After the modem sends the "BEEP", it sends VCON to inform the DTE
  2054.     that it is ready to move on.  DTMF pass through is re-enabled.
  2055.  
  2056.  
  2057.  
  2058. Table 8-10.  Answer Call/Record Message/Receive Fax (Cont'd)
  2059.  
  2060. DTE to Modem
  2061.  
  2062.       Modem to DTE
  2063.  
  2064.       Description and Interpretation
  2065.  
  2066. #VRX
  2067.  
  2068.       The DTE instructs the modem to turn the line around and begin
  2069.     recording a message from the remote.
  2070.  
  2071.  
  2072.       CONNECT
  2073.       The modem sets things up and enables ADPCM data transfer to the DTE
  2074.     with the current silence deletion setting.
  2075.  
  2076.  
  2077.       <Data>
  2078.       ADPCM data is shipped to the DTE with shielded DTMF tones folded in.
  2079.     The modem is looking for silence, busy, dial tone, and loop break.  The
  2080.     DTE records everything in its storage media.
  2081.  
  2082.  
  2083.       <DLE>5
  2084.       The caller has finished his voice message, but is now insisting that
  2085.     he be able to send us a facsimile.
  2086.  
  2087.       X
  2088.  
  2089.       DTE sends `X' as key abort.  If the user tried to keep talking after
  2090.     they hit the DTMF 5, anything said was lost.  Whatever he said before
  2091.     the 5 is on disk.
  2092.  
  2093.  
  2094.       <DLE><ETX>VCON
  2095.       The modem obeys key abort.  Receive Mode is cancelled, and the modem
  2096.     is now in Online Voice Command Mode.  DTMF is still passed through.
  2097.  
  2098.  
  2099. #CLS=2
  2100.  
  2101.       The DTE instructs the modem to pretend no voice activity has taken
  2102.     place, although the modem does not hang up if the fax fails.
  2103.  
  2104.  
  2105.       OK
  2106.       The modem now thinks its a Class 2 Fax modem.  The DTE can now tailor
  2107.     the +F settings which were not accessible until +FCLASS became 2.
  2108.  
  2109.       A
  2110.  
  2111.       Answer tone is generated and prompts the user on the telephone to
  2112.     press the button on his fax machine to send his fax.  After the
  2113.     successful fax is received, the modem hangs up.
  2114.  
  2115.  
  2116.  
  2117. Table 8-11.  Answer Call, Determine It's a Fax
  2118.  
  2119. DTE to Modem
  2120.  
  2121.       Modem to DTE
  2122.  
  2123.       Description and Interpretation
  2124.  
  2125.  
  2126. RING
  2127.       Sometime later, the next beta-site calls.
  2128.  
  2129.  
  2130. #CLS=8
  2131.  
  2132.       Configure the modem for Voice Mode.
  2133.  
  2134.  
  2135.       OK
  2136.       The modem agrees, and is now set up for voice.
  2137.  
  2138.  
  2139. #VBS=3
  2140.  
  2141.       The DTE asks for 3-bit compression.  The DTE needs to work at 38,400
  2142.     bps since after start and stop bits are added, the speed increases to
  2143.     27,000 bps.
  2144.  
  2145.  
  2146.       OK
  2147.       The modem is configured for 3-bit compression.
  2148.  
  2149.  
  2150. #BDR=16
  2151.  
  2152.       The DTE knows that compression requires a 38,400 bps speed, so it
  2153.     forces this as the new speed.
  2154.  
  2155.  
  2156.       OK
  2157.       This OK message is sent at 9600 bps, but the modem then switches to
  2158.     38,400 bps.  All subsequent commands are assumed to be sent at 38,400
  2159.     bps.  The S30 timer is now active.
  2160.  
  2161.  
  2162. #VSS =2
  2163.  
  2164.       Set sensitivity to normal setting.
  2165.  
  2166.  
  2167.       OK
  2168.       The modem confirms command reception.
  2169.  
  2170.  
  2171. #VSD=1
  2172.  
  2173.       This enables silence deletion.
  2174.  
  2175.  
  2176.       OK
  2177.       The modem confirms command reception.
  2178.  
  2179.       A
  2180.  
  2181.       Finally, the modem answers.
  2182.  
  2183.  
  2184.       VCON
  2185.       The modem is now in Online Voice Command Mode.  DTMF and calling tone
  2186.     detection is enabled.  (Note that alternatively, the DTE can go into
  2187.     the Transmit or Receive mode and look for either calling tone or
  2188.     silence as a means of discrimination.) The DTE waits a few seconds to
  2189.     give a possible fax machine or remote data/fax modem a chance to send
  2190.     calling tone without being disturbed by a voice greeting.  (In this
  2191.     example only calling tone is considered, which excludes a person
  2192.     sending a fax when he hears answer tone.)
  2193.  
  2194.  
  2195.       <DLE>c
  2196.       The modem has detected T.30 Calling tone and presents this
  2197.     information to the DTE.
  2198.  
  2199.  
  2200. #CLS=1
  2201.  
  2202.       The DTE decides to receive the fax, and tells the modem to pretend
  2203.     that it just went off-hook as a Class 1 Facsimile modem.  The DTE must
  2204.     be able to handle Class 1 commands from here on.  Note
  2205.  
  2206.  
  2207.       OK
  2208.       The modem is now a Class 1 fax modem.
  2209.  
  2210.       A
  2211.       The modem pretends that it just got the incoming RING, and modem
  2212.     handles the fact that it is already off-hook.
  2213.  
  2214.  
  2215. Table 8-12.  Adaptive Fax/Data/Voice; Determine Data
  2216.  
  2217. DTE to Modem
  2218.  
  2219.       Modem to DTE
  2220.  
  2221.       Description and Interpretation
  2222.  
  2223.  
  2224. RING
  2225.       Sometime later, we receive a call.
  2226.  
  2227. #CLS=8
  2228.  
  2229.       Configure the modem for Voice Mode.
  2230.  
  2231.  
  2232.       OK
  2233.       The modem agrees, and is now set up for voice, but the DTE can change
  2234.     things during the discrimination phase.
  2235.  
  2236.  
  2237. #BDR=16
  2238.  
  2239.       The DTE knows that the compression requires a 38,400 bps speed, so it
  2240.     forces this as the new speed.
  2241.  
  2242.  
  2243.       OK
  2244.       This OK message is sent at 9600 bps, but the modem then switches to
  2245.     38,400 bps.  The S30 timer is now active.
  2246.  
  2247.  
  2248. #VSS=2
  2249.  
  2250.       This enables default silence deletion.
  2251.  
  2252.  
  2253.       OK
  2254.       The modem confirms command reception.
  2255.  
  2256.       A
  2257.       The DTE answers.  (Note that this is where the DTE can let another
  2258.     RING go by to process Caller ID.)
  2259.  
  2260.       VCON
  2261.       The modem is now in Online Voice Command Mode.  DTMF and calling tone
  2262.     detection is enabled.  If fax or data calling tones are detected, the
  2263.     DTE can change to Fax or Data Mode.
  2264.  
  2265.  
  2266. #VTX
  2267.  
  2268.       The DTE immediately switches to Voice Transmit Mode to send out a
  2269.     short greeting.
  2270.  
  2271.  
  2272.       CONNECT
  2273.       The modem says, "Send me the ADPCM data."
  2274.  
  2275.       <Data>
  2276.       The DTE sends a previously recorded message from a very fast talking
  2277.     person: "Hello, this is Dave.  Press * to send a fax, # for help, or
  2278.     leave your message at the beep." Note that the caller can enter DTMF
  2279.     tones at any time, which the DTE can take into account, or calling
  2280.     tone can still be detected.
  2281.  
  2282.       <DLE><ETX>
  2283.       This ends the greeting message.
  2284.  
  2285.  
  2286.       VCON
  2287.       The modem switches back to Online Voice Command Mode.
  2288.  
  2289.  
  2290. #VTS+#
  2291.  
  2292.       The DTE sends # as the beep.
  2293.  
  2294.  
  2295.       VCON
  2296.       The modem is still able to receive DTMF or Calling tone here.
  2297.  
  2298.  
  2299. #VRX
  2300.  
  2301.       Enter Receive Mode.  Now the modem is clocking silence, as well as
  2302.     DTMF, and recording whatever the caller says.
  2303.  
  2304.  
  2305.       <DLE>5
  2306.       #VSP must have been set to 35, since 3.5 seconds later the modem
  2307.     sends this indication of silence period expiration.  No ADPCM data was
  2308.     sent to the DTE, because the data pump deleted all 3.5 seconds of
  2309.     silence.  This tells the DTE that nobody is talking.
  2310.  
  2311.       !
  2312.       The DTE issues a key abort to switch to Online Voice Command Mode.
  2313.  
  2314.       <DLE><ETX>
  2315.       VCON
  2316.       The modem exits Voice Receive Mode and switches to Online Voice
  2317.     Command Mode.
  2318.  
  2319. #CLS=0
  2320.  
  2321.       The DTE received no voice data, just the silence indicator after a
  2322.     3.5 second wait.  Since there was no calling tone and the user never
  2323.     entered any DTMF tones, the DTE assumes it must be a calling data
  2324.     modem.  If the data handshake fails, the modem does not hang up the
  2325.     line thus giving the DTE another chance to try the fax again (in this
  2326.     case).
  2327.  
  2328.       OK
  2329.       The modem is now a data modem.
  2330.  
  2331.       A
  2332.       The modem pretends that it just got RING, try V.22 bis/V.42, etc.
  2333.  
  2334.  
  2335. Table 8-13.  Originate a Call, Send Answerer a Message
  2336.  
  2337. DTE to Modem
  2338.  
  2339.       Modem to DTE
  2340.  
  2341.       Description and Interpretation
  2342.  
  2343. #CLS=8
  2344.  
  2345.       Configure the modem for Voice Mode.
  2346.  
  2347.       OK
  2348.       The modem agrees, and is now set up for voice.
  2349.  
  2350.  
  2351. #BDR=16
  2352.  
  2353.       The DTE knows that compression requires a 38,400 bps speed, so it
  2354.     forces this as the new speed.
  2355.  
  2356.       OK
  2357.       This OK message is sent at 2400 bps, but the modem then switches to
  2358.     38,400 bps.
  2359.  
  2360.  
  2361. #VLS=0
  2362.  
  2363.       This ensures that the telephone line is selected.
  2364.  
  2365.       OK
  2366.       The modem agrees.
  2367.  
  2368.  
  2369. #VRA=45
  2370.  
  2371.       The DTE allows 4.5 seconds for ringback to stop before assuming that
  2372.     the modem thinks that the remote has answered.
  2373.  
  2374.       OK
  2375.       The modem agrees with the DTE's assumption.
  2376.  
  2377.       DT6807
  2378.       The DTE makes a telephone call, and the modem dials and goes through
  2379.     call progress.  BUSY or NO DIALTONE can be detected, but in this
  2380.     example, the modem gets ringback.
  2381.  
  2382.       VCON
  2383.       This message is sent 4.5 seconds after the third ringback cadence is
  2384.     detected by the modem.  The modem is in effect assuming that the remote
  2385.     telephone was answered on the third ring because no fourth ringback was
  2386.     detected before the #VRA time-out.  The modem enters Online Voice
  2387.     Command Mode, and DTMF and answer tone detection is enabled.  (Note
  2388.     that during this period, the modem might have detected answer tone from
  2389.     a data modem.  In this case, the appropriate <DLE> shielded code has to
  2390.     be sent prompting the DTE to pursue a data handshake.)
  2391.  
  2392.  
  2393. #VTX
  2394.  
  2395.       The DTE has a message to send.
  2396.  
  2397.       CONNECT
  2398.       The modem says: "send it."
  2399.  
  2400.       <Data>
  2401.       The DTE sends the message: "Hi Dave.  Your mother called."
  2402.  
  2403.       <DLE><ETX>
  2404.       Procedure complete.
  2405.  
  2406.       VCON
  2407.       DTMF still active.
  2408.  
  2409.       H
  2410.       The DTE has completed its forwarding task.
  2411.  
  2412.