สิ่งที่ต้องเตรียม
1. Project Firebase
2. file google-service.json
3. ให้ทำการ import FirebaseMessaging.unitypackage เข้าไปยัง Unity Project
เริ่มกันเลยครับ
1. ให้ทำการสร้าง C# Script (CloudMessageController.cs) ซึ่งหลักๆที่เราต้องการคือ Token ID หรือ Subscribe Topic / Unsubscribe Topic
2. จากนั้นทำการเพิ่มตัวแปรสำหรับเก็บ token และ delegate function
private string token;
void Start()
{
// delegate function
Firebase.Messaging.FirebaseMessaging.TokenReceived += OnTokenReceived;
Firebase.Messaging.FirebaseMessaging.MessageReceived += OnMessageReceived;
}
public void OnTokenReceived(object sender, Firebase.Messaging.TokenReceivedEventArgs token)
{
// function สำหรับรับค่า token เพื่อใช้ส่ง Notification
// วิธีการเก็บ token ก็ขึ้นอยู่กับผู้ใช้นะครับ
Debug.Log("Received Registration Token: " + token.Token);
this.token = token.Token;
}
public void OnMessageReceived(object sender, Firebase.Messaging.MessageReceivedEventArgs e)
{
// function สำหรับรับ data ครับ วิธีการส่งจะกล่าวต่อไปครับ
// เมื่อได้ data ก็สามารถนำไปใช้งานต่อได้ครับ
// กรณี ไม่มีการส่ง data ก็จะไม่ถูกเรียกใช้งานครับ
foreach (KeyValuePair<string,string> iter in e.Message.Data)
{
Debug.Log(" " + iter.Key + ": " + iter.Value);
}
}
4. จากนั้นเรามาทำการส่ง Notification แบะ data ให้กับ Unity ครับ ซึ่งเราจะใช้ Postman ในการทดสอบนะครับ โดยให้ทำการส่ง post data ไปยัง https://fcm.googleapis.com/fcm/send ดังรูปครับ