Skip to main content

Glossary

The words the VRPC documentation uses, each in one meaning. The protocol specification defines the ones the wire depends on.

TermMeaning
AdapterThe part of an agent that holds the registered classes and their instances, and executes calls on them (VrpcAdapter).
AgentA program, or the part of one, that offers its classes to clients over the broker (VrpcAgent). Has a name unique in its domain.
Agent infoWhat an agent publishes about itself, retained: online or offline, its host, its version, its protocol version.
AnswerAn agent's reply to a request: a result or an error.
BrokerThe MQTT broker every agent and client connects to.
callAllOne call of a member function on every shared instance of a class, or on those a selection names; answers one entry per instance.
CallbackA function passed as an argument, which the agent calls back into the caller - once, or a few times during the call.
Class infoWhat an agent publishes about each class, retained: its static and member functions, its shared instances and, in full, their documentation.
ClientA program, or the part of one, that calls agents (VrpcClient).
Connection idThe name of one client connection, <domain>/<mqttClientId>/<secret>. Answers, callbacks and events for that connection travel on topics under it.
ContextWhat a request addresses: an instance, or a class for its static functions.
DeclareTo subscribe: a call of an event function that carries a subscription id.
DeleteTo end an instance for good; it releases what it runs.
DomainA name that groups agents and clients; they see and reach each other within one domain only.
EndA decided stop of a registration: its source ended it, or somebody did on purpose. Its subscribers are told.
Event functionA function that calls a handler again and again until it is released, such as onReading(handler).
GreetingWhat a registration hands every new subscriber first, usually its current state.
HealTo restore a lost subscription by declaring it again once its agent is back.
InstanceA named object of a class, kept by an agent. Shared instances are visible to every client; isolated ones belong to the connection that created them.
LossA stop nobody decided: the agent went offline, or the instance went away. Heals when the agent is back.
OwnerThe connection that created an isolated instance; the only one that may use it.
PresenceA client connection's last will, offline, on <connectionId>/__clientInfo__. Agents watch it to clean up after a connection.
Protocol versionThe version of the VRPC protocol a peer speaks (v); currently 4.
ProxyThe object a client hands out for an instance or a class; its functions call the real ones remotely.
RegistrationThe one call of an event function on one instance (or class) with one set of arguments, shared by every subscription that asks for the same. The agent owns it.
Registration objectWhat an event function returns: how to undo its call, and optionally how to greet, when it ended and what to answer.
ReleaseTo undo a registration once its last subscription left.
RequestA client's message asking an agent to call a function.
SelectionThe instances a callAll calls: a name pattern (* matches any run of characters) or a list of names and patterns.
SubscriptionOne listener's wish to receive the events of a registration. The client owns it.
Subscription idThe name of a subscription, __e__<connectionId>/<topicId>; events travel to the topic it names. A secret of its connection.
WillThe message the broker publishes for a peer whose connection breaks: an agent's agent info offline, a client's presence.
WithdrawTo end a subscription on purpose.