In the project I’m working on, I have replaced rasa-nlu with a custom Interpreter subclass which returns a json in rasa nlu format.
Now I want the chatbot to run the custom action form, when the intent is detected.
I ran the action endpoint local server and it registered my form action.
My FormAction returns a custom string message and I have also used a dispatcher to utter the same custom message.
When I run it, the nlu works fine and the agent is initialized without issues but there is no response and also NO debug / error messages.
I ran the examples and in the formbot example the rasa process starts, form action is activated and is run but in my code there is no error, no warning and no output.
Please tell me how to debug Agent and why I’m not getting any logging messages.
I created a mock json that is to be sent to the action server with required entities and slots filled and POSTed it using Postman and the action correctly called the API and returned a response.
So clearly the issue is occurring within the Agent.
Also, agent.is_ready() returns -> True
I was running the python chatbot as a service using nginx. So I was unable to debug without changing all the file paths etc.
So I copied the project, removed all but essentials and the interpreter and rasa agent logic and debugged it. It ran correctly, sent a request to action server and received correct response.
However, when I run the same code through the service, I get no response from the agent and the action server has nothing indicating the form action was called/executed like it did when debugging.
I was running the chatbot as a nginx service and so debugging the code is not possible.
What I did was to copy only the relevant files to a separate project, debug them in the IDE, and find out the issue.
The biggest issue was that the FormAction slot utterances were not being uttered.
I realised that I hadn’t written them into the domain file.
As soon as I added the utter_ask_SLOT utterances to the domain file, and trained it, the bot was correctly giving me the appropriate response.
I still cannot debug the nginx service however, I can write a bunch of app.logger.debug() statements to debug the flask app. I cannot debug the agent as that is running as a service.
@Juste, I have downloaded and installed rasa from the github source. I use VS Code as IDE.
Created a test bot using rasa init. When I run this bot using rasa shell --debug, I want to hit the debug break point in rase core code. So just wondering how this can be set.