ChatContext
ChatContext è la chat del team e l’assistenza clienti: canali pubblici e privati, messaggi diretti, messaggi diretti di gruppo e conversazioni di assistenza con i visitatori del sito. I messaggi possono includere Markdown, reazioni con emoji, discussioni e allegati fino a 25 MiB. Il lettore nel browser è in sola lettura. Gli assistenti usano il client chatcontext.
Dentro questa app non c’è un modello. L’assistente di una persona usa l’account di quella persona. Un bot di assistenza può avere un proprio account ordinario, creato da un amministratore.
Conversazioni
flowchart TB
channel[Canale<br/>pubblico o privato]
dm[Messaggio diretto o di gruppo]
support[Conversazione di assistenza]
thread[Discussione]
msg[Messaggio]
file[Allegato protetto]
note[Nota interna<br/>solo il team]
channel --> thread --> msg
dm --> thread
support --> thread
msg --> file
support --> note
I nuovi membri di un canale vedono la cronologia esistente. L’appartenenza a un messaggio diretto di gruppo resta fissa. Canali privati e messaggi diretti richiedono l’appartenenza, anche per gli amministratori.
I visitatori dimostrano un’email con un codice monouso e poi vedono solo le proprie conversazioni di assistenza. I membri del team vedono ogni conversazione di assistenza e possono rispondere senza prenderne l’assegnazione. Un messaggio del visitatore riapre una conversazione risolta. I visitatori vedono un nome pubblico visualizzato (il predefinito è User), non le email degli account.
sequenceDiagram
participant Visitor
participant Chat as ChatContext
participant Team as Membro del team
Visitor->>Chat: codice email, poi un messaggio
Chat-->>Team: la conversazione è visibile al team
Team->>Chat: risposta, oppure una nota interna
Note over Chat: il visitatore non vede la nota interna
Visitor->>Chat: SQL o un aggiornamento non contano mai come "letto"
Team->>Chat: conferma di lettura esplicita
Le letture SQL non confermano mai un messaggio. Le conferme di lettura nei messaggi diretti e nell’assistenza sono esplicite. Le modifiche dell’autore e l’eliminazione logica conservano un originale di audit.