Dispositions
What actually answered each number, the full taxonomy, and the suppression register.
Every call attempt ends in something. A person picked up. A phone tree answered. A voicemail took the message. The carrier said the number is dead. Dispositions is the page where that verdict is recorded for every number you have ever dialled, kept as a running state per contact, and turned into a decision about whether to call again.
It answers the question a call list can't: of the 4,000 numbers we dialled, which are worth another attempt, which need a person, and which must never be dialled again?
In this guide
- What a disposition is, and how one gets assigned
- Getting to the page
- The disposition taxonomy — every bucket and code
- Scopes vs outcomes: the two halves of the left rail
- Reading a contact row
- Recommended actions and what they mean
- The suppression register — stopping the dialler
- Automatic suppression
- Bulk actions: suppress, release, export
- The contact detail panel
- Custom dispositions for your account
- Troubleshooting
1. What a disposition is
A disposition is the classified result of a call attempt: what actually answered.
After a call completes, the classifier reads the transcript and the telephony signals and picks exactly one code from the taxonomy — interested, voicemail_business, carrier_dead, and so on. That code carries four decisions with it:
- Which bucket it belongs to — did we reach a human, a machine, or nothing at all.
- A recommended action — retry, retry at another time, needs a human, or stop dialling.
- Whether it is terminal — is this the end of the road for this number.
- Whether it suppresses dialling — should the dialler stop calling this number entirely.
Each contact then carries a current disposition state: the latest code, the bucket, an attempt count, a machine streak (how many consecutive attempts hit an automated system), when it was last called, and whether it is suppressed.
Dispositions are per number, not per call. The Conversations page is the log of individual calls. Dispositions is the running verdict on the contact — which is what a dialler needs to decide what to do next.
2. Getting to the page
- Open the Voice AI hub.
- Click Dispositions in the left navigation (the checklist icon).
- The page opens at
…/voice/dispositions.
Dispositions are derived from campaign calls, so the page shares the Campaigns feature gate. If your account does not have campaigns enabled, you will see an upgrade screen instead of the list.
The header reads Dispositions — "What actually answered each number — a person, a phone tree, a voicemail, or nothing at all."
Four figures sit under it:
| Figure | What it counts |
|---|---|
| Contacts | Every number with a recorded disposition state. |
| Needs attention | Numbers stuck behind a menu, a gatekeeper or a voicemail — something a person could unblock. |
| Machine answered | Numbers whose last attempt reached an automated system. |
| Suppressed | Numbers currently on the suppression register and excluded from dialling. |
3. The disposition taxonomy
Dispositions live in four buckets. The bucket is the coarse verdict; the code inside it is the specific one.
Reached a human
A person picked up and spoke to the agent.
| Code | Label | What it means | Recommended action |
|---|---|---|---|
interested | Interested | A person engaged and expressed interest. | — |
callback_requested | Callback Requested | A person asked to be called back at another time. | — |
booked | Booked | A person booked an appointment or meeting. (Terminal) | — |
qualified | Qualified | A person met the qualification criteria. | — |
not_interested | Not Interested | A person declined but did not ask to stop being called. (Terminal) | — |
wrong_person | Wrong Person | A person answered but is not the intended contact. | — |
gatekeeper | Gatekeeper | A receptionist or assistant blocked access to the contact. | Needs a human |
do_not_call | Do Not Call | A person explicitly asked not to be contacted again. (Terminal · suppresses dialling) | Stop dialling |
complaint_threat | Report / Complaint | Someone threatened to report or formally complain about us. (Suppresses dialling) | Stop dialling |
Machine answered
A phone tree, voicemail, screening prompt or carrier intercept picked up — not a person.
| Code | Label | What it means | Recommended action |
|---|---|---|---|
ivr_menu | IVR / Phone Menu | An automated phone tree with menu options and no route to the contact. | Needs a human |
ivr_dial_by_name | IVR — Dial by Name | A directory or extension menu, so the contact is reachable by navigating it. | Retry — navigate the menu |
voicemail_personal | Voicemail — Personal | An individual's personal voicemail greeting. | Retry at another time |
voicemail_business | Voicemail — Business | A general business mailbox greeting. | Retry at another time |
voicemail_unspecified | Voicemail (type unknown) | An answerphone picked up, detected from telephony signals on a call with no transcript. | Retry at another time |
call_screening | Call Screening | A screening service asking the caller to state their name. | Retry at another time |
ai_assistant_answered | AI Assistant Answered | The answering party is itself a conversational AI — a virtual assistant, AI receptionist or AI voicemail. | Retry at another time |
hold_queue | Hold Queue | An automated queue holding for the next available representative. | Needs a human |
after_hours | After Hours | A recorded message saying the business is closed. | Retry during opening hours |
fax_modem | Fax / Modem | A fax or modem tone answered. (Terminal · suppresses dialling) | Stop dialling |
carrier_dead | Dead Number | A carrier intercept: disconnected, unallocated or out of service. (Terminal · suppresses dialling) | Stop dialling |
carrier_blocked | Blocked / Rejected | The call was rejected, blocked or filtered as spam before reaching anyone. (Terminal · suppresses dialling) | Stop dialling |
Why
ai_assistant_answeredexists. A conversational AI on the other end sounds exactly like a person — fluent, natural, asking follow-up questions. Without its own code these calls were classified as reached a human, which quietly inflated every connect rate. Fluency is not evidence of a human; the code is assigned when the answering side identifies itself as an AI or confirms it when asked.
No connect
The call never got through at all.
| Code | Label | What it means |
|---|---|---|
no_answer | No Answer | The call rang out without being answered. |
busy | Busy | The line was engaged. |
failed | Failed | The call failed for a technical or telephony reason. |
Unclassified
The classifier could not reach a confident verdict.
| Code | Label | What it means | Recommended action |
|---|---|---|---|
needs_review | Needs Review | The classifier could not decide with enough confidence. | Needs a human |
4. Scopes and outcomes
The left rail has two kinds of entry, and they behave differently on purpose.
Scopes are places you go. Exactly one is active at a time, and choosing one clears any outcome filter.
| Scope | Shows |
|---|---|
| All contacts | Everything. |
| Needs attention | Numbers stuck behind a menu, a gatekeeper or a voicemail — anything a person could unblock. |
| Suppressed | Every number currently excluded from dialling, whatever the last call was. |
| Do Not Call | Numbers where someone explicitly asked not to be contacted, or that were suppressed for that reason. |
| Reports | Calls where someone threatened to report or formally complain. Suppressed automatically — read these before doing anything else with the number. |
Outcomes are the bucket/code tree underneath. Picking a bucket narrows to that bucket; picking a code narrows to that code. Choosing an outcome returns you to the All contacts scope.
Why they don't combine. Scopes and outcomes used to AND together, so Suppressed + Not Interested asked for numbers that were both and almost always showed "nothing matches". A scope is a place you are, not a filter you carry with you. Clicking the active scope again returns you to All contacts.
Each scope tells you what would have to happen for it to fill, rather than showing a dead end. An empty Suppressed scope reads "Nothing suppressed — every number is still callable."
5. Reading a row
| Column | What it tells you |
|---|---|
| Number | The dialled number, in E.164 form. |
| Contact / Business | Whatever name is on file for that number. |
| Disposition | The current code's label, colour-coded by bucket. Not classified if no call has been classified yet. |
| Bucket | Reached a human / Machine answered / No connect / Unclassified. |
| Attempts | How many times this number has been dialled. |
| Machine streak | How many consecutive attempts hit an automated system. A high streak on a "retry" action is a sign the number is not worth more attempts. |
| Recommended action | The taxonomy's advice for this code (see below). |
| Last called | When the most recent attempt was made. |
| Suppressed | Whether the number is on the register, and why. |
6. Recommended actions
| Action | Meaning | What to do |
|---|---|---|
| Stop dialling | The number must not be called again. | It is already suppressed automatically. |
| Needs a human | The agent cannot get past what answered. | Put it on a human call list. |
| Retry — navigate the menu | The contact is reachable behind a directory. | Requeue with an agent that can dial an extension. |
| Retry at another time | An answerphone or screening service picked up. | Requeue outside the window that failed. |
| Retry during opening hours | The business was closed. | Requeue inside the hours the recording stated. |
| — | Nothing to do automatically. | The outcome is the result. |
7. The suppression register
The suppression register is the list of numbers the dialler must skip. Adding a number to it stops every future campaign dialling it, so the reason is always recorded and always visible to whoever confirms.
Six reasons are allowed:
| Reason | When to use it |
|---|---|
| Do not call | Someone asked not to be contacted again. Treat this as a standing instruction from the person. |
| Dead number | The carrier says the number is disconnected, unallocated or out of service. |
| Fax / modem | A fax or modem tone answers this line — no person is ever going to. |
| Blocked / rejected | Calls are rejected, blocked or filtered as spam before they reach anyone. |
| Report / Complaint | Someone threatened to report or formally complain. Keep the number off the dialler until a person has read the call. |
| Manual — our decision | A judgement call by your team rather than anything the carrier or the contact told us. |
When you suppress a selection, the reason is pre-filled from the disposition where the taxonomy has a matching slot. Anything else — a phone tree, a voicemail, a no-answer — files as Manual, because filing a voicemail as "dead number" would put a claim in the audit trail that the carrier never made.
A mixed selection — two dead numbers and a voicemail — also falls back to Manual, for the same reason. Only a unanimous selection inherits its disposition's reason.
Automatic suppression
Every disposition whose taxonomy row says suppresses dialling suppresses the number the moment it is assigned. That covers:
do_not_callcomplaint_threatcarrier_deadfax_modemcarrier_blocked
You do not have to do anything for these — the number leaves the dialler on its own, and appears under the matching scope so a person can see it happened.
8. Bulk actions
Select rows with the checkboxes, then use the action bar.
Suppress — opens a confirmation showing how many numbers, which reason is pre-selected and what that reason means. The result is reported honestly and in full, for example: "18 numbers suppressed · 3 already suppressed · 1 rejected." A partial failure never reads as a clean success.
Release — removes a live suppression so the number becomes callable again. Releases run in batches of 100 so a select-all of several hundred cannot fail wholesale.
Export CSV — downloads the selection as dispositions_YYYY-MM-DD.csv with these columns:
Number · Contact · Business · Disposition · Bucket · Attempts · Machine streak · Recommended action · Last called · Suppressed · Suppression reason
Every value is a real string or number — an unknown value is an empty cell rather than the word "undefined".
9. The contact detail panel
Clicking a row opens a panel with the full history for that number:
- Attempts — total dials.
- Machine streak — consecutive automated answers.
- Last called and First seen.
- The current disposition, its bucket and its recommended action.
- The evidence: the quoted phrase from the transcript the classifier based its verdict on, colour-ruled by bucket.
- A link to the most recent conversation, so you can listen to the call the verdict came from.
Always read the evidence before acting on a Report. The classifier's bar for
complaint_threatis deliberately high — being shouted at is not a report — but a false positive permanently kills a real number, so the quote is there to check.
10. Custom dispositions
The system taxonomy is owned by Sysevo and is identical for every account: it is the vocabulary the classifier is trained against, so it cannot be edited or deleted.
Your account can add its own codes on top. A custom code belongs to your account only, needs a bucket, a label, a description and a recommended action, and appears in the outcome tree beside the system ones. Custom codes are visible only to your account.
The description on a disposition doubles as the classifier's instruction for that code. Write it as a discriminating rule — what evidence proves this outcome and what does not — rather than a summary.
11. Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| The page shows an upgrade screen | Campaigns are not enabled on your plan | Dispositions share the campaigns gate — see Plans & Subscriptions |
| A number shows Not classified | No call on that number has been classified yet | It classifies after the next completed call |
Lots of needs_review | The classifier is not confident — often very short calls or poor audio | Open a few and check the transcripts; adjust the campaign's dialling window if calls are being cut short |
| A number keeps being dialled after someone asked us to stop | The call was classified as not_interested rather than do_not_call | Suppress it manually with reason Do not call |
| Release fails on a large selection | — | Releases batch automatically; retry the remainder |
| Suppression shows "rejected" | The row belongs to an account you are not a member of | Only rows in your own account can be written |
Related guides
- Campaigns — the outbound calling the dispositions come from
- Conversations & Recordings — the individual calls behind each verdict
- Callbacks — callbacks extracted from calls
- Compliance & Calling Hours — the calling window and the suppression summary