2
votes

I have a Node.js service running Bot Builder code on a Linux desktop. I have a MSFT Bot Emulator running on my Mac, which is in the same corp network as the desktop.

I cannot get the bot emulator to connect to the Node.js service for callbacks. I have ngrok v2.1.18 installed and the emulator (app settings) has ngrok path configured; but I keep getting an error message that I need to configure ngrok for callback URL.

From the Bot Emulator logs, ngrok fails to start with this error:

Failed to start ngrok: panic: runtime error: invalid memory address

1

1 Answers

1
votes

I haven't used ngrok but I find a hacking solution.

Open file botframework-emulator.app/Contents/Resources/app/app/server/botFrameworkService.js and change:

this.localhostServiceUrl = `http://localhost:${port};

to:

const hostname = os.hostname();
this.localhostServiceUrl = `http://${hostname}:${port}`;

Don't forget to import os module:

const os = require("os");