Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
Lær hvordan du konfigurerer inaktivitetstriggere, med veiledning om oppsett, kanalstøtte, begrensninger og feilsøking.
Oversikt
Inaktivitetstriggeren, også kjent som OnInactivity, eller Brukeren er inaktiv en stund, er en systemtrigger i Copilot Studio som automatisk aktiverer et emne når en bruker ikke sender noen melding i en angitt tidsperiode. Den kjører på serversiden, så agenten evaluerer timeren og aktiverer emnet selv om brukerens klient ikke er aktiv.
Vanlige brukstilfeller omfatter følgende:
- Sende en påminnelse som spør om brukeren fortsatt er der
- Frigjør agentkapasitet ved automatisk å lukke inaktive samtaler
- Samle tilbakemeldinger (f.eks. en kundetilfredshetsundersøkelse) før en økt avsluttes
- Rydd opp økttilstand for forlatte samtaler
Hvordan inaktivitetstriggeren fungerer
Denne delen forklarer hvordan Copilot Studio vurderer inaktivitetstriggere, planlegger tidtakere og kjører emner når en samtale er inaktiv.
Oversikt over arkitektur
Brukeren sender en melding.
Kjøretiden evaluerer alle OnInactivity-triggere.
Kjøretiden grupperer triggere etter varighet og velger én per varighetsnivå. Det laveste prioritetstallet vinner; tidligste opprettelsesdato avgjør ved uavgjort.
Kjøremiljøet sorterer de valgte utløserne etter varighet, kortest først.
Kjøretiden armerer en timer for neste trigger i Azure Service Bus. Bare én timer er aktiv samtidig.
Brukeren er inaktiv i den konfigurerte varigheten.
Tidtakeren starter, og inaktivitetshendelsen sendes til kjøretiden.
Kjøretiden samsvarer med og utfører emnet inaktivitet.
Kjøretiden beregner gjenværende tid til neste utløser og gir en ny tidtaker.
Nøkkelatferder
Timeren nullstilles ved hver brukermelding.
Hver gang en bruker sender en melding, revurderer systemet alle inaktivitetstriggere og armerer den neste (korteste varighet først). Kun én timer er aktiv til enhver tid.
Flere triggere støttes.
Du kan ha flere OnInactivity-triggere med forskjellige varigheter (f.eks. 5 minutter og 10 minutter). Systemet behandler dem i stigende rekkefølge etter varighet. Kun én trigger velges per varighetsnivå. Hvis to avtrekkere har samme varighet, utløses avtrekkeren med det laveste
Prioritytallet. Hvis det fortsatt er likt, aktiveres den triggeren som ble opprettet først. Systemet forkaster andre triggere med samme varighet.Triggerne er i kø, ikke parallelle.
Bare én timer er aktiv samtidig. Når den nåværende utløseren kjøres, beregner kjøretiden den gjenværende tiden til neste utløser og gir en ny tidtaker for forskjellen. Nettoeffekten er at triggere aktiveres med korrekt tidsforskyvning fra det opprinnelige inaktivitetspunktet, selv om mindre avvik kan oppstå hvis utføringen av triggeren tar betydelig tid.
Bakgrunnskjøring.
Inaktivitetshendelsen er en bakgrunnstrigger. Det krever ikke brukerinteraksjon for å utløses.
Utskriftregistrering.
Systemet registrerer inaktivitetshendelser i samtaleutskrifter. En ny utskriftspost opprettes etter 30 minutters inaktivitet.
Eksempel på tidslinje (flere triggere)
| Time | Hendelse |
|---|---|
| 0:00 | Bruker sender siste melding |
| 5:00 | Trigger A (300 s) utløses, sender advarsel |
| 10:00:00 | Trigger B (600 s) avfyres, avslutter samtalen |
Hvis brukeren sender en melding kl. 04:30, tilbakestilles begge tidtakerne. Utløser A utløses kl. 09:30, og utløser B utløses kl. 14:30.
Konfigurer utløseren for inaktivitet
Denne delen viser hvordan Copilot Studio starter, tilbakestiller og kjører inaktivitetstimere, slik at du kan forutsi hva som skjer når en samtale blir inaktiv.
Opprett et emne for inaktivitetsutløser
I Copilot Studio går du til Emner>Legg til et emne>Fra blank.
Velg utløseruttrykket. I stedet for et uttrykk, velg «Etter en periode med inaktivitet».
Sett Inaktivitetsvarighet-egenskapen. I modus manuell inndata: velg en forhåndsinnstilling fra nedtrekksmenyen (15 minutter, 30 minutter, 45 minutter eller 1 time). For å angi en egendefinert verdi i sekunder eller en Power Fx-formel (f.eks.,
Global.TimeoutSeconds), bytt modusvelgeren til Formel og skriv inn verdien direkte.Design emneflyten (send en melding, still et spørsmål, avslutt samtalen, og så videre).
Lagre og publiser agenten.
Varighetsreferanse
| Ønsket timeout | Verdi (sekunder) |
|---|---|
| 30 sekunder | 30 |
| 2 minutter | 120 |
| 5 minutter | 300 |
| 10 minutter | 600 |
| 1 time | 3600 |
Viktig!
Egenskapen bruker sekunder, ikke minutter eller millisekunder. En verdi på 60000 betyr omtrent 16,7 timer, ikke 60 sekunder.
Eksempel: Enkelt varselutløser
[OnInactivity - 600 sekunder]
Melding: "Er du fortsatt der?" Svar for å fortsette."
Avslutt emne
Eksempel: 5-minutters varsel og 10-minutters automatisk lukking
Dette mønsteret er det vanligste. Lag to inaktivitetsemner:
Emne 1: Inaktivitetsvarsel (5 minutter)
- Trigger: Etter en periode med inaktivitet
-
durationInSeconds:300 - Handlinger: Send en melding: «Er du fortsatt der?» Denne samtalen avsluttes om 5 minutter hvis det ikke kommer noe svar.
Emne 2: Autoclose (10 minutter)
- Trigger: Etter en periode med inaktivitet
-
durationInSeconds:600 - Handlinger:
- Sett
Global.DeactivateInactivity = true(guardvariabel – se beste praksis) - Send en melding: «Denne samtalen avsluttes på grunn av inaktivitet.»
- Avslutt samtale
- Sett
Eksempel: Innsamling av tilbakemeldinger
- Trigger: Etter en periode med inaktivitet
- durationInSeconds:
120 - Handlinger:
- Spør: «Før du drar, vil du vurdere opplevelsen din? (1-5)"
- Lagre svaret
- Avslutt samtale
Legg til en betingelse i utløseren
Legg til en Betingelse-node rett etter triggeren slik at den bare utføres i bestemte situasjoner:
- Utløses kun på en spesifikk kanal:
=Activity.ChannelId = "msteams" - Utløses kun hvis en guard-variabel ikke er satt:
=Global.DeactivateInactivity = false
Anbefalt mønster for flere triggere (felles emne)
Hvis du har flere triggere med spørsmålsnoder, bør du bruke et felles emne for å unngå problemer med dialogstabling.
Opprett et delt tema kalt
HandleInactivity:- Legg til en global variabel
Global.InactivityStage(Tekst) - Sjekk verdien:
-
"warning"→ Send en advarselmelding med en Spørsmål-node ("Fortsett?" / "Slutt?") -
"close"→ Send en avsluttende melding og avslutt samtalen
-
- Legg til en global variabel
Første OnInactivity-trigger (300 sekunder):
- Angi
Global.InactivityStage = "warning" - Omdiriger til
HandleInactivity
- Angi
Andre OnInactivity-trigger (600 sekunder):
- Angi
Global.InactivityStage = "close" - Omdiriger til
HandleInactivity
- Angi
Denne tilnærmingen forhindrer at spørsmålsnoder blir stablet og skaper spørsmålsløyfer.
Kanalspesifikk konfigurasjon
Kanalstøttematrise
| Kanal | Støttenivå | Merknader |
|---|---|---|
| Demonstrasjonsnettsted | Støttes fullstendig | Beste kanal for å teste inaktivitetstriggere. |
| Egendefinerte nettsted (Direct Line) | Støttes fullstendig | Fungerer på samme måte som demo-nettsiden. |
| Microsoft Teams | Støttes | Fungerer, men se Teams-spesifikke retningslinjer i neste seksjon. Auth-tokens kan utløpe under lange inaktivitetsperioder. |
| Dynamics 365 Customer Service | Støttes fullstendig | Krever ekstra trinn for å avslutte Dynamics 365 Customer Service-samtaler. Mer informasjon i Dynamics 365 Customer Service-konfigurasjon. |
| Microsoft 365 Copilot | Triggeren utløses, men meldingene leveres ikke | Dette scenarioet er en kjent begrensning. Utløseren utføres på serversiden, men Microsoft 365 Copilot-grensesnittet viser ikke proaktive meldinger fra agenter. Ingen løsning. |
| Test-rute | Støttes ikke | Dette scenarioet er i henhold til utformingen. Timere er deaktivert for Studio-kanal-ID. Bruk demonettstedet eller en publisert kanal til å teste. |
| DirectEngine | Støttes ikke | Dette scenarioet er i henhold til utformingen. Timere er deaktivert for DirectEngine-kanal-ID-en (design-/testmiljø). |
| Telefoni/IVR | Støttes ikke | For talekanaler, bruk OnSilence-triggeren i stedet. |
Teamkonfigurasjon
Teams bruker en vedvarende enkelt-samtalemodell. Samtalen "avsluttes" aldri helt fra Teams' perspektiv. Denne modellen betyr at inaktivitetstriggere fortsetter å avfyres selv etter at brukeren anser samtalen som avsluttet.
Anbefalte Teams-mønstre:
Opprett en global variabel
Global.IsConversationClosed(boolsk, standard:false).Ved starten av inaktivitetsemnet ditt, sjekk:
If Global.IsConversationClosed = true→ Avslutt emne (avslutt umiddelbart).Når samtalen logisk avsluttes (for eksempel når brukeren sier «ha det», kundetilfredsheten fullføres, og så videre), sett
Global.IsConversationClosed = true.Inaktivitetstriggeren kan fortsatt utløses, men den avsluttes umiddelbart uten å vise en melding.
Dynamics 365 Customer Service-konfigurasjon
- Samtaler lukkes automatisk etter 30 minutters inaktivitet som standard.
- Å bruke EndConversation alene lukker ikke Dynamics 365 Customer Service-økten. Agentkapasiteten er ikke frigjort.
- For å avslutte samtalen helt, sett
CloseOmnichannelConversationkontekstvariabelen tiltruevia en Power Automate-flyt, og bruk deretter en Overfør til agent-noden.
Kjente begrensninger
Rask oversikt: Hva kan avbryte inaktivitetstimeren?
| Funksjon eller handling | Effekt på inaktivitetstimere |
|---|---|
| Avslutt samtale | Sletter permanent alle timere |
| Bruker sender en melding | Nullstiller alle tidtakere til null (som designet) |
| Triggerbetingelse med uinitialisert variabel | Tidtaker er lydløst utelatt – aldri aktivert |
| Varigheten overstiger 7 dager (604 800 sekunder) | Timeren blir stille ignorert |
| Nullstilling av globale variabler i et inaktivitetsemne | Agenten mister samtalekonteksten |
| Overfør til kundeservicerepresentanten | Timeren forblir aktiv og kan utløses under samtalen med kundeservicerepresentanten |
Testpanelet støtter ikke inaktivitetstriggere
Copilot Studio-testpanelet utløser ikke inaktivitetstriggere. Denne begrensningen er i henhold til utformingen. Publiser agenten din og test på en aktiv kanal (demo-nettside, Teams, osv.).
Microsoft 365 Copilot viser ikke inaktivitetsmeldinger
Utløseren kjøres på serveren, men eventuelle utdata (meldinger, kort) leveres ikke til brukeren i Microsoft 365 Copilot-opplevelsen. Det finnes ingen omgåelsesmulighet. Se Teams kjente begrensninger.
Iversetting av generativ KI
Inaktivitetsutløsere implementeres som klassiske orkestrerings-emnetriggere og bruker en separat timerbasert hendelsespipeline. Når generativ kunstig intelligens-orkestrering er slått på, baserer emneruting seg ikke lenger på klassisk triggergjenkjenning, og derfor kan inaktivitetsemner ikke pålitelig utløses i alle konfigurasjoner. Hvis håndtering av inaktivitet er nødvendig, anbefales klassisk orkestrering og er en fullt ut validert konfigurasjon.
Tilknyttede agenter: inaktivitet hos underordnet agent støttes ikke
I konfigurasjoner med tilkoblede agenter vil inaktivitetstriggere i underordnet agent ikke fungere og de returnerer "Ugyldig tilkoblet agentsvar." All inaktivitetslogikk må legges i overordnet agenten.
Maksimal varighet: 7 dager (604 800 sekunder)
Publiserte roboter ignorerer triggere med varighet på mer enn 604 800 sekunder uten at det vises en feil. Ingen feil vises. I designmodus kan det dukke opp en feil. Det finnes ingen minimumsgrense – korte varigheter (under ca. 15 sekunder) kan gi uforutsigbar oppførsel på grunn av forsinkelse i timerinfrastrukturen.
Avslutt samtale fjerner inaktivitetstimere
Når du kaller opp Avslutt samtale i et emne, stopper det permanent alle aktive inaktivitetstidtakere for denne samtalen. Tidtakerne er helt fjernet. De er ikke tilbakestilt eller midlertidig stanset. Operasjonen forkaster alle ventende inaktivitetshendelser som allerede er planlagt.
Hvis du vil avslutte et temas flyt uten å forstyrre inaktivitetstimere, bruk en av de alternative handlingene:
| Handling (i Copilot Studio) | Effekt på inaktivitetstimere |
|---|---|
| Avslutt samtale | Fjerner alle timere; timere stopper for godt |
| Avslutt nåværende emne (EndDialog) | Påvirker ikke tidtakere. Tidtakere fortsetter å kjøre |
| Avbryt alle emner (CancelAllDialogs) | Påvirker ikke tidtakere. Tidtakere fortsetter å kjøre |
Tips
Hvis temaet ditt må lukke den nåværende flyten, men du vil fortsatt at inaktivitetstimeren skal starte senere (for eksempel et JIRA-søketema som avsluttes, men samtalen skal fortsatt gå ut), bruk Avslutt nåværende tema i stedet for Avslutt samtale.
Å bruke en guard-variabel for å forhindre omskyting er fortsatt en anbefalt defensiv praksis.
Trigger utløses etter at agent eskalerer
Etter at systemet har overført en samtale til en kundeservicerepresentant, forblir inaktivitetstriggeren aktiv. Den kan skyte under samtalen med den menneskelige agenten og sende agentmeldinger uventet. Kall alltid EndConversation før overføring, eller bruk en guard-variabel.
Triggermeldinger kan dukke opp i utskrifter etter at samtalen er over
Selv etter at en samtale avsluttes, kan utløseren fremdeles utløses, og meldingene blir registrert i utskrift. Denne tilstanden har ingen innvirkning på brukeropplevelsen, men kan vises i analyser.
Telefon-, tale- og IVR-kanaler
Inaktivitetstriggeren er ikke tilgjengelig for telefon- og talekanaler. Bruk OnSilence-triggeren i stedet.
Vanlige feilkonfigurasjoner
Bruk denne delen for å identifisere og rette vanlige konfigurasjonsproblemer som kan forhindre at inaktivitetstriggere fungerer som forventet.
Avslutt samtalen i inaktivitetsemnet (risiko for løkke)
Problem: Når du kaller Avslutt samtale fra et inaktivitetsemne, fjerner du alle inaktivitetstimere. Men på kanaler med vedvarende samtaler (spesielt Teams) forblir den underliggende samtalen aktiv. I noen konfigurasjoner kan utløseren fortsatt utløses på nytt, noe som forårsaker gjentatte "sesjon avsluttet"-meldinger.
Løsning (anbefalt som defensiv praksis): Bruk en guard-variabel:
Opprett
Global.DeactivateInactivity(boolsk, standard:false).Øverst i hvert inaktivitetsemne, legg til en betingelse: fortsett kun hvis
Global.DeactivateInactivity = false.Angi
Global.DeactivateInactivity = truefør du kaller opp EndConversation.
Notat
Guard-variabelmønsteret er spesielt viktig for Teams-kanaler, hvor den vedvarende samtalemodellen gjør at samtalen aldri virkelig tar slutt.
Varighet satt til feil verdi
Problem:durationInSeconds er på sekunder. En verdi på 60000 er omtrent 16,7 timer, ikke 60 sekunder.
Løsning: Dobbeltsjekk verdiene dine mot referansetabellen i Seksjon 3.
Spørsmålsnoder i flere inaktivitetsemner (instruks-stabling)
Problem: Hvis flere triggere hver har en Spørsmål-node, avbryter den andre triggerens Spørsmål-node den første. Når brukeren svarer, gjenopptas den første spørsmålsnoden og spør på nytt, og skaper en løkke.
Løsning: Bruk mønster for felles emne. Konsolider spørsmålsnode-logikken i ett enkelt emne, eller sørg for at bare én trigger har en spørsmålsnode.
Nullstilling av globale variabler i inaktivitetsemnet
Problem: Hvis inaktivitetsemnet nullstiller globale variabler, mister agenten all samtalekontekst og virker uresponsiv når brukeren kommer tilbake.
Løsning: Tilbakestill kun inaktivitetsspesifikke variabler, ikke hele samtaletilstanden.
Å ikke blokkere inaktivitetstriggere i Teams
Problem: I Teams betyr den vedvarende samtalemodellen at inaktivitetstriggere utløses på ubestemt tid. Brukere mottar gjentatte «er du fortsatt der?»-meldinger timer eller dager senere.
Løsning: Bruk alltid gating-variabelstrategien for Teams.
Ikke kalle opp closeOmnichannelConversation
Problem: For Dynamics 365 Customer Service-agenter vil det å bare bruke EndConversation ikke lukke kundeserviceøkten i Dynamics 365 Customer Service. Samtaler hoper seg opp i agentkøen.
Løsning: Sett CloseOmnichannelConversation til true via Power Automate i inaktivitets-emne ditt.
Dynamisk varighet fra en uinitialisert variabel
Problem: Å bruke et Power Fx-uttrykk som =Environment.InactivityTimeout for varigheten fungerer, men hvis variabelen er uinitialisert eller null, blir triggeren ekskludert uten varsel.
Løsning: Sørg for at alle variabler brukt i triggerbetingelser og varighetsuttrykk har gyldige standardverdier.
Forventer at triggere skal fungere etter at agenten eskalerer
Problem: Etter at samtalen eskaleres til en kundeservicerepresentant, utløses triggeren på den opprinnelige agentsamtalen og sender meldinger under samtalen med den menneskelige agenten.
Løsning: Enten avslutt agentsamtalen ved eskalering, eller bruk en guard-variabel Global.IsEscalated = true og sjekk den i starten av inaktivitets-emnet.
Feilsøk når inaktivitetstriggeren ikke fungerer
Bruk dette beslutningstreet for å diagnostisere problemet:
Hvor tester du?
- Hvis du bruker testpanelet, stopp. Testpanelet støtter ikke inaktivitetstriggere. Publiser og test på en live-kanal.
Hvilken kanal bruker du?
- Microsoft 365 Copilot? Denne kanalen har en kjent begrensning. Triggeren utløses, men meldingene blir ikke levert. Ingen løsning.
- Telefoni/IVR? Denne kanalen støttes ikke. Bruk OnSilence-triggeren i stedet.
Er generativ kunstig intelligens for fakta aktivert?
- Inaktivitetstriggere bruker en separat timerpipeline fra gjenkjenningsbasert ruting. Men deres oppførsel med generativ kunstig intelligens-orkestrering er ikke fullt ut validert. Hvis håndtering av inaktivitet er kritisk, anbefales klassisk orkestrering som konfigurasjon.
Er du
durationInSecondsstørre enn 604 800?- Hvis ja, ignoreres triggeren uten varsel. Reduser til 604 800 eller lavere.
Er agenten en underordnet agent i et Connected Agent-oppsett?
- Hvis ja, støttes ikke triggere for inaktivitet for underordnet agent. Flytt logikken til overordnet agent.
Har du flere triggere for inaktivitet?
- De utløses i rekkefølge etter varighet (korteste først). Sørg for at du venter lenge nok. Enhver brukermelding nullstiller alle timere.
Har triggeren en betingelse som refererer til en variabel som ikke er satt?
- Hvis en betingelse refererer til en variabel som ennå ikke er satt, utelukkes triggeren uten varsel. Sørg for at alle betingelsesvariabler har standardverdier.
Ble agenten republisert etter at samtalen startet?
- En ny publisering kan tilbakestille inaktivitetstimeren for aktive økter. Start en ny samtale og test igjen.
Hvis inaktivitetstriggeren fortsatt ikke fungerer, prøv følgende alternativer:
- Sjekk samtaletranskripsjoner for eventuelle inaktivitetstemaer. Hvis emnet vises, men brukeren ikke mottok meldingen, er problemet kanalspesifikk levering.
- Verifiser at emnet ikke er deaktivert eller arkivert.
- Bekreft at triggertypen er «Etter en periode med inaktivitet», ikke en frasetrigger.
Anbefalte fremgangsmåter
Test alltid på en publisert kanal. Bruk demo-nettsiden for rask testing. Stol aldri på testpanelet.
Bruk en guard-variabel for å forhindre løkker. Opprett
Global.DeactivateInactivity(boolsk, forvalgtfalse). Angi tiltruefør du kaller opp EndConversation. Sjekk det i starten av hvert inaktivitetsemne.Hold varighetene rimelige. Minimum ~15 sekunder, maksimum 604 800 sekunder (7 dager).
Kontroller enhetene. Egenskapen er angitt i sekunder. 5 minutter =
300, ikke5.For Dynamics 365 Customer Service: Koble alltid
EndConversationsammen medcloseOmnichannelConversationvia Power Automate.For scenarioer med flere triggere: Begrens Spørsmål-noder til én trigger, eller bruk delt emne-mønsteret.
Kall
EndConversationfør du overfører til en kundeservicerepresentant for å deaktivere inaktivitetstriggere.Overvåk samtaleutskrifter etter implementering for å sikre at meldinger vises på forventede tidspunkter.
Vanlige spørsmål
Hvorfor fungerer ikke inaktivitetstriggeren i testpanelet?
Timere er deaktivert i testpanelet med hensikt. Publiser agenten din og test på en live-kanal.
Kan jeg bruke dynamiske varigheter (f.eks. fra en variabel)?
Ja. Varighetsfeltet aksepterer Power Fx-uttrykk. Du kan bruke en miljøvariabel eller beregnet verdi. Uttrykket evalueres ved kjøretid når timeren aktiveres. Sørg for at variabelen er initialisert og har et gyldig tall.
Hva skjer hvis jeg publiserer en ny agentversjon mens samtalene er aktive?
Kjøretiden henter den nyeste versjonen. Hvis trigger-ID-en endret (emnet slettet og gjenopprettet), går systemet tilbake til matching etter varighet. Hvis ingen trigger samsvarer med ID eller varighet, forkastes den ventende inaktivitetshendelsen.
Hvordan stopper jeg inaktivitetstriggere helt i Teams?
Du kan ikke stoppe dem på plattformen. Bruk gating-variabelmønsteret: sett en boolsk variabel når samtalen avsluttes logisk, og kontroller den ved starten av inaktivitets-emne for å avslutte tidlig.
Fungerer inaktivitetstriggeren med autentisering?
Ja, men ved lange tidsavbrudd for økten (f.eks. 24 timer) kan brukerens autentiseringstoken utløpe før triggeren utløses. Sørg for at agenten din håndterer reautentisering smidig.
Hva skjer hvis inaktivitetsemnet kaller opp en kobling som tar lang tid?
Connector-samtaler har en tidsbegrensning (30 sekunder som standard, maks 60 sekunder). Optimaliser connectoren eller håndter timeouten smidig.
Relatert innhold
- Angi emneutløsere
- Systemvariabler: InactivityTimer.Continue, InactivityTimer.Count
- Bruk Power Fx i Copilot Studio
- Konfigurer overlevering til Dynamics 365 Customer Service
- Konfigurasjon av tale og registrering av stillhet
- Deployer agenter til Teams
- Tilkoblede agenter
- Last ned samtaleutskrifter i Copilot Studio
- Lukk Omnikanal-samtaler automatisk
- Kjente begrensninger i Microsoft 365 Copilot