SchedulerMessage constructor
SchedulerMessage({
- String? title,
- String? avatarUrl,
- String? goalCompletionText,
- String? timezoneCode,
- int? bufferTime,
- int? duration,
- Map<
String, List< ? availability,TimeRange> > - String? dateRangeStart,
- String? dateRangeEnd,
- String? icsFileUrl,
- ButtonElement? scheduleElement,
- required String receiverUid,
- required String receiverType,
- dynamic tags,
- int? id,
- String? muid,
- User? sender,
- AppEntity? receiver,
- String type = MessageTypeConstants.scheduler,
- String? category = MessageCategoryConstants.interactive,
- DateTime? sentAt,
- DateTime? deliveredAt,
- DateTime? readAt,
- Map<
String, dynamic> ? metadata, - DateTime? readByMeAt,
- DateTime? deliveredToMeAt,
- DateTime? deletedAt,
- DateTime? editedAt,
- String? deletedBy,
- String? editedBy,
- DateTime? updatedAt,
- String? conversationId,
- int? parentMessageId,
- int? replyCount,
- InteractionGoal? interactionGoal,
- List<
Interaction> ? interactions, - bool? allowSenderInteraction,
Implementation
SchedulerMessage(
{this.title,
this.avatarUrl,
this.goalCompletionText,
this.timezoneCode,
this.bufferTime,
this.duration,
this.availability,
this.dateRangeStart,
this.dateRangeEnd,
this.icsFileUrl,
this.scheduleElement,
required super.receiverUid,
required super.receiverType,
tags,
int? id,
String? muid,
super.sender,
super.receiver,
super.type = MessageTypeConstants.scheduler,
String? category = MessageCategoryConstants.interactive,
super.sentAt,
super.deliveredAt,
super.readAt,
super.metadata,
super.readByMeAt,
super.deliveredToMeAt,
super.deletedAt,
super.editedAt,
super.deletedBy,
super.editedBy,
super.updatedAt,
super.conversationId,
int? parentMessageId,
int? replyCount,
InteractionGoal? interactionGoal,
super.interactions,
bool? allowSenderInteraction})
: super(
id: id ?? 0,
muid: muid ?? '',
parentMessageId: parentMessageId ?? 0,
replyCount: replyCount ?? 0,
interactionGoal: interactionGoal ??
InteractionGoal(type: InteractionGoalTypeConstants.anyAction),
allowSenderInteraction: allowSenderInteraction ?? false,
interactiveData: {
ModelFieldConstants.title: title,
ModelFieldConstants.avatarUrl: avatarUrl,
ModelFieldConstants.goalCompletionText: goalCompletionText,
ModelFieldConstants.timezoneCode: timezoneCode,
ModelFieldConstants.bufferTime: bufferTime,
ModelFieldConstants.duration: duration,
ModelFieldConstants.availability:
SchedulerUtils.getAvailabilityJson(availability),
ModelFieldConstants.dateRangeStart: dateRangeStart,
ModelFieldConstants.dateRangeEnd: dateRangeEnd,
ModelFieldConstants.icsFileUrl: icsFileUrl,
ModelFieldConstants.scheduleElement: scheduleElement?.toMap(),
});