Creating Extensions for Avaya Virtual Agent Studio

My guitar is not a thing. It is an extension of myself. It is who I am.

Joan Jett

I am continually impressed by how easy it is to create amazing AI workflows with Avaya’s Virtual Agent Studio (a custom instance of the Cognigy platform). Even me, a hard-core programmer, loves the no-code, drag-and-drop interface. I’ve built powerful customer experiences that combine AI intents, lexicons, slot filling, workflow logic, and various endpoints without having to write a lick of code.

However, having been around the technology block a few times, I know that no platform product will ever meet the needs of every user. There are times when folks want to do something that the platform developers didn’t account for. Thankfully, Virtual Agent Studio supports Extensions to the platform. These Extensions provide developer types like me with the tools required to write custom code to fills any gaps.

To exercise Extensions, I spent some time learning the development steps before finding a gap that needs to be filled — sending text messages from a Virtual Agent Studio workflow. Since I am very familiar with the Avaya OneCloud CPaaS platform and its APIs, I chose that for my SMS gateway. It would be just as easy to do this with other SMS providers like Twilio or Telynx. The code would be slightly different, but the process and ultimate user experience would be nearly identical.

As I am apt to do these days, I created a Cheapo-Cheapo Productions video that walks you through the technology. Here is the gist of what you will see:

Extensions are built with the same technology that Virtual Agent Studio uses for every one of its out-of-the-box drag-and-drop widgets. Developer created Extensions have identical access to the VAS APIs and platform entities (e.g. Context, Input, Endpoints, Tokens, etc.).

Extensions support the concept of a Connection. You can think of a Connection as the credentials/variables required to connect to an external service. For my Extension, the Connection consists of the Account SID (user Id) and Auth Token (password) Avaya CPaaS requires to invoke its services. Every workflow can use its own unique Connection variables.

Extensions are written in Typscript and packaged into a tar.gz file. The package is then loaded into Virtual Agent Studio. Once loaded, the Extension becomes available to a new agent in the nodes palette.

The Extension code describes the fields the Extension uses. For example, my SMS Extension has fields for a Connection, text message, sender, recipient, and storage parameters. Visually, those fields manifest themselves as:

Let’s take a look of all of the above in action in my latest Cheapo-Cheapo Productions video.

Mischief Managed

Virtual Agent Studio is the perfect platform for someone like me. I can write workflows at lightening speed using its drag-and-drop widgets, but I can also exercise my programming muscles when the platform falls short (which isn’t very often). So, no matter where you are on the development scale, Virtual Agent Studio has something for you.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: