diff --git a/messaging/messaging.go b/messaging/messaging.go index 90c0b367..8f484684 100644 --- a/messaging/messaging.go +++ b/messaging/messaging.go @@ -664,9 +664,10 @@ type WebpushFCMOptions struct { // See https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/CommunicatingwithAPNs.html // for more details on supported headers and payload keys. type APNSConfig struct { - Headers map[string]string `json:"headers,omitempty"` - Payload *APNSPayload `json:"payload,omitempty"` - FCMOptions *APNSFCMOptions `json:"fcm_options,omitempty"` + Headers map[string]string `json:"headers,omitempty"` + Payload *APNSPayload `json:"payload,omitempty"` + FCMOptions *APNSFCMOptions `json:"fcm_options,omitempty"` + LiveActivityToken string `json:"live_activity_token,omitempty"` } // APNSPayload is the payload that can be included in an APNS message. diff --git a/messaging/messaging_test.go b/messaging/messaging_test.go index ce5c5bfc..659a0c96 100644 --- a/messaging/messaging_test.go +++ b/messaging/messaging_test.go @@ -588,6 +588,21 @@ var validMessages = []struct { "topic": "test-topic", }, }, + { + name: "APNSLiveActivity", + req: &Message{ + Token: "test-token", + APNS: &APNSConfig{ + LiveActivityToken: "live-activity-token", + }, + }, + want: map[string]interface{}{ + "token": "test-token", + "apns": map[string]interface{}{ + "live_activity_token": "live-activity-token", + }, + }, + }, { name: "AndroidNotificationPriorityMin", req: &Message{