Option to ignore certain JIDs' chat state notifications
This commit is contained in:
parent
9a449e3615
commit
ae6a7f4b02
@ -6,6 +6,7 @@
|
|||||||
As a result `converse.listen.on('message');` has been deprecated, use `converse.stanza.on('message');` instead. [jcbrand]
|
As a result `converse.listen.on('message');` has been deprecated, use `converse.stanza.on('message');` instead. [jcbrand]
|
||||||
- Emit an event `chatBoxInitialized` once a chat box's initialize method has been called. [jcbrand]
|
- Emit an event `chatBoxInitialized` once a chat box's initialize method has been called. [jcbrand]
|
||||||
- Emit an event `statusInitialized` once the user's own status has been initialized upon startup. [jcbrand]
|
- Emit an event `statusInitialized` once the user's own status has been initialized upon startup. [jcbrand]
|
||||||
|
- New config option [chatstate_notification_blacklist](https://conversejs.org/docs/html/configuration.html#chatstate_notification_blacklist) [jcbrand]
|
||||||
- Split converse.js up into different plugin modules. [jcbrand]
|
- Split converse.js up into different plugin modules. [jcbrand]
|
||||||
- Don't play sound notifications for OTR messages which are setting up an
|
- Don't play sound notifications for OTR messages which are setting up an
|
||||||
encrypted session. [jcbrand]
|
encrypted session. [jcbrand]
|
||||||
|
@ -298,6 +298,23 @@ This setting can only be used together with ``allow_otr = true``.
|
|||||||
to retrieve your private key and read your all the chat messages in your
|
to retrieve your private key and read your all the chat messages in your
|
||||||
current session. Previous sessions however cannot be decrypted.
|
current session. Previous sessions however cannot be decrypted.
|
||||||
|
|
||||||
|
chatstate_notification_blacklist
|
||||||
|
---------------------------------
|
||||||
|
|
||||||
|
* Default: ``[]``
|
||||||
|
|
||||||
|
A list of JIDs to be ignored when showing desktop notifications of changed chat states.
|
||||||
|
|
||||||
|
Some user's clients routinely connect and disconnect (likely on mobile) and
|
||||||
|
each time a chat state notificaion is received (``online`` when connecting and
|
||||||
|
then ``offline`` when disconnecting).
|
||||||
|
|
||||||
|
When desktop notifications are turned on (see `show-desktop-notifications`_),
|
||||||
|
then you'll receive notification messages each time this happens.
|
||||||
|
|
||||||
|
Receiving constant notifications that a user's client is connecting and disconnecting
|
||||||
|
is annoying, so this option allows you to ignore those JIDs.
|
||||||
|
|
||||||
csi_waiting_time
|
csi_waiting_time
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
|
@ -31,6 +31,8 @@
|
|||||||
|
|
||||||
this.updateSettings({
|
this.updateSettings({
|
||||||
show_desktop_notifications: true,
|
show_desktop_notifications: true,
|
||||||
|
chatstate_notification_blacklist: [],
|
||||||
|
// ^ a list of JIDs to ignore concerning chat state notifications
|
||||||
play_sounds: false,
|
play_sounds: false,
|
||||||
sounds_path: '/sounds/',
|
sounds_path: '/sounds/',
|
||||||
notification_icon: '/logo/conversejs.png'
|
notification_icon: '/logo/conversejs.png'
|
||||||
@ -127,6 +129,10 @@
|
|||||||
/* Creates an HTML5 Notification to inform of a change in a
|
/* Creates an HTML5 Notification to inform of a change in a
|
||||||
* contact's chat state.
|
* contact's chat state.
|
||||||
*/
|
*/
|
||||||
|
if (_.contains(converse.chatstate_notification_blacklist, contact.get('jid'))) {
|
||||||
|
// Don't notify if the user is being ignored.
|
||||||
|
return;
|
||||||
|
}
|
||||||
var chat_state = contact.chat_status,
|
var chat_state = contact.chat_status,
|
||||||
message = null;
|
message = null;
|
||||||
if (chat_state === 'offline') {
|
if (chat_state === 'offline') {
|
||||||
|
Loading…
Reference in New Issue
Block a user