slack: Add minor changes.
Set default value to be False for message's has_image Update type signature to functions. Set default to be false for msg's has_link.
This commit is contained in:
parent
a645ba233f
commit
7db4e36752
|
@ -6,17 +6,26 @@ import sys
|
||||||
import argparse
|
import argparse
|
||||||
import shutil
|
import shutil
|
||||||
import subprocess
|
import subprocess
|
||||||
import zipfile
|
|
||||||
|
from typing import Any, Dict, List
|
||||||
|
# stubs
|
||||||
|
user_profile_stub = Dict[str, Any]
|
||||||
|
added_users_stub = Dict[str, int]
|
||||||
|
|
||||||
|
|
||||||
# Transported from https://github.com/zulip/zulip/blob/master/zerver/lib/export.py
|
# Transported from https://github.com/zulip/zulip/blob/master/zerver/lib/export.py
|
||||||
def rm_tree(path):
|
def rm_tree(path: str) -> None:
|
||||||
# type: (str) -> None
|
|
||||||
if os.path.exists(path):
|
if os.path.exists(path):
|
||||||
shutil.rmtree(path)
|
shutil.rmtree(path)
|
||||||
|
|
||||||
def users2zerver_userprofile(slack_dir, realm_id, timestamp, domain_name):
|
def users2zerver_userprofile(slack_dir: str, realm_id: int, timestamp: Any,
|
||||||
# type: () -> None
|
domain_name: str) -> (List[user_profile_stub], added_users_stub):
|
||||||
|
"""
|
||||||
|
Returns:
|
||||||
|
1. zerver_userprofile, which is a list of user profile
|
||||||
|
2. added_users, which is a dictionary to map from slack user id to zulip
|
||||||
|
user id
|
||||||
|
"""
|
||||||
print('######### IMPORTING USERS STARTED #########\n')
|
print('######### IMPORTING USERS STARTED #########\n')
|
||||||
users = json.load(open(slack_dir + '/users.json'))
|
users = json.load(open(slack_dir + '/users.json'))
|
||||||
zerver_userprofile = []
|
zerver_userprofile = []
|
||||||
|
@ -215,7 +224,7 @@ def channelmessage2zerver_message(slack_dir, channel, added_users, added_channel
|
||||||
zulip_message = dict(
|
zulip_message = dict(
|
||||||
sending_client=1,
|
sending_client=1,
|
||||||
rendered_content_version=1, # This is Zulip-specific
|
rendered_content_version=1, # This is Zulip-specific
|
||||||
has_image=msg['has_image'],
|
has_image=msg.get('has_image', False),
|
||||||
subject=channel, # This is Zulip-specific
|
subject=channel, # This is Zulip-specific
|
||||||
pub_date=msg['ts'],
|
pub_date=msg['ts'],
|
||||||
id=msg_id_count,
|
id=msg_id_count,
|
||||||
|
@ -226,13 +235,11 @@ def channelmessage2zerver_message(slack_dir, channel, added_users, added_channel
|
||||||
rendered_content=text, # slack doesn't cache this
|
rendered_content=text, # slack doesn't cache this
|
||||||
recipient=added_channels[channel],
|
recipient=added_channels[channel],
|
||||||
last_edit_time=None,
|
last_edit_time=None,
|
||||||
has_link=msg['has_link'])
|
has_link=msg.get('has_link', False))
|
||||||
zerver_message.append(zulip_message)
|
zerver_message.append(zulip_message)
|
||||||
return zerver_message
|
return zerver_message
|
||||||
|
|
||||||
def main(slack_zip_file):
|
def main(slack_zip_file: str) -> None:
|
||||||
# type: (str) -> None
|
|
||||||
|
|
||||||
slack_dir = slack_zip_file.replace('.zip', '')
|
slack_dir = slack_zip_file.replace('.zip', '')
|
||||||
subprocess.check_call(['unzip', slack_zip_file])
|
subprocess.check_call(['unzip', slack_zip_file])
|
||||||
# with zipfile.ZipFile(slack_zip_file, 'r') as zip_ref:
|
# with zipfile.ZipFile(slack_zip_file, 'r') as zip_ref:
|
||||||
|
|
Loading…
Reference in a new issue