You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Current »

Overview

The Live Agent functionality in jtel Portal enhances call handling by integrating AI-powered live transcription, sentiment analysis, entity extraction, and real-time agent assistance. This feature enables supervisors and agents to process conversations efficiently with AI support.

Features

Live Transcription

  • Real-time transcription of ongoing calls using supported ASR (Automatic Speech Recognition) engines.

  • Displayed directly in Agent Home and Supervisor for both agents and supervisors.

AI-Powered Assistance

A chain of AI modules can be attached to the transcription process, offering:

  • Sentiment Analysis: Detects emotions in conversations, displaying icons for happy, neutral, or angry tones.

  • Entity Extraction: Identifies useful data such as:

    • Automatic CRM or ticket system link generation based on customer or ticket numbers.

    • Suggested transaction codes related to the call.

    • Summary extraction at the end of the call.

  • Transaction Code Suggestions: based on the conversation context.
    • The AI can detect relevant transaction codes during the call.
    • Suggested transaction codes are displayed to the agent in real-time.
  • AI Pipeline Integration: Supports multiple AI models, including:

    • Microsoft Copilot

    • Existing chatbots

    • Custom AI solutions with REST API support.

  • Parallel AI Processing: Multiple AIs can process data simultaneously without delays.

Supervisor Features

  • Supervisors can view live transcriptions.

  • Ability to send hints or comments to agents in real time.

Data Storage & Retrieval

  • Transcriptions and AI-generated results are stored in the database for future reference.

  • Can be accessed in reports and statistical overviews.

Configuration

Resource Activation

Ensure the following resources are allowed (Sysadmin - Resources)

portal.Acd.AcdSupervisor.LiveAgent

portal.Acd.AgentHome.LiveAgent

They Can be assigned per role (Client Admin / Client User).

AI Service Rendering Control

It is possible to control the rendering (visibility) of individual Live Agent AI services via dedicated resources.
Each AI feature (Transcription, Assistant, Sentiment, Suggestions, etc.) has a separate permission resource.

ResourceDescription

portal.Acd.AgentHome.LiveAgent.AI.Transcription

Renders the AI Transcription section.
portal.AgentHome.LiveAgent.AI.AssistantRenders the AI Assistant services (Suggestions, Summary, Sentiment).
portal.Acd.AgentHome.LiveAgent.AI.Assistant.CallerRenders the caller's sentiment analysis.
portal.Acd.AgentHome.LiveAgent.AI.Assistant.AgentRenders the agent's sentiment analysis.
portal.Acd.AgentHome.LiveAgent.AI.Assistant.SugesstionRenders the AI Suggestion section.
portal.Acd.AgentHome.LiveAgent.AI.Assistant.SummaryRenders the AI Summary section.
portal.Acd.AgentHome.LiveAgent.AI.Assistant.SatisfactionRenders the AI Satisfaction section.
portal.Acd.AgentHome.LiveAgent.AI.Assistant.TACRenders the AI Transaction Code section.

Client Master Data - Parameters

In Client Master Data - Parameters. set AI Pipeline Configuration, After Call Pipeline Configuration and Transcription Provider

NameValue
LiveAgent.AIPipeline.EndPointhttp://<server>:<port>/api/v1/aipipeline
LiveAgent.AIPipeline.Input{
    "endpoints": [
        {
            "type": "suggestions",
            "url": "http://<server>:<port>/webhooks/rest/webhook",
            "input": {
                "sender": "%Service.StatisticsPartAID_%",
                "message": "$ai_pipeline_input"
            }
        },
        {
            "type": "sentiment",
            "url": "http://<server>:<port>/api/v1/sentiment",
            "input": {
                "data": "$ai_pipeline_input"
            }
        }
    ]
}
LiveAgent.AfterCallPipeline.EndPointhttp://<server>:<port>/api/v1/aftercall
LiveAgent.AfterCallPipeline.Input{
    "endpoints" : [
        {
            "type" : "summary",
            "url" : "http://<server>:<port>/api/v1/summary",
            "input" : $ai_pipeline_input
        }
    ],
    
    "respondTo" : {
        "host" : "%SERVER_IP_UDP_ADDRESS%",
        "port" : %ACD.UDP.Webserver.Port%,
        "message" : "NONCALL;AI_AFTERCALL_PIPELINE_RESULT;%QueueCheck.AgentDataID%;%Service.StatisticsPartAID_%;AI_PIPELINE_OUTPUT=$ai_pipeline_output"
    }
}

LiveAgent.AfterCallPipeline.Prompts.SatisfactionBot

 # Instructions

Please give me the most likely score from 0 to 10 the caller would give to the net promoter score question regarding his satisfaction in the following conversation. 
Answer with a JSON structure like this:
{
  "score": score
  "reason":"your reason for selecting this score"
}

The score should be a number from 0 to 10 just like the caller might answer the net promoter question.
In the "reason" field please state clearly why you selected this score, including factors or statements in the conversation which led to this conclusion.

VERY IMPORTANT: Provide all answers in the German language.
VERY IMPORTANT: DO NOT RETURN TEXT. Only return a JSON structure as described above and DO NOT return any formatting or markup. Just the JSON structure as text.

# Conversation
{% for entry in conversationData.conversationEntries %}
  {% if entry.source == 'agent' %}
Agent: {{ entry.transcription }}
  {% else %}
Caller: {{ entry.transcription }}
  {% endif %}
{% endfor %}

LiveAgent.AfterCallPipeline.Prompts.SummaryBot.DetectLanguage

 # Instructions

Tell me what language this conversation was held in.
Please provide the answer as one word only - just the language name.

# Conversation
{% for entry in conversationData.conversationEntries %}
  {# Use up to 4 conversation entries for the language detection #}
  {% if loop.index <= 4 %}
    {% if entry.source == 'agent' %}
Agent: {{ entry.transcription }}
    {% else %}
Caller: {{ entry.transcription }}
    {% endif %}
  {% endif %}
{% endfor %}

LiveAgent.AfterCallPipeline.Prompts.SummaryBot.Summarize

 # Instructions

Please summarize only the most important information from this conversation using bullet points in {{ detected_language }}.
Use as much space as you need but only up to 512 characters.
If you need to leave anything out, make sure the most important information is included.
The most important information includes:
- customer numbers
- ticket numbers
- problems and resolutions

# Conversation
{% for entry in conversationData.conversationEntries %}
  {% if entry.source == 'agent' %}
Agent: {{ entry.transcription }}
  {% else %}
Caller: {{ entry.transcription }}
  {% endif %}
{% endfor %}

LiveAgent.AfterCallPipeline.Prompts.TACBot

 # Instructions

Please find the transaction codes (reasons for conversation) which apply to the following conversation.
Please only report transaction codes which actually happened, if nothing applies, then simply report an empty result.
Answer as a JSON array of objects with this structure:
{
   "ID":ID,
   "ExportKey":ExportKey,
   "reason":"your reason for selecting this transaction code"
}

In the "reason" field please state clearly why you selected this transaction code, including the questions or statements in the conversation which led to this conclusion.

VERY IMPORTANT: Provide the reason in German.
VERY IMPORTANT: DO NOT RETURN TEXT. Only return a JSON array as described above and DO NOT return any formatting or markup. Just the JSON as text.

{% if transactionCodes %}
# Transaction Codes
{% for entry in transactionCodes %}

## Transaction Code
ID: {{ entry.ID }}
ExportKey: {{ entry.ExportKey }}
Instructions: {{ entry.LLMPrompt }}
{% endfor %}
{% endif %}

# Conversation
{% for entry in conversationData.conversationEntries %}
  {% if entry.source == 'agent' %}
Agent: {{ entry.transcription }}
  {% else %}
Caller: {{ entry.transcription }}
  {% endif %}
{% endfor %}

LiveAgent.Transcribe.ProviderEnderTuring.v2 (or Azure...)

User Settings

Activate Live Agent functionality per user role:

  • Agent Settings: LiveAgent.AgentHome.Active: 1 or 0
  • Supervisor Settings: LiveAgent.Supervisor.Active: 1 or 0

Licensing & Activation

  • This feature requires special activation by jtel.

  • Additional licenses may be required.

  • Contact jtel support for further details.

Example Interface

Agent Home View

Refer to the screenshot below for a visual representation of Live Agent in Agent Home.

Supervisor Detail View

Supervisors can see the agent’s current call, live transcription, and send direct messages to guide the agent during the call.




  • No labels