sendMessageToRecipients method

  1. @override
Future sendMessageToRecipients(
  1. String? correlationId,
  2. List<String> recipientIds,
  3. String? subscription,
  4. MessageV1 message,
  5. ConfigParams? parameters,
  6. String? method,
)
override

Send the messages to recipients by its ids

  • correlationId (optional) transaction id to trace execution through call chain.
  • recipientIds a recipient id.
  • subscription a subscription.
  • message a message to be send.
  • parameters an additional parameters to be send.
  • method a delivery method(email and/or sms).

Implementation

@override
Future<dynamic> sendMessageToRecipients(
    String? correlationId,
    List<String> recipientIds,
    String? subscription,
    MessageV1 message,
    ConfigParams? parameters,
    String? method) async {
  // Validate message or retrieve template
  var newMessage = await _getMessage(correlationId, message);

  // Deliver messages
  // Send via Email
  if (method == DeliveryMethodV1.Email || method == DeliveryMethodV1.All) {
    return await _sendEmailMessageToRecipients(
        correlationId, recipientIds, subscription, newMessage, parameters);
  }
  // Send via SMS
  if (method == DeliveryMethodV1.Sms || method == DeliveryMethodV1.All) {
    return await _sendSmsMessageToRecipients(
        correlationId, recipientIds, subscription, newMessage, parameters);
  }
}