Roles
A role is one part of the platform a server runs. Every server in a cluster holds some of them, and each role has a page of its own on how to put it on a server, take it off, check it and move it.
xema node roles # what this server should run, beside what it runs
How a role is placed
- Services are started and stopped for you.
xema node role add <role>records that a server should run one, andxema node applymakes it so. - Infrastructure is recorded only. Moving it moves data with it, so
xema node applynever starts, stops or moves it. - Some are given automatically. A cluster always has a Manager and a BFF, and a server that carries a trunk is given what such a server runs.
Services
| Role | What it does |
|---|---|
Manager manager |
the Admin UI and the cluster's administration; one per cluster, always held |
BFF bff |
what the apps connect to; several can run, one is active |
Queue queue |
callers waiting for an agent |
Bridge bridge |
a call once it is answered |
Park park |
callers waiting for something other than an agent |
Recorder recorder |
captures calls |
Tone tone |
answers a desk phone |
AsterMQ astermq |
carries the phone system's events out |
Fastlane fastlane |
carries the cluster's actions on calls in |
FastAGI fastagi |
runs a caller flow's steps |
Sipper sipper |
captures SIP traffic |
Dialer dialer |
outbound calls |
Call record simplecdr |
writes the call record: the primary, HA and DR copies |
Metrics metrics |
the numbers and their history |
Integrations integrations |
other systems; one acts |
Ava ava |
the AI voice agent; only where named |
Infrastructure
| Role | What it does |
|---|---|
Database database |
the cluster's configuration and history |
Broker broker |
events between the services |
Cache redis |
what the services share while they run |
Phone system asterisk |
the calls, trunks and phones on a server |
Every server
Host is on every server, and is not a role you add or remove.