From 2d604350192d0de1b1bbc47c885b1d02ceeddc90 Mon Sep 17 00:00:00 2001 From: Alexey Strelkov Date: Mon, 22 Jun 2015 00:08:39 +0300 Subject: [PATCH 1/2] fixed a crash that occurred when bot tried to list available commands and there was a unicode pattern in one of the respond_to functions --- slackbot/dispatcher.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/slackbot/dispatcher.py b/slackbot/dispatcher.py index f96433e8..7c73fe11 100644 --- a/slackbot/dispatcher.py +++ b/slackbot/dispatcher.py @@ -98,7 +98,7 @@ def _default_reply(self, msg): default_reply = [ u'Bad command "%s", You can ask me one of the following questions:\n' % msg['text'], ] - default_reply += [u' • `%s`' % str(p.pattern) for p in self._plugins.commands['respond_to'].iterkeys()] + default_reply += [u' • `%s`' % unicode(p.pattern) for p in self._plugins.commands['respond_to'].iterkeys()] self._client.rtm_send_message(msg['channel'], '\n'.join(to_utf8(default_reply))) From bcaf3fcd23c5b0ea43642d4b7ca9ca5521402d71 Mon Sep 17 00:00:00 2001 From: Alexey Strelkov Date: Fri, 26 Jun 2015 21:16:00 +0300 Subject: [PATCH 2/2] fixed one more uff issues and changed the solution to the one suggested by @dangra --- slackbot/dispatcher.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/slackbot/dispatcher.py b/slackbot/dispatcher.py index 7c73fe11..0af79a0d 100644 --- a/slackbot/dispatcher.py +++ b/slackbot/dispatcher.py @@ -98,7 +98,7 @@ def _default_reply(self, msg): default_reply = [ u'Bad command "%s", You can ask me one of the following questions:\n' % msg['text'], ] - default_reply += [u' • `%s`' % unicode(p.pattern) for p in self._plugins.commands['respond_to'].iterkeys()] + default_reply += [u' • `{}`'.format(p.pattern) for p in self._plugins.commands['respond_to'].iterkeys()] self._client.rtm_send_message(msg['channel'], '\n'.join(to_utf8(default_reply))) @@ -116,7 +116,7 @@ def _get_user_id(self): return self._client.find_user_by_name(self._body['username']) def _gen_at_message(self, text): - text = '<@{}>: {}'.format(self._get_user_id(), text) + text = u'<@{}>: {}'.format(self._get_user_id(), text) return text def _gen_reply(self, text):