diff options
author | WlodekM <[email protected]> | 2025-01-24 12:21:13 +0200 |
---|---|---|
committer | WlodekM <[email protected]> | 2025-01-24 12:21:13 +0200 |
commit | c4320bf10d2ee15510826eafd5d776a9e2b5137e (patch) | |
tree | 74c69c88d292fb46adf03d518085a46c972883db | |
parent | 8358d211ae3d6559956b6727bd35666429059f81 (diff) |
add fetch message function
-rw-r--r-- | main.ts | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/main.ts b/main.ts index 6a485e0..418b3bf 100644 --- a/main.ts +++ b/main.ts @@ -48,6 +48,8 @@ export default class MAELINK extends EventEmitter { const client = this; this._ws.addEventListener('message', function (ev) { const data = JSON.parse(ev.data); + client.emit('message', data) + client.emit('cmd_'+data.cmd, data) switch (data.cmd) { case 'post_home': client.emit('post', data.post) @@ -79,4 +81,17 @@ export default class MAELINK extends EventEmitter { reply_to: typeof message == 'object' ? message.replyTo : undefined })); } + + fetchMessages(offset: number = 0) { + return new Promise((resolve, reject) => { + this._ws.send(JSON.stringify({ + cmd: "fetch", + offset: offset + })) + this.once('cmd_fetch', (resp) => { + if (resp.status !== 'success') return reject(); + resolve(resp.posts) + }) + }) + } } |