set_device
Vandoorselaere Yoann (yoann@coldserver.com)
Wed, 23 Jun 1999 13:22:41 +0000
Steffen Klupsch wrote:
> OK. I vote for that too. You request an extension of
> libvoice/*.c/*_set_device(int device) so that 'device' includes
> 'SPEAKER_PHONE_MODE' or 'LOCAL_HANDSET' for all modems.
LOCAL_HANDSET is already defined, and as far as i know
it signify to use the modem microphone & speaker as input / output
device.
What i don't understand is
in The libvoice/Rockwell.c set_value function...
Where does these value come from ?
I've an pdf explaining all Rockwell ( for modem based on rockwell
chipset :
RCV56ACx, RCV336ACx, RCV288ACx, and RCV144ACx) AT command,
and what i have for AT#VLS is :
********
#VLS - Voice Line Select
This action command can be used to select which devices are routed
through the modem.
Parameters: n = 0-9 as supported by the modem model. [This is the device
position number
(not device number) as reflected in responce to #VLS=?]
Default: 0
Result Codes:
OK if n = 0-9 as supported by the modem model.
VCON if device selected does not connect to the telephone line
( A speaker is such device, but a telephone line with speaker ON is
not
such device, and generate OK.)
Command options:
#VLS? ->
This query returns the current setting of the #VLS command as an ASCII
decimal value in result
code format.
#VLS=? ->
This query requests a report of the device types available for
selection. The response is a number
from 0 to 4 corresponding the device position number (see Table 7-5).
#VLS=0 ->
The default option on the modem. This command instructs the modem that
when entering any of
the three voice operating submodes (Online Command, Transmit, or
Receive), that the telephone
line interface should be routed through the modem. The OK response is
sent to the DTE, and any
previous connection is lost (i.e., the modem ends up on-hook as a result
of issuing this command
to connect to the telephone line).
#VLS=1 ->
This command instructs the modem to route only the handset through the
modem. This setting
can be chosen before recording a greeting message.
#VLS=2 ->
This command instructs the modem to route only the speaker through the
modem. This setting
can be chosen before playing back any message. The modem immediately
switches to Online
Voice Command Mode, and the VCON response is generated for completeness.
However, since
this is an output only device, nothing of consequence can happen until
the DTE sends the #VTX
command.
#VLS=3 ->
This command instructs the modem that only the auxiliary input device
(microphone) should be routed through the modem. This setting can be
chosen before recording a greeting message.
#VLS=4 ->
This command is the same as #VLS =0, except that the modem enables the
internal speaker as
well as the telephone line/handset circuit.
#VLS=5 ->
This command selects telephone emulation mode while in #CLS=8 mode.
Speakerphone
operation is entered during Voice On-line (VCON) mode after completing
dialing (ATD) or
answering (ATA). #VLS=5 will respond ERROR if speakerphone is supported.
#VLS=6 ->
This command selects speakerphone mode while in #CLS=8 mode. Telephone
emulation
operation is entered during Voice On-line (VCON) mode after completing
dialing (ATD) or
answering (ATA). #VLS=6 will respond ERROR if speakerphone is not
supported.
#VLS=7 ->
This command, valid after Voice On-line mode, mutes the local handset by
switching the handset
or speakerphone out of the telephone line path if in #VLS=0 or #VLS=6
mode. To unmute, the
host software should issue AT#VLS=0 or AT#VLS=6 to return to phone line
or speakerphone
mode, respectively. On hardware designs which incorporate the audio
codec, #VLS=7 can be
used to route the codec's output through the phone line to provide
music-on-hold feature.
#VLS=8 ->
(Valid after Voice On-line mode.) This command engages the Caller ID
relay to allow recording of
conversation when using a handset by routing the signal to the audio
codec (if populated). To
deactivate the Caller ID relay, the host should issue an AT#VLS=0 or
AT#VLS=6 to return to
phone line or speakerphone mode, respectively.
#VLS=9 ->
This command routes the handset to the sound codec to allow
recording/playback of audio (e.g.
greeting messages) through the local handset.
--
-- Yoann
It is well known that M$ products don't call free() after a malloc().
The Unix community wish them good luck for their future developments.