I just upgraded one of my older bots to v3 and I have to embarrassingly admit it took me way too much to figure something out.
All v3 bots, unlike the v1 bots get an AppId and Password that you need to set to your configuration file so it can communicate with the online bot. This is also true for the bots you deploy on the new Azure Bot Service
However, once you add those values in your config, you might notice that your bot no longer works in the emulator, returning an 500 Internal Server Error exception.
Here’s how to fix that:
Solution 1 - Put keys in web.config.release and deploy your bot locally in debug mode.
Solution 2- Have the keys in web.config, but set them in your emulator window:
I recommend solution 1 because I only use the keys in release mode anyway.