註冊回呼以接收聊天字串
遠端遊玩聊天功能可以實現為當用戶在遠端遊玩期間輸入字符串時,它會被發送到主機電腦的遊戲聊天窗口。
1) 當用戶在下方顯示的網頁遠端播放文本框中輸入字符串並按下回車鍵時,該字符串將發送到主機電腦遊戲。 * 遠端播放的最大輸入長度為150個字符,閱讀方向為LTR(從左到右)和RTL(從右到左)。
2) 在主機電腦遊戲中,字串是通過預先註冊的回調函數接收的。
3) 在主機電腦遊戲中,對應的字串會傳遞到遊戲聊天視窗。
註冊回調函數¶
要在遠端遊玩中使用聊天功能,您需要在導入遠端遊玩插件後註冊一個回調函數。
註冊回調函數意味著聊天功能已經準備好在遠程遊玩期間使用,並且遊戲可以根據每個遊戲環境將從遠程遊玩接收到的字符串應用於聊天功能。
通過遊戲中的回調函數接收到的字符串是以UTF-8編碼的數據,並轉換為Base64
。此外,它還包括閱讀方向信息,允許多語言支持。
註冊一個回調函數到 HiveRemotePlayManager.RegisterCallback 如下所示。
using AOT; // MonoPInvokeCallback 때문에 필요
public class {유저 Game에서 사용하는 클래스} : MonoBehaviour {
#if !UNITY_EDITOR && UNITY_STANDALONE_WIN
[MonoPInvokeCallback (typeof(HiveRemotePlayManager.RemotePlayCallbackType))]
public static void RegisterRemoteCallbackFunction(int type, string remotePlayJsonData)
{
Debug.Log("REMOTE Callback DATA :" + remotePlayJsonData); // RemoteSDK 에서 보내주는 json data 수신.
}
#endif
void Start() {
#if !UNITY_EDITOR && UNITY_STANDALONE_WIN
HiveRemotePlayManager.RegisterCallback(RegisterRemoteCallbackFunction);
#endif
}
}
聊天字符串协议¶
遊戲中通過回調函數接收到的聊天字符串的協議如下。
網頁 - 客戶端 JSON 協議¶
鍵 | 值類型 | 描述 | 其他 | |
---|---|---|---|---|
版本 | 版本 | 數字 | Json 版本資訊 | 參考範例 |
事件類型 | 事件類型 | 字符串 | 事件類型 - 只有消息項存在 | 參考範例 |
事件值 | 事件值 | 對象 | 事件值對象 | 參考範例 |
事件值 - 值 | 事件值 - 值 | 字符串 | 事件值 | 參考範例 |
事件值 - 行動 | 事件值 - 行動 | 字符串 | 事件行動 | 參考範例 |
其他 | 其他 | 對象 | 擴展用途 | 參考範例 |
聊天字符串數據範例¶
遊戲中通過回調函數接收到的聊天字符串具有以下JSON數據格式。
{
"version" : "1.0.2411.0",
"eventType" : "Message" ,
"eventValue" : {
"value" : "Something Message",
"action" : "LTR | RTL"
},
"etc" : { }
}
// value : Base64 (UTF-8 문장) 인코딩
// action : LTR (아랍어를 제외한 문자) | RTL (아랍어)