markMessagesAsRead method

Future<void> markMessagesAsRead({
  1. required int talkMode,
  2. required int toFromId,
  3. required String msgId,
})

上报私聊已读水位(本端 inbox 的 msgId)。仅 TalkMode.private。

Implementation

Future<void> markMessagesAsRead({
  required int talkMode,
  required int toFromId,
  required String msgId,
}) async {
  if (talkMode != TalkMode.private) {
    throw ArgumentError('markMessagesAsRead 仅支持私聊');
  }
  if (toFromId <= 0 || msgId.isEmpty) {
    throw ArgumentError('toFromId / msgId 无效');
  }
  await _net.http.post(
    '/api/v1/talk/message-read',
    data: {'talk_mode': talkMode, 'to_from_id': toFromId, 'msg_id': msgId},
  );
  await _conversationManager.markConversationAsRead(
    talkMode: talkMode,
    toFromId: toFromId,
  );
}