Get converse version dynamically.
This commit is contained in:
parent
53de9a020b
commit
e7482bc6cb
|
@ -1,8 +1,13 @@
|
||||||
const angApp = (await import('../init.js')).default;
|
const angApp = (await import('../init.js')).default;
|
||||||
|
|
||||||
angApp.controller('AboutController', function($scope, AppStateService, AppInfo) {
|
angApp.controller('AboutController', function ($scope, AppStateService, AppInfo, DesktopService) {
|
||||||
|
|
||||||
$scope.appInfo = AppInfo
|
$scope.appInfo = AppInfo;
|
||||||
|
$scope.converseVersion = 'unknown';
|
||||||
|
DesktopService.getConverseVersion().then((version) => {
|
||||||
|
$scope.converseVersion = version;
|
||||||
|
$scope.$apply();
|
||||||
|
});
|
||||||
|
|
||||||
$scope.closeAbout = () => {
|
$scope.closeAbout = () => {
|
||||||
AppStateService.set(AppStateService.APP_STATE_DEFAULT)
|
AppStateService.set(AppStateService.APP_STATE_DEFAULT)
|
||||||
|
|
|
@ -5,7 +5,6 @@ angApp.constant('AppInfo', {
|
||||||
APP_HOME: 'https://github.com/conversejs/converse-desktop',
|
APP_HOME: 'https://github.com/conversejs/converse-desktop',
|
||||||
APP_RELEASES_CHECK_URL: 'https://api.github.com/repos/conversejs/converse-desktop/releases',
|
APP_RELEASES_CHECK_URL: 'https://api.github.com/repos/conversejs/converse-desktop/releases',
|
||||||
APP_RELEASES_URL: 'https://github.com/conversejs/converse-desktop/releases',
|
APP_RELEASES_URL: 'https://github.com/conversejs/converse-desktop/releases',
|
||||||
CONVERSE_VERSION: 'v9.0.0',
|
|
||||||
ELECTRON_VERSION: '13.6.6'
|
ELECTRON_VERSION: '13.6.6'
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -2,11 +2,26 @@ const angApp = (await import('../init.js')).default;
|
||||||
const desktopPlugin = (await import('../../libs/converse.js/converse-desktop/desktop-plugin.js')).default;
|
const desktopPlugin = (await import('../../libs/converse.js/converse-desktop/desktop-plugin.js')).default;
|
||||||
|
|
||||||
angApp.factory('DesktopService', (
|
angApp.factory('DesktopService', (
|
||||||
$window, $timeout, CredentialsService, SystemService, AppStateService,
|
$window, $timeout, CredentialsService, SystemService, AppStateService,
|
||||||
SettingsService, XmppHelperService
|
SettingsService, XmppHelperService
|
||||||
) => {
|
) => {
|
||||||
|
|
||||||
let desktopService = {}
|
let desktopService = {}
|
||||||
|
let promise = new Promise((resolve) => {
|
||||||
|
function checkVersion() {
|
||||||
|
if (converse.getVersion) {
|
||||||
|
resolve(converse.getVersion());
|
||||||
|
} else {
|
||||||
|
$timeout(checkVersion, 50);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$timeout(checkVersion, 50);
|
||||||
|
});
|
||||||
|
|
||||||
|
desktopService.getConverseVersion = () => {
|
||||||
|
return promise;
|
||||||
|
};
|
||||||
|
|
||||||
desktopService._notifyMessage = () => {
|
desktopService._notifyMessage = () => {
|
||||||
SystemService.playAudio()
|
SystemService.playAudio()
|
||||||
|
@ -36,8 +51,8 @@ angApp.factory('DesktopService', (
|
||||||
let omemoDefault = SettingsService.get('omemoDefault')
|
let omemoDefault = SettingsService.get('omemoDefault')
|
||||||
let xmppResource = XmppHelperService.getResourceFromJid(login)
|
let xmppResource = XmppHelperService.getResourceFromJid(login)
|
||||||
if (!xmppResource) {
|
if (!xmppResource) {
|
||||||
xmppResource = '.' + (Math.random().toString(36)+'00000000000000000').slice(2, 7) // Generate 5 char unique str
|
xmppResource = '.' + (Math.random().toString(36) + '00000000000000000').slice(2, 7) // Generate 5 char unique str
|
||||||
login = login + '/converseDesktop'+xmppResource
|
login = login + '/converseDesktop' + xmppResource
|
||||||
}
|
}
|
||||||
let conversejsParams = {
|
let conversejsParams = {
|
||||||
assets_path: './node_modules/converse.js/dist/',
|
assets_path: './node_modules/converse.js/dist/',
|
||||||
|
@ -60,7 +75,7 @@ angApp.factory('DesktopService', (
|
||||||
conversejsParams.bosh_service_url = connectionManager
|
conversejsParams.bosh_service_url = connectionManager
|
||||||
}
|
}
|
||||||
$timeout(() => {
|
$timeout(() => {
|
||||||
converse.initialize(conversejsParams)
|
converse.initialize(conversejsParams);
|
||||||
}, 50)
|
}, 50)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="about__description">Jabber/XMPP client based on Converse.js and Electron</div>
|
<div class="about__description">Jabber/XMPP client based on Converse.js and Electron</div>
|
||||||
<div> </div>
|
<div> </div>
|
||||||
<div class="about__converse-version">
|
<div class="about__converse-version">
|
||||||
Version of <a href="https://conversejs.org/" target="_blank">converse.js</a> is {{appInfo.CONVERSE_VERSION}}
|
Version of <a href="https://conversejs.org/" target="_blank">converse.js</a> is {{converseVersion}}
|
||||||
</div>
|
</div>
|
||||||
<div class="about__electron-version">
|
<div class="about__electron-version">
|
||||||
Version of <a href="https://www.electronjs.org/" target="_blank">electron</a> is {{appInfo.ELECTRON_VERSION}}
|
Version of <a href="https://www.electronjs.org/" target="_blank">electron</a> is {{appInfo.ELECTRON_VERSION}}
|
||||||
|
|
|
@ -6,6 +6,10 @@ desktopPlugin.register = (login) => {
|
||||||
let _converse = event.properties._converse
|
let _converse = event.properties._converse
|
||||||
let Strophe = converse.env.Strophe
|
let Strophe = converse.env.Strophe
|
||||||
|
|
||||||
|
converse.getVersion = function () {
|
||||||
|
return _converse.VERSION_NAME;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if message stanza has some body payload
|
* Check if message stanza has some body payload
|
||||||
* @param {*} stanzaNodes
|
* @param {*} stanzaNodes
|
||||||
|
@ -13,7 +17,7 @@ desktopPlugin.register = (login) => {
|
||||||
let isBodyMessage = (stanzaNodes) => {
|
let isBodyMessage = (stanzaNodes) => {
|
||||||
let result = false
|
let result = false
|
||||||
Object.keys(stanzaNodes).some((key) => {
|
Object.keys(stanzaNodes).some((key) => {
|
||||||
if (stanzaNodes[key].nodeName == 'body') {
|
if (stanzaNodes[key].nodeName === 'body') {
|
||||||
result = true
|
result = true
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
@ -34,7 +38,7 @@ desktopPlugin.register = (login) => {
|
||||||
let sender = data.stanza.attributes.from.nodeValue
|
let sender = data.stanza.attributes.from.nodeValue
|
||||||
let senderJid = Strophe.getBareJidFromJid(sender)
|
let senderJid = Strophe.getBareJidFromJid(sender)
|
||||||
let loginJid = Strophe.getBareJidFromJid(login)
|
let loginJid = Strophe.getBareJidFromJid(login)
|
||||||
if (senderJid != loginJid) {
|
if (senderJid !== loginJid) {
|
||||||
console.log(senderJid)
|
console.log(senderJid)
|
||||||
let event = new CustomEvent('conversejs-unread', {detail: senderJid})
|
let event = new CustomEvent('conversejs-unread', {detail: senderJid})
|
||||||
document.dispatchEvent(event)
|
document.dispatchEvent(event)
|
||||||
|
@ -54,7 +58,7 @@ desktopPlugin.register = (login) => {
|
||||||
})
|
})
|
||||||
window.document.addEventListener('conversejs-open-chat', function (e) {
|
window.document.addEventListener('conversejs-open-chat', function (e) {
|
||||||
let chatToOpen = e.detail
|
let chatToOpen = e.detail
|
||||||
console.log('Get open-unread-chat event: '+chatToOpen)
|
console.log('Get open-unread-chat event: ' + chatToOpen)
|
||||||
if (chatToOpen !== null) {
|
if (chatToOpen !== null) {
|
||||||
_converse.api.chats.open(chatToOpen)
|
_converse.api.chats.open(chatToOpen)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue