add procs for 3 event types

This commit is contained in:
array-in-a-matrix 2024-02-07 12:32:39 -05:00
parent e87652c055
commit c71a8203bb

View file

@ -1,4 +1,5 @@
{.emit:"import { MatrixClient } from 'matrix-bot-sdk';".}
import matrixTypes
proc newMatrixClient*(homeserver, token: cstring): Client {.importjs: "new MatrixClient(#, #)".}
@ -12,6 +13,13 @@ proc onRoomTopic*(client: Client, callback: proc(roomId: cstring, event: Event))
proc onRoomEvent*(client: Client, callback: proc(roomId: cstring, event: Event)) {.importjs: "#.on('room.event', #)".}
proc onRoomJoin*(client: Client, callback: proc(roomId: cstring, event: Event)) {.importjs: "#.on('room.join', #)".}
proc onRoomLeave*(client: Client, callback: proc(roomId: cstring, event: Event)) {.importjs: "#.on('room.leave', #)".}
proc onAccountData*(client: Client, callback: proc(event: Event)) {.importjs: "#.on('account_data', #)".}
proc onRoomAccountData*(client: Client, callback: proc(roomId: cstring, event: Event)) {.importjs: "#.on('onRoomAccountData', #)".}
# TODO: add more for each event type
proc impersonateUserId*(client: Client, userId: cstring = nil): void {.importjs: "#.impersonateUserId(#)".}