Pular para o conteúdo

API de Live Activities do iOS

Documentação da Apple:

startLiveActivity

Anchor link to

POST https://api.pushwoosh.com/json/1.3/startLiveActivity

Permite criar Live Activities do iOS.

Corpo da solicitação

Anchor link to
ParâmetroTipoObrigatório/OpcionalDescrição
applicationStringObrigatórioCódigo de aplicação Pushwoosh
authStringObrigatórioToken de acesso à API do Painel de Controle da Pushwoosh.
notificationsArrayObrigatórioArray JSON de parâmetros de mensagem. Veja os detalhes na tabela de Notificações abaixo.

Notificações

Anchor link to

Parâmetros usados no array notifications:

ParâmetroTipoObrigatório/OpcionalDescrição
contentStringObrigatórioConteúdo de fallback para dispositivos com versões do iOS anteriores à 16.1 que não suportam Live Activity. No iOS 16.1+ (com suporte a Live Activity), o conteúdo é obtido do campo live_activity.
titleStringOpcionalO título da mensagem de notificação.
live_activityObjectObrigatórioDados da Live Activity para criar uma Live Activity no iOS.
live_activity.content-stateObjectObrigatórioConteúdo para a notificação da Live Activity.
live_activity.attributes-typeStringObrigatórioO tipo de atributos usados na Live Activity.
live_activity.attributesObjectObrigatórioAtributos para a Live Activity.
live_activity_idStringObrigatórioUm identificador único para a Live Activity. Usado para direcionar esta atividade ao chamar updateLiveActivity. Deve ser único por sessão de atividade.
filterStringOpcionalO nome de um filtro (segmento) da Pushwoosh. Consulte Nome do Segmento / Filtro. A Live Activity será iniciada em todos os dispositivos que correspondem a este filtro.
devicesArray de StringsOpcionalUma lista de tokens de dispositivo. A Live Activity será iniciada apenas nos dispositivos especificados.
send_dateStringOpcionalAgenda o push que inicia a Live Activity para uma data e hora específicas — funciona com o direcionamento por filter ou devices. Use o formato YYYY-MM-DD HH:mm, ou now para iniciar imediatamente (este também é o padrão quando o parâmetro é omitido). Não deve ser mais de 1 dia no passado ou 30 dias no futuro, caso contrário, a solicitação é rejeitada com um erro de validação.
timezoneStringOpcionalO fuso horário usado para interpretar send_date. Se omitido, send_date é interpretado em UTC.

Exemplo de solicitação

Anchor link to
{
"request": {
"application": "XXXXX-XXXXX",
"auth": "SECRET_API_TOKEN",
"notifications": [
{
"content": "Your order is being prepared",
"title": "Food Delivery",
"live_activity": {
"event": "start",
"title": "Order status",
"content-state": {
"status": "Third",
"estimatedTime": "37 min",
"emoji": "👨‍🍳"
},
"attributes-type": "FoodDeliveryAttributes",
"attributes": {}
},
"live_activity_id": "FIRST_LIVE_ACTIVITY",
"filter": "FILTER_NAME_1"
}
]
}
}

Exemplo de resposta

Anchor link to
{
"status_code": 200,
"status_message": "OK",
"response": {
"Messages": [
"XXXXX-XXXXXXXX-XXXXXXXX"
]
}
}

Nota:

Leia este artigo para saber mais sobre como trabalhar com Live Activities usando o SDK do iOS da Pushwoosh.

updateLiveActivity

Anchor link to

POST https://api.pushwoosh.com/json/1.3/updateLiveActivity

Permite atualizar e encerrar Live Activities do iOS

Corpo da solicitação

Anchor link to
ParâmetroTipoObrigatório/OpcionalDescrição
authStringObrigatórioToken de acesso à API do Painel de Controle da Pushwoosh.
applicationStringObrigatórioCódigo de aplicação Pushwoosh
notificationsArrayObrigatórioArray JSON de parâmetros de mensagem. Veja os detalhes na tabela de Notificações abaixo.

Notificações

Anchor link to

Parâmetros usados no array notifications:

ParâmetroTipoObrigatório/OpcionalDescrição
live_activityObjectObrigatórioDados da Live Activity para atualizar uma Live Activity no iOS.
live_activity.eventStringObrigatórioEspecifica o tipo de evento. Use "update" para atualizar a Live Activity ou "end" para fechá-la.
live_activity.content-stateObjectObrigatórioObjeto com pares de chave-valor usado para passar dados para a Live Activity para atualizar seu conteúdo.
live_activity.dismissal-dateIntegerOpcionalO tempo (em segundos) em que a Live Activity deve terminar.
live_activity_idStringObrigatórioO identificador único da Live Activity a ser atualizada. Deve corresponder ao live_activity_id usado em startLiveActivity. A atualização será entregue a todos os dispositivos nos quais esta atividade foi iniciada.
live_activity.relevance-scoreIntegerOpcionalInforma ao sistema iOS qual Live Activity tem prioridade maior que as outras. Aceita valores de 1 ao infinito (valores até 100 são recomendados).
live_activity.stale-dateIntegerOpcionalO tempo (em segundos) que representa a data em que uma Live Activity se torna obsoleta ou desatualizada.

Exemplo de solicitação

Anchor link to
{
"request": {
"application": "XXXXX-XXXXX",
"auth": "SECRET_API_TOKEN",
"notifications": [
{
"live_activity": {
"event": "update",
"title": "Live Activity Update",
"content-state": {
"status": "second 66",
"estimatedTime": "66 min",
"emoji": "👨‍"
},
"relevance-score": 60
},
"live_activity_id": "FIRST_LIVE_ACTIVITY"
}
]
}
}

Exemplo de resposta

Anchor link to
{
"status_code": 200,
"status_message": "OK",
"response": {
"Messages": [
"XXXXX-XXXXXXXX-XXXXXXXX"
]
}
}

Leia este artigo para saber mais sobre como trabalhar com Live Activities usando o SDK do iOS da Pushwoosh.

Múltiplas atividades por dispositivo

Anchor link to

Você pode iniciar múltiplas Live Activities no mesmo dispositivo chamando startLiveActivity várias vezes com valores diferentes de live_activity_id.

Por exemplo, se você iniciar duas atividades: FIRST_LIVE_ACTIVITY com filter: FILTER_NAME_1 e SECOND_LIVE_ACTIVITY com filter: FILTER_NAME_2, um dispositivo que corresponda a ambos os filtros terá ambas as atividades em execução simultaneamente.

Para atualizar uma delas, passe seu live_activity_id para updateLiveActivity. A atualização é entregue a todos os dispositivos onde essa atividade foi criada. A outra atividade não é afetada.

O parâmetro relevance-score controla a prioridade de exibição quando múltiplas Live Activities estão ativas no mesmo dispositivo. Se o espaço na tela for limitado ou as atividades estiverem agrupadas, a atividade com um valor maior é mostrada com maior prioridade.