Dove si sceglie il metodo di assegnazione

Il metodo di assegnazione non si imposta sul workstream: si imposta sulla coda. In Copilot Service admin center vai su Queues in Customer support, seleziona Manage per Advanced queues, apri la coda e usa il campo Assignment method. Le opzioni pronte all’uso sono quattro.

Highest capacity assegna il work item al representative (l’operatore umano) con la maggiore capacità disponibile fra quelli che hanno le skill identificate in fase di classificazione e una presenza compresa fra le Allowed presences del workstream; a parità di capacità si ricade sull’ordine round robin. Se nel workstream il Default skill matching algorithm è Closest Match, l’ordinamento non avviene più per capacità disponibile ma per vicinanza della corrispondenza.

Advanced round robin distribuisce a rotazione fra chi soddisfa skill, presenza e capacità. L’ordine iniziale dipende da quando l’utente è stato aggiunto alla coda e viene poi aggiornato in base alle assegnazioni; è mantenuto per singola coda, quindi un representative iscritto a più code può ricevere lavori ravvicinati ma da code diverse.

Least active è disponibile solo per i canali voice e messaging ed è la selezione predefinita quando crei una coda di quei tipi. Per stabilire chi è meno attivo usa il tempo trascorso dall’ultimo rilascio di capacità e l’impostazione Block capacity for wrap up definita nel workstream.

No auto assignment è il metodo pick: il sistema instrada le conversazioni alla coda ma non le assegna. I representative le prendono dalla propria Inbox, oppure un supervisor le assegna manualmente dalla dashboard delle conversazioni in corso in Copilot Service workspace. Conviene monitorare la coda, perché nulla garantisce che qualcuno raccolga il lavoro.

Infine c’è Create new, che apre la costruzione di un metodo custom fatto di prioritization ruleset (uno solo per coda) e assignment ruleset, con una selection criteria quando i ruleset di assegnazione sono più di uno. Attenzione a una conseguenza che l’esame ama: nel metodo custom devi configurare tu presenza, capacità e regole di skill matching, perché le impostazioni predefinite del workstream non vengono usate. La documentazione stessa consiglia di preferire i metodi out-of-the-box, robusti e validati per la maggior parte dei casi.

Sopra tutto questo agisce il campo Queue priority della coda: numero più basso significa priorità più alta. All’interno della coda, senza regole custom, l’ordine è first-in-first-out.

Operating hours: quando il servizio è aperto

Le operating hours sono record di calendario che dichiarano quando il supporto è attivo. Si creano in Copilot Service admin center da Calendars in Operations, sezione Operating HoursManageNew. Nella scheda General compili Name, Owner e Description; dopo il salvataggio compare la scheda Working Hours, dove con New > Working hours definisci All Day, Calendar, Time, Repeat, un’eventuale data di fine e il Time zone (l’ora legale viene considerata se prevista dal fuso scelto). Con New > Holiday dichiari le chiusure per festività.

Il record poi va applicato. Sulla coda si usa la scheda Operation hoursSet operation hours: se non imposti nulla, la coda è considerata disponibile ventiquattr’ore su ventiquattro. Sul chat widget attivi Show widget during operation hours e scegli il record in Operating hours name. Per i canali SMS il record si aggiunge nella scheda Behaviors dell’istanza di canale, raggiungibile dal workstream.

Nel momento in cui associ un record di operating hours a una coda, il sistema crea automaticamente una condizione di overflow Out of operation hours con azione Assign to queue anyway: la condizione non è modificabile, l’azione sì (per esempio Transfer to a different queue, oppure End conversation per il messaging e Voicemail o End call per il voice).

Qui sta la confusione tipica che l’esame verifica: le operating hours descrivono la disponibilità di code e canali, non quella delle persone. Le strategie di assegnazione pronte all’uso non considerano gli orari di lavoro dei representative; per tenerne conto devi scrivere un metodo di assegnazione custom con l’operatore is_working sull’attributo Calendar schedule, che guarda il calendario di service scheduling dell’utente e non le operating hours della coda. Un tema vicino ma distinto è lo shift-based routing, che in Dynamics 365 Contact Center si attiva da Workforce management in Operations, sezione Shift & Schedule Management, portando su On il toggle Enable routing based on shift bookings.

Il workstream: dove canale, routing e distribuzione si incontrano

Il workstream è il contenitore che arricchisce, instrada e assegna i work item, ed è associato a un canale. Da Workstreams in Customer support selezioni New workstream e indichi Name, Type (Messaging, Record o Voice), il canale o il record, il Work distribution mode (Push o Pick) e la Fallback queue, creandone una nuova o scegliendone una esistente. Due dettagli da ricordare: il Work distribution mode non è più modificabile dopo la creazione, e per il voice esiste solo la modalità push.

Nell’area Work distribution trovi Capacity (Unit based o Profile based), Block capacity for wrap up con le opzioni Always block, Don’t block e Custom time, le Allowed presences, il Default skill matching algorithm (Exact Match, Closest Match o None), Keep same representative for entire conversation per l’affinità, e Auto-close after inactivity per i canali asincroni. Sono queste impostazioni, non quelle della coda, a definire chi è eleggibile: quando una domanda su “perché il lavoro non arriva” non torna, la risposta di solito è qui.

Context variable e agenti di Copilot Studio

Le context variable arricchiscono la conversazione con dati di pre-conversazione, dati di canale e contesto custom, e possono poi essere usate nelle regole di routing per instradare verso code diverse, oltre che in macro e script. Si creano nel workstream, in Advanced settingsAdd context variable: indichi Name (massimo 100 caratteri) e Type, scegliendo fra Text e Number. Il valore può arrivare a 4.000 caratteri e la corrispondenza è case sensitive, quindi il nome usato in Copilot Studio deve coincidere esattamente. Esistono anche variabili di sistema come msdyn_ConversationId, msdyn_WorkstreamId e msdyn_Locale; la pagina che le elenca è dichiarata valida per Dynamics 365 Customer Service e per Dynamics 365 Contact Center—standalone soltanto, mentre la creazione delle variabili nel workstream vale anche per la versione embedded.

L’associazione dell’agent, cioè dell’agente AI, avviene sempre nel workstream: nell’area Bot selezioni Add bot, scegli l’agente dal menu Name e confermi con Save and close. Si può associare un solo agente per workstream, e l’agente riceve conversazioni solo se il workstream è di tipo push. A runtime il work item viene offerto prima all’agente; le condizioni di overflow della coda vengono valutate solo dopo che l’agente ha effettuato l’escalation verso un representative. Non è consigliato aggiungere agenti a workstream di record routing, e gli agenti abilitati alla voce creati in Copilot Service admin center funzionano solo con i workstream voice enhanced.