jsonDictionaryForMessage static method
Converts a message to a JSON map @param message The message to convert. @returns The JSON representation of the message.
Implementation
static Map<String, dynamic> jsonDictionaryForMessage(MBMessage message) {
Map<String, dynamic> dictionary = {
'id': message.id,
'title': message.title,
'messageDescription': message.messageDescription,
'type': _stringForMessageType(message.messageType),
'createdAt': message.createdAt.millisecondsSinceEpoch ~/ 1000,
'startDate': message.startDate != null
? message.startDate!.millisecondsSinceEpoch ~/ 1000
: null,
'endDate': message.endDate != null
? message.endDate!.millisecondsSinceEpoch ~/ 1000
: null,
'automationIsOn': message.automationIsOn,
'sendAfterDays': message.sendAfterDays,
'repeatTimes': message.repeatTimes,
};
if (message.inAppMessage != null) {
dictionary['inAppMessage'] =
MBInAppMessageSavingUtility.jsonDictionaryForInAppMessage(
message.inAppMessage!);
}
if (message.pushMessage != null) {
dictionary['push'] =
MBPushMessageSavingUtility.jsonDictionaryForPushMessage(
message.pushMessage!);
}
if (message.triggers != null) {
if (message.triggers is MBMessageTriggers) {
MBMessageTriggers triggers = message.triggers;
dictionary['triggers'] = triggers.toJsonDictionary();
}
}
return dictionary;
}