Run an action in a conversation HTTP API not displayed in web chat

Dear @Tobias_Wochinger, I checked it many times but the documentations is very limited and I don’t know from where I can start.

@mohocp What parts don’t you understand so that I can explain them?

Thanks for your reply, Here

you need to supply a credentials.yml with the following content:

callback: url: “http://localhost:5034/bot

The callback url; The url should refer to what ? and how this url should connect to socket channel ?

Thanks.

The callback url is the url which is called by Rasa to sent the latest messages to. So this should be another server which can accept requests to this endpoint and then can forward them to the user.

Is Accept request of REST Type ? if yes and I forward the messages to the user using socketio. the run actions using HTTP API should working on this case Yes ?

Is Accept request of REST Type ?

The CallbackInput does a REST request yes.

if yes and I forward the messages to the user using socketio. the run actions using HTTP API should working on this case Yes ?

Mhm, I’m not sure. I guess you can’t tap into the existing socket connection, do you?

Hello, may I ask which channels are supported?

@yhdrytjd This lists all the supported channels: HTTP API

Hi @Tobias_Wochinger

thanks for your answers! I read your comments above and have one question. We created our own channel (Viber) and want to send proactively notifications to users. What options do you have in RASA for usage a custom channels in /conversations/{conversation_id}/execute?

You can use all custom channels as long as the InputChannel implements get_output_channel

1 Like

If we implement it on socketio.py, we can tap into the socket connection.

Thanks

Dear @Tobias_Wochinger

It works now! thanks a lot!

Hi I have followed your recomendations about CallbackInput and I have also read your suggested example

I use the following widget (GitHub - JiteshGaikwad/Chatbot-Widget)

Steps to test your example… 1- ngrok http 5005… http://XXXXXXX.ngrok.io/ 2- in static/js/constants.js (widget)… rasa_server_url = '‘http://XXXXXXX.ngrok.io/webhooks/rest/webhook’ 3- ngrok http 8000 4- python -m http.server 8000 5- rasa run actions 6- python3 callback_server.py 7- rasa run -m models --enable-api --cors “*”

curl -XPOST http://XXXXXXX.ngrok.io/webhooks/callback/webhook -d ‘{“sender”: “tester”, “message”: “remind me to call John”}’ -H “Content-type: application/json”

In console, I can see … I will remind you in 5 seconds. Remember to call John!

But in the Webchat… no text appears.

What I am missing?