A service represents an entity that emits and receives signals and has a status.

Services are created by looking up a name within a context. If the name is not found, then a service is automatically created by the context. Services are always specific to the context in which created.

The service interface has three basic functions:

  • return the name used to create the service
  • allow read-only access to the inferred operational status
  • provide the means to emit a signal or acknowledge receipt of one