Siirrä keskustelut ServiceNow'lle

Note

Tässä artikkelissa kuvataan ominaisuuksia, joita käytetään agenteissa tai agenttivirroissa, joita käytetään standardivaljastuksen voimalla.

Yhteyden muodostaminen ServiceNow'n virtuaaliseen asiakaspalvelijasta Copilot Studio -agenttiin ja ihmisasiakaspalvelijalle siirron määrittäminen ServiceNow'ssa. Integraatio käyttää Azure-funktiota Direct Line -toimintojen välittämiseen ja räätälöityä ServiceNow-muuntajaa handoff-tapahtumien havaitsemiseen.

Note

Lue lisää kohdasta Määritä siirto mihin tahansa yleiseen engagement hubiin. Copilot Studio tarjoaa liityntäpisteitä ihmisagenttiratkaisujen, kuten ServiceNow'n, integrointiin; kehitystiimisi toteuttaa integraation.

Seuraavat vaiheet ovat vain ehdotuksia, ja tarvitset ohjelmistokehitystiimin suorittamaan ne. Tämä menettely on tarkoitettu kokeneille IT-ammattilaisille, kehittäjille tai järjestelmäintegraattoreille, joilla on vankka käsitys kehittäjätyökaluista, apuohjelmista ja integroiduista kehitysympäristöistä (IDE).

Yleiskatsaus

Copilot Studion ja ServiceNow:n integrointi edellyttää seuraavia korkean tason määritysvaiheita:

  1. Ota Azure-funktio käyttöön välittäjänä Direct Lineen.

  2. Määritä Botin välinen yhteys ServiceNow'ssa.

  3. Kartta-aiheet ServiceNow Virtual Agentin ja Copilot Studion välillä.

  4. Laajenna DirectLinePrimaryBotIntegrationInboundTransformer.

  5. Määritä luovutus Copilot Studiossa.

Vaatimukset

Ennen aloittamista on varmistettava, että seuraavat edellytykset täyttyvät:

  • Aktiivinen ServiceNow-tili, jossa ServiceNow Virtual Agent ja ServiceNow Bot Interconnect ovat päällä. Tarvitaan ServiceNow Yokohama tai uudempi versio.
  • Copilot Studio -agentti, joka on konfiguroitu ilman todennuksia. Tämä asetus koskee loppukäyttäjän kirjautumista; palvelimelta palvelimelle -rele käyttää Direct Line -salaisuutta kanavan käyttöoikeuden valtuuttamiseen.
  • Järjestelmänvalvojan käyttöoikeus kohtaan ServiceNow.

Luo Azure-funktio releeksi Direct Line:lle

Azure-funktio toimii välityspalvelimena, jotta ServiceNow Bot Interconnect voi hakea aktiviteetteja, kuten viestejä ja tapahtumia, Copilot Studio -agentin kanssa käynnissä olevasta keskustelusta.

Important

Azure-funktion oletusodotusaika on 2 000 ms (2 sekuntia), mikä voi olla liian lyhyt, kun luodaan orkestrointi Copilot Studiossa. Jos viestit eivät näy ServiceNow-virtuaaliagentissa, harkitse odotusajan pidentämistä.

ServiceNow Bot Interconnectin lähettämä mallipyyntö

GET /api/relayToDirectLine HTTP/1.1
Host: your-function-app.azurewebsites.net
Authorization: Bearer YOUR_DIRECT_LINE_SECRET_HERE
ConversationId: abc123def456-conversation-id
Watermark: 5
WaitTime: 3000

Esimerkkivastaus Azure-funktiosta

{
    "activities": [
        {
            "type": "message",
            "id": "0000001",
            "timestamp": "2025-07-13T13:46:43.6095506Z",
            "text": "Hello, I'm a Copilot Studio Agent.",
            "from": {
                "id": "bot-id",
                "name": "Copilot Studio Agent",
                "role": "bot"
            },
            "conversation": {
                "id": "wwjmISGzmd3FzMEAgotiJ-us"
            }
        },
        {
            "type": "message",
            "id": "0000002",
            "timestamp": "2025-07-13T13:46:45.0000000Z",
            "text": "speak to a live agent",
            "from": {
                "id": "user-id",
                "name": "User",
                "role": "user"
            },
            "conversation": {
                "id": "wwjmISGzmd3FzMEAgotiJ-us"
            }
        },
        {
            "type": "event",
            "id": "0000006",
            "timestamp": "2025-07-13T13:46:51.2854808Z",
            "name": "handoff.initiate",
            "value": {
                "va_LastPhrase": "speak to a live agent",
                "va_Topics": ["Escalate"]
            }
        }
    ],
    "watermark": "10"
}

Luo ja ota käyttöön funktio

Voit luoda ja ottaa käyttöön joko ServiceNow-ohjeissa kuvatun v3 Azure-funktion tai Copilot Studio GitHub -säilössä olevan v4 Azure-funktion.

