A modem not supporting voice will respond with ERROR, or with a list of numbers not including 8.
For example, instead of reporting a phone line ringing with the RING message, many modems will instead send the DLE ASCII character, followed by the letter R. The specific set of DLE events reported by each modem is specific to its chipset and documented in its reference guide.
Each of these numbered modes determines the telephone line's on-hook or off-hook status, as well as sound routing between each of the following: Many chipsets offer a listing of all the possible combinations of modes even if the specific modem board doesn't support them all.
from a modem on the market in 2006: The desired audio data format is selected using the same command but with a number instead of a question mark.
To begin transmitting audio data, the host sends the command AT+VTX or AT#VTX.
The audio data is always sent to the modem slightly faster than it can play it, so the modem may buffer a small portion of it and play it smoothly with no clicks or pops caused by delays in the computer's operating system.
The modem re-raises the signal in time for the computer to resume sending audio data before the playback buffer becomes completely empty.
When the computer wants to signal the end of audio data, most modems expect to see an ASCII DLE character (0x10), followed by the !
It is also desirable to make sure the modem can always abort playback and discard any buffered audio in case a message is to be canceled.
A second way to throttle playback involves polling a "tick" timer provided by the host computer's operating system and based on a hardware clock that's independent of the host's CPU load.
It is reasonable to assume that the PC needs to stay ahead of the playback by a couple of hundred bytes and that the modem will buffer this.
(The commands AT+VBQ or AT#VBQ on voice modems will often reveal the size of the buffer in bytes, and 1 to 2 kilobytes is a typical response.)
A third way to throttle playback involves inserting dummy DLE messages into the output stream such that the audio data takes a known amount of time to transmit through the serial port, and the playback is essentially clocked by the UART in the serial port.
Before, during, and after recording, the modem may notify the computer host of specific events including, but not limited to, the following: When the modem wants to tell the host about these, it sends a DLE byte, plus a (usually) 1-byte message describing the event.
Any of the following commands usually cause the modem to hang up and terminate a voice call: AT+VLS=0, AT#VLS=0, ATH, ATZ.
If when the modem is recording, the caller hangs up and the computer doesn't react, the modem will continue providing the audio recording everything else heard on the line, such as dial tones, telephone company error messages, and so forth.