bots: Clean up terminal.py for running bots directly.
Make terminal.py exit gracefully with a message.
Modify output bot reply for better understanding in multi-line
output.
MODIFY
zulip_bots/zulip_bots/simple_lib.py
zulip_bots/zulip_bots/simple_lib.py
import configparser
+import sys
class SimpleStorage:
def __init__(self):
@@ -49,10 +50,7 @@ class TerminalBotHandler:
return self.message_server.send(message)
def send_reply(self, message, response):
- print('''
- reply:
- {}
- '''.format(response))
+ print("\nReply from the bot is printed between the dotted lines:\n-------\n{}\n-------".format(response))
response_message = dict(
content=response
)

MODIFY
zulip_bots/zulip_bots/terminal.py
zulip_bots/zulip_bots/terminal.py
@@ -56,6 +56,7 @@ def main():
sender_email = 'foo_sender@zulip.com'
+ try:
while True:
content = input('Enter your message: ')
@@ -68,6 +69,10 @@ def main():
message=message,
bot_handler=bot_handler,
)
+ except KeyboardException:
+ print("\n\nOk, if you're happy with your terminal-based testing, try it out with a Zulip server.",
+ "\nYou can refer to https://zulipchat.com/api/running-bots#running-a-bot.")
+ sys.exit(1)
if __name__ == '__main__':
main()

bots: Clean up terminal.py for running bots directly.

Make terminal.py exit gracefully with a message.
Modify output bot reply for better understanding in multi-line
output.