Facebook quick replies are not working

Hello ,

I created a chatbot using rasa 1.1.3 version and it working well. Now I added some facebook quick replies to this bot and these quick replies are working in local but while deploying this bot using docker-compose these quick replies are not working and showing "AttributeError: ‘list’ object has no attribute ‘to_dict’ " in docker-compose logs.


Traceback (most recent call last):
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/channels/facebook.py", line 94, in 
rasa_1        |     await self.on_new_message(user_msg)
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/channels/channel.py", line 75, in 
rasa_1        |     await app.agent.handle_message(*args, **kwargs)
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/agent.py", line 440, in 
rasa_1        |     return await processor.handle_message(message)
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/processor.py", line 84, in 
rasa_1        |     await self._predict_and_execute_next_action(message, tracker)
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/processor.py", line 350, in 
rasa_1        |     action, tracker, message.output_channel, self.nlg, policy, confidence
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/processor.py", line 461, in 
rasa_1        |     await self._send_bot_messages(events, tracker, output_channel)
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/processor.py", line 382, in 
rasa_1        |     await output_channel.send_response(tracker.sender_id, e.message())
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/channels/channel.py", line 175, in 
rasa_1        |     **message
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/channels/facebook.py", line 181, 
in send_quick_replies
rasa_1        |     self.send(recipient_id, FBText(text=text, quick_replies=quick_replies))
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/rasa/core/channels/facebook.py", line 120, 
in send
rasa_1        |     self.messenger_client.send(element.to_dict(), recipient_id, "RESPONSE")
rasa_1        |   File "/usr/local/lib/python3.6/site-packages/fbmessenger/elements.py", line 27, in 
rasa_1        |     d['quick_replies'] = self.quick_replies.to_dict()
rasa_1        | AttributeError: 'list' object has no attribute 'to_dict'

How can i resove this??

thanks in advance!

Could you share your docker compose configuration file? My guess is that you are not using the right rasa version in docker (either older or newer, the latest being 1.3 something)

yeah, I am not using the latest version. After updated to latest version it is working. Thanks for the reply.

Could you please an issue in the rasa repository (GitHub - RasaHQ/rasa: 💬 Open source machine learning framework to automate text- and voice-based conversations: NLU, dialogue management, connect to Slack, Facebook, and more - Create chatbots and voice assistants). Sounds like a bug to me. Thanks :tada: