Hi Folks,
I want to develop custom action to query back end data in JAVAbase so I downloaded the code from GitHub - rbajek/rasa-java-sdk: Java SDK for the development of custom actions for Rasa and developed a simple hello world action.
Started RASA core in local on port 5005 and the action server on port 5055 in local. Updated endpoints.yml file as below.
# This file contains the different endpoints your bot can use.
# Server where the models are pulled from.
# https://rasa.com/docs/rasa/user-guide/configuring-http-api/#fetching-models-from-a-server/
#models:
# url: http://my-server.com/models/default_core@latest
# wait_time_between_pulls: 10 # [optional](default: 100)
# Server which runs your custom actions.
# https://rasa.com/docs/rasa/core/actions/#custom-actions/
action_endpoint:
url: "http://localhost:5055/webhook"
# Tracker store which is used to store the conversations.
# By default the conversations are stored in memory.
# https://rasa.com/docs/rasa/api/tracker-stores/
#tracker_store:
# type: redis
# url: <host of the redis instance, e.g. localhost>
# port: <port of your redis instance, usually 6379>
# db: <number of your database within redis, e.g. 0>
# password: <password used for authentication>
# use_ssl: <whether or not the communication is encrypted, default false>
#tracker_store:
# type: mongod
# url: <url to your mongo instance, e.g. mongodb://localhost:27017>
# db: <name of the db within your mongo instance, e.g. rasa>
# username: <username used for authentication>
# password: <password used for authentication>
# Event broker which all conversation events should be streamed to.
# https://rasa.com/docs/rasa/api/event-brokers/
#event_broker:
# url: localhost
# username: username
# password: password
# queue: queue
When I am trying to http://localhost:5005/webhooks/rest/webhook,getting below error in logs. Seems RASA core is not able to communicate with action server.
Failed to run custom action 'custom_reason'. Couldn't connect to the server at 'http://localhost:5055/webhook'. Is the server running? Error: Cannot connect to host localhost:5055 ssl:default [Cannot assign requested address]
2020-11-03 00:09:19 ERROR rasa.core.processor - Encountered an exception while running action 'custom_reason'. Bot will continue, but the actions events are lost. Please check the logs of your action server for more information.
2020-11-03 00:09:19 DEBUG rasa.core.processor - Failed to execute custom action.
Traceback (most recent call last):
File "/opt/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 936, in _wrap_create_connection
return await self._loop.create_connection(*args, **kwargs) # type: ignore # noqa
File "uvloop/loop.pyx", line 1974, in create_connection
File "uvloop/loop.pyx", line 1950, in uvloop.loop.Loop.create_connection
File "uvloop/handles/tcp.pyx", line 180, in uvloop.loop.TCPTransport.connect
File "uvloop/handles/tcp.pyx", line 202, in uvloop.loop._TCPConnectRequest.connect
OSError: [Errno 99] Cannot assign requested address
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/opt/venv/lib/python3.7/site-packages/rasa/core/actions/action.py", line 551, in run
json=json_body, method="post", timeout=DEFAULT_REQUEST_TIMEOUT
File "/opt/venv/lib/python3.7/site-packages/rasa/utils/endpoints.py", line 150, in request
**kwargs,
File "/opt/venv/lib/python3.7/site-packages/aiohttp/client.py", line 1012, in __aenter__
self._resp = await self._coro
File "/opt/venv/lib/python3.7/site-packages/aiohttp/client.py", line 483, in _request
timeout=real_timeout
File "/opt/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 523, in connect
proto = await self._create_connection(req, traces, timeout)
File "/opt/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 859, in _create_connection
req, traces, timeout)
File "/opt/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 1004, in _create_direct_connection
raise last_exc
File "/opt/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 986, in _create_direct_connection
req=req, client_error=client_error)
File "/opt/venv/lib/python3.7/site-packages/aiohttp/connector.py", line 943, in _wrap_create_connection
raise client_error(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host localhost:5055 ssl:default [Cannot assign requested address]
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/venv/lib/python3.7/site-packages/rasa/core/processor.py", line 650, in _run_action
events = await action.run(output_channel, nlg, tracker, self.domain)
File "/opt/venv/lib/python3.7/site-packages/rasa/core/actions/action.py", line 582, in run
raise Exception("Failed to execute custom action.")
Exception: Failed to execute custom action.
http://localhost:5055/health and http://localhost:5055/ end points of action server are perfectly working fine.
Is there any configuration missing here ??