Modem Configuration File

Contents of this file:

  1. Device (modem) declarations and records
  2. Optional attributes and values
  3. Value assignment
  4. Special device names
  5. Attribute definitions

    Attribute Summary
    incoming_dir String describing incoming directory
    incoming_perms Incoming directory permissions
    hardware_flow_control Hardware flow control toggle
    dev_root Path to device drivers
    usage How the modem is used (Send, receive, etc)
    out_queue_num Outgoing queue number for this modem
    out_queue_num_gui String describing outgoing queue
    modem_type Override modems identifier command
    speaker_on When the modem's speaker is on
    speaker_volume How loud the modem's speaker is
    voice_script Startup script for Fax-on-Demand
    user_modem_config User-defined modem command
    tty_baud_rate Serial port baud rate
    max_send_fax_rate Maximum outgoing fax speed
    min_send_fax_rate Minimum outging fax speed
    max_receive_fax_rate Maximum incoming fax speed
    send_compression Outgoing compression format
    receive_quality_checking Image-quality checking on receive
    unsupervised_dialing Modem black-listing

  6. Example records

1) DEVICE (MODEM) DECLARATIONS AND RECORDS

This file contains records describing devices (modems). Lines beginning with '# ' or ';' are comments. Blank lines are ignored.

Each record in this file consists of a device declaration (the record "key") followed optionally by one or more attributes or attribute-value pairs.

Each device declaration begins with a device name square brackets on a line by itself; for example:

[/dev/ttya]

Device declarations end with the next device name (or the end of the file).


2) OPTIONAL ATTRIBUTES AND VALUES

The record itself _optionally_ contains one or more attribute or attribute-value pairs. Here are examples of an attribute value pairs:

speaker_on = always
out_queue_num = 2
attribute_gui = "Sales and Marketing"

These three examples illustrate the various type of attributes: textual, numeric, and string.

Textual values consist of a single word (leading and trailing spaces are ignored). String values are intended for presentation by a user interface and may contain several words and spaces if surrounded by quotation marks. String values always end with the suffix "_gui" to stress their intended use.

Both attributes and values are case-sensitive. Values are limited to 1000 characters and must consist of a single line (no newlines).

(For a complete description of the lexical rules and syntax associated with attribute-value pairs, refer to the file README.avlex in your distribution.)


3) VALUE ASSIGNMENT

All attributes are assigned one of the following values:

In other words, attributes explicitly assigned in the [device] record override the values given by the [default] record, which in turn override initial values.


4) The [default] Device

The [default] device supplies default attributes that apply to all devices declared in the file. This greatly simplifies the effort required to add a new device, since each new device automatically acquires default values. Here's a sample [default] device:

[default]
incoming_gui = "Sales Incoming Directory"
dev_root = /dev/isofax

Here the initial value for the incoming_gui attribute is changed to "Sales Incoming Directory." If all your device drivers reside in the same subdirectory, you may specify it in the dev_root attribute and thereafter use only the device name in the [device] key.


5)Optional Attribute Definitions

This section gives the definition for attributes, their initial values, and the range of values that can be assigned.

ALL ATTRIBUTES ARE OPTIONAL.

Keep in mind that all attributes have sensible initial values. This means that unless you wish for a device to have extraordinary capabilities, only small amount of information must be entered for each device.

Attributes marked as VALIDATED are qualified when the file is read. Initial values are indicated with "*".

Attribute Value
incoming_dir The incoming directory associated with this modem. This is how multiple incoming queues are implemented.
The initial value is "./incoming".
incoming_gui The string naming the incoming directory. This exact string is used when assigning directories for the Designated Forwarder.
The initial value is "General Incoming".
incoming_perms Incoming directory permissions.
The initial value is 777.
hardware_flow_control If this value is set to 'OFF', flow control defaults to software flow control.
  • *true
  • false
dev_root If [device] contains only the device name, the path to the device is give here.
The initial value is /dev (for UNIX).
usage How the modem is used. Values:
  • *isofax (Send and receive)
  • isofax_o (Send only)
  • isofax_i (Receive only)
  • isofax_v (Voice only)
  • isofax_vo (Voice, fax send)
  • isofax_did_info (Dedicated to DID control channel)
modem_type Ignores the modem's response to +MFR command and treats it as if it were the attribute. VALIDATED values:
  • rockwell
  • multitech
  • usrobotics
  • everex
out_queue_num The outgoing queue number for this modem.
The initial value is 1.
out_queue_num_gui String for GUI
speaker_on When the modem's speaker is on. VALIDATED values:
  • always
  • never
  • *until_connect
speaker_volume How loud the modem's speaker is. VALIDATED values:
  • high
  • medium
  • *low
voice_script With the Fax-on-Demand option, this attribute provides the full path to the startup script containing the initial announcement.


Attributes that were Dynamic Server Variables in pre-8.0

Attribute Value
user_modem_config The last command sent to modem during configuration.
There is no initial value.
tty_baud_rate The serial port baud rate.
The initial value is 19200.
max_send_fax_rate Limits the maximum negotiated fax speed for outgoing faxes. VALIDATED values are:
  • 4800
  • 7200
  • 9600
  • *14400
min_send_fax_rate Limits the minimum negotiated fax speed for outgoing faxes. VALIDATED values are:
  • *2400
  • 4800
  • 7200
  • 9600
  • 14000
max_receive_fax_rate Limits the maximum negotiated fax speed for incoming faxes. VALIDATED values are
  • 4800
  • *9600
  • 14400
send compression Limits the negotiated data compression format for outgoing faxes. VALIDATED values:
  • MH (1-D compression)
  • *MR (2-D compression)
receive_quality_compression During reception, some modems (e.g. Multitech) check the quality of the incoming image and request retransmission if an arbitrary number of errors are present. Unfortunately some fax machines hang up when they receive this request. Set the attribute to true is you wish to enable receive quality checking.
The initial value is false.
unsupervised_dialing Defeats the Black-listing modem "feature" in modems in certain foreign countries. This feature works only on modems where the command defeat blacklisting is known.
The initial value is true.


6) Example MODEMS.info Records

   [default]              # unless overridden, each record acquires
                          # these values
     dev_root             = /dev/fax  # modem device driver links are here
     usage                = isofax_i  # incoming only
     speaker_on           = always    # for debugging
     min_send_fax_rate    = 4800      # Don't bother with slow connections
     max_receive_fax_rate = 14400


   [ttya]                # specified as device name only, so combined with
                         # the dev_root default becomes /dev/fax/ttya

     speaker_volume       = medium



   [/dev/cdata/cua00]    # Specified as full path name to device,
                         # so dev_root is ignored.
        incoming_dir     = incoming2       # directory name
        incoming_gui     = "Sales"
        usage            = isofax_i