add socket connect and reconnect to session code

This commit is contained in:
Enrique Hernandez 2021-02-10 09:00:42 -06:00 committed by riqo
commit b05cb202b6
9 changed files with 140 additions and 166 deletions

View file

@ -1,6 +1,6 @@
import { createWindow } from './createWindow';
import { ipcMain } from "electron";
import { initSession, sendMessage, authUser, authLogin} from './session';
import { initSession, sendMessage } from './session';
import { windowEmitter } from './windowEmitter';
const portAudio = require('naudiodon');
@ -9,13 +9,15 @@ interface ipcRendererPayload {
message: any;
}
let activeSession = false;
/*
* The main function will be run after electron app is ready.
*/
export function main(): void {
export async function main() {
// create main window.
const win = createWindow({ width: 350, height: 525, resizable: false });
const win = await createWindow({ width: 350, height: 525, resizable: false });
windowEmitter.on('ipc-renderer', (payload: ipcRendererPayload) => {
win.webContents.send(payload.endpoint, {
@ -23,22 +25,24 @@ export function main(): void {
});
});
// Instantiate socket session with crimata-platorm.
if (!activeSession) {
initSession();
}
activeSession = true;
const handleMessage = (event: any, arg: any) => {
sendMessage(arg);
}
const windowMount = (): void => {
// Instantiate socket session with crimata-platorm.
initSession();
windowEmitter.emit('window-active', true);
ipcMain.on('send-message', handleMessage);
ipcMain.on('auth-login', authLogin);
}
const windowDismount = (): void => {
windowEmitter.emit('window-active', false);
ipcMain.removeAllListeners('send-message');
ipcMain.removeAllListeners('auth-login');
}
// Handle window mount and dismount.