diff --git a/packages/im/src/ImSDK.ts b/packages/im/src/ImSDK.ts index deb7427..d5e5c5a 100644 --- a/packages/im/src/ImSDK.ts +++ b/packages/im/src/ImSDK.ts @@ -686,6 +686,52 @@ export const ImSDK = { return ImSDK.sendMessage(toId, chatType, 'CALL_VIDEO', JSON.stringify({ action })) }, + async sendCustomMessage( + toId: string, + chatType: ChatType, + data: Record, + ): Promise { + return ImSDK.sendMessage(toId, chatType, 'CUSTOM', JSON.stringify(data)) + }, + + async sendLocationMessage( + toId: string, + chatType: ChatType, + latitude: number, + longitude: number, + title?: string, + address?: string, + ): Promise { + return ImSDK.sendMessage( + toId, + chatType, + 'LOCATION', + JSON.stringify({ latitude, longitude, title: title ?? '', address: address ?? '' }), + ) + }, + + async sendRichTextMessage( + toId: string, + chatType: ChatType, + html: string, + ): Promise { + return ImSDK.sendMessage(toId, chatType, 'RICH_TEXT', html) + }, + + async sendForwardMessage( + toId: string, + chatType: ChatType, + originalSender: string, + originalContent: string, + ): Promise { + return ImSDK.sendMessage( + toId, + chatType, + 'FORWARD', + JSON.stringify({ originalSender, originalContent }), + ) + }, + async revokeMessage(messageId: string): Promise { const config = getConfig() const msg = await apiRequest(`/api/im/messages/${encodeURIComponent(messageId)}/revoke`, { diff --git a/packages/license/package.json b/packages/license/package.json index 2f33336..6a44da3 100644 --- a/packages/license/package.json +++ b/packages/license/package.json @@ -1,6 +1,6 @@ { "name": "@xuqm/rn-license", - "version": "0.2.0", + "version": "0.2.2", "description": "XuqmGroup RN SDK — License module (device registration & verification)", "license": "UNLICENSED", "main": "src/index.ts",