How to define the flow of a chatbot-type conversation?

2 points by audiometry ↗ HN
I've written a telegram bot, used exclusively by me, that lets me log information in a very concise shorthand, and to do simple queries on the data. I hacked it together with the python Telegram bot library, with a bunch of nasty, cascading regular expressions. ()

I've been using it for eighteen months, and it's useful, but I'd like to make a more robust version of it. Right now it's pretty brittle and not amenable to expanding functionality.

What tools/techniques are there to specify the flow of a chatbot conversation, defining all the valid branches? Presumably with a more formal specification, it would be easier to either automatically generate the parsing logic, or at least pass it off to a smarter developer to implement.

It seems like a melange of flowchart and state and grammar to me. Alas, I don't have a CS degree, so I've never messed with 'grammars' before, and what I read online was fairly dry/formal and it wasn't super obvious how to apply that to the practical conversation flow I'm need to make concrete.

(): I far prefer interacting with an app via telegram or whatsapp than adding yet another custom app to my phone. I already spend so much time using instant messaging to communicate, it's naturally a preferable UI without the added burden of a new app.

0 comments

[ 3.2 ms ] story [ 11.1 ms ] thread

No comments yet.