diff --git a/zerver/data_import/hipchat.py b/zerver/data_import/hipchat.py index 26ee64ebe7..115ffa7970 100755 --- a/zerver/data_import/hipchat.py +++ b/zerver/data_import/hipchat.py @@ -662,7 +662,6 @@ def make_user_messages(zerver_message: List[ZerverFieldsT], for user_id in user_ids: is_mentioned = user_id in mention_user_ids user_message = build_user_message( - id=NEXT_ID('user_message'), user_id=user_id, message_id=message_id, is_private=is_pm_data, diff --git a/zerver/data_import/import_util.py b/zerver/data_import/import_util.py index e4d27365b7..6b15144d1b 100644 --- a/zerver/data_import/import_util.py +++ b/zerver/data_import/import_util.py @@ -264,19 +264,23 @@ def build_usermessages(zerver_usermessage: List[ZerverFieldsT], mentioned_users_id: List[int], message_id: int) -> None: for subscription in zerver_subscription: if subscription['recipient'] == recipient_id: - flags_mask = 1 # For read - if subscription['user_profile'] in mentioned_users_id: - flags_mask = 9 # For read and mentioned + user_id = subscription['user_profile'] + is_mentioned = user_id in mentioned_users_id + + # Slack and Gitter don't yet triage private messages. + # It's possible we don't even get PMs from them. + is_private = False + + usermessage = build_user_message( + user_id=user_id, + message_id=message_id, + is_private=is_private, + is_mentioned=is_mentioned, + ) - usermessage = dict( - user_profile=subscription['user_profile'], - id=NEXT_ID('user_message'), - flags_mask=flags_mask, - message=message_id) zerver_usermessage.append(usermessage) -def build_user_message(id: int, - user_id: int, +def build_user_message(user_id: int, message_id: int, is_private: bool, is_mentioned: bool) -> ZerverFieldsT: @@ -286,6 +290,8 @@ def build_user_message(id: int, if is_private: flags_mask += 2048 # For is_private + id = NEXT_ID('user_message') + usermessage = dict( id=id, user_profile=user_id,