Skip to content

Create Chat Token

ivschat_create_chat_token R Documentation

Creates an encrypted token that is used by a chat participant to establish an individual WebSocket chat connection to a room

Description

Creates an encrypted token that is used by a chat participant to establish an individual WebSocket chat connection to a room. When the token is used to connect to chat, the connection is valid for the session duration specified in the request. The token becomes invalid at the token-expiration timestamp included in the response.

Use the capabilities field to permit an end user to send messages or moderate a room.

The attributes field securely attaches structured data to the chat session; the data is included within each message sent by the end user and received by other participants in the room. Common use cases for attributes include passing end-user profile data like an icon, display name, colors, badges, and other display features.

Encryption keys are owned by Amazon IVS Chat and never used directly by your application.

Usage

ivschat_create_chat_token(roomIdentifier, userId, capabilities,
  sessionDurationInMinutes, attributes)

Arguments

roomIdentifier

[required] Identifier of the room that the client is trying to access. Currently this must be an ARN.

userId

[required] Application-provided ID that uniquely identifies the user associated with this token. This can be any UTF-8 encoded text.

capabilities

Set of capabilities that the user is allowed to perform in the room. Default: None (the capability to view messages is implicitly included in all requests).

sessionDurationInMinutes

Session duration (in minutes), after which the session expires. Default: 60 (1 hour).

attributes

Application-provided attributes to encode into the token and attach to a chat session. Map keys and values can contain UTF-8 encoded text. The maximum length of this field is 1 KB total.

Value

A list with the following syntax:

list(
  token = "string",
  tokenExpirationTime = as.POSIXct(
    "2015-01-01"
  ),
  sessionExpirationTime = as.POSIXct(
    "2015-01-01"
  )
)

Request syntax

svc$create_chat_token(
  roomIdentifier = "string",
  userId = "string",
  capabilities = list(
    "SEND_MESSAGE"|"DISCONNECT_USER"|"DELETE_MESSAGE"
  ),
  sessionDurationInMinutes = 123,
  attributes = list(
    "string"
  )
)