Better systray notifications support
This commit is contained in:
parent
21683ccbca
commit
29dd383a3f
|
@ -4,6 +4,21 @@ chimeversePlugin.register = (login) => {
|
||||||
converse.plugins.add('chimeVerse', {
|
converse.plugins.add('chimeVerse', {
|
||||||
initialize: (event) => {
|
initialize: (event) => {
|
||||||
let _converse = event.properties._converse
|
let _converse = event.properties._converse
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if message stanza has some body payload
|
||||||
|
* @param {*} stanzaNodes
|
||||||
|
*/
|
||||||
|
let isBodyMessage = (stanzaNodes) => {
|
||||||
|
let result = false
|
||||||
|
Object.keys(stanzaNodes).some((key) => {
|
||||||
|
if (stanzaNodes[key].nodeName == 'body') {
|
||||||
|
result = true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
|
||||||
Promise.all([
|
Promise.all([
|
||||||
_converse.api.waitUntil('rosterContactsFetched'),
|
_converse.api.waitUntil('rosterContactsFetched'),
|
||||||
_converse.api.waitUntil('chatBoxesFetched')
|
_converse.api.waitUntil('chatBoxesFetched')
|
||||||
|
@ -13,15 +28,18 @@ chimeversePlugin.register = (login) => {
|
||||||
document.dispatchEvent(event)
|
document.dispatchEvent(event)
|
||||||
})
|
})
|
||||||
_converse.api.listen.on('message', (data) => {
|
_converse.api.listen.on('message', (data) => {
|
||||||
let sender = data.stanza.attributes.from.nodeValue
|
// Display notifications only for "payloaded" messages
|
||||||
let senderJid = sender
|
if (isBodyMessage(data.stanza.childNodes)) {
|
||||||
if (sender.indexOf('/') !== -1) {
|
let sender = data.stanza.attributes.from.nodeValue
|
||||||
senderJid = sender.substr(0, sender.lastIndexOf('/'))
|
let senderJid = sender
|
||||||
}
|
if (sender.indexOf('/') !== -1) {
|
||||||
if (senderJid != login) {
|
senderJid = sender.substr(0, sender.lastIndexOf('/'))
|
||||||
console.log(senderJid)
|
}
|
||||||
let event = new CustomEvent('conversejs-unread', {detail: senderJid})
|
if (senderJid != login) {
|
||||||
document.dispatchEvent(event)
|
console.log(senderJid)
|
||||||
|
let event = new CustomEvent('conversejs-unread', {detail: senderJid})
|
||||||
|
document.dispatchEvent(event)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
_converse.api.listen.on('chatBoxFocused', () => {
|
_converse.api.listen.on('chatBoxFocused', () => {
|
||||||
|
|
2
main.js
2
main.js
|
@ -62,7 +62,7 @@ function createWindow () {
|
||||||
menuService.createMenu()
|
menuService.createMenu()
|
||||||
|
|
||||||
// Open the DevTools.
|
// Open the DevTools.
|
||||||
mainWindow.webContents.openDevTools()
|
// mainWindow.webContents.openDevTools()
|
||||||
|
|
||||||
// Before close
|
// Before close
|
||||||
if (minimizeOnClose !== 'undefined') {
|
if (minimizeOnClose !== 'undefined') {
|
||||||
|
|
Loading…
Reference in New Issue