Chat

Chat

Chat class represents conversation between visitor and managers. This is main private class for all actions inside library.

Constructor

new Chat(websiteId, visitrorId)

Source:
Properties:
Name Type Description
managers Array.<Manager>

people who are connected to current conversation in dashboard

visitor Visitor

user who visits current page

connection Connection

class provides protocol implementation

Chat constructor

Parameters:
Name Type Default Description
websiteId string

Website ID from Chatix dashboard

visitrorId string null

Visitor ID can be passed from backend. If null, SDK will try to find it in local storage and request new if it wasn't found in storage.

Methods

_onConversationMessageReceivedCallback(message)

Source:
To Do:
  • обновить на получение одного сообщения

Receiving new message in conversation

Parameters:
Name Type Description
message Message

new message

_onManagerConnectedCallback(manager)

Source:
Parameters:
Name Type Description
manager Manager

new connected manager

_onManagerSentScreenEventCallback()

Source:
To Do:
  • перенести логику отрисовки ивентов в отдельный компонент

_onScreenDataRequestedCallback()

Source:
To Do:
  • перенести логику отправки данных экрана в отдельный компонент

(async) getConnectedManagers() → {Array.<Manager>|*}

Source:

Getter for current conversation managers

Returns:
Type
Array.<Manager> | *

(async) getConversationHistory(lastKnownMessageId, count) → {Promise.<Array.<Message>>}

Source:

Sends request for current conversation messages. Messages returns ordered by sent time ascending.

Parameters:
Name Type Default Description
lastKnownMessageId string | null null

ID of the last message in dialog you have rendered.

count number 50

Number of messages to return.

Returns:
Type
Promise.<Array.<Message>>

(async) getManagerInfo(managerId)

Source:

Gets information about manager from API

Parameters:
Name Type Description
managerId string

ID of manager you are interested in

(async) getManagers() → {Array.<Manager>|*}

Source:

Getter for all website managers

Returns:
Type
Array.<Manager> | *

getVisitor() → {Visitor|null}

Source:

Getter for current conversation visitor

Returns:
Type
Visitor | null

receivedChatInfo(chatInfo)

Source:
To Do:
  • Зачем?
Parameters:
Name Type Description
chatInfo

(async) sendChatroomFileMessage(files, chatroomId)

Source:

Sends files or images to chatroom

Parameters:
Name Type Description
files File | Array.<File>

File or files to send

chatroomId string

Chatroom ID where to send messages

(async) sendFileMessage(files)

Source:
See:

Sends file or image message to Chatix

Parameters:
Name Type Description
files File | Array.<File>

File to send or array of files

(async) sendPage(url, title)

Source:

Sends data to server about user navigation

Parameters:
Name Type Description
url string

Current page URL

title string

Current page title

(async) sendTextMessage(text)

Source:

Sends text message to current conversation

Parameters:
Name Type Description
text text

new message text

(async) setVisitor(visitor)

Source:

Setter for current conversation visitor

Parameters:
Name Type Description
visitor Visitor

sortMessages(messages)

Source:

Sorts messages by sent_at ascending

Parameters:
Name Type Description
messages Array.<Message>

Messages array to sort

(async) startConnection()

Source:

Starts SignalR connection to server

(async) stopConnection()

Source:

Stops network connection

(async) visitorTypes(text)

Source:

Sends current visitor typing

Parameters:
Name Type Description
text string

current visitor input