Vaihtoehto 1: Azure-v3-funktion käyttöönotto

Voit luoda ja ottaa käyttöön Azure-v3-funktion noudattamalla ServiceNow-dokumentaation ohjeita:

  1. JavaScript-funktion luominen Microsoft Azuressa Visual Studio Coden avulla.

  2. Ota funktio käyttöön Azuressa ja nouda funktion URL-osoite käytettäväksi ServiceNow Bot Interconnect -toiminnossa.

Vaihtoehto 2: Azuren v4-funktion käyttöönotto

Vaihtoehtoisesti voit käyttää Copilot Studio GitHub -säilössä käytettävissä olevaa Azure-v4-funktiota:

  1. Kloonaa Copilot Studio Samples -varasto. Avaa annettu projekti Visual Studio Coden kohdassa contact-center/servicenow/DirectLineAzureFunction.

  2. Seuraa projektin asennusohjeita. Luo funktiosovellus Azuressa ja ota käyttöön annettu välitysprojekti. Älä korvaa välityspalvelua uudella mallin luomalla HTTP-funktiolla. Lisätietoja on kohdassa Projektin tiedostojen ottaminen käyttöön.

  3. Käyttöönoton jälkeen kopioi rele-HTTP-funktion URL käytettäväksi ServiceNow Bot Interconnectissa. Käytä funktion päätepistettä, älä funktiosovelluksen perus-URL-osoitetta. Lue lisää kohdasta HTTP-triggeröidyn funktion URL-osoitteen hankkiminen Azuressa.

Botin yhteyden määrittäminen ServiceNow'ssa

  1. Hanki agenttisi Direct Line -salaisuus.

  2. Direct Linen salaisen avaimen lisääminen Virtual Agent Bot Interconnect -esiintymään.

ServiceNow Virtual Agentin ja Copilot Studion väliset kartta-aiheet

  1. Luo Virtual Agent Bot Interconnect -liittymän aihe, jos haluat kutsua Copilot Studion aiheita.

DirectLinePrimaryBotIntegrationInboundTransformer -ratkaisun laajentaminen

Sisäänrakennettu DirectLinePrimaryBotIntegrationInboundTransformer ei jäsennä Copilot Studio handoff.initiate -tapahtumaa, kun keskustelu on luovutettava live-agentille.

Funktio shouldConnectToAgent kohteessa DirectLinePrimaryBotIntegrationInboundTransformer palauttaa aina arvon false:

shouldConnectToAgent: function(response) {
    return false;
}

Jotta luovutustapahtumat voidaan käsitellä oikein, luo mukautettu muunnin, joka laajentaa oletusmuuntajaa ja havaitsee handoff.initiate tapahtuman.

shouldConnectToAgent: function() {
        var response = this._response || {};
        var activities = response.activities || [];

        var handoffDetected = activities.some(function(activity) {
            return activity.type === "event" && activity.name === "handoff.initiate";
        });

        if (handoffDetected) {
            return true;
        }
        return false;
    }

Mukautetun muuntimen luominen

  1. Siirry ServiceNow'ssa Bot Interconnect -sovelluksen laajuuteen.

    1. Valitse maapallokuvake oikeasta yläkulmasta.

    2. Valitse Sovellusluettelosta Bot Interconnect .

  2. Luo uusi Script Include.

    1. Siirry Järjestelmämääritykset>Käsikirjoituksen sisällytyksiin.

    2. Valitse Uusi.

    3. Määritä seuraavat asetukset:

    • Nimi: CustomDirectLineInboundTransformer
    • Ohjelmointirajapinnan nimi: sn_va_bot_ic.CustomDirectLineInboundTransformer (automaattisesti muodostettu)
    • Sovellus: BotIn välinen yhteys (automaattinen valittu)
    • Käytettävissä: vain tämä sovelluksen laajuus
    • Aktiivinen: Valittu
  3. Korvaa oletusarvoinen komentosarjan sisältö Copilot Studio Samples -säilön mukautetulla muuntinkoodilla.

  4. Tallenna komentosarjan sisällytys valitsemalla Lähetä.

Botin väliyhteyden määrityksen päivittäminen

  1. Siirry Workflow Studioon.

    1. Siirry ServiceNow'ssa kohtaan Workflow Studio.

    2. Etsi Toiminnot-kohdassa Direct Linen ensisijaisen botin integroinnin saapuva muuntaja.

  2. Muuta muuntajan toimintoa.

    1. Avaa Direct Line Primary Bot Integration Inbound Transformer -toiminto.

    2. Kommentoi komentosarjaeditorissa oletusmuunninta ja korvaa se mukautetun muuntajan kutsulla.

    (function execute(inputs, outputs) {
       var clientVariables = JSON.parse(inputs['client_variables']);
       var response = JSON.parse(inputs['response']);
       //set client variables
       response.clientVariables = clientVariables;
    
       //var transformedResponse = new sn_va_bot_ic.DirectLinePrimaryBotIntegrationInboundTransformer(response).transformResponse();
       var transformedResponse = new sn_va_bot_ic.CustomDirectLineInboundTransformer(response).transformResponse();
    
       outputs['transformed_response'] = transformedResponse;
     })(inputs, outputs);
    
  3. Tallenna muutokset toimintoon ja julkaise.

Määritä luovutus

Jos haluat määrittää siirron ServiceNow'n ihmisasiakaspalvelijalle, lisää Siirrä keskustelu -solmu agentin Eskaloi-aiheeseen.

  1. Avaa agenttisi Copilot Studiossa ja siirry kohtaan Aiheiden>>.

  2. Valitse + (Lisää solmu) >Aiheen hallinta>Siirtokeskustelu.

  3. Tallenna aiheesi ja julkaise agenttisi.

Siirtokeskustelusolmu lähettää handoff.initiate tapahtuman, jonka ServiceNow'n mukautettu muuntaja havaitsee ja käsittelee.

Esimerkki eskalointi aihe YAML

Voit myös tuoda seuraavat YAML-määritykset kattavaa Eskaloitu-aihetta varten siirto-toiminnoilla:

kind: AdaptiveDialog
startBehavior: CancelOtherTopics
beginDialog:
  kind: OnEscalate
  id: main
  intent:
    displayName: Escalate
    includeInOnSelectIntent: false
    triggerQueries:
      - Talk to agent
      - Talk to a person
      - Talk to someone
      - Call back
      - Call customer service
      - Call me please
      - Call support
      - Call technical support
      - Can an agent call me
      - Can I call
      - Can I get in touch with someone else
      - Can I get real agent support
      - Can I get transferred to a person to call
      - Can I have a call in number Or can I be called
      - Can I have a representative call me
      - Can I schedule a call
      - Can I speak to a representative
      - Can I talk to a human
      - Can I talk to a human assistant
      - Can someone call me
      - Chat with a human
      - Chat with a representative
      - Chat with agent
      - Chat with someone please
      - Connect me to a live agent
      - Connect me to a person
      - Could some one contact me by phone
      - Customer agent
      - Customer representative
      - Customer service
      - I need a manager to contact me
      - I need customer service
      - I need help from a person
      - I need to speak with a live agent
      - I need to talk to a specialist please
      - I want to talk to customer service
      - I want to proceed with live support
      - I want to speak with a consultant
      - I want to speak with a live tech
      - I would like to speak with an associate
      - I would like to talk to a technician
      - Talk with tech support member

  actions:
    - kind: TransferConversationV2
      id: transferConversationV2_3JXrI7
      transferType:
        kind: TransferToAgent
        messageToAgent:
        context:
          kind: AutomaticTransferContext

Vianetsintä

Jos kohtaat virheitä ServiceNow Virtual Agent -keskustelupienoissovelluksessa, toimi seuraavasti:

Tarkista Azuren funktiolokit

  1. Varmista, että Azure-funktio toimii oikein eikä se palauta virheitä.

  2. Tarkastele reaaliaikaisia lokeja käyttämällä Azure-funktiot -virtautettavia lokeja.

  3. Tarkista Application Insightsista yksityiskohtaiset telemetria- ja virhetiedot.

Kytke ServiceNow-virheenkorjaus päälle

Voit seurata suoritustyönkulkua ServiceNow'n sisäänrakennettujen virheenkorjaustyökalujen avulla:

  1. Ota Script Tracer käyttöön ServiceNow'ssa.

  2. Toista toiminto, joka aiheuttaa virheen.

  3. Tarkista jäljityslokeista, missä ongelma ilmenee.

Copilot Studio -kutsujen valvonta

Varmista, että Copilot Studio -agenttisi kutsutaan oikein:

  1. Yhdistä Copilot Studio -agentti Application Insightsiin.

  2. Valvo telemetriaa ja varmista, että agentti vastaanottaa pyyntöjä ServiceNow'sta.

  3. Tarkista agentin suorituksen virheet tai odottamaton toiminta.

Yleisiä ongelmia ja ratkaisuja

  • Luovutus ei käynnisty: Varmista, että mukautettu muunnin on aktiivinen ja että Siirtokeskustelu-solmu on määritetty oikein.
  • Todennusvirheet: Varmista, että Direct Line -salaisuus on määritetty oikein ServiceNow-palvelussa. Linkitä serviceNow-tunnistetietotietue erityisesti yhteystietueen kanssa.
  • Funktion aikakatkaisu: Tarkista, aikakatkaistaanko Azure-funktio, ja suurenna tarvittaessa aikakatkaisuasetuksia.