diff --git a/navi-chat/src/main/java/com/navi/chat/utils/ChatJsonDeserializer.kt b/navi-chat/src/main/java/com/navi/chat/utils/ChatJsonDeserializer.kt index e88d751944..06315dc880 100644 --- a/navi-chat/src/main/java/com/navi/chat/utils/ChatJsonDeserializer.kt +++ b/navi-chat/src/main/java/com/navi/chat/utils/ChatJsonDeserializer.kt @@ -39,13 +39,18 @@ object ChatJsonDeserializer : JsonDeserializer { context: JsonDeserializationContext?, ): NaviChatWidget? { json?.let { - val rtCreatedAt = it.asJsonObject[NAVI_CHAT_RT_CREATED_AT] + var timestamp = Timestamp(0, 0) val jsonObject = it.asJsonObject - val timestamp = - Timestamp( - rtCreatedAt.asJsonObject["seconds"].asLong, - rtCreatedAt.asJsonObject["nanos"].asInt - ) + val rtCreatedAt = jsonObject?.get(NAVI_CHAT_RT_CREATED_AT) + if (rtCreatedAt?.isJsonObject == true && !rtCreatedAt.isJsonNull) { + rtCreatedAt.asJsonObject?.let { rtCreatedAtObject -> + val seconds = rtCreatedAtObject.get("seconds") + val nanos = rtCreatedAtObject.get("nanos") + if (seconds?.isJsonNull == false && nanos?.isJsonNull == false) { + timestamp = Timestamp(seconds.asLong, nanos.asInt) + } + } + } if (!jsonObject.has(NAVI_CHAT_WIDGET_NAME)) { return null }