Developer Hub
Relation ProtocolRelation ONE APIRelation Graph API
中文
中文
  • 概述
    • Relation ONE
  • 开发指引
    • 名词解释
    • 服务地址
    • 鉴权与限流
    • JS-SDK使用说明
    • 快速开始
  • Relation ONE IM 介绍
  • API
    • 介绍
    • 签名认证
    • 登录认证
    • 用户信息
      • 绑定地址
      • 解绑地址
      • 用户信息
      • 查询地址
      • 查询Web2账户
    • 好友关系
      • 关注
      • 取关
      • 粉丝列表
      • 关注列表
      • 根据Web3地址查询粉丝列表
      • 根据Web3地址查询关注列表
    • 用户推荐
    • 群组管理
      • 创建
      • 加入
      • 移除
      • 离开
      • 解散
      • 转移管理员
      • 详情
      • 成员列表
      • 是否为管理员
      • 查询群公告
      • 设置群公告
    • 聊天管理
      • 置顶
      • 免打扰
      • 列表
      • 隐藏
    • 消息管理
      • 发消息
      • 读消息
      • 删除消息
      • 消息列表
      • 未读消息数
  • JS-SDK
    • Relation-Auth
      • 快速开始
      • 方法
    • IM-JS-SDK
      • 快速开始
      • 静态方法
      • 事件
      • 方法
      • 消息解析
    • Plugin-JS-SDK
      • 快速开始
  • 附录
    • 接口错误码
    • 合约列表
Powered by GitBook
On this page
  1. JS-SDK
  2. IM-JS-SDK

消息解析

使用 messageParse() 方法解析原始消息

import { messageParser } from "@relationlabs/im"

const msg: Message

const parsedMsg: ParsedMessage = messageParser(msg)

类型定义

// 消息类型
type MessageType = 'SYS' | 'TEXT' | 'CARD' | 'ANNOUNCEMENT' | 'BATCH_TRANSFER';

// 原始消息结构
type Message = {
    type: MessageType;
    content: string;
    quote?: Message;
}

// 解析后的消息结构
type ParsedMessage = {
    type: MessageType;
    content: string;
    parsedContent?: ParsedContent;
    quote?: Message;
    unidentified?: boolean | undefined;
}

//解析后的消息内容
type ParsedContent = string|JoinGroupMessage|ShareMessage|NormalImageMessage|NFTMessage|MentionMessage

// 邀请加入群组
type JoinGroupMessage = {
    groupId: string;
    groupName: string;
    chatType: 'p2p'|'group'
}

// 收藏分享
type ShareMessage = {
    shareUrl: string;
    shareName: string;
    shareIcon: string;
}

// 普通图片
type NormalImageMessage = {
    imgUrl: string;
    s3Key: string;
}

// NFT
type NFTMessage = {
    imgUrl: string;
    nftChain: string;
}

// 消息引用
type MentionMessage = {
    mentionContent: string;
    mentionPosition: number[];
}

ParsedMessage 中 unidentified 表示是否是当前可识别的消息,parsedContent 表示对原消息文本内容解析后的结果,其余字段原封不动的将原消息结构返回

Previous方法NextPlugin-JS-SDK

Last updated 2 years ago