Ok finally solved it. I missed this fragment in the docs:

Overriding the default provided on_message forbids any extra commands from running. To fix this, add a bot.process_commands(message) line at the end of your on_message

Thanks everyone for help.