Skip to content

Commit 76f6932

Browse files
committed
[Android] for new notification endpoint use the message format
to target a specific device
1 parent 0b6db5f commit 76f6932

File tree

2 files changed

+26
-3
lines changed

2 files changed

+26
-3
lines changed

Project/Sources/Methods/Mobile App Push Notification.4dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ If (Not:C34($isMissingRecipients))
131131
$notificationInput:=New object:C1471(\
132132
"project"; $Obj_auth.project; \
133133
"serverKey"; $Obj_auth.serverKey; \
134-
"message"; JSON Stringify:C1217($message))
134+
"message"; $message)
135135

136136
$status:=android_sendNotification($notificationInput)
137137

Project/Sources/Methods/android_sendNotification.4dm

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,38 @@ $Obj_result:=New object:C1471("success"; False:C215)
99

1010
// ENDPOINT
1111
//________________________________________
12+
13+
var $message : Variant
14+
$message:=$input.message
15+
1216
var $endpoint : Text
1317
If ($input.project#Null:C1517)
18+
1419
$endpoint:="https://fcm.googleapis.com/v1/projects/"+String:C10($input.project)+"/messages:send"
20+
21+
If (Value type:C1509($input.message)=Is object:K8:27)
22+
23+
If ($input.message.to#Null:C1517)
24+
// old format, convert
25+
$message:=New object:C1471("message"; New object:C1471("token"; $input.message.to; "notification"; $input.message.data))
26+
End if
27+
28+
End if
29+
1530
Else
1631
$endpoint:="https://fcm.googleapis.com/fcm/send"
1732
End if
1833

34+
var $messageText : Text
35+
Case of
36+
: (Value type:C1509($message)=Is object:K8:27)
37+
$messageText:=JSON Stringify:C1217($message)
38+
Else
39+
$messageText:=String:C10($message)
40+
End case
41+
1942
If ((Length:C16(String:C10($input.serverKey))>0)\
20-
& (Length:C16(String:C10($input.message))>0))
43+
& (Length:C16($messageText)>0))
2144

2245
$cmdPush:="curl"
2346

@@ -37,7 +60,7 @@ If ((Length:C16(String:C10($input.serverKey))>0)\
3760
"--header \"Authorization: "+$authorizationHeader+"\" "+\
3861
"--header \"Content-Type: application/json\" "+\
3962
$endpoint+" "+\
40-
"-d \""+Replace string:C233($input.message; "\""; "\\\"")+"\""
63+
"-d \""+Replace string:C233($messageText; "\""; "\\\"")+"\""
4164

4265
LAUNCH EXTERNAL PROCESS:C811($cmdPush; $cmdPush_in; $cmdPush_out; $cmdPush_err)
4366

0 commit comments

Comments
 (0)