Rasa.core.actions.action - Failed to run custom action 'action_get_answer'. Action server responded with a non 200 status code of Non

Rasa version : 1.1.7 Operating system (windows, osx, …): windows 10 Issue: I am trying to use “rasa shell” it gives some error : Your input → How do I create a new git repository? 2019-07-23 03:29:19 ERROR rasa.core.actions.action - Failed to run custom action ‘action_get_answer’. Action server responded with a non 200 status code of None. Make sure your action server properly runs actions and returns a 200 once the action is executed. Error: url:‘http://localhost:5055/webhook’ 2019-07-23 03:29:19 ERROR rasa.core.processor - Encountered an exception while running action ‘action_get_answer’. Bot will continue, but the actions events are lost. Make sure to fix the exception in your custom code. can someone help me?actions.py (1.4 KB) config.yml (151 Bytes) dialogue_management_model.py (554 Bytes) endpoints.yml (56 Bytes) faq_domain.yml (246 Bytes) nlu_model.py (604 Bytes) train_init.py (995 Bytes)

Have you started your Rasa action server?

Could you rerun it with the --debug flag?

@msamogh

@msamogh when i run : rasa shell -vv --endpoints endpoints.yml

@msamogh i can’t understand you can you explain more! thank you

@erohmensing can you help me please

I think this could be a potential bug. We’ll look into it and get back to you.

Hey there @SallemiDorsaf. Can you post your endpoints.yml please?

@erohmensing image

Can you try removing the slash from after webhook? It seems like it’s picking up your endpoint for a dict as some reason, trying to figure out why

@erohmensing same error :frowning:

No worries, I didn’t expect that to fix it but thought i’d try it first :smiley:can you also post the actions: section of your domain?

@erohmensing image

@SallemiDorsaf Could you run this in a Python console and share the output?

from rasa.core.utils import AvailableEndpoints

endpoints = AvailableEndpoints.read_endpoints(<path_to_endpoints.yml)
print(type(endpoints.action)
print(endpoints.action)
print(endpoints.action.url)
print(type(endpoints.action.url))

@msamogh

@SallemiDorsaf Thanks for helping us debug. So the loading of the endpoint is the culprit (not the processor) – the expected output would be

>>> print(endpoints.action.url)
'http://localhost:5055/webhook'
>>> print(type(endpoints.action.url)
<class 'str'>

but yours seems to have the url inside of the url. Just have to figure out why :smiley:

Sanity check – you’re sure you are pointing to the correct endpoints.yml, and there’s nothing like

action_endpoint:
  url:
    url: 'http://localhost:5055/webhook'

anywhere?

Is the screenshot you sent me the entire contents of that file? By the way, you can share stuff by copy/pasting with the three ticks ``` above and below instead of screenshotting.

How about running

from rasa.utils.io import read_config_file

read_config_file(<path_to_endpoints.yml>)

@erohmensing result:

>>> from rasa.utils.io import read_config_file
>>> read_config_file('endpoints.yml')
{'action_endpoint': {'url': 'http://localhost:5055/webhook'}}

my endpoints.yml file :slight_smile:

action_endpoint:
    url: 'http://localhost:5055/webhook'