Announcement: Modem-1.0 -- A Distributed Communication Package for Modems

Announcement: Modem-1.0 -- A Distributed Communication Package for Modems

Post by Merijn de Jong » Wed, 18 Feb 1998 04:00:00

I'm pleased to announce the availability of modem-1.0 for Linux and
Solaris platforms. It is the first non-beta release of my distributed
communication package for modems.

I have uploaded modem-1.0.tar.gz to and hope it will
be moved to /pub/Linux/apps/serialcomm/modem soon. The primary site
of the modem package is at:

There you will find more information about the package and some screen

Below I have included the original README to give you some more
information about modem.

Modem is a distributed communication package for modems.

The system works as follows:
 Each host on a network with one or more modems attached to it, runs
 the modemd server to make one or more of these modems available on
 that network.

 To use a modem, for example to establish a PPP connection,
 modemcontrol broadcasts a message on the network. A server who is
 willing to serve modemcontrol, replies with it's address.
 modemcontrol then connects to that server using tcp. The server
 forks and restarts listening for new requests. The new child opens
 and locks one of the available modems and will try to establish a
 connection by dialing the remote site. After a connection is
 established, the child will read data from the modem and the tcp
 connection until either a hangup from the modem is detected or the
 network connection is broken.  All data read from the tcp connection
 will be copied to the modem, all data read from the modem will be
 copied to modemcontrol.

 modemcontrol uses the personal phone book to get the number to dial.
 After dialing it allocates a pseudo terminal and let the environment
 variable MODEM point to it. It then executes the program as given on
 the command line. Modemcontrol also creates a new window with
 information about the modem.

 The program executed by modemcontrol can be any program. The program
 can communicate with the modem by reading and writing to ${MODEM}.
 The program does not need to worry about the type of the modem or
 about things like dialing and terminal settings.  The ppp script
 included in this package for example, just pops up a login window
 (modemlogin) and starts the pppd server.

 -All hosts on the network can use several modems. A modem need not
  be attached to the host itself.
 -The package hides the details of communicating with the modem (like
  dialing, terminal settings etc.) from the clients.
 -The client does not need to know the internals of all different
  modems. In fact, it can use them all.
 -Just one interface to communicate with modems. No need for several
  different configuration files for each program that uses the modem.
 -Clients can concentrate on what they are designed for.
 -You can choose from a textual, Motif, Xt or Tcl/Tk interface for
  the several clients that are included. the textual interface does
  not provide dialogs nor does it provide the help facility.

 The identd server is used by modemd to identify the remote user of
 modemcontrol. This server needs therefore to be running on your

Context sensitive help
 If you have netscape installed on your system, you can use the
 context sensitive help system from within the several tools
 included. Unfortunately this system is not as helpful as it should

 Currently the modem software is known to run on both Linux and
 Solaris 2.x (at least the x86 version) platforms. The Solaris 2.x
 sparc and HP-UX platforms have been tested using the virtual modem
 device that is included in the package (see the file ./tests/README
 in the source tree of the package).

 Although this is the first non-beta release, the software still may
 (and probably will) have several bugs. Please inform me about any
 bugs, recommendations or improvements.

To do:
-Implementation of a graphical phone book using the entries in the
 personal phone book. It should allow users to select and edit
 entries in the phone book.
-Several scripts that use the accounting information for making phone
 bills etc.
-Fax support.