ลงทะเบียนการโทรกลับเพื่อรับสตริงการแชท
ฟีเจอร์แชทการเล่นระยะไกลสามารถนำไปใช้ในลักษณะที่เมื่อผู้ใช้พิมพ์ข้อความในระหว่างการเล่นระยะไกล ข้อความนั้นจะถูกส่งไปยังหน้าต่างแชทเกมของคอมพิวเตอร์โฮสต์
1) เมื่อผู้ใช้ป้อนสตริงในกล่องข้อความที่จัดเตรียมไว้สำหรับการเล่นเกมระยะไกลบนเว็บตามที่แสดงด้านล่างและกดปุ่ม Enter สตริงจะถูกส่งไปยังเกมบนพีซีโฮสต์。 * ความยาวสูงสุดของการป้อนข้อมูลสำหรับการเล่นเกมระยะไกลคือ 150 ตัวอักษร และทิศทางการอ่านคือ LTR (จากซ้ายไปขวา) และ RTL (จากขวาไปซ้าย)
2) ในเกม PC โฮสต์ สตริงจะถูกส่งผ่านฟังก์ชัน callback ที่ลงทะเบียนล่วงหน้า
3) ในเกม PC โฮสต์ สตริงที่เกี่ยวข้องจะถูกส่งไปยังหน้าต่างแชทของเกม
ลงทะเบียนฟังก์ชัน callback¶
ในการใช้ฟีเจอร์แชทใน Remote Play คุณต้องลงทะเบียนฟังก์ชัน callback หลังจากนำเข้า Remote Play plugin
การลงทะเบียนฟังก์ชัน callback หมายความว่าฟีเจอร์แชทพร้อมใช้งานในระหว่างการเล่นระยะไกล และเกมสามารถนำสตริงที่ได้รับจากการเล่นระยะไกลไปใช้กับฟีเจอร์แชทตามสภาพแวดล้อมของเกมแต่ละเกม
สตริงที่ได้รับผ่านฟังก์ชัน callback ในเกมเป็นข้อมูลที่เข้ารหัสใน UTF-8 และแปลงเป็น Base64
นอกจากนี้ยังรวมถึงข้อมูลทิศทางการอ่าน ซึ่งช่วยให้รองรับหลายภาษา
ลงทะเบียนฟังก์ชัน callback กับ 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
}
}
โปรโตคอลสตริงแชท¶
โปรโตคอลสำหรับสตริงแชทที่ได้รับผ่านฟังก์ชัน callback ในเกมมีดังนี้
เว็บ - โปรโตคอล JSON ของลูกค้า¶
คีย์ | ประเภทค่า | คำอธิบาย | อื่น ๆ | |
---|---|---|---|---|
version | version | number | ข้อมูลเวอร์ชัน Json | ดูตัวอย่าง |
eventType | eventType | string | ประเภทเหตุการณ์ - มีเพียงรายการข้อความเท่านั้น | ดูตัวอย่าง |
eventValue | eventValue | object | วัตถุค่าของเหตุการณ์ | ดูตัวอย่าง |
eventValue - value | eventValue - value | string | ค่าของเหตุการณ์ | ดูตัวอย่าง |
eventValue - action | eventValue - action | string | การกระทำของเหตุการณ์ | ดูตัวอย่าง |
etc | etc | object | เพื่อวัตถุประสงค์ในการขยาย | ดูตัวอย่าง |
ตัวอย่างข้อมูลสตริงแชท¶
สตริงแชทที่ได้รับผ่านฟังก์ชัน callback ในเกมมีรูปแบบข้อมูล JSON ดังต่อไปนี้
{
"version" : "1.0.2411.0",
"eventType" : "Message" ,
"eventValue" : {
"value" : "Something Message",
"action" : "LTR | RTL"
},
"etc" : { }
}
// value : Base64 (UTF-8 문장) 인코딩
// action : LTR (아랍어를 제외한 문자) | RTL (아랍어)