diff --git a/src/models/Message.js b/src/models/Message.js
index d39a9ab..f5e5b37 100644
--- a/src/models/Message.js
+++ b/src/models/Message.js
@@ -12,7 +12,7 @@
   }
 
   getCreatedMicroseconds() {
-    const a = this.getCreatedTimestamp();
+    let a = this.getCreatedTimestamp();
     if (a === null) a = '0';
     return BigInt(a);
   }
@@ -33,6 +33,31 @@
     this.data[12] = [];
   }
 
+  getPayload() {
+    return this.data[1]?.[4] ?? null;
+  }
+
+  setPayload(value) {
+    if (!this.data[1]) this.data[1] = [];
+    this.data[1][4] = value;
+  }
+
+  getId() {
+    return this.data[1]?.[1]?.[1] ?? null;
+  }
+
+  getAuthor() {
+    return this.data[3] ?? null;
+  }
+
+  getParentMessageId() {
+    return this.data[1]?.[37] ?? null;
+  }
+
+  isComment() {
+    return !!this.getParentMessageId;
+  }
+
   toRawMessageOrGap() {
     return {1: this.data};
   }
