CVG 1.39.0 (08-Apr-2024)

Several enhancements and new features aim at improving the user experience and providing more efficient, integrated tools for managing and analyzing data across VIER’s suite of products.

A significant highlight of this release is the introduction of Tenant ID Assignment within our CVG system and the prelude of a new Unified Dashboard. These advancements are part of our efforts to create a more cohesive and user-friendly environment for accessing comprehensive analytics and metrics. Additionally, we introduce a new internal Custom Bot designed to streamline call routing, along with various system improvements ranging from increased visibility of health events to several security and performance enhancements.

Read on to discover more about the new features, enhancements, and improvements we’ve made to ensure a better, more integrated experience for you. Should you have any questions or require assistance, please do not hesitate to reach out to our support team.

Providing dashboard data from VIER's suite of products

Tenant IDs and Prelude to new Unified Dashboard

In our continued effort to enhance your experience with VIER’s suite of products, we are excited to announce a significant development towards a more integrated approach to accessing statistics and analytics. We are currently developing a Unified Dashboard that will allow you to view metrics and usage data for all of VIER’s products in one centralized location. This dashboard will serve as a one-stop resource, providing you with insights and analyses across our product range, making it easier to manage and evaluate the performance of your operations.

Tenant ID Assignment in CVG

A crucial step in this development is ensuring that data sent to the underlying Data Warehouse is accurately associated with the correct tenant. With this release, we are introducing the ability to assign tenant IDs to customers within our CVG system. This functionality is exclusive to VIER employees, who will be responsible for assigning these IDs.

Implementation of Tenant IDs

The rollout of tenant IDs will be gradual, as we carefully assign IDs and begin displaying corresponding usage data on the new Unified Dashboard. This process ensures that data integrity is maintained and that the transition to the Unified Dashboard is seamless for all users.

What This Means for You

As we implement tenant IDs and continue developing the Unified Dashboard, we ask for your patience. It may take some time for your specific usage data to appear on the dashboard. Rest assured, our team is working diligently to make all relevant data available at this central location as swiftly as possible.

New Internal Custom Bot for Routing Calls

We’re introducing a new Custom Bot capable of asking a simple yes/no question and directing the call to different targets based on the answer. Configurable via a specific custom template, this feature enhances flexibility within your customer interaction processes.

To set up the Bot, choose “Custom” as the Bot template and enter the Bot URL http://yes-no-bot:9090. You can configure it using JSON. Here’s an example (phone numbers are obscured with x’s):

{
    "maxRepeats": 3,
    "yesForwardDestination": "+4972xxxxxxxx",
    "noForwardDestination": "+4969xxxxxxxxxx",
    "questionMessage": "Good day, do you agree to have this call handled by a Virtual Assistant?",
    "inactivityMessage": "Due to inactivity, this call will now end. Goodbye.",
    "goodbyeMessage": "Goodbye",
    "yesMessage": "You have answered with \"Yes\", I will now forward you to a virtual assistant.",
    "noMessage": "You have answered with \"No\", I will now forward you to a human. Please wait a moment.",
    "incorrectAnswerMessage": "Please answer the question with \"Yes\" or \"No\".",
    "incorrectAnswerGoodbyeMessage": "Due to repeated incorrect answers, this call will now end. Goodbye.",
    "yesVariants": [
        "yes",
        "okay",
        "ok",
        "no problem"
    ],
    "noVariants": [
        "no",
        "nope",
        "not at all"
    ],
    "goodbyeVariants": [
        "bye",
        "see you",
        "ciao"
    ]
}

Calls are migrated between CVG Projects in same Region

The call forwarding process within this simple yes/no bot is managed by invoking the endpoint /call/forward. When calls are forwarded from one CVG project to another within the same region (EU or US) via /call/forward, it is achieved through a migration of the call from the original CVG phone number to the destination number. This means there are no charges incurred for the actual forwarding process. However, if the forwarding destination is not a CVG target or is a CVG target in a different region, charges will be applied for the necessary outbound call.

Enhanced Overview of Health Events

We’ve improved the visibility and organization of health events and critical errors in project statuses. Critical errors are now prioritized above warnings, and error messages stemming from the same issue just with a different UUID, e.g., dialogId, are aggregated for a clearer overview.

The following image first shows an error that occurred once (a session to the customer’s Conversational AI Platform could not be established despite repeated attempts). Subsequently, a warning that occurred 540 times for presumably 540 different dialogs is displayed. These warnings had previously been identified as individual entries, making it difficult to gain an overview. The third entry also shows an aggregation for a warning that occurred in different dialogs.

Aggrgated health issues

Security Updates

We have proactively updated all dependencies to ensure our systems remain secure.

Smaller Improvements

Optional callId in Provisioning Endpoint

The callId (which is an external ID from CVGs point of view) is now optional in the provisioning process, see /provision/call. In addition, the correct deletion of callIDs simultaneous with dialog data avoids issues with non unique callIds.

Faster TTS output for longer Texts

To expedite the Text-To-Speech (TTS) output for longer texts, there is a new project setting called “optimize text-to-speech latency”. If activated, the initial sentence is now processed separately. Following sentences, if within the length limit, are processed in a single block, ensuring quicker and more efficient TTS delivery.