# Broadcast
# Comment
Comments are broadcast on channel submission.{submission-slug}
# Listener
There are three event listeners:
CommentWasCreated, CommentWasPatched and CommentWasDeleted
# Usage
This is for js:
Echo.channel('submission.'+submissionSlug)
.listen("CommentWasCreated", event => {
console.log("Comment created:", event.data);
})
.listen("CommentWasPatched", event => {
console.log("Comment updated:", event.data);
})
.listen("CommentWasDeleted", event => {
console.log("Comment deleted:", event.data);
});
# Example
All three will return:
{
"data":
{
"id": 1,
"submission_id": 1,
"user_id": 1,
"channel_id": 1,
"type": "serious",
"parent_id": null,
"nested_level": 0,
"rate": 0,
"likes_count": 0,
"votes": 0,
"content": {
"text": "contentOfComment"
},
"approved_at": "dateOfApproval",
"disapproved_at": "dateOfDisapproval",
"created_at": "dateCreated",
"deleted_at": "dateDeleted",
"deleted_by": null,
"deletedAdmin": false,
"reason_remove": null,
"edited_at": null,
"author": "userName",
"children": false,
"commentVotes": 0,
}
}
# Conversation
Conversation are broadcast on private channel App.User.{UserId}
# Listener
There are three event listeners:
ConversationRead, MessageCreated and MessageRead
# Usage
This is for js:
Echo.private('App.User.' + userId)
.listen("MessageCreated", event => {
console.log("New message:", event.data);
})
.listen("MessageRead", event => {
console.log("Message read:", event.data);
})
.listen("ConversationRead", event => {
console.log("Conversation read:", event.data);
});
# Example
Conversation read returns:
{
"data":
{
"user_id": "CurentUserContactId",
}
}
Message Created and Read returns:
{
"data":
{
"id": "messageId",
"user_id": 1,
"created_at": "dateCreated",
"read_at": "messageReadTimestamp",
"content": "messageContent",
"author": {
"id": 1,
"username": "userName",
"name": "fullName",
"bio": "userBio",
...
}
}
}
← Image