ChannelMessageModel.fromJson constructor

ChannelMessageModel.fromJson(
  1. Map<String, dynamic> json
)

Implementation

ChannelMessageModel.fromJson(Map<String, dynamic> json)
    : message = json['message'],
      nickName = json['nickName'],
      clientKey = json['clientKey'],
      roomId = json['roomId'],
      mimeType = MimeType.getByCode(json['mimeType']),
      messageType = json['messageType'] is MessageType
          ? json['messageType']
          : MessageType.getByCode(json['messageType']),
      userInfo = json['userInfo'] is String
          ? jsonDecode(json['userInfo'])
          : json['userInfo'] {
  if (json['messageDt'] != null) {
    var date = json['messageDt'];
    if (date is int) {
      messageDt = DateTime.fromMillisecondsSinceEpoch(date);
    } else if (date is String) {
      messageDt = DateTime(
        int.parse(date.substring(0, 4)),
        int.parse(date.substring(4, 6)),
        int.parse(date.substring(6, 8)),
        int.parse(date.substring(8, 10)),
        int.parse(date.substring(10, 12)),
        int.parse(date.substring(12, 14)),
      );
    }
  } else {
    messageDt = DateTime.now();
  }
}