Skip to main content
Call recordings

Building call scripts

Create, preview and manage the call scripts your agents run on a call, including step types, placeholders and mapping answers to ticket fields.

Written By Chris Scaminaci

Last updated About 1 hour ago

A call script is a sequence of steps an agent follows on a call: things to say, questions to ask, choices to make, and a way to fill in the ticket from the answers. You build and manage scripts on the Scripts sub-tab of the Call Taking settings. Agents run them from the Call Taking screen.

Before you start: the Call Center Operations module must be on, and you need the Administrator or Q-Director Configuration role.

Open the script builder

  1. Open Q-Director Settings (Q-Director Config in the sidebar), then select the Call Taking tab.
  2. Select the Scripts sub-tab. Its heading is Call Script Administration. The older call scripts address opens it too.

Every script is a card. It shows the script's name, a Default tag if it is the default, an Inactive tag if it is switched off, how many steps it has, its Default Team and its white-label source. Edit, Duplicate and Delete are on the card. With no scripts, the tab shows No Call Scripts Yet and Create First Script.

Create a script

  1. Select New Script.

  2. Under Script Properties, fill in:

    FieldWhat it does
    NameRequired. Save Script does nothing until the script has a name.
    Default TeamThe name of the team the script is for. It is shown on the script's card.
    White-label sourceNone (default) or one of your linked white-label partners. When a call arrives on that partner's number, or the caller is that partner's contact, the call starts with this script.
    DescriptionA note on when to use the script. Agents see it in the script list.
  3. In the Settings box, set:

    FieldWhat it does
    ActiveOnly active scripts are offered on calls.
    Default ScriptThe script used when no partner-specific script applies. Only one script is the default: making this one the default clears it from the other. A new script starts as the default when you have none.
    Display OrderScripts are listed from the lowest number to the highest.
  4. Add steps (next section), then select Save Script. Back returns to the list without saving.

Add and arrange steps

Under Script Steps, choose a step type in the list beside Add Step, then select Add Step. The new step is added at the end and opens so you can fill it in. Select a step's heading to open or close it.

Each step shows its number, its type and its name. The buttons on the right move it up or down (Move Up, Move Down), duplicate it (Duplicate) or remove it (Delete).

Every step has these fields:

FieldWhat it does
Step NameA short name. It shows as the step's title and in the ticket details.
Step TypeChanges what the step does (see below).
Content / PromptThe text the agent reads or the question they ask. It can contain placeholders (see below).
Agent Notes (Optional)A note shown to the agent beneath the text.
Allow SkipLets the agent skip the step.
Next Step:Where to go after this step: Next in sequence, another step, or Complete Script.

Steps run in the order shown unless a Next Step, a decision choice or a ticket search branch sends the agent somewhere else. Complete Script ends the script.

Choose the step types

Step typeWhat the agent sees
PromptText to say or follow, and Continue.
InformationInformation to read, and Continue.
QuestionA question with an answer box (see Input Configuration).
Input FieldThe same as a question: a value to type or choose (see Input Configuration).
Decision PointButtons; each one sends the agent to a step you choose.
User MatchA search for a person. The person they pick becomes the caller on the Call Taking screen.
Ticket SearchA search for an existing ticket.
AI AssistAI drafts the ticket from everything collected so far.
Set VariableNothing, when it is at the start of the script: it sets values before the first step the agent sees.

Question and input steps

Input Configuration appears for Question and Input Field steps.

  • Input Type: Text, Text Area, Number, Dropdown, Radio Buttons, Checkboxes or Date.
  • Variable Name: where the answer is kept, for example issueType. Use letters, digits and underscores.
  • Placeholder: hint text in the box.
  • Required Field: the agent cannot continue until they answer.
  • Options (for Dropdown, Radio Buttons and Checkboxes): select Add Option and give each option a Value and a Label. The label is what the agent sees; the value is what is stored and what a placeholder inserts. Use readable values.

Decision steps

Under Decision Choices, each choice has a Button Label, a style and a destination: Next in sequence, another step or Complete Script. Select Add Choice to add one and Remove to delete one.

User Match steps

  • Display Variable keeps the person's display text. Placeholder Text is the hint in the search box.
  • Under Variable Mapping, name the variables that should receive the person's User ID Variable, User Name Variable, Email Variable, Phone Variable, Client ID Variable and Client Name Variable. Leave one empty to skip it.
  • Required makes a match mandatory. Allow Skip lets the agent skip it and Skip Button Label names the skip button. Restrict to Current Client limits the search to the caller's organisation.

Ticket Search steps

  • Search Placeholder is the hint in the box. Max Results is how many matches to list (1 to 20).
  • Under Variable Mapping, name the variables that receive the Ticket ID Variable, Ticket Summary Variable and Ticket Status Variable of the ticket the agent picks.
  • Under Branching Options, If Ticket Selected and If Skipped/No Match each choose where to go next: Same as default (Next Step), another step or Complete Script.
  • Required, Allow Skip, Include Closed Tickets and Restrict to Current Client are switches. Select Ticket Button Label and Skip Button Label rename the two buttons.

Choosing a ticket in this step stores its details in your variables. It does not link the call. The agent links the call with Link Existing when the script ends.

AI Assist steps

Switch on what the AI should draft: Generate Summary, Generate Details, Generate Impact, Generate Urgency and Generate Triage Recommendation. Custom System Prompt (optional) adds your own guidance, for example to always recommend a particular team for network problems. The agent reviews and edits the draft before it is used. See Call scripts and creating the ticket.

Set Variable steps

Under Variable Updates (Auto-Executed), select Add Variable Update and give each update a Variable Name and a Value. The value can be fixed text or contain placeholders. Put Set Variable steps at the beginning of a script, before the first question, so they run as soon as the script opens.

Use placeholders

Write {{variableName}} in Content / Prompt or in a Value to insert a variable. A step can use the answer to an earlier step, or one of these values that the Call Taking screen supplies:

PlaceholderValue
{{_callerName}}The caller's name.
{{_callerPhone}}The phone number entered on the Call Taking screen.
{{_clientName}}The caller's organisation.
{{_currentTime}}The time the script started, as hours and minutes in 24-hour form, for example 14:30.
{{_currentDate}}The date the script started, as year, month and day, for example 2026-03-15.

A placeholder with no value yet is shown as written, so check the order of your steps.

Map answers to ticket fields

Under Field Mappings, select Add Mapping, type a variable name and choose the ticket field it fills: Summary, Description, Team, Ticket Type, Impact or Urgency. When the step that sets the variable is completed, the value goes into that field of the ticket.

  • Summary and Description take text.
  • Team and Ticket Type take the number HaloPSA uses for that team or ticket type. Impact and Urgency take 1 to 4, the same numbers as the impact and urgency lists in Call Taking settings. A name is not matched.
  • If you would rather not look up numbers, let an AI Assist step choose the team and type, or set the Default Team (Queue for Triage) and Default Ticket Type (Queue for Triage) in the settings.

Plan how each script ends: whether QuantumOps creates the ticket for the agent depends on what the script fills in. See What happens when the script ends.

Test with Preview

Select Preview (next to Save Script) to run the script you are editing. It appears once the script has been saved at least once. The Script Preview window runs the steps as they are now, including changes you have not saved. It has no caller, so the placeholders in the table above are not filled in, and it does not create a ticket.

Preview a new script and fix what you find before you make it the default.

Example: a password-reset script

This script asks which account needs a new password, checks whether the caller has already reported it, and collects a summary and details.

Properties: Name is Password reset, Description is Caller cannot sign in and needs a new password, Active is on and Default Script is off until you have previewed it.

#Step typeFieldsNotes
1Input FieldStep Name Which account?. Content / Prompt Which account needs a new password for {{_callerName}}? Input Type Dropdown. Variable Name account. Required Field on. Options: Windows sign-in, Email, VPN, Something else (the value and the label the same).The readable values appear wherever {{account}} is used.
2Ticket SearchStep Name Already reported?. Content / Prompt Ask whether the caller has already contacted us about this. Allow Skip on, Skip Button Label No, this is new. If Ticket Selected: Complete Script.If the agent finds the ticket, the script ends here.
3Input FieldStep Name Summary. Content / Prompt Say: "I'll reset your {{account}} password, {{_callerName}}." Then describe the request in one line. Input Type Text. Variable Name summaryLine. Required Field on.
4Input FieldStep Name Details. Input Type Text Area. Variable Name detailsText.Optional for the agent.

Field Mappings: summaryLine to Summary, and detailsText to Description.

What the agent experiences:

  • If the caller has already reported the issue, the agent finds the ticket in step 2 and the script ends without a summary. The agent is offered New Ticket, Link Existing and Close, and selects Link Existing.
  • Otherwise the agent answers steps 3 and 4. The script now has a summary. If the Default Team (Queue for Triage) and Default Ticket Type (Queue for Triage) are set, QuantumOps creates the ticket queued for triage, with the account and the answers in its details. If they are not set, the agent gets New Ticket, with the summary and description already filled in.

Duplicate and delete scripts

Duplicate makes a copy with (Copy) added to the name. The copy has the same steps, is switched off and is not the default, so edit it and turn Active on when it is ready.

Delete asks you to confirm in a Delete Script window (Cancel or Delete). It switches the script off and clears Default Script; the card stays on the list with the Inactive tag, and you can edit it and turn Active on again. Turning Active off in the editor has the same effect on calls.