From ee2aeb76b8cfa80d0fdf8ddab9be82b3b59f20dc Mon Sep 17 00:00:00 2001 From: rht Date: Thu, 1 Jun 2023 03:29:10 -0400 Subject: [PATCH] Implement reply_on_each_stream_mention. --- zulip/zulip/__init__.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/zulip/zulip/__init__.py b/zulip/zulip/__init__.py index 7f76831d8..3d6e3e1fe 100644 --- a/zulip/zulip/__init__.py +++ b/zulip/zulip/__init__.py @@ -1740,6 +1740,27 @@ def move_topic( request=request, ) + def reply_on_each_stream_mention(self, handle_message: Callable[[str], None], verbose=False): + def callback(msg): + if msg["type"] != "stream": + return + if verbose: + print("Processing", msg) + + content = handle_message(msg) + if verbose: + print("sending", msg["content"]) + request = { + "type": "stream", + "to": msg["display_recipient"], + "topic": msg["subject"], + "content": content, + } + self.send_message(request) + + narrow = [["is", "mentioned"]] + self.call_on_each_message(callback, narrow=narrow) + class ZulipStream: """