Complete guide to managing outbound dialing campaigns for Veritas Alliance
Create, start, pause, stop, and reset outbound campaigns
AI-powered text-to-speech for personalized call audio
Live call feed, stats, and campaign monitoring
Detailed reports with CSV export and charts
Province-based timezone-aware dialing windows
Per-campaign and global speed adjustment
VT Dialer is a campaign management platform that drives outbound calling for Veritas Alliance. It supports two call types that work with separate backend dialers.
Interactive IVR call. Plays a personalized message, then waits for DTMF input. Press 1 to connect to a representative, Press 2 if wrong person. If no key is pressed, the full message plays and the system calls back.
Plays a full pre-recorded voicemail message with no interaction required. The message includes the debtor's full name, toll-free callback number, and contact details.
How to log in and navigate the system.
Navigate to https://vtdialer.ipsecure.ca in your browser. You will see the login screen.
Enter your username and password, then click Sign In. Your credentials are provided by the system administrator.
After login, you will see the main dashboard. Use the left sidebar to navigate between pages: Dashboard, Campaigns, New Campaign, Call Queue, Results, Reports, Test Call, Users, and Settings.
| Role | Permissions |
|---|---|
| Super Admin | Full access. Create/manage campaigns, manage users, change system settings, delete campaigns, run audio cleanup. |
| Admin | Create and manage campaigns, start/stop/pause campaigns, adjust speed, generate audio, send test calls. |
| Viewer | View-only access. Can see the dashboard, campaigns, results, reports, and call queue but cannot make changes. |
Your command center for monitoring all campaign activity in real time.
The top row displays four key metrics that update automatically:
| Card | Description |
|---|---|
| Active Campaigns | Number of campaigns currently in "active" (dialing) state. |
| Today's Calls | Total calls attempted today across all campaigns. |
| Success Rate | Percentage of today's calls that resulted in "completed" or "transferred" status. |
| Calls/Min | Current calls being sent per minute across all campaigns (live counter). |
Below the stats, each campaign is shown as a card with a progress bar, record counts, and status badge. Click any card to view the full campaign detail page.
The bottom section shows a real-time feed of calls as they happen. New calls appear at the top with a brief animation. The feed shows the campaign name, debtor name, phone number, call type (LB/MD), and current status.
Step-by-step guide to setting up a new outbound dialing campaign.
Click New Campaign in the sidebar, or use the icon.
Campaign Name - A descriptive name (e.g. "BMO Distressed Jan 2026 - LB English").
Type - Choose Link Back (LB) for interactive calls or Message Drop (MD) for voicemail drops.
Language - English or French. This determines the default TTS voice.
Edit the TTS Template fields. Use template variables (like {full_name}) that get replaced with each debtor's actual data. See the TTS Templates section for all available variables.
Transfer Number (LB only) - The DID where connected calls transfer to.
Calls Per Minute - Starting speed for this campaign (adjustable later).
Dial Start/End Time - The daily dialing window. Default: 9:00 AM to 6:45 PM.
Saturday/Sunday - Check these to allow weekend dialing.
Select your Veritas-format CSV file. The system will parse all records and store them in the campaign. See the CSV Format section for column requirements.
The campaign is created in Draft status. The CSV will be processed in the background - you'll see a notification when complete.
The system accepts the standard Veritas CSV layout. Columns must be in the exact order shown below.
| Column | Required | Description |
|---|---|---|
Account Number 1 | Yes | Unique account identifier. Used for audio file naming. |
First Name | Yes | Debtor's first name. |
Last Name | Yes | Debtor's last name. |
Province | Yes | 2-letter province code (ON, QC, AB, BC, etc). Used for timezone-based dialing windows. |
Collector | No | Assigned collector ID. |
Client Name | No | Creditor/client name (e.g. "Canaccede Financial Group"). |
Status | No | Account status field. |
Balance | No | Outstanding balance amount. |
Phone 1 through Phone 20 | At least 1 | Up to 20 phone numbers per record. The system dials them in order. |
Email | No | Debtor's email address. |
Full Name | Yes | Full name for TTS audio generation. |
TFN | Yes | Toll-free callback number spoken in the message. |
DID | For LB | Direct inward dial number for call transfers. |
Customize the spoken text for each campaign. Use template variables that are replaced with each debtor's actual data.
| Variable | Replaced With | Example Output |
|---|---|---|
{full_name} | Debtor's full name | JOHN MUGLIA |
{first_name} | First name only | JOHN |
{last_name} | Last name only | MUGLIA |
{account_number} | Account number | 1234567 |
{client_name} | Client/creditor name | Canaccede Financial Group |
{tfn} | Toll-free number (formatted) | (800) 270-9938 |
{balance} | Outstanding balance | $628.63 |
{amount_due} | Amount due | $534.34 |
{min_payment} | Minimum payment | $125.73 |
{did} | DID number (formatted) | (416) 901-3704 |
{agency_phone} | Agency phone | (510) 000-0000 |
{original_creditor} | Original creditor name | ROGERS |
{email} | Email address | john@example.com |
{city} | City | MARKHAM |
{province} | Province code | ON |
{postal_code} | Postal code | L3S4V6 |
Before a campaign can start, every record needs a personalized audio file generated via text-to-speech.
Navigate to the campaign you want to generate audio for by clicking on it from the Campaigns list or Dashboard.
Click the Audio button in the campaign header. A dialog will appear with two options.
Generate for New Files Only - Only generates audio for records that don't have an audio file yet. Use this when you've added new records via CSV upload.
Regenerate ALL Audio - Deletes all existing audio files for this campaign and regenerates everything from scratch. Use this when you've changed the TTS template or voice.
Audio generation runs in the background. You'll see toast notifications with progress updates. The campaign status changes to Audio Generating and then to Audio Ready when complete.
How to start, pause, stop, and reset your campaigns.
| Action | Button | What It Does |
|---|---|---|
| Start | Start | Begins dialing. Only available when audio is fully generated. Campaign must be in Audio Ready, Paused, or Stopped status. |
| Pause | Pause | Temporarily stops sending new calls. Calls already in progress continue. Resume by clicking Start again. |
| Stop | Stop | Stops the campaign. Can be restarted later to continue where it left off. |
| Reset | Reset | Re-queues ALL records back to "pending" status. Resets all dial attempt counters. Use this to re-dial an entire list. |
Fine-tune dialing speed at both the campaign level and system-wide level.
Each campaign has its own Calls Per Minute (CPM) setting. On the campaign detail page, use the speed slider to adjust from 1 to 200 CPM and click Apply.
The Global Speed (CPM) control is in the bottom of the sidebar and applies across ALL active campaigns combined. If you have 3 campaigns each set to 50 CPM but the global limit is 100 CPM, the system will only send 100 calls per minute total.
How to add new records, change settings, and manage audio for existing campaigns.
This opens the upload dialog. Select your new CSV file. The new records are added to the existing campaign - existing records are not deleted or modified.
After uploading, click Audio and choose Generate for New Files Only. This will only create audio for the newly added records.
Click the Edit button on the campaign detail page to change the campaign name, TTS templates, voice, transfer number, speed, dialing window, and language.
If you change the TTS template or voice and want all records to use the new script:
Save your changes.
This deletes all existing audio files and regenerates them with the new template. The campaign must be paused or stopped first.
View calls that are currently queued or in the process of being dialed.
The Call Queue page shows all records in "queued" or "dialing" status across all campaigns. This gives you a real-time view of what the system is actively working on.
| Column | Description |
|---|---|
| Campaign | Campaign name and type (LB/MD). |
| Name | Debtor's full name. |
| Account | Account number. |
| Phone | Phone number being dialed. |
| Province | Province code (used for timezone checks). |
| Status | "queued" = waiting to be sent. "dialing" = call is in progress. |
| Time | When the call was queued or initiated. |
Track outcomes and generate reports for analysis and compliance.
The Results page shows a paginated list of all call outcomes. Filter by campaign using the dropdown. Each row shows the timestamp, campaign, debtor info, phone dialed, call type, status, duration, and any DTMF input captured.
| Status | Meaning |
|---|---|
| completed | Call was answered and the full message played. |
| transferred | Debtor pressed 1 and was connected to a representative. |
| no_answer | Phone rang but nobody answered within the timeout. |
| busy | The line was busy. |
| failed | Call failed due to technical error or invalid number. |
| wrong_person | Debtor pressed 2 indicating they are not the intended recipient. |
The Reports page provides summary analytics with filters:
Click Export CSV on the Reports page to download a CSV file with all call results matching your current filters. The export includes: Date/Time, Phone Dialed, Campaign Name, List Name, Call Duration, Disposition, Call ID, Account Number, Full Name, Province, DTMF, and Hangup Cause.
Send individual test calls to verify audio quality and campaign configuration before going live.
Click Test Call in the sidebar.
Choose the campaign you want to test from the dropdown. This loads the records available for testing.
Choose a specific debtor record. This determines which audio file will play during the test call.
Enter the phone number you want to receive the test call on (e.g. your desk phone or mobile).
The system will initiate a call to your phone using the selected record's audio. For LB calls, you can test the full IVR flow (press 1 to transfer, press 2 for wrong person).
Super Admins can create and manage user accounts. (Super Admin only)
Fill in the username, password, full name, email, and role. Click Create User.
From the Users page you can:
Configure global system behavior. (Super Admin only for editing)
| Setting | Description | Default |
|---|---|---|
| Global Max CPM | Maximum calls per minute across all campaigns combined. | 200 |
| Auto-Stop Time | All active campaigns are automatically paused at this time (Eastern Time). | 18:45 |
| Stale Audio Days | Audio files from completed/stopped campaigns older than this many days are auto-deleted during daily cleanup. | 30 |
| English Voice | Default TTS voice for English campaigns. | en-AU-NatashaNeural |
| French Voice | Default TTS voice for French campaigns. | fr-FR-DeniseNeural |
| Default LB Template | Pre-filled TTS script for new Link Back campaigns. | (see Templates section) |
| Default MD Template | Pre-filled TTS script for new Message Drop campaigns. | (see Templates section) |
| SFTP Export | When enabled, daily result files are uploaded to the configured SFTP server. | Disabled |
The Run Cleanup Now button on the Settings page manually triggers deletion of stale audio files. This runs automatically every night at 2:00 AM, but you can trigger it on demand.
The system enforces Canadian telemarketing regulations automatically.
Each record's Province field determines its timezone. The system will only dial a record if the current local time in that province falls within the campaign's configured dialing window.
| Province | Timezone |
|---|---|
| BC, YT | Pacific Time |
| AB, NT | Mountain Time |
| SK | Central Time (no DST) |
| MB | Central Time |
| ON, QC | Eastern Time |
| NB | Atlantic Time |
| NS, PE | Atlantic Time |
| NL | Newfoundland Time |
| NU | Eastern Time |
The system includes multiple safety mechanisms:
Common issues and how to resolve them.
Go to the campaign detail page, click the Audio button, and generate audio for the remaining records. All records must have audio before the campaign can start.
Check: (1) Is the current time within the dialing window? (2) Are there records with provinces currently in legal dialing hours? (3) Is the global speed limit set above 0? (4) Are there records in "pending" status?
The audio file for that record hasn't been generated yet, or was deleted during cleanup. Regenerate audio for the campaign.
Check the hangup cause column. Common causes: "UNALLOCATED_NUMBER" means invalid phone numbers in the CSV. "NORMAL_TEMPORARY_FAILURE" may indicate carrier issues. "NO_ANSWER" is normal for unanswered calls.
The engine status badge updates every 2 seconds. If it stays on "Idle", check if the vtdialer server is running in PM2. Contact the system administrator.
At-a-glance reference for common tasks.
| Task | Steps |
|---|---|
| Create a campaign | Sidebar > New Campaign > Fill form > Upload CSV > Create |
| Generate audio | Campaign Detail > Audio button > Choose mode |
| Start dialing | Campaign Detail > Start button (green) |
| Pause dialing | Campaign Detail > Pause button (yellow) |
| Stop dialing | Campaign Detail > Stop button (red) |
| Redial entire list | Campaign Detail > Reset > Generate audio (if needed) > Start |
| Add more records | Campaign Detail > Add CSV > Upload > Generate audio for new > Start |
| Change spoken text | Campaign Detail > Edit > Update template > Audio > Regenerate ALL |
| Adjust speed | Campaign Detail > Speed slider > Apply |
| Adjust global speed | Sidebar bottom > Global Speed input > Set |
| Send test call | Sidebar > Test Call > Select campaign/record > Enter phone > Send |
| Export results | Reports > Set filters > Export CSV |
| Add a user | Users > Add User > Fill form > Create |
| Clean up old audio | Settings > Audio Maintenance > Run Cleanup Now |
VT Dialer v1.0 · Veritas Alliance Campaign Management System
For technical support, contact the system administrator.