liste déroulante postes téléphoniques
This commit is contained in:
37
main.js
37
main.js
@@ -81,6 +81,9 @@ function initializeSignalR() {
|
||||
sendSignalRStatus();
|
||||
});
|
||||
|
||||
// Configurer les méthodes SignalR
|
||||
setupSignalRMethods();
|
||||
|
||||
// Démarrer la connexion
|
||||
startSignalRConnection();
|
||||
|
||||
@@ -91,6 +94,16 @@ function initializeSignalR() {
|
||||
}
|
||||
}
|
||||
|
||||
function setupSignalRMethods() {
|
||||
// Écouter les événements IPBX
|
||||
signalRConnection.on('IpbxEvent', (name, args) => {
|
||||
if (!args) return;
|
||||
const event = args[0];
|
||||
console.log('Événement IPBX reçu:', event);
|
||||
// TODO: Gérer les événements d'appel
|
||||
});
|
||||
}
|
||||
|
||||
async function startSignalRConnection() {
|
||||
try {
|
||||
signalRStatus = 'connecting';
|
||||
@@ -171,6 +184,30 @@ ipcMain.handle('get-signalr-status', () => {
|
||||
return signalRStatus;
|
||||
});
|
||||
|
||||
// Récupérer la liste des terminaux téléphoniques
|
||||
ipcMain.handle('get-terminal-list', async () => {
|
||||
// Mode simulation si SignalR non connecté
|
||||
if (!signalRConnection || signalRStatus !== 'connected') {
|
||||
console.log('SignalR non connecté, utilisation des terminaux de simulation');
|
||||
return config.signalR.terminalsSimulation || ['3001', '3002', '3003'];
|
||||
}
|
||||
|
||||
try {
|
||||
console.log('Récupération des terminaux pour:', config.signalR.serviceProvider);
|
||||
const terminals = await signalRConnection.invoke(
|
||||
'GetTerminalListByServiceProvider',
|
||||
config.signalR.serviceProvider
|
||||
);
|
||||
|
||||
console.log('Terminaux disponibles:', terminals);
|
||||
return terminals || [];
|
||||
} catch (error) {
|
||||
console.error('Erreur récupération terminaux:', error);
|
||||
// Retourner les terminaux de simulation en cas d'erreur
|
||||
return config.signalR.terminalsSimulation || ['3001', '3002', '3003'];
|
||||
}
|
||||
});
|
||||
|
||||
// Connexion agent
|
||||
ipcMain.handle('login-agent', (event, credentials) => {
|
||||
const agent = config.agents.find(a =>
|
||||
|
||||
Reference in New Issue
Block a user