1 02/08/84  convert_dial_message_
 2 
 3 The convert_dial_message_ subroutine is used in conjunction with the
 4 dial_manager_ subroutine to control dialed terminals.  It converts an
 5 event message received from the answering service over a dial control
 6 event channel into status information more easily used by the user.
 7 
 8 
 9 Entry points in convert_dial_message_:
10    (List is generated by the help command)
11 
12 
13 :Entry:  return_io_module:
14 02/08/84 convert_dial_message_$return_io_module
15 
16 
17 Function: processes event messages from the answering service
18 regarding the status of a dialed terminal or an auto call line.  In
19 addition to returning line status, this entry point also returns the
20 device name and I/O module name for use in attaching the line through
21 the iox_ subroutine.
22 
23 
24 Syntax:
25 declare convert_dial_message_$return_io_module entry (fixed bin(71),
26      char(*), char(*), fixed bin, 1 aligned, 2 bit(1) unal, 2 bit(1)
27      unal, 2 bit(1) unal, 2 bit(33) unal, fixed bin(35));
28 call convert_dial_message_$return_io_module (message, channel_name,
29      io_module, n_dialed, flags, code);
30 
31 
32 Arguments:
33 message
34    is the event message to be decoded.  (Input)
35 channel_name
36    is the name of the channel that has dialed up or hung up.  (Output)
37 io_module
38    is the name of the iox_ I/O module to be used with the assigned
39    device.  (Output)
40 n_dialed
41    is the number of terminals currently dialed to the process or -1.
42    (Output)
43 
44 
45 flags
46    is a bit string of the following structure:  (Output)
47       dcl 1 flags        aligned,
48             2 dialed_up  bit(1) unal,
49             2 hung_up    bit(1) unal,
50             2 control    bit(1) unal,
51             2 pad        bit(33) unal;
52    Only the first three bits have meaning, and only one can be on at a
53    time.  See "Notes" below.
54 code
55    is a standard status code.  (Output)
56 
57 
58 Notes:  The message may be either a control message or an informative
59 message.  Informative messages have flags.control off ("0"b), n_dialed
60 is set to -1, channel is set to the name of the channel involved,
61 io_module is set to the name of an I/O module, and either
62 flags.dialed_up or flags.hung_up is on, indicating that the named
63 channel has either just dialed up or just hung up.
64 
65 Control messages have flags.control on ("1"b), and n_dialed is set to
66 the number of dialed terminals or -1.