Sdílet prostřednictvím


Zahájení konverzace v rozhraní DIRECT LINE API 3.0

Direct Line konverzace jsou explicitně otevřeny klienty a mohou běžet, pokud se robot a klient účastní a mají platné přihlašovací údaje. Během konverzace může robot i klient odesílat zprávy. K dané konverzaci se může připojit více než jeden klient a každý klient se může účastnit jménem více uživatelů.

Otevření nové konverzace

Pokud chcete otevřít novou konverzaci od klienta, zadejte POST do koncového bodu /v3/directline/konverzace.

POST https://directline.botframework.com/v3/directline/conversations
Authorization: Bearer SECRET_OR_TOKEN

Následující fragmenty kódu poskytují příklad žádosti o zahájení konverzace a odpovědi.

Žádost

POST https://directline.botframework.com/v3/directline/conversations
Authorization: Bearer RCurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xn

Odpověď

Pokud je požadavek úspěšný, odpověď bude obsahovat ID konverzace, token, hodnotu, která označuje počet sekund, dokud platnost tokenu nevyprší, a adresu URL streamu, kterou klient může použít k příjmu aktivit prostřednictvím streamu WebSocket.

HTTP/1.1 201 Created
[other headers]
{
  "conversationId": "abc123",
  "token": "RCurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xn",
  "expires_in": 1800,
  "streamUrl": "https://directline.botframework.com/v3/directline/conversations/abc123/stream?t=RCurR_XV9ZA.cwA..."
}

Žádost o zahájení konverzace se obvykle používá k otevření nové konverzace a stavový kód HTTP 201 se vrátí, pokud se nová konverzace úspěšně spustí. Pokud ale klient odešle žádost o zahájení konverzace s tokenem Direct Line v Authorization hlavičce, která se dříve použila k zahájení konverzace pomocí operace zahájení konverzace, vrátí se stavový kód HTTP 200, který označuje, že požadavek byl přijatelný, ale nebyla vytvořena žádná konverzace (jak už existovala).

Tip

K adrese URL streamu WebSocket máte 60 sekund. Pokud se během této doby připojení nedá navázat, můžete se k konverzaci znovu připojit a vygenerovat novou adresu URL streamu.

Zahájení konverzace versus vygenerování tokenu

Počáteční operace konverzace (POST /v3/directline/conversations) je podobná operaci vygenerování tokenu (POST /v3/directline/tokens/generate), v které obě operace vrací token ten, který lze použít pro přístup k jedné konverzaci. Operace zahájení konverzace ale také spustí konverzaci, kontaktuje robota a vytvoří adresu URL streamu WebSocket, zatímco operace vygenerování tokenu nic z těchto věcí nedělá.

Pokud chcete konverzaci zahájit okamžitě s klientem, použijte operaci zahájení konverzace. Pokud plánujete token distribuovat klientům a chcete, aby zahájili konverzaci, použijte místo toho operaci vygenerování tokenu .

Další materiály