Unlike Remote Server's "Telnet Mode", the "Live Mode" is primarily intended to be used by programs (especially HControl), although it is possible to use this mode by a telnet connection, too.
Each connection to RC server starts in "Telnet
Mode". After authentication is done with AUTH
command, the protocol can be switched to "Live Mode" by sending a LIVE
ON command. If this command is successful, a final 200
response is sent and from now on the connection is in "Live Mode".
If LIVE ON command is given with ENCRYPT
parameter, the 200 response contains a session key,
which is used to encrypt all the data, that is transferred in Live Mode.
The session key starts after first "<" character and
ends before next ">" character (i. e. not
including "<" and ">" characters).
Please note, that this encryption doesn't make the connection "secure". The only purpose of this encryption is to avoid presenting the data directly in plain text, so that no one will see it accidentally (e. g. with a network monitor).
Each message (optionally encrypted) is transmitted as a single
"line", i. e. data not containing any CR and LF
characters and with sequence CR + LF as "end
of line" marker:
TransferEncoding( Encryption( <Message> ) ) CR LF
<Message>
The message itself is of variable length and can contain any characters (8 bit). Its format is described below in next section.
Encryption( ... )
Optional encryption in LIVE ON ENCRYPT mode is
done with Blowfish algorithm in CBC mode. The key used for encryption is
build by HMAC-MD5 with the transmitted session key as data and user's
password as key. All in all very obscure ..., see the sources for
details.
TransferEncoding( ... )
As characters CR and LF are used as "end
of line" markers, they always have to be encoded for transmission.
Although not mandatory, the characters NUL and TAB
are encoded as well.
The encoded characters are replaced by a "^" followed
by character's value plus 64. The quote character itself has always to
be doubled, i. e.:
CR has to be replaced by "^M"
LF has to be replaced by "^J"
"^" has to be replaced by "^^"
NUL should be replaced by "^@"
TAB should be replaced by "^I"
Each "Live Message" is identified by a numerical identifier and can have optional data:
<LTYPE> [ SP <LDATA> ]
<LTYPE>
Four hex digits representing a 16 bit unsigned integer. Smaller numbers have to be filled up with leadings zeros.
<LDATA>
This part contains additional data, e. g. information's data,
request's parameters or reply's data. Please note, that the SP
character (space, ASCII-32) between <LTYPE> and <LDATA>
is mandatory if any <LDATA> is given.
As said above, each message is identified by a unique number, a 16 bit unsigned integer. The upper 4 bits of this number are used as a type marker:
LMINF = $1000
Message numbers of form "1???" (hex) are Information
Messages, which are sent from the server to all currently connected
clients whenever something meaningful happened.
Please note, that such Information Messages can arrive at any time, i. e. even between a request was sent and while waiting for request's reply.
LMREQ = $2000
Message numbers of form "2???" (hex) are Request
Messages, which are sent from a client to the server in order to
start an action or to retrieve information.
LMREP = $4000
Message numbers of form "4???" (hex) are Reply
Messages, which are sent from the server to the client as an answer
for a previous "Request Message".
Note: Requests are handled in "first-in-first-out" sequence, so if multiple requests are sent without waiting for their replies, the replies will arrive in the same sequence.
LMXXX = $8000
Message numbers of form "8???" (hex) are Special
Messages. They are either used internally (and are never
transmitted) or only have a special meaning.
LMINF_LOCALSERVER_STATES = LMINF or $020
This message is sent, whenever the state of a local server has changed, i. e. if a local server has been started or stopped. When restarting a local server, only the final state is reported, i. e. no intermediate states.
The data sent with this message is exactly the same as for a LMREQ_LOCALSERVER_CONTROL request with parameters "*" (all servers) and "3" (is server active?), i. e. one line for each server, either containing "1" (active) or "0" (not active).
Data Inf.: Result list: 4( ("0"/"1") CRLF )
LMINF_LOCALSERVER_CLIENTS = LMINF or $021
This message is sent, whenever a client connected to or disconnected from a local server.
The data sent with the message contains the list of currently
connected clients and is the same as the reply of a LMREQ_LOCALSERVER_CLIENTS
request.
Note: This info is not sent immediately but together with periodical counter list info.
Data Req.: -
Data Rep.: Result list: *( <srv> TAB <uid> TAB <tid> TAB <ip> TAB <user> CRLF )
LMINF_COUNTERS_LIST = LMINF or $030
This message is sent periodically, but only if any counter value has
changed since the last message was sent.
The data sent with the message contains all available counters, each
identified by a name of two characters:
'ta' Number of active tasks
'jo' Number of entries in news job list
'no' Number of news messages waiting for being posted
'mo' Number of mail messages waiting for being sent
'ni' Total number of new news messages (=nl+nh+nk)
'nl' Number of new news messages: loaded
'nh' Number of new news messages: not loaded (history)
'nk' Number of new news messages: not loaded (scorefile)
'mi' Number of new mail messages
'mm' Number of new mail messages: loaded to local accounts
'ml' Number of new mail to news transfered messages
'bi' Number of bytes received
'bo' Number of bytes sent
'by' Total number of bytes transferred (=bi+bo)
Data Inf.: List: *( <id> "=" <value> CRLF )
LMINF_TASKS_LIST = LMINF or $040
This message is sent, whenever a task was started or has finished.
The data sent with the message contains the list of currently active
tasks and is the same as the reply of a LMREQ_TASKS_LIST
request.
Note: This info is not sent immediately but together with periodical counter list info.
Data Inf.: List: *( <uid> TAB <tid> TAB <type> TAB <desc> TAB <class> TAB <state> CRLF )
LMINF_LOGFILE_ADD = LMINF or $050
This message is sent, whenever a new line has been added to the log file.
The data sent with the message starts with Hamster's internal logfile ID, which describes the type of the line. This ID is always transmitted in hex with 4 digits - possible IDs are:
LOGID_ERROR = $8000; // Errors
LOGID_WARN = $4000; // Warnings
LOGID_SYSTEM = $0800; // System messages
LOGID_INFO = $0080; // Information
LOGID_DETAIL = $0040; // Details
LOGID_DEBUG = $0008; // Debug
LOGID_STATUS = $0004; // Current state
LOGID_FULL = $0001; // Full log with all data sent to or received by HService
Data Inf.: Logfile lines: *( <logid> "=" <logline> CRLF )
LMREQ_APP_SETTING_GET = LMREQ or $000
Returns the list of Application Settings.
Data Req.: -
Data Rep.: List: *( <id> "=" <value> CRLF )
LMREQ_APP_SETTING_SET = LMREQ or $001
Changes Application Settings (only given ones, others remain unchanged).
Data Req.: Changes: *( <id> "=" <value> CRLF )
Data Rep.: -
LMREQ_HAM_SETTING_GET = LMREQ or $010
Returns the list of Hamster Settings.
Data Req.: -
Data Rep.: List: *( <id> "=" <value> CRLF )
LMREQ_HAM_SETTING_SET = LMREQ or $011
Changes Hamster Settings (only given ones, others remain unchanged).
Data Req.: Changes: *( <id> "=" <value> CRLF )
Data Rep.: -
LMREQ_LOCALSERVER_CONTROL = LMREQ or $020
Requests an action for or a status info of a local server.
First parameter selects the server, for which an action/info is requested:
'0' NNTP
'1' POP3
'2' SMTP
'3' RC
'*' All of these servers
Second parameter selects the action/info, that is requested:
'0' Stop server (-> 1=success, 0=failed)
'1' Start server (-> 1=success, 0=failed)
'2' Restart server (-> 1=success, 0=failed)
'3' Is server active? (-> 1=yes, 0=no)
'4' Number of clients currently connected
If a single server is selected, the reply will contain just the result (case A below).
If all servers were selected by "*", the reply will
contain 4 lines, i. e. one for each server (case B).
A very special case is stopping or restarting the RC server, as this will terminate the connection to it as well. In this case, only a final, empty reply is sent before the server(s) are actually stopped (case C). The server(s) will be stopped about 1 second after the final reply was sent and the connection was closed.
Data Req., case A: ("0"/"1"/"2"/"3") CRLF <control>
Data Rep., case A: Result code: <result>
Data Req., case B: "*" CRLF <control>
Data Rep., case B: Result list: 4( <result> CRLF )
Data Req., case C: ("3"/"*") CRLF ("0"/"2")
Data Rep., case C: -
LMREQ_LOCALSERVER_CLIENTS = LMREQ or $021
Returns the list of clients, which are currently connected to the local servers.
Each line returned will contain info about one client:
<srv> Server type (0=NNTP, 1=POP3, 2=SMTP, 3=RC)
<uid> Unique identifier of the client
<tid> Internal thread ID of the client (=Windows Thread ID)
<ip> IP address and port number
<user> Username (empty, if not identified yet)
Data Req.: -
Data Rep.: Result list: *( <srv> TAB <uid> TAB <tid> TAB <ip> TAB <user> CRLF )
LMREQ_COUNTERS_LIST = LMREQ or $030
Returns current counter values.
Data Req.: -
Data Rep.: Same as with LMINF_COUNTERS_LIST: *( <id> "=" <value> CRLF )
LMREQ_COUNTERS_RESET = LMREQ or $031
Resets all counters to zero.
Data Req.: -
Data Rep.: -
LMREQ_TASKS_LIST = LMREQ or $040
Returns the list of currently active tasks.
Each line returned will contain info about one task:
<uid> Unique identifier of the task
<tid> Internal thread ID of the task (=Windows Thread ID)
<type> Type of task (0=maintenance, 1=transfer, 2=script)
<desc> Description of task
<class> Hamster's internal class name of task
<state> Info on what task is currently doing.
Data Req.: -
Data Rep.: *( <uid> TAB <tid> TAB <type> TAB <desc> TAB <class> TAB <state> CRLF )
LMREQ_TASKS_STOPALL = LMREQ or $041
Stops all active tasks.
If a type identifier is given (0=maintenance, 1=transfer, 2=script),
only tasks of this type are stopped.
Note: Request just triggers stopping and then returns immediately.
Data Req.: [ <type> ]
Data Rep.: -
LMREQ_TASKS_STOPBYID = LMREQ or $042
Stops the given task.
Note: Request just triggers stopping and then returns immediately.
Data Req.: Task's unique ID: <uid>
Data Rep.: -
Log File
LMREQ_LOGFILE_LIST = LMREQ or $050
Returns the end of current log file.
Data Req.: Size in KB (default 8): [ <requested size in KB> ]
Data Rep.: Lines: *( <log line> CRLF )
LMREQ_LOGFILE_ROTATE = LMREQ or $051
Starts a new log file.
Data Req.: -
Data Rep.: -
LMREQ_GROUPS_LIST = LMREQ or $100
Returns the list of newsgroups.
If <selection> is given, only groups of given types are returned:
1 Hamster's internal groups
2 Local groups (except 1 and 3)
3 Group that was pulled but isn't any more
4 Group that is currently pulled
Example: Selection '123' returns all groups not
currently pulled.
Data Req.: Selection: [ <selection> ]
Data Rep.: List: *( <newsgroup> CRLF )
LMREQ_GROUPS_ADD = LMREQ or $101
Adds a new newsgroup.
Data Req.: Group: <newsgroup>
Data Rep.: -
LMREQ_GROUPS_DELETE = LMREQ or $102
Deletes the given newsgroup.
Data Req.: Group: <newsgroup>
Data Rep.: -
LMREQ_GROUPS_SETTING_GET = LMREQ or $103
Returns the list of Group Settings.
Data Req.: <newsgroup>
Data Rep.: List: *( <id> "=" <value> CRLF )
LMREQ_GROUPS_SETTING_SET = LMREQ or $104
Changes Group Settings (only given ones, others remain unchanged).
Data Req.: Changes: <newsgroup> CRLF *( <id> "=" <value> CRLF )
Data Rep.: -
LMREQ_GROUPS_FULL_LIST = LMREQ or $105
Returns the complete list of newsgroups available on remote NNTP
servers.
If <regex> is specified, the list is filtered accordingly.
If a group is already pulled by Hamster an extra TAB is added after
<newsgroup> in the reply.
Example: Regex '^fr\..*' returns all groups beginning
with 'fr.'
Data Req.: Regex: [ <regex> ]
Data Rep.: List: *( <newsgroup> [TAB] CRLF )
LMREQ_PULLS_LIST = LMREQ or $120
Returns the list of news pulls.
Data Req.: -
Data Rep.: List: *( <newsgroup> TAB <newsserver> CRLF )
LMREQ_PULLS_ADD = LMREQ or $121
Adds a new news pull.
Data Req.: Pull: <newsgroup> TAB <newsserver>
Data Rep.: -
LMREQ_PULLS_DELETE = LMREQ or $122
Deletes the given news pull.
Data Req.: Pull: <newsgroup> TAB <newsserver>
Data Rep.: -
LMREQ_PULLS_SETTING_GET = LMREQ or $123
Returns the list of Pull Settings.
Data Req.: <newsgroup> TAB <newsserver>
Data Rep.: List: *( <id> "=" <value> CRLF )
LMREQ_PULLS_SETTING_SET = LMREQ or $124
Changes Pull Settings (only given ones, others remain unchanged).
Data Req.: Changes: <newsgroup> TAB <newsserver> CRLF *( <id> "=" <value> CRLF )
Data Rep.: -
LMREQ_PULLS_SERVERS_LIST = LMREQ or $125
Returns the list of news pulls available on remote NNTP servers for
<newsgroup>.
If a pull is already set in Hamster an extra TAB is added after
<newsserver> in the reply.
Data Req.: List: *( <newsgroup> CRLF )
Data Rep.: List: *( <newsgroup> TAB <newsserver> [TAB] CRLF )
LMREQ_SRVNNTP_LIST = LMREQ or $140
LMREQ_SRVPOP3_LIST = LMREQ or $160
LMREQ_SRVSMTP_LIST = LMREQ or $180
Returns the list of remote NNTP/POP3/SMTP servers.
Data Req.: -
Data Rep.: Server list: *( <domain> [ "/" <alias> ] "," <port> )
LMREQ_SRVNNTP_ADD = LMREQ or $141
LMREQ_SRVPOP3_ADD = LMREQ or $161
LMREQ_SRVSMTP_ADD = LMREQ or $181
Adds a new remote NNTP/POP3/SMTP server.
If no <port> is given here, the default port number for server's type will be used.
Data Req.: Server identifier: <domain> [ "/" <alias> ] [ "," <port> ]
Data Rep.: -
LMREQ_SRVNNTP_DEL = LMREQ or $142
LMREQ_SRVPOP3_DEL = LMREQ or $162
LMREQ_SRVSMTP_DEL = LMREQ or $182
Deletes the given remote NNTP/POP3/SMTP server.
Data Req.: Server identifier: <domain> [ "/" <alias> ] "," <port>
Data Rep.: -
LMREQ_SRVNNTP_SETTING_GET = LMREQ or $143
LMREQ_SRVPOP3_SETTING_GET = LMREQ or $163
LMREQ_SRVSMTP_SETTING_GET = LMREQ or $183
Returns the list of Server Settings.
Data Req.: <server>
Data Rep.: List: *( <id> "=" <value> CRLF )
LMREQ_SRVNNTP_SETTING_SET = LMREQ or $144
LMREQ_SRVPOP3_SETTING_SET = LMREQ or $164
LMREQ_SRVSMTP_SETTING_SET = LMREQ or $184
Changes Server Settings (only given ones, others remain unchanged).
Data Req.: Changes: <server> CRLF *( <id> "=" <value> CRLF )
Data Rep.: -
LMREQ_SCRIPT_DIR = LMREQ or $200
Returns the list of available scripts.
The format of returned <filetime> is always "YYYY-MM-DD
HH:NN:SS".
Data Req.: -
Data Rep.: Script list: *( <filetime> TAB <filesize> TAB <filename> )
LMREQ_SCRIPT_GET = LMREQ or $201
Returns the selected script.
Data Req.: Script: <script's filename>
Data Rep.: Script text: *( <script line> CRLF )
LMREQ_SCRIPT_PUT = LMREQ or $202
Saves the given script.
Data Req.: Script: <script's filename> CRLF *( <script line> CRLF )
Data Rep.: -
LMREQ_SCRIPT_DELETE = LMREQ or $203
Deletes the given script.
Data Req.: Script: <script's filename>
Data Rep.: -
LMREQ_SCRIPT_START = LMREQ or $204
Starts the given script and returns immediately.
If multiple <start parameters> are given, they have to be separated by TABs (ASCII-9).
The <uid> value returned is the unique task number of the started script (see LMREQ_TASKS functions for details).
Data Req.: Start info: <script's filename> [ CRLF <start parameters> ]
Data Rep.: Started as: <uid>
LMREQ_MSG_DIR = LMREQ or $220
Returns the list of outgoing mails and articles, errored mails and articles and mails in local mailboxes.
The format of returned <filetime> is always "YYYY-MM-DD
HH:NN:SS".
Data Req.: -
Data Rep.: Message list: *( <filetime> TAB <filesize> TAB <filepath+filename> )
LMREQ_MSG_GET = LMREQ or $221
Returns the selected message.
Data Req.: Message: <message's filepath+filename>
Data Rep.: Message text: *( <message line> CRLF )
LMREQ_MSG_GET_SHORT = LMREQ or $222
Returns the selected message truncated to 300 lines if it is larger.
Data Req.: Message: <message's filepath+filename>
Data Rep.: Message text: *( <message line> CRLF )
LMREQ_MSG_PUT = LMREQ or $223
Saves the given message.
Data Req.: Message: <message's filepath+filename> CRLF *( <message line> CRLF )
Data Rep.: -
LMREQ_MSG_DELETE = LMREQ or $224
Deletes the given message.
Data Req.: Message: <message's filepath+filename>
Data Rep.: -
LMREQ_MSG_REQUEUE = LMREQ or $225
Requeues the given errored message, i.e changes its extension from .err to .msg, deletes the error index and moves the message to the appropriate directory.
Data Req.: Message: <message's filepath+filename>
Data Rep.: -
LMREQ_PASSWORD_LIST = LMREQ or $300
Returns a list of passwords (RAS and multi-purpose ones).
Each password has an <identifier>, which is the name of the RAS
connection for RAS passwords and $1, $2, $3 etc. for the multi-purpose
passwords.
The <description> is "RAS: connection-name" for RAS connections and "$number: username" for multi-purpose passwords.
Marker <set> is "1", if a password is set and stored, and "0", if password is not set.
Data Req.: -
Data Rep.: Password list: *( <identifier> TAB <description> TAB <set> )
LMREQ_PASSWORD_GET = LMREQ or $301
Returns info for specific password.
Data Req.: Identifier: <identifier>
Data Rep.: Password info: *( <identifier> TAB <username> TAB <set> )
LMREQ_PASSWORD_SET = LMREQ or $302
Sets/clears username and password.
Data Req.: -
Data Rep.: New setting: *( <identifier> TAB <new username> TAB <new password> )
LMREQ_ACCOUNTS_LIST = LMREQ or $320
Returns a list of all accounts.
Data Req.: -
Data Rep.: Account list: *( <username> TAB <user id> TAB <full name> CRLF )
LMREQ_ACCOUNTS_WMF_LIST = LMREQ or $321
Returns a list of all accounts.
Data Req.: -LMREQ_ACCOUNTS_ADD = LMREQ or $322
Adds a new account, optionally initializing it with the properties of an existing account (IDs >= 10 only).
Data Req.: Account: <new username> [ CRLF <template username> ]
Data Rep.: -
LMREQ_ACCOUNTS_DEL = LMREQ or $323
Deletes an account.
Data Req.: Account: <username>
Data Rep.: -
LMREQ_ACCOUNTS_GET = LMREQ or $324
Gets all properties of an account. The properties are returned as a list of "id=value" pairs. Valid ID numbers are:
apUsername = 1;
apPassword = 2;
apFullname = 3;
apUniqueID = 4;
apNewsPost = 10;
apNewsRead = 11;
apNewsNewNews = 12;
apNewsAutoSub = 13;
apNewsXHSearch = 14;
apMailbox = 20;
apMailSend = 21;
apMailAddress = 22;
apMailFwdAccount = 23;
apMailFwdAddress = 24;
apMailFwdMailList = 25;
apMailFwdKeepCopy = 26;
apRemoteControl = 30;
Note: Instead of the real password, only a marker is returned: "1"=set, "0"=none.
Data Req.: Account: <username>
Data Rep.: Properties: *( <id> "=" <value> CRLF )
LMREQ_ACCOUNTS_SET = LMREQ or $325
Sets properties of an account (only given ones, others remain unchanged).
Note: Unlike with LMREQ_ACCOUNTS_GET, the real/new password has to be given here, if ID 1 (apPassword) is contained in the list.
Data Req.: Account and properties: <username> CRLF *( <id> "=" <value> CRLF )
Data Rep.: -
LMREQ_RCPROFILES_LIST = LMREQ or $340
Returns list of RC profiles.
Data Req.: -
Data Rep.: Available profiles: *( <profile number> TAB <profile description> CRLF )
LMREQ_MAILLISTS_LIST = LMREQ or $360
Returns list of mail lists.
Data Req.: -
Data Rep.: Available mail lists: *( <listname> CRLF )
LMREQ_MAILLISTS_DEL = LMREQ or $362
Deletes a mail list.
Data Req.: Name of list: <listname>
Data Rep.: -
LMREQ_MAILLISTS_GET = LMREQ or $363
Gets all lines of mail list file (<listname>.hml).
See "Reference: Mail List Files" for details.
Data Req.: Name of list: <listname>
Data Rep.: Lines: *( <line> CRLF )
LMREQ_MAILLISTS_SET = LMREQ or $364
Sets all lines of mail list file (<listname>.hml).
See "Reference: Mail List Files" for details.
Data Req.: Name and lines: <listname> CRLF *( <line> CRLF )
Data Rep.: -
LMREQ_FILE_GET = LMREQ or $3F0
Returns content of the given file.
Supported filenames are:
"IPAccess.hst" IP
Access File"Scores.hst" News
Score File"MailFilt.hst" Mail
Filters File"MListFilt.hst" Mailinglists
Advertising Filters File"Kills.log" Killfile
Log"RCProfiles.hst" RC
Server Profiles"HscActions.hst" Script
Actions*.log in Logs directory*.htm in Reports directory (see LMREQ_REPORTS_LIST)"ReportTitles.txt"Data Req.: File: <filename>
Data Rep.: Content: *( <line> CRLF )
LMREQ_FILE_SET = LMREQ or $3F1
Overwrites content of given file.
Data Req.: File and new content: <filename> CRLF *( <line> CRLF )
Data Rep.: -
LMREQ_REPORTS_LIST = LMREQ or $400
Returns a list of currently available reports (*.htm files in reports directory), that can be loaded by LMREQ_FILE_GET.
Data Req.: -
Data Rep.: Content: *( <filename> CRLF )
LMREQ_RUN_PURGE = LMREQ or $500
Starts "purge", i. e. deleting of old data.
<bits> is any combination of the following "bits":
HAM_PURGEOPT_DONEWS = 1 // articles
HAM_PURGEOPT_DOHISTORY = 2 // news history
HAM_PURGEOPT_DOKILLS = 4 // killfile log
HAM_PURGEOPT_DOMHISTORY = 8 // mail history
To purge all values, a value of 15 (=1+2+4+8) has to be used.
If <bits> contains 1 and <group> is given, only this single group is purged.
The <uid> value returned is the unique task number of the
started task (see LMREQ_TASKS_...).
Data Req.: <bits> [ CRLF <group> ]
Data Rep.: <uid>
LMREQ_RUN_REBUILDHISTORY = LMREQ or $501
Starts rebuilding of news history.
The <uid> value returned is the unique task number of the
started task (see LMREQ_TASKS_...).
Data Req.: -
Data Rep.: <uid>
LMREQ_RUN_REBUILDLISTS = LMREQ or $502
Starts rebuilding of the global list of newsgroups, that are available on any of the remote NNTP servers.
The <uid> value returned is the unique task number of the
started task (see LMREQ_TASKS_...).
Data Req.: -
Data Rep.: <uid>
LMREQ_RUN_STATISTICS = LMREQ or $503
Starts generating the statistics.
The <uid> value returned is the unique task number of the
started task (see LMREQ_TASKS_...).
Data Req.: -
Data Rep.: <uid>
LMREQ_RUN_AUTOUNSUBSCRIBE = LMREQ or $504
Starts checking and deleting of groups, that are not read any more
by any client.
The <uid> value returned is the unique task number of the started
task (see LMREQ_TASKS_...).
Data Req.: -
Data Rep.: <uid>
LMREQ_RUN_REPORTS = LMREQ or $505
Starts creation of Hamster Reports.
The <uid> value returned is the unique task number of the started
task (see LMREQ_TASKS_...).
Data Req.: -
Data Rep.: <uid>
LMREQ_RUN_RASDIAL = LMREQ or $520
Dial the RAS connection named <name> with given username <user> and password <pass>.
Note: <user> can be one of the multi purpose passwords ($<number>).
Data Req.: <name> [ CRLF <user> [ CRLF <pass> ] ]
Data Rep.: -
LMREQ_RUN_RASHANGUP = LMREQ or $521
Hangup current RAS connection.
Data Req.: -
Data Rep.: -
LMREQ_RUN_FETCHMAIL = LMREQ or $540
Starts POP3 transfer (fetching mails) for the given server.
Parameters are the same as with script command HamFetchMail.
The <uid> value returned is the unique task number of the
started task (see LMREQ_TASKS_...).
Data Req.: <srv> CRLF <user> CRLF <pass> CRLF <destuser> CRLF <filtsect> CRLF <leave>
Data Rep.: <uid>
LMREQ_RUN_SENDMAIL = LMREQ or $550
Starts SMTP transfer (sending mails) for the given server.
Parameters are the same as with script command HamSendMailAuth.
The <uid> value returned is the unique task number of the
started task (see LMREQ_TASKS_...).
Data Req.: <srv> CRLF <user> CRLF <pass> CRLF <fromsel> CRLF <tosel>
Data Rep.: <uid>
LMREQ_RUN_SENDMAILMX = LMREQ or $551
Starts SMTP transfer (sending mails) in MX mode.
See "Reference: File SmtpRouter.hst" for additional info on this MX mode.
The <uid> value returned is the unique task number of the
started task (see LMREQ_TASKS_...).
Data Req.: -
Data Rep.: <uid>
LMREQ_RUN_NEWSJOBS = LMREQ or $560
Adds post and pull jobs for the given server and starts transfer thread(s) for it.
The list of <uid> values returned are the unique task numbers of the started tasks.
Data Req.: <server>
Data Rep.: <uid> *( TAB <uid> )
LMREP_OK = LMREP or $000
Request successful.
Data Rep.: See "Data Rep." of request message.
LMREP_FAILED = LMREP or $100
Request failed - no details.
Data Rep.: Empty.
LMREP_UNKNOWN_ITEM = LMREP or $101
The requested item (server name, group name, file name etc.) is unknown.
Data Rep.: Empty.
LMREP_EXCEPTION = LMREP or $200
An exception happened while handling the request.
Data Rep.: Error text
LMREP_UNKNOWN_MESSAGE = LMREP or $201
The request number sent is unknown.
Data Rep.: Error text
LMXXX_HC_GUI_LOG = LMXXX or $100
Used internally by HControl to inject its own messages into logfile view.
Data: Text
LMXXX_RC_LIVE_OFF = LMXXX or $888
Forces RC server to terminate the current "Live" connection and to return to "Telnet Mode".
Data: Ignored.