convertToPamPushMessage static method
Implementation
static PamPushMessage? convertToPamPushMessage(RemoteMessage message) {
if (isPushNotiFromPam(message)) {
var data = message.data;
final String pam = data["pam"];
Map<String, dynamic> payload;
try {
payload = jsonDecode(pam);
} catch (e) {
Pam.log([e]);
return null;
}
final String flex = payload['flex'];
RegExp regExp = RegExp(r'src="(.*?)"');
String? match = regExp.firstMatch(flex)?.group(1);
String banner = match?.toString() ?? "";
String pixel = payload['pixel'] ?? "";
String popupType = payload['popup_type'] ?? "";
String url = payload['url'] ?? "";
String title = message.notification?.title ?? "";
String description = message.notification?.body ?? "";
var item = PamPushMessage(
deliverID: "",
pixel: pixel,
title: title,
description: description,
thumbnailUrl: banner,
flex: flex,
url: url,
popupType: popupType,
date: DateTime.now(),
isOpen: false,
data: payload);
return item;
}
return null;
}