Sending push notifications to specific devices and types (Android/iOS) | Community
Skip to main content
Level 6
February 28, 2024
Solved

Sending push notifications to specific devices and types (Android/iOS)

  • February 28, 2024
  • 2 replies
  • 2438 views

Hi there,

 

We have one app surface that has both android & iOS configured, and we prefer not to split them up to different app surfaces. And I am wondering if there's a way in Campaigns and Journeys, that we can target only specific device types (iOS/Android). 

 

In test mode, I've tried entering one single ECID, and it fires a push notification to all my devices (Android/iOS). So I am wondering:

1) Is there a way to send push notifications only to a specific ECID

2) Is there a way to send push notifications only to Android or iOS devices

 

Thanks,

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by _Manoj_Kumar_

Hello @akwankl 

 

The only way to do this currently is by using two app surfaces.

2 replies

_Manoj_Kumar_
Community Advisor
_Manoj_Kumar_Community AdvisorAccepted solution
Community Advisor
March 3, 2024

Hello @akwankl 

 

The only way to do this currently is by using two app surfaces.

     Manoj     Find me on LinkedIn
Adobe Employee
March 4, 2024

Agree with @_manoj_kumar_  - best way to achieve this is to have 2 app surfaces. 

Mohan_Dugganab
Adobe Employee
Adobe Employee
March 4, 2024

In test mode, if ECID is being used - then the details associated with that profile would be pulled in.

 

If there are multiple tokens associated with the profile, collection management functions can be leveraged to retrieve the corresponding android / ios tokens by filtering against the platform, appId values.

 

Reference

https://experienceleague.adobe.com/docs/journey-optimizer/using/orchestrate-journeys/building-advanced-conditions-journeys/syntax/collection-management-functions.html?lang=en

akwanklAuthor
Level 6
March 4, 2024

Thanks @mohan_dugganab, can you help me out with this?

 

 

 

 

 

I have this in the push parameters:

 

#{ExperiencePlatform.AppNotifications.profile.pushNotificationDetails.all(currentDataPackField.platform == 'apns' and currentDataPackField.identity.id == ${externalKey}).token}

 

But it's coming back with this error:

"push channel details are invalid, payload: {\n \"push\" : {\n \"token\" : \"[abc1234567maskedtoken]\"\n }\n}"

 

It's returning the token correctly, but doesn't seem to fit the syntax required in the push action.

 

Thanks.

September 20, 2024

Did you try directly using the collection managements functions by overriding the push parameters ? You will have to override all the three parameters, ensuring the appId and token are specific to apns/fcm. 

 

 

 

 


Hi @mohan_dugganab,

Do you know how to override the push parameters to send a push message for all profiles that meets a condition (authenticatedState = "authenticated") with a collection management function?

I tried this with the equivalent attribute for token/appID/platform but I haven't receive any push and no errors neither!

 

#{ExperiencePlatform.ProfileFieldGroup.profile.pushNotificationDetails.all (currentDataPackField.identity.authenticatedState == "authenticated").token}

 

PD: It works well when I include first()/last()/at(n) before attribute but I need to send for all profiles that meet the condition.

Many thanks!