1. Initialize a RASA project
You can simply initialize a new project.
$ rasa init --no-prompt
2. Create a Telegram Bot
Search @BotFather on telegram. Use '/newbot' to create a Telegram bot. Follow instructions until you set your bot name & get your Token for accessing Telegram's HTTP API.
3. Reserve a sub-domain specific for your project
You can reserve loclx.io subdomain or use a custom domain (explained here).
loclx domain reserve --subdomain mybot
4. Expose RASA server with LocalXpose
The default port for RASA server is 5005.
loclx tunnel http --reserved-domain mybot.loclx.io --to :5005
If you want these ports to be exposed during boot, you can create a systemd unit file as explained here.
5. Edit your credentials.yml
Edit your credential.yml file and add your access_token , verify (your bot name) & webhook_url (replace with your domain).
telegram:
access_token: "826487496:AAE1C_rllVgoQ47sOJ9faM26nL6oE1ZcQE4"
verify: "testxyzbot"
webhook_url: "https://mybot.loclx.io/webhooks/telegram/webhook"
Talk to your Telegram bot
Search for User 'testxyzbot' & start chatting.
We haven't added any stories or domains. This bot is simply running off the default init model. Check official rasa docs (opens in a new tab) for more info.
This is how you can have a working Telegram bot powered by RASA NLU with LocalXpose do the connecting for you.