Silent Messages

LAST EDIT Mar 05 2021

Sometimes you want to add system or transactional messages to channels such as: "your ride is waiting for you", "James updated the information for the trip", "You and Jane are now matched" and so on.

You may not want these messages to mark a channel as unread or increase the unread messages for users.

Silent messages are special messages that don't increase the unread messages count nor mark a channel as unread. Creating a silent message is very simple, you only need to include the silent field boolean field and set it to true.

1
2
3
4
5
6
7
8
const text = 'You completed your trip';
 
const message = {
 
    text,
 
    user: systemUser,
 
    silent: true,
 
    attachments: [{type:'trip', ...tripData}]
 
}; 
await channel.sendMessage(message);
1
2
3
4
5
6
val message = Message( 
    text = "You and Jane are now matched!", 
    user = systemUser, 
    silent = true, 
) 
channelClient.sendMessage(message).enqueue { /* ... */ }
1
2
3
4
5
6
Message message = new Message(); 
message.setText("You and Jane are now matched!"); 
message.setUser(systemUser); 
message.setSilent(true); 
 
channelClient.sendMessage(message).enqueue(result -> { /* ... */ });
1
2
3
4
5
6
let channel = Client.shared.channel(type: .messaging, id: "general") 
let message = Message(text: "You and Jane are now matched!", silent: true) 
 
channel.send(message: message) { (result) in 
    // handle result 
}
1
2
3
4
5
6
7
8
final text = 'You completed your trip';
 
const message = {
 
    text: text,
 
    user: systemUser,
 
    silent: true,
 
    attachments: tripAttachments,
 
}; 
await channel.sendMessage(message);
Existing messages cannot be turned into a silent message or vice versa.
Silent messages do send push notifications by default. To skip our push notification service, mark the message with skip_push: true, as described here.