Pojęcia dotyczące czatu

Czat usług Azure Communication Services może pomóc w dodaniu komunikacji tekstowej w czasie rzeczywistym do aplikacji międzyplatformowych. Ta strona zawiera podsumowanie kluczowych pojęć i możliwości czatu. Zobacz Omówienie zestawu SDK (Chat Software Development Kit) usług komunikacyjnych, aby uzyskać listę zestawów SDK, języków, platform i szczegółowej obsługi funkcji.

Interfejsy API czatu zapewniają usługę automatycznego skalowania na potrzeby trwałej komunikacji tekstu i danych. Inne kluczowe funkcje to:

  • Tożsamość niestandardowa i adresowanie — usługi Azure Communication Services udostępniają ogólne tożsamości do adresowania punktów końcowych komunikacji. Klienci używają tych tożsamości do uwierzytelniania w usłudze platformy Azure i komunikowania się ze sobą w chat threads ramach kontroli.
  • Szyfrowanie — zestawy SDK czatów szyfrują ruch i uniemożliwiają manipulowanie przewodem.
  • Spotkania w aplikacji Microsoft Teams — zestawy SDK czatów mogą dołączać do spotkań usługi Teams i komunikować się z wiadomościami czatu usługi Teams.
  • Powiadomienia w czasie rzeczywistym — zestawy SDK czatów używają wydajnej trwałej łączności (WebSocket) do odbierania powiadomień w czasie rzeczywistym, takich jak podczas wpisywania przez użytkownika zdalnego. Gdy aplikacje działają w tle, wbudowana funkcja jest dostępna do uruchamiania wyskakujących powiadomień ("wyskakujących") w celu informowania użytkowników końcowych o nowych wątkach i komunikatach.
  • Rozszerzalność bota — łatwo jest dodać boty platformy Azure do usługi Czat przy użyciu integracji z usługą Azure Bot.

Przegląd czatu

Konwersacje czatu odbywają się w wątkach czatu. Wątki czatu mają następujące właściwości:

  • Tożsamość wątku czatu to .ChatThreadId
  • Wątki czatu mają od zera do 250 użytkowników jako uczestników, którzy mogą wysyłać do niego wiadomości.
  • Użytkownik może być częścią nieograniczonej liczby wątków czatu.
  • Tylko uczestnicy wątku mogą wysyłać lub odbierać wiadomości, dodawać uczestników lub usuwać uczestników.
  • Użytkownicy są dodawani jako uczestnicy do wszystkich tworzonych wątków czatu.

Dostęp użytkowników

Usługi Azure Communication Services obsługują trzy poziomy kontroli dostępu użytkowników przy użyciu tokenów czatu. Aby uzyskać szczegółowe informacje, zobacz Tożsamość i tokeny . Uczestnicy nie mają dostępu do zapisu do wiadomości wysyłanych przez innych uczestników, co oznacza, że tylko nadawca wiadomości może aktualizować lub usuwać wysłane wiadomości. Jeśli inny uczestnik spróbuje to zrobić, wystąpi błąd.

Dane czatu

Usługi Azure Communication Services przechowują wątki czatów zgodnie z zasadami przechowywania danych w momencie utworzenia wątku. W razie potrzeby można zaktualizować zasady przechowywania w ustawionym okresie przechowywania. Po usunięciu wątku czatu (według zasad lub żądania usunięcia interfejsu API) nie można go pobrać.

Ważne

Funkcje opisane w tym artykule są obecnie dostępne w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie zalecamy korzystania z niej w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą być nieobsługiwane lub ograniczone. Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.

Możesz wybrać między nieokreślonym przechowywaniem wątków, automatycznym usuwaniem z zakresu od 30 do 90 dni za pośrednictwem zasad przechowywania w interfejsie API Tworzenia wątku czatu lub natychmiastowego usunięcia przy użyciu interfejsów API Usuń wiadomość czatu lub Usuń wątek czatu.

Nie ma to wpływu na każdy wątek utworzony przed nowymi zasadami przechowywania, chyba że w szczególności zmienisz zasady dla tego wątku. Jeśli przesyłasz wniosek o pomoc techniczną dla usuniętego wątku czatu ponad 30 dni po usunięciu tego wątku przez zasady przechowywania, nie można go już pobrać i nie są dostępne żadne informacje o tym wątku. W razie potrzeby otwórz bilet pomocy technicznej tak szybko, jak to możliwe w oknie 30 dni po utworzeniu wątku, abyśmy mogli Ci pomóc.

Uczestnicy wątku czatu mogą wyświetlać ListMessages historię wiadomości dla określonego wątku. Interfejs ListMessages API nie może zwrócić historii wątku, jeśli wątek zostanie usunięty. Użytkownicy usunięci z wątku czatu mogą wyświetlać poprzednią historię wiadomości, ale nie mogą wysyłać ani odbierać nowych wiadomości. Przypadkowo usunięte komunikaty nie są możliwe do odzyskania przez system. Aby dowiedzieć się więcej na temat danych przechowywanych w usłudze czatu usług Azure Communication Services, zapoznaj się ze stroną przechowywania danych i prywatności.

W przypadku klientów korzystających z terminów wirtualnych zapoznaj się z naszą prywatnością użytkowników współdziałania usługi Teams w celu przechowywania wiadomości czatu w spotkaniach usługi Teams.

Limity usługi

  • Maksymalna liczba uczestników dozwolonych w wątku czatu wynosi 250.
  • Maksymalny dozwolony rozmiar komunikatu wynosi około 28 KB.
  • W przypadku wątków czatu z ponad 20 uczestnikami nie są obsługiwane funkcje potwierdzeń odczytu i wskaźnika wpisywania.
  • W przypadku scenariuszy międzyoperacyjności usługi Teams jest to liczba użytkowników usług Azure Communication Services, a nie użytkowników usługi Teams, która musi być niższa niż 20, aby funkcja wskaźnika wpisywania była obsługiwana.
  • Podczas tworzenia wątku czatu można ustawić zasady przechowywania z zakresu od 30 do 90 dni.
  • W przypadku scenariuszy międzyoperacyjności usługi Teams zdarzenie wskaźnika wpisywania może zawierać pustą nazwę wyświetlaną podczas wysyłania z użytkownika usługi Teams.
  • W przypadku scenariuszy międzyoperacyjności usługi Teams potwierdzenia odczytu nie są obsługiwane dla użytkowników usługi Teams.

Architektura czatu

Istnieją dwie podstawowe części architektury czatu: 1) Zaufana usługa i 2) Aplikacja kliencka.

Diagram przedstawiający architekturę czatu usług Komunikacyjnych.

  • Zaufana usługa: aby prawidłowo zarządzać sesją czatu, potrzebna jest usługa, która ułatwia nawiązywanie połączenia z usługami Communication Services przy użyciu parametry połączenia zasobu. Ta usługa jest odpowiedzialna za tworzenie wątków czatu, dodawanie i usuwanie uczestników oraz wydawanie tokenów dostępu użytkownikom. Aby uzyskać więcej informacji, zobacz Szybki start: tworzenie tokenów dostępu i zarządzanie nimi— szybki start.
  • Aplikacja kliencka: aplikacja kliencka łączy się z zaufaną usługą i odbiera tokeny dostępu, które użytkownicy muszą łączyć się bezpośrednio z usługami komunikacyjnymi. Po utworzeniu wątku czatu i dodaniu uczestników mogą oni używać aplikacji klienckiej do nawiązywania połączenia z wątkiem czatu i wysyłania wiadomości. Uczestnicy mogą używać powiadomień w czasie rzeczywistym w aplikacji klienckiej do subskrybowania aktualizacji komunikatów i wątków od innych członków.

Tworzenie inteligentnych, opartych na sztucznej inteligencji środowisk czatów

Usługi Azure AI można używać z usługą Chat Service do tworzenia przypadków użycia, takich jak:

  • Pomóż agentowi pomocy technicznej ustalić priorytety biletów, wykrywając negatywną tonację przychodzącego komunikatu od klienta.
  • Wygeneruj podsumowanie na końcu konwersacji, aby wysłać do klienta pocztą e-mail kolejne kroki lub wykonać kolejne czynności w późniejszym terminie.
  • Dodaj agenta wirtualnego usługi Power Virtual Agent (PVA) w kanale czatu usług Azure Communication Services za pomocą bota platformy Azure i bota przekaźnika.
  • Skonfiguruj bota do uruchamiania na co najmniej jednym kanale społecznościowym obok kanału czatu.

Diagram przedstawiający usługi Azure Communication Services można połączyć z usługami Azure AI.

Typy komunikatów

W ramach historii wiadomości czat udostępnia komunikaty generowane przez użytkownika i komunikaty generowane przez system.

Komunikaty systemowe są generowane, gdy

  • wątek czatu jest aktualizowany
  • uczestnik został dodany lub usunięty
  • temat wątku czatu został zaktualizowany.

Podczas wywoływania List Messages lub Get Messages wątek czatu wynik zawiera oba rodzaje wiadomości w kolejności chronologicznej. W przypadku wiadomości generowanych przez użytkownika typ wiadomości można ustawić SendMessageOptions podczas wysyłania wiadomości do wątku czatu. Jeśli żadna wartość nie zostanie podana, usługa Communication Services domyślnie wpisze text wartość. Ustawienie tej wartości jest ważne podczas wysyłania kodu HTML. Po html określeniu usługi Communication Services oczyszczają zawartość w celu zapewnienia, że są bezpiecznie renderowane na urządzeniach klienckich.

  • text: Wiadomość w postaci zwykłego tekstu skomponowana i wysłana przez użytkownika w ramach wątku czatu.
  • html: Sformatowana wiadomość przy użyciu kodu HTML, skomponowana i wysłana przez użytkownika w ramach wątku czatu.

Typy komunikatów systemowych:

  • participantAdded: Komunikat systemowy wskazujący, że co najmniej jeden uczestnik znajduje się w wątku czatu.
  • participantRemoved: Komunikat systemowy wskazujący, że uczestnik został usunięty z wątku czatu.
  • topicUpdated: Komunikat systemowy wskazujący, że temat wątku jest aktualizowany.

Powiadomienia w czasie rzeczywistym

Zestaw JavaScript Chat SDK obsługuje powiadomienia w czasie rzeczywistym. Ta funkcja umożliwia klientom nasłuchiwanie usług komunikacyjnych na potrzeby aktualizacji w czasie rzeczywistym i przychodzących wiadomości do wątku czatu bez konieczności sondowania interfejsów API.

Aplikacja kliencka może subskrybować następujące zdarzenia:

  • chatMessageReceived - po wysłaniu nowej wiadomości do wątku czatu przez uczestnika.
  • chatMessageEdited — gdy wiadomość jest edytowana w wątku czatu.
  • chatMessageDeleted — po usunięciu wiadomości w wątku czatu.
  • typingIndicatorReceived — gdy inny uczestnik wysyła wskaźnik pisania do wątku czatu.
  • readReceiptReceived - gdy inny uczestnik wysyła potwierdzenie przeczytania wiadomości, którą odczytał.
  • chatThreadCreated — gdy użytkownik usług komunikacyjnych tworzy wątek czatu.
  • chatThreadDeleted — gdy użytkownik usług komunikacyjnych usuwa wątek czatu.
  • chatThreadPropertiesUpdated - podczas aktualizowania właściwości wątku czatu; obecnie obsługiwana jest tylko aktualizacja tematu dla wątku.
  • participantsAdded — gdy użytkownik zostanie dodany jako uczestnik wątku czatu.
  • participantsRemoved — gdy istniejący uczestnik zostanie usunięty z wątku czatu.
  • realTimeNotificationConnected — gdy powiadomienie w czasie rzeczywistym jest połączone.
  • realTimeNotificationDisconnected — gdy powiadomienie w czasie rzeczywistym zostanie rozłączone.

Uwaga

Powiadomienia w czasie rzeczywistym nie są używane z aplikacjami serwerowymi.

Zdarzenia serwera

Ta funkcja umożliwia aplikacjom serwerowym nasłuchiwanie zdarzeń, takich jak wysłanie wiadomości i dołączenie lub opuszczenie czatu przez uczestnika. Aplikacje serwerowe mogą reagować na te zdarzenia, dodawać/usuwać uczestników do czatu, archiwizować czaty, wykonywać analizę i wiele innych scenariuszy orkiestracji. Aby zobaczyć, jakie rodzaje zdarzeń czatu mogą być używane przez deweloperów, zobacz Zdarzenia serwera.

Powiadomienia wypychane do aplikacji

Zestawy SDK czatu dla systemu Android i iOS obsługują powiadomienia wypychane. Aby wysyłać powiadomienia wypychane dla komunikatów pominiętych przez uczestników podczas ich nieobecności, połącz zasób usługi Notification Hub z zasobem usługi Communication Services w celu wysyłania powiadomień wypychanych. Spowoduje to powiadomienie uczestników aplikacji o przychodzących czatach i wiadomościach, gdy aplikacja mobilna nie jest uruchomiona na pierwszym planie.

Zestaw SDK dla systemów iOS i Android obsługuje poniższe zdarzenie:

  • chatMessageReceived - gdy uczestnik wysyła nową wiadomość do wątku czatu.

Zestaw Android SDK obsługuje dodatkowe zdarzenia:

  • chatMessageEdited — gdy uczestnik edytuje wiadomość w wątku czatu.
  • chatMessageDeleted — gdy uczestnik usunie wiadomość w wątku czatu.
  • chatThreadCreated — gdy użytkownik usług komunikacyjnych tworzy wątek czatu.
  • chatThreadDeleted — gdy użytkownik usług komunikacyjnych usuwa wątek czatu.
  • chatThreadPropertiesUpdated - podczas aktualizowania właściwości wątku czatu; obecnie obsługiwana jest tylko aktualizacja tematu dla wątku.
  • participantsAdded — podczas dodawania uczestnika do wątku czatu.
  • participantsRemoved — po usunięciu istniejącego uczestnika z wątku czatu.

Aby uzyskać więcej informacji, zobacz Powiadomienia wypychane.

Uwaga

Obecnie wysyłanie powiadomień wypychanych do czatu za pomocą usługi Notification Hub jest ogólnie dostępne w systemie Android w wersji 1.1.0 i w systemie IOS w wersji 1.3.0.

Następne kroki