☰ Contents ‹ Previous Next ›

The Built-in Protocols

The following is a list of builtin protocols (in decreasing importance) for the SunNET program.
IKNOW A list of sites the sender knows directly. This protocol is responsible for maintaining SunNET routing information. SunNET can still run without it, but has to assume everything.
ACK A list of the form: {Packet ID of original packet, the path original packet took, the time of the original packet, our current time} Responsible for clearing the outbound message queue. Eventually this will be used to obtain timing information about links. Without this protocol, Packet buildup can occur.
RCALL A list of the form {task ID of task on sending moo or 0 if no result needs to be returned, object as a string to be matched or as an object number, verb to call, list of arguments} Note that if the object results to #-1, then a builtin function with the name in the verb to call slot is called. This is how remote eval is accomplished. Used to remotely evaluate bits of MOO code. It is tied heavily with RCALLRESULT for returning the information to the calling MOO.
RCALLRESULT A list of the form {message sent to RCALL, result of the evaluation} Used with RCALL to return information to the calling task on the calling MOO.
ALIAS A list of aliases for the sending site. This is not necessary for SunNET, but does provide the capability to abbreviate longer site names.
PROTOS A list of protocols the sending site knows about. This is not used internally to SunNET. It is provided to SunNET application writers.
RLOGIN A list of the form: {PlayerName, PlayerNum, Action (connected, disconnected, etc), total number of players, Location object number, Location Name, Site information} Used for the remote login watcher.
RWHO A list of connected players on the sending site Used to ease the traffic generated by @rwho and @rwho cache updates.
Other protocols not listed here are not part of the SunNET program itself.
☰ Contents ‹ Previous Next ›