Commit 7a2f0257 authored by Per Cederqvist's avatar Per Cederqvist

(Protocol Notation): New node. Move text here to avoid too much

	text before menus in Info and HTML output.  Describe the syntax of
	call headings.
(About Asynchronous Messages): New node.  Move text here to avoid
	too much text before menus in Info and HTML output.
parent 5790234e
......@@ -4,9 +4,6 @@
@c FIXME:
@c FIXME: sentence-end-double-space!
@c FIXME: "Foo bar (bar baz.)" or "Foo bar (bar baz)."?
@c FIXME: split "LysKOM Data Types"
@c FIXME: "Protocol Requests" has too much text before the @menu
@c FIXME: "Asynchronous Messages" has too much text before the @menu
@c FIXME: "Aux-Item Types" borders on being too long
@c FIXME:
@c FIXME: Things that require a resolution in the WG:
......@@ -22,7 +19,7 @@
@c FIXME: "Review the last N by FOO to BAR" is empty
@c FIXME: "Remote control" contains no information
@c
@c $Id: Protocol-A.texi,v 1.142 2001/05/05 20:44:24 ceder Exp $
@c $Id: Protocol-A.texi,v 1.143 2001/05/05 21:21:41 ceder Exp $
@c %**start of header
@setfilename protocol-a.info
@settitle LysKOM Protocol A
......@@ -2681,38 +2678,10 @@ What the client is doing. This string is set by the client.
This chapter documents all calls that can be made to the server. All
calls are annotated with the protocol version in which they appeared and
their current status, which is one of
@table @samp
@item Experimental
The call is experimental. No client should rely on the existence of this
call. Experimental calls that are useful will usually become recommended
in future versions.
@item Recommended
The call is a standard call. Clients are recommended to use these calls
rather than experimental or obsolete ones. Servers are required to
implement all recommended calls.
@item Obsolete
The call should no longer be used by clients. Servers should implement
these, or they will be incompatible with old client versions.
@emph{Please note:} the documentation for the obsolete calls may be
incomplete. Many of them perform compatibility magic to ensure that
they never return anything that old clients don't expect. This
compatibility magic is often documented, but we may have forgotten to
document it in some places.
@end table
@i{A note about the examples:} The examples consist of a number of calls
and replies.
@iftex
Calls are set in a normal typewriter font. Replies are set in a
slanted typewriter font.
@end iftex
Extra newlines are sometimes inserted in the examples to avoid overly
long lines.
their current status.
@menu
* Protocol Notation::
* login-old:: O Log in to LysKOM. Call 62 is preferred (0)
* logout:: r Log out. Call 62 to log in again (1)
* change-conference:: r Change current conference (2)
......@@ -2822,6 +2791,75 @@ long lines.
* set-pers-flags:: r Set personal flags (106)
@end menu
@ifnottex
@node Protocol Notation
@section Protocol Notation
@end ifnottex
The heading for each call looks something like this:
@display
create-person-old [5] (1) Obsolete (10)
@end display
The heading consists of several parts:
@table @asis
@item The name: @samp{create-person-old}
This is the name of the call. The name is not considered part of the
protocol. It may change in future versions of this document. Since
the name is never sent over the network it doesn't matter that much.
@item The call number: @samp{[5]}
The call number is what really matters, since it is sent over the
network. It will never change.
@item Introduced: @samp{(1)}
The protocol version when the call was first implemented. Some calls
added more functionality in a later protocol version. The description
for those calls describes such changes.
@item The status: @samp{Obsolete}
The status of the call (see below).
@item Made obsolete: @samp{(10)}
This figure is only present for some obsolete calls, and it states in
which protocol version the call was obsoleted.
@end table
The status of a call can be any of:
@table @samp
@item Experimental
The call is experimental. No client should rely on the existence of this
call. Experimental calls that are useful will usually become recommended
in future versions.
@item Recommended
The call is a standard call. Clients are recommended to use these calls
rather than experimental or obsolete ones. Servers are required to
implement all recommended calls.
@item Obsolete
The call should no longer be used by clients. Servers should implement
these, or they will be incompatible with old client versions.
@emph{Please note:} the documentation for the obsolete calls may be
incomplete. Many of them perform compatibility magic to ensure that
they never return anything that old clients don't expect. This
compatibility magic is often documented, but we may have forgotten to
document it in some places.
@end table
@i{A note about the examples:} The examples consist of a number of calls
and replies.
@iftex
Calls are set in a normal typewriter font. Replies are set in a
slanted typewriter font.
@end iftex
Extra newlines are sometimes inserted in the examples to avoid overly
long lines.
@node login-old
@section login-old [0] (1) Obsolete
......@@ -7554,7 +7592,43 @@ flags.
@chapter Asynchronous Messages
Asynchronous messages are information messages sent from the server to
the client. Clients can select which messages to receive by issuing an
the client. Most of them are used to inform the client about changes
to the database (such as when a new text is created), so that the
clients don't have to poll the server for new information. Some have
other uses.
The messages with status "O" are included here for historical purposes
only. Servers are not required to handle them, and are encouraged to
reject them if a client uses it as an argument to
@reqlink{accept-async}.
@menu
* About Asynchronous Messages::
* async-new-text-old:: r A text has been created (0)
* async-i-am-off:: O Logged off (obsolete) (1)
* async-i-am-on-obsolete:: O Client changed i-am-on string (obsolete) (2)
* async-new-name:: r Conference or person changed name (5)
* async-i-am-on:: r Client changed i-am-doing string (6)
* async-sync-db:: r Server is saving the database (7)
* async-leave-conf:: r Person has been removed from a conference (8)
* async-login:: r Someone has logged in (9)
* async-broadcast:: O Broadcast message (obsolete) (10)
* async-rejected-connection:: r LysKOM is full. Log out to make room. (11)
* async-send-message:: r Text message to group or person (12)
* async-logout:: r A person has logged out (13)
* async-deleted-text:: r A text was deleted (14)
* async-new-text:: r A text has been created (15)
* async-new-recipient:: r A new recipient has been added to a text (16)
* async-sub-recipient:: r A recipient has been removed from a text (17)
* async-new-membership:: r A user has been added to a conference (18)
@end menu
@ifnottex
@node About Asynchronous Messages
@section About Asynchronous Messages
@end ifnottex
Clients can select which messages to receive by issuing an
@reqdlink{accept-async} call@linkhere{}. They can find out which
messages are being sent by issuing the @reqdlink{query-async}
call@linkhere{}. Note that the server can send other messages as
......@@ -7582,31 +7656,6 @@ parameters. For example, message number 5 could be sent as
The parameters of each message are listed in the same format as server
calls.
The messages with status "O" are included here for historical purposes
only. Servers are not required to handle them, and are encouraged to
reject them if a client uses it as an argument to
@reqlink{accept-async}.
@menu
* async-new-text-old:: r A text has been created (0)
* async-i-am-off:: O Logged off (obsolete) (1)
* async-i-am-on-obsolete:: O Client changed i-am-on string (obsolete) (2)
* async-new-name:: r Conference or person changed name (5)
* async-i-am-on:: r Client changed i-am-doing string (6)
* async-sync-db:: r Server is saving the database (7)
* async-leave-conf:: r Person has been removed from a conference (8)
* async-login:: r Someone has logged in (9)
* async-broadcast:: O Broadcast message (obsolete) (10)
* async-rejected-connection:: r LysKOM is full. Log out to make room. (11)
* async-send-message:: r Text message to group or person (12)
* async-logout:: r A person has logged out (13)
* async-deleted-text:: r A text was deleted (14)
* async-new-text:: r A text has been created (15)
* async-new-recipient:: r A new recipient has been added to a text (16)
* async-sub-recipient:: r A recipient has been removed from a text (17)
* async-new-membership:: r A user has been added to a conference (18)
@end menu
@node async-new-text-old
@section async-new-text-old (1) Obsolete (10)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment