Why do you have to register a bot with Azure? I am (planning on) using the Microsoft bot framework to build a chatbot I am working on.  However I simply cannot wrap my head around why the chatbot needs to be registered with Azure.

My line of expectation going into this was the same as any other .NET project.  I build it, I deploy it to my own server and I live happily ever after.

I have bought two books on the subject and yet after going through online videos, the books and articles I still cannot see a good reason for why one is forced to register the bot.   I feel like Lisa Simpson in that episode of The Simpsons where there is a puzzle that is super easy and everyone understands it but her.  I know I am being blinded by my own assumptions and expectations going into this.

If anyone can explain the 'why' of the registration that will really help.  I am also wondering if Azure went down like AWS did if that would stop the bot working?

My backup plan is just to write the bot using ASP.NET web API and then connect to it from a web container and facebook.  Neither of which needs the registration.  

Thanks,

-Mike
These bots depend on heavy NLP services that are provided via Azure. Implementing/deploying your own production-quality versions of these is nontrivial, if not impossible (since you don't have all the training data, internal algorithms, etc. that Microsoft/Amazon/Google/IBM et al have), and is generally non-feasible on home-grade devices.

And yes, that makes the relevant Azure services a dependency that your chatbot will have, and if you use that service you'll need to be aware of their SLAs.

Plus, they'd like to charge you money. :-)