firebase / firebase/firebase-admin-python

Message to end Live Activity does not close it on the device.

Open
#909 2 comments 0 reactions 2 assignees Claimed by @chong-shao View on GitHub
api: messaging
Dominant language
Python
Stars
1.2k
Forks
359
Avg merge
5d 6m
Merged PRs (30d)
2

Description

### Environment

* Operating System version: python:3.12.10-slim Docker image running on MacOS
* Firebase SDK version: 6.9.0
* Firebase Product: cloud messaging
* Python version: 3.12.10
* Pip version: 25.0.1

### The problem
Management of iOS live activities.
Currently I can successfully start a live activity using the sdk with the following message:

```
message = messaging.Message(
apns=messaging.APNSConfig(
live_activity_token=live_activity_token,
payload=messaging.APNSPayload(
aps=messaging.Aps(
alert=messaging.ApsAlert(
title="Live Activity Started",
body="Your live activity has been started",
),
custom_data = {
"input-push-token": 1,
"event": "start",
"timestamp": int(time.time()),
"content-state": {
"myAttribute": False,
},
"attributes-type": "MyObjectAttributes",
"attributes": {
"name": "name",
},
},
),
headers={
"apns-priority": "5",
},
),
),
data={ 'type': 'mytype' },
token=token
)
```

The issue appears when trying to end the live activity, it seems that the sent message has no effect and the live activity remains on the lock screen of the device. This is the message that is being sent:

```
message = messaging.Message(
apns=messaging.APNSConfig(
live_activity_token=live_activity_token,
payload=messaging.APNSPayload(
aps=messaging.Aps(
alert=messaging.ApsAlert(
title="Live Activity Ended",
body="Your live activity has been ended",
),
custom_data = {
"event": "end",
"timestamp": int(time.time()),
"dismissal-date": int(time.time()),
"content-state": {
"myAttribute": False
},
"attributes-type": "MyObjectAttributes",
"attributes": {
"name": "name"
},
},
),
headers={
"apns-priority": "5",
},
),
),
data={ 'type': 'mytype' },
token=token
)
```
All the responses of the `messaging.send_each` method are successful (`response.success => True`) but the live activity does not end.

#### Steps to reproduce:

Currently these are the steps to reproduce the issue:
- Start a live activity with the `start` message
- Send the `end` message via the `messaging.send_each` method
- Check the responses, they should be successful
- The live activity still displays on the device

PS: this might be an issue with Firebase itself and not with the sdk, but I am not entirely sure.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.