Rasa-core 'middleware'

(Shota) #1

Hi all,

I am new to rasa and I am just starting to explore. Please bear with me if what I state is incorrect / misunderstood.

I’d like to validate some pathways for adding “plugins” into rasa-core, which should capture the user utterances, intents, and confidence score outputs from rasa at the minimum.

As far as I understand, the most straightforward way for me is to create an event consumer because those data points are automatically captured and produced in events.

Another option I was thinking (hackish way) was creating a new policy, which always outputs 0-confidence and reads in the tracker object that carries with it the event object.

The reason I proposed the second option is because running a message broker, etc may be a bit overkill for my requirements, which is to send off the event object to an endpoint.

Now, changing the requirements a bit, I was thinking of making a library that sends HTTP requests off with those data points. I was hoping that there would be a way to fit this library in a fashion similar to ‘middlewares’ in node’s expressjs. Is there any such way?

Also, in rasa-core is there any webhook that can be done in place of event brokers? For example, rather than producing messages, is there any way to configure a webhook endpoint that the rasa-core server will make a POST to directly? If not, is this on the roadmap or is there demand for this?

Thank you