Contact centre software
The contact centre platform you run yourself.
Queues, agents, dialers, recordings and reporting — on servers you control, with the call flows your operation actually uses. No per-seat licence counting your agents, and no third party between you and your calls.
What it is
A whole contact centre, from the trunk to the wallboard.
Xema is built on Asterisk and adds everything around it that a contact centre needs and Asterisk does not have an opinion about — who a call should go to, what the agent sees, and what you can say about it afterwards.
Queues that choose
Callers are matched to agents on skills, not just on who is free. Wrap-up, pauses and ring-no-answer are handled by the queue rather than by whoever remembers to.
Call flows
IVR, prompts, business hours, dataset lookups and API calls, drawn as a flow and rendered onto every node. No dialplan to hand-edit.
Outbound dialing
Campaigns dial from your own datasets at a pace you set, and hand answered calls to the same queues and the same agents as everything else.
Live and historic
Wallboards for the floor, and call records with recordings behind them. Answered, abandoned, service level and an agent's day, kept as data rather than a screenshot.
Your servers
Installs on Ubuntu you already have — a cloud VM, a machine in your own rack, or a rack of them. Your recordings and your customer data stay where you put them.
Integrations
A REST API over the parts worth automating, and connectors where they earn their keep — CRM screen-pops, attendance, and datasets your flows read at call time.
For agents
A phone in the browser, and nothing to install.
Agents sign in to a web page and take calls through it — WebRTC, so there is no softphone to deploy, no handset to configure, and no desk they have to be sitting at.
- Hold, transfer, conference and hangup, from the same screen as the customer's record.
- Breaks that a supervisor can see, with wrap-up time the queue enforces.
- Dispositions, call history and missed calls, per agent.
- Barge, whisper and coaching for whoever is running the floor.
For the floor
What is happening, while it happens.
Wallboards built from the same event stream the queues run on, so the number on the screen and the number in the report are the same number.
- Waiting, longest wait, answered and abandoned, per queue.
- Who is ready, on a call, in wrap or on a break — and for how long.
- Service level against a target you set per queue.
Scale
One server, or a room of them.
A single machine is the ordinary deployment and needs nothing special. When one is not enough, servers join a site and share one database, one broker and one set of agents — a caller who lands on one node reaches an agent registered on another.
Roles, not installs
You say what a server is for and it becomes that. Adding a queue engine to a machine is a role, not an afternoon.
Nodes that heal
Each node renders its own Asterisk configuration from the database. Nothing reaches across to edit another machine's files, so a node that was down catches up by itself.
Sites that stand alone
A site keeps working when the link to another is cut, and calls cross between them while it is up.
Install
One command on a fresh Ubuntu server.
It installs the software and stops there — what the server is for is a decision you
make afterwards, with the xema command. Ubuntu 24 and 22.
curl -fsSL https://www.xema.in/install-xema.sh | sudo bash
What it installs and what it does not · Deployment shapes · Building a site of several servers
Talk to us about your operation.
Xema is built by TechSudoku in India, for contact centre operators. We are happy to help with an evaluation.