api: Implement PATCH /users/me/subscriptions/muted_topics.

This commit is contained in:
Yago González 2018-07-09 16:21:24 +05:30 committed by Eeshan Garg
parent ab97b37ce1
commit f6646f9cba
2 changed files with 42 additions and 0 deletions

View file

@ -939,6 +939,17 @@ class Client(object):
request=request, request=request,
) )
def mute_topic(self, request):
# type: (Dict[str, Any]) -> Dict[str, Any]
'''
See examples/mute-topic for example usage.
'''
return self.call_endpoint(
url='users/me/subscriptions/muted_topics',
method='PATCH',
request=request
)
def get_stream_id(self, stream): def get_stream_id(self, stream):
# type: (str) -> Dict[str, Any] # type: (str) -> Dict[str, Any]
''' '''

31
zulip/zulip/examples/mute-topic Executable file
View file

@ -0,0 +1,31 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import argparse
import zulip
usage = """mute-topic (mute | unmute) <stream> <topic> [options]
Example: mute-topic mute Verona dinner
Example: mute-topic unmute Denmark party
"""
parser = zulip.add_default_arguments(argparse.ArgumentParser(usage=usage))
parser.add_argument('op', choices=['mute', 'unmute'])
parser.add_argument('stream')
parser.add_argument('topic')
options = parser.parse_args()
client = zulip.init_from_options(options)
OPERATIONS = {
'mute': 'add',
'unmute': 'remove'
}
print(client.mute_topic({
'op': OPERATIONS[options.op],
'stream': options.stream,
'topic': options.topic
}))