Unity SDK
以下介绍Game Chat Unity SDK的使用方法。
配置要求
使用Game Chat Unity SDK时的配置要求如下。
最低配置:2018.4.0以上 (如需获得低版本Unity的支持,请在 '[email protected]' 进行咨询。 )
2019.4.X/2020.3.X/2021.1.X版本的Unity编辑器用户请使用2019.4.29f1以上/2020.3.15f2以上/2021.1.16f1以上版本(构建AAB版本时存在的Unity编辑器漏洞被修复的版本)。
验证
重置Game Chat实例
如需使用Game Chat项目ID重置Game Chat实例,请使用下列代码:
GameChat.initialize(PROJECT_ID);
// 使用新加坡区域时
GameChat.setRegion("sg");
GameChat.initialize(PROJECT_ID);PROJECT_ID
string
项目ID
连接Game Chat Socket服务器
连接Game Chat Socket服务器的方法如下:
使用聊天用户ID访问Game Chat Socket服务器。
Game Chat项目中,聊天用户ID是唯一值。
获取使用API所需的Token值。
可查看GameChat.connect之后更新的Token值。
获取Token值后确认当前访问设备的聊天用户信息是否已更新。
通过回调GameChat.connect获取的会员信息为更新后的数据。
如需连接Game Chat Socket服务器,请使用下列代码:
USER_ID
string
聊天用户唯一ID
断开Game Chat服务器连接
如需断开与Game Chat Socket服务器的连接,请使用下列代码:
更新聊天用户信息
连接成功后,如需保存并更新聊天用户信息,请使用下列代码。
修改昵称
USER_ID
string
聊天用户唯一ID
NickName
string
聊天用户昵称
修改简介URL
USER_ID
string
聊天用户唯一ID
ProfileUrl
string
聊天用户ProfileURL
订阅和取消订阅频道
如需订阅或取消订阅特定频道,请使用下列代码:
CHANNEL_ID
string
频道ID
发送消息
如需向特定频道发送消息,请使用下列代码:
CHANNEL_ID
string
频道ID
MESSAGE
string
发送的消息文本
在消息参数中输入@[玩家ID]空格[消息内容]时
在上述用例中,如果玩家ID已有登录历史,消息详细信息中提及的信息即为玩家ID。
添加和解除事件
如需对从Game Chat Socket服务器接收的事件添加或解除自定义处理,请使用下列代码:
例外情形
下面是对使用Game Chat API过程中发生的例外情况采取的通用处理Class。
Client API
订阅频道
Subscription Data Class (per Unit)
id
string
唯一ID
channel_id
string
频道ID
user_id
string
聊天用户唯一ID
created_at
string
创建日期
导入频道订阅列表
如需以列表形式导入特定频道的订阅数据,请使用下列代码:
频道
Channel Data Class (per Unit)
id
string
频道ID(唯一值)
project_id
string
项目ID
unique_id
string
开发公司可设置的频道ID(唯一值)
name
string
频道名称
user_id
string
(创建频道的)聊天用户ID
created_at
string
创建日期
updated_at
string
更新日期
导入频道列表
如需以列表形式导入项目的频道数据,请使用下列代码:
OFFSET
int
拟从全部频道列表导入的频道的开始位置(索引)
LIMIT
int
拟导入的频道数量
导入频道数据
如需使用频道ID和唯一ID导入频道数据,请使用下列代码:
CHANNEL_ID
string
频道ID(自动生成)
CHANNEL_UNIQUE_ID
string
频道(唯一)ID(可自定义)
创建和删除频道
如需在项目内创建和删除新的频道,应使用Open API。 考虑到安全问题,建议使用Open API通过Server to Server手动进行频道创建和更新等操作。 详细内容请参考Game Chat API指南。
消息
(Received) Message Data Class (per Unit)
message_id
string
消息的唯一ID
channel_id
string
频道ID
message_type
string
消息类型
content
string
消息内容(JSON字符串)
mentions
string
提及(标签)
created_at
string
导入消息列表
如需以列表形式导入特定频道的消息数据,请使用下列代码:
CHANNEL_ID
string
频道ID
OFFSET
string
拟从全部消息列表导入的消息的开始位置
LIMIT
string
拟导入的消息数量
SEARCH
string
消息搜索基准参数; <示例> content.text 传递空字符串时,全数扫描
QUERY
string
消息搜索值; 只能搜索完全一致的内容。 传递空字符串时,全数扫描
SORT
string
消息排列顺序(默认:降序 - 按最新排列)(可选项:升序)
翻译消息
自动翻译功能被激活的状态下,可将任意文本翻译成指定语言。 关联Papago Translation{target="_blank"}服务后即可使用自动翻译功能。
(Received) Translation Data Class (per Unit)
detectLang
string
源语言代码
lang
string
目标语言代码
translated
bool
是否翻译成功
message
string
结果消息内容(JSON字符串)
参考
关于源语言代码和目标语言代码的介绍,请参考Papago Text Translation API指南
CHANNEL_ID
string
频道ID
TARTGET_LANG
string
(待接收翻译的)文本语言代码 (可使用“,”符号隔开输入多个。 <示例> “en, fr, th”) 参考Papago Text Translation API指南{target="blank"}
TEXT
string
拟发送的文本
聊天用户
(Received) Member Data Class (per Unit)
id
string
聊天用户唯一ID
project_id
string
已登录的Game Chat项目ID
nickname
string
聊天用户昵称
profile_url
string
头像图片URL
country
string
访问国家
remoteip
string
访问IP
adid
string
广告标识符
device
string
访问设备环境
network
string
访问网络类型(移动数据、Wi-Fi)
version
string
访问的应用版本
model
string
访问设备型号
logined_at
string
登录日期
created_at
string
聊天用户创建日期
updated_at
string
聊天用户信息更新日期
更新聊天用户信息
可更新聊天服务器的用户信息。
MEMBER_ID
string
聊天用户唯一ID
NAME
string
聊天用户昵称或姓名
PROFILE
string
头像图片URL
GameChatExtension (Emoji, HyperLink)
帮助开发人员轻松处理所接收消息中包含的表情符号和超链接文本的辅助类。
TMP_GameChatTextUGUI是对Unity内置资源TextMeshPro进行扩展的类,因此须先使用Package Manager安装TextMeshPro。
TextMeshPro资源在Unity 2018.2以上版本中以内置资源形式提供。
表情符号的精灵表单默认以Emoji 13版本(Android)为基准进行输出,可通过更改精灵表单进行自定义设置。
<示例>
Last updated