diff --git a/package-lock.json b/package-lock.json index 753c6c51..f0cb0a5c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "azure-iot-explorer", - "version": "0.14.13", + "version": "0.14.14", "lockfileVersion": 2, "requires": true, "packages": { diff --git a/package.json b/package.json index d916ff64..aa57a650 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "azure-iot-explorer", - "version": "0.14.13", + "version": "0.14.14", "description": "This project welcomes contributions and suggestions. Most contributions require you to agree to a\r Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us\r the rights to use your contribution. For details, visit https://cla.microsoft.com.", "main": "host/electron.js", "build": { diff --git a/public/handlers/eventHubHandler.ts b/public/handlers/eventHubHandler.ts index c8be497f..1a3ce601 100644 --- a/public/handlers/eventHubHandler.ts +++ b/public/handlers/eventHubHandler.ts @@ -32,12 +32,27 @@ export const onStopMonitoring = async (): Promise => { } const eventHubProvider = async (params: StartEventHubMonitoringParameters) => { + await initializeEventHubClient(params); + updateEntityIdIfNecessary(params); + + return listeningToMessages(client, params); +}; + +const initializeEventHubClient = async (params: StartEventHubMonitoringParameters) => { if (needToCreateNewEventHubClient(params)) { // hub has changed, reinitialize client, receivers and mesages - client = params.customEventHubConnectionString ? - await EventHubClient.createFromConnectionString(params.customEventHubConnectionString, params.customEventHubName) : - await EventHubClient.createFromConnectionString(await convertIotHubToEventHubsConnectionString(params.hubConnectionString), params.customEventHubName); + if (params.customEventHubConnectionString) { + client = await EventHubClient.createFromConnectionString(params.customEventHubConnectionString, params.customEventHubName); + } + else { + try { + client = await EventHubClient.createFromConnectionString(await convertIotHubToEventHubsConnectionString(params.hubConnectionString)); + } + catch { + client = await EventHubClient.createFromIotHubConnectionString(params.hubConnectionString); + } + } connectionString = params.customEventHubConnectionString ? `${params.customEventHubConnectionString}/${params.customEventHubName}` : @@ -45,9 +60,6 @@ const eventHubProvider = async (params: StartEventHubMonitoringParameters) => { receivers = []; messages = []; } - updateEntityIdIfNecessary(params); - - return listeningToMessages(client, params); }; const listeningToMessages = async (eventHubClient: EventHubClient, params: StartEventHubMonitoringParameters) => { diff --git a/public/utils/invokeHelper.ts b/public/utils/invokeHelper.ts index b8f6dc3d..1bf225f5 100644 --- a/public/utils/invokeHelper.ts +++ b/public/utils/invokeHelper.ts @@ -15,7 +15,7 @@ export const invokeInMainWorld = async (channel: string, ...args: Array { + await initializeEventHubClient(params); + updateEntityIdIfNecessary(params); + + return listeningToMessages(client, params); +}; + +const initializeEventHubClient = async (params: any) => { if (needToCreateNewEventHubClient(params)) { // hub has changed, reinitialize client, receivers and mesages - client = params.customEventHubConnectionString ? - await EventHubClient.createFromConnectionString(params.customEventHubConnectionString, params.customEventHubName) : - await EventHubClient.createFromConnectionString(await convertIotHubToEventHubsConnectionString(params.hubConnectionString), params.customEventHubName); + if (params.customEventHubConnectionString) { + client = await EventHubClient.createFromConnectionString(params.customEventHubConnectionString, params.customEventHubName); + } + else { + try { + client = await EventHubClient.createFromConnectionString(await convertIotHubToEventHubsConnectionString(params.hubConnectionString)); + } + catch { + client = await EventHubClient.createFromIotHubConnectionString(params.hubConnectionString); + } + } connectionString = params.customEventHubConnectionString ? `${params.customEventHubConnectionString}/${params.customEventHubName}` : @@ -344,9 +359,6 @@ export const eventHubProvider = async (params: any) => { receivers = []; messages = []; } - updateEntityIdIfNecessary(params); - - return listeningToMessages(client, params); }; const listeningToMessages = async (eventHubClient: EventHubClient, params: any) => {