
Chat
Metro 4 implements component to create simple chat.
About
In Metro 4 you can create simple chat.
Create chat
To create simple interface for your chat you must create container
with role chat
and set size roy you chat. That's all.
<div
data-role="chat"
data-width="300"
data-height="400"
></div>
Options
Option | Data-* | Default | Desc |
---|---|---|---|
timeFormat |
data-time-format |
%d %b %l:%M %p | Message time format. More about date-time formats |
inputTimeFormat |
data-input-time-format |
%m-%d-%y | Message input time format. More about date-time formats |
name |
data-name |
John Doe | Receiver name |
avatar |
data-avatar |
Receiver avatar. Must be string with image source (used for img src attribute) | |
welcome |
data-welcome |
null | Welcome message |
title |
data-title |
null | Chat title |
width |
data-width |
100% | Chat width |
height |
data-height |
auto | Chat height |
randomColor |
data-random-color |
false | If true, messages colorized with random color from predefined colors |
messages |
data-messages |
null | Object with initialization messages |
sendButtonTitle |
data-send-button-title |
Send | Title for Send button |
Events
Event | Data-* | Desc |
---|---|---|
onMessage(msg) |
data-on-message |
Fired when message added to chat |
onSend(msg) |
data-on-send |
Fired when user click on Send button |
onChatCreate |
data-on-chat-create |
Fired when chat was created |
Methods
Method | Desc |
---|---|
clear() |
Clear all message |
add(msg) |
Add message to chat |
addMessages(messages) |
Add messages to chat |
delMessage(msg_id) |
Del message from chat |
updMessage(msg) |
Update message on chat |
Customize
You can customize chat with special attributes.
Attr | Data-* | Desc |
---|---|---|
clsChat |
data-cls-chat |
Class for chat component |
clsName |
data-cls-name |
Class for sender or receiver name |
clsTime |
data-cls-time |
Class for message time |
clsInput |
data-cls-input |
Class for chat input control |
clsSendButton |
data-cls-send-button |
Class for send button |
clsMessageLeft |
data-cls-message-left |
Class for left message |
clsMessageRight |
data-cls-message-right |
Class for right message |
Message structure
Chat message is a plain object.
message = {
id,
name,
time,
avatar,
position
}
Property | Type | Desc |
---|---|---|
id |
any |
Message unique id |
name |
string |
Sender name |
time |
valid ECMA script datetime string | Message time |
avatar |
uri |
Sender avatar, used for img src attribute |
position |
string |
left or right |