ConversationBuilder
leave | Removes the current user from this conversation. |
sendMessage | Sends a text message in a given conversation. |
setAttributes | Used to set certain attributes for a specific conversation |
setParticipant | Sets a participant of the conversation. |
Allows custom conversation metadata to be stored in the form { [name: string]: string }
Set any property to null
to delete the existing value (if any). When omitted or undefined
, the existing value remains unchanged.
An optional URL to a photo which will be shown as the photo for the conversation.
Set to null
to delete the existing value (if any). When omitted or undefined
, the existing value remains unchanged.
An optional conversation subject which will be displayed in the chat header.
Set to null
to delete the existing value (if any). When omitted or undefined
, the existing value remains unchanged.
Messages which are sent at the beginning of a chat. In this case the messages will appear as system messages.
Set to null
to delete the existing value (if any). When omitted or undefined
, the existing value remains unchanged.
conversationBuilder.leave(): Promise<boolean>
Parameters
Returns
A promise that resolves with true upon success (indicating that the user has been removed from this conversation), or false when the user did not have the appropriate permissions (as defined in their Role in the TalkJS dashboard). The promise may reject in case of an unexpected error.
conversationBuilder.sendMessage(text, options): Promise<void>
Parameters
text
: stringThe message body that is to be sent.
options (optional)
: SendMessageOptionsinterface SendMessageOptions
custom (optional)
: CustomDataAn object with any custom data that you may wish to associate with this message. The custom data is sent back to you via webhooks and the REST API.
Set any property to null
to delete the existing value (if any). When omitted or undefined
, the existing value remains unchanged.
Returns
conversationBuilder.setAttributes(attributes)
For example:
conversation.setAttributes({subject: "Booking question"});conversation.setAttributes({custom:{sold: "true",itemId: "720"}});
Parameters
attributes
: ConversationAttributesinterface ConversationAttributes
Custom metadata that is stored with the conversation
Set any property to null
to delete the existing value (if any). When omitted or undefined
, the existing value remains unchanged.
The URL of a photo to be used for this conversation in the TalkJS UI in case there are more than 2 participants (TalkJS shows the photo of the other participant in a 1-on-1 conversation)
Set to null
to delete the existing value (if any). When omitted or undefined
, the existing value remains unchanged.
A human-readable subject of the conversation. Supports formatted links in a Markdown-style syntax, e.g. Beautiful <https://example.com/booking/18644|home by the sea>!
. URLs and email addresses are made clickable, and emojis made to work cross-platform.
Set to null
to delete the existing value (if any). When omitted or undefined
, the existing value remains unchanged.
Returns
conversationBuilder.setParticipant(user, settings)
This method is idempotent and can be called multiple times.
Parameters
user
: UserA User
object that identifies the person who is a participant of the conversation. The user is uniquely identified by their id; all other fields (name, photo etc) are overwritten in the TalkJS database each time they change.
settings (optional)
: Partial<ParticipationSettings>An optional setting of participation, can be an initial access
right or if user should be notified.
interface ParticipationSettings
Specifies the participant's access permission for a conversation. See ConversationBuilder.setParticipant
When omitted or undefined
, the existing value remains unchanged.
Specifies the participants's notification settings. See ConversationBuilder.setParticipant
When omitted or undefined
, the existing value remains unchanged.