DEV Community

Tahir Almas
Tahir Almas

Posted on • Originally published at ictpbx.com

Managing Your PBX by Voice: How the ICTPBX AI Agent Works

Originally published at ictpbx.com

The ICTPBX AI voice agent lets you manage your PBX by phone instead of clicking through the portal. You dial *99 from your extension, say what you want in plain language, and the agent carries it out by calling the same ICTCore REST API the web dashboard uses. It runs entirely under your own login, so it can never do more than your account already allows.

What the agent actually is

The agent is a standalone sidecar service that runs alongside ICTCore. When you dial *99, FreeSWITCH streams your call audio to the service, which runs a short pipeline: speech-to-text transcribes what you said, a language model works out which PBX action you want, ICTCore performs it, and text-to-speech reads the answer back to you. The spoken reply is generated locally on your server.

It is an extra front end, not a replacement. The web portal and softphone keep working exactly as before, and the agent simply adds a voice channel on top.

What you can ask it

The agent handles both questions and changes. After the greeting, you might say:

  • "What is my account balance?"

  • "How many extensions do I have?"

  • "Do I have any new voicemails?"

  • "Create a ring group called Support."

For anything that reads data, the agent just answers. For anything that changes configuration, it reads back what it is about to do and asks you to confirm out loud before it acts.

Why it cannot exceed your permissions

This is the part that matters most for security. The agent does not hold privileged credentials of its own. Every action it performs is an ICTCore REST call made as you, using your own scoped session. So:

  • An admin dialing *99 can manage the whole system, a tenant admin manages their tenant, and an end user can only touch their own extension, voicemail, and account.

  • The backend still enforces the real permission check on every call, exactly as it does for the web portal.

  • The agent cannot reach another tenant's data, because your session was never scoped to it.

When you dial *99 from your extension, ICTPBX identifies you automatically from the calling extension and issues a scoped session, with no PIN to speak. Every action the agent takes is written to an append-only audit trail, so there is always a record of what was requested and what changed.

One privacy note

Your spoken audio is sent to a cloud speech-to-text provider for transcription. The spoken responses are generated locally on your server. If your organization has data-egress or compliance requirements, review the voice path with your administrator before enabling it.

The AI voice agent is an optional Enterprise Edition add-on that an administrator installs separately from the core stack. For the full walkthrough, see the AI Voice Agent guide, and explore the rest of the platform on the support center.

Frequently asked questions

How do I start the agent?

Dial *99 from your registered extension or softphone, wait for the greeting, then speak your request. Hang up when you are done.

What if *99 does nothing?

A fast busy or silence means the add-on is not installed or not running on your server. Contact your administrator.

Can the agent change settings without asking?

No. For any create, update, or delete, it reads back the action and waits for you to confirm out loud before proceeding.

Does it replace the web portal?

No. It adds a voice channel on top. The portal and softphone continue to work as before.

Is the AI voice agent in Community Edition?

No. It is an optional Enterprise Edition add-on and is not part of Community Edition builds.

Top comments (0)