Sdílet prostřednictvím


Konfigurace předávání jakémukoli obecnému centru zapojení

Copilot Studio umožňuje plynule a kontextově předat konverzace agentů lidskému agentovi prostřednictvím centra zapojení.

S určitým vlastním vývojem můžete nakonfigurovat svého agenta tak, aby předal konverzace do jakéhokoli centra zapojení. Tato příručka popisuje, jak to můžete provést.

Předpoklady

Důležité

Některé pokyny v této části vyžadují vývoj softwaru od vás nebo vašich vývojářů. Je určený pro zkušené IT profesionály, jako jsou IT administrátoři nebo vývojáři, kteří dobře rozumí vývojářským nástrojům, utilitám a IDE, kteří chtějí integrovat centra zapojení třetích stran s Copilot Studio.

Přehled

OBRÁZEK ZOBRAZUJÍCÍ DATOVÝ TOK OBECNÉHO ADAPTÉRU.

Úplné předání do centra zapojení se řídí tímto vzorem:

  1. Zákazník komunikuje s plátnem chatu centra zapojení.

  2. Centrum zapojení směruje příchozí chat prostřednictvím vestavěných funkcí směrování chatu k agentovi.

  3. Vlastní adaptér přenáší příchozí zprávy chatu z centra zapojení do agenta Copilot Studio.

  4. Jakmile zákazník spouští předávání, Copilot Studio začíná předávání s plným konverzačním kontextem.

  5. Vlastní adaptér zachytí zprávu o předání, analyzuje celý kontext konverzace a plynule nasměruje eskalovanou konverzaci ke zkušenému lidskému agentovi na základě dostupnosti.

  6. Chat uživatele je bezproblémově a kontextově předán lidskému agentovi, který může pokračovat v konverzaci.

Chcete-li předat konverzaci lidskému agentovi, musíte sestavit vlastní adaptér pro předávání.

Vytvoření vlastního adaptér předávání

Adaptér přemosťuje konverzace do vašeho centra pro zapojení agentů a z něj přenosem a transformací zpráv mezi zákazníky, agenty a lidskými agenty.

Nejoblíbenější centra pro zapojení agentů poskytují sady SDK nebo veřejně dokumentují jejich rozhraní API, což vám umožňuje takové adaptéry vytvářet.

Je mimo rozsah tohoto dokumentu, který se zabývá tím, co může vlastní adaptér obsahovat. Následující ukázková předávací zpráva založená na tom, co Copilot Studio generuje v rámci standardního předání do prostředí živého agenta, vám ale může pomoct začít.

Tyto úryvky kódu a ukázky vám umožňují extrahovat kontext z konverzace a plynule a kontextově předávat konverzace agentů do jakéhokoli generického centra zapojení.

Ukázka datové části předávací zprávy

Předání je v současné době podporováno pomocí Direct Line. Přečtěte si další informace o interakci s agentem pomocí Direct Line. Po předání je zavolána aktivita s názvem handoff.initiate a odeslána do adaptéru.

Můžete vidět úplnou ukázkovou aktivitu předávání zpráv na našem webu GitHub.

Extrahování kontextu ze zprávy předávání

Pro použití konverzačního kontextu musíte analyzovat aktivitu události handoff.initiate. Následující fragment kódu analyzuje aktivitu události handoff.initiate a extrahuje kontext konverzace. Viz celá ukázka kódu na GitHubu.

public void InitiateHandoff(string botresponseJson)
{
    BotResponse response = JsonConvert.DeserializeObject<BotResponse>(botresponseJson);

    // Look for Handoff Initiate Activity. This indicates that conversation needs to be handed off to agent
    Activity handoffInitiateActivity = response.Activities.ToList().FirstOrDefault(
        item => string.Equals(item.Type, ActivityTypes.Event, System.StringComparison.Ordinal)
        && string.Equals(item.Name, HandoffInitiateActivityName, System.StringComparison.Ordinal));

    if (handoffInitiateActivity != null)
    {
        // Read transcript from attachment
        if (handoffInitiateActivity.Attachments?.Any() == true)
        {
            Attachment transcriptAttachment = handoffInitiateActivity.Attachments.FirstOrDefault(a => string.Equals(a.Name.ToLowerInvariant(), TranscriptAttachmentName, System.StringComparison.Ordinal));
            if (transcriptAttachment != null)
            {
                Transcript transcript = JsonConvert.DeserializeObject<Transcript>(transcriptAttachment.Content.ToString());
            }
        }

        // Read handoff context
        HandoffContext context = JsonConvert.DeserializeObject<HandoffContext>(handoffInitiateActivity.Value.ToString());

        // Connect to Agent Hub
        // <YOUR CUSTOM ADAPTER CODE GOES HERE>
    }
}