conversationUpdated method

  1. @override
void conversationUpdated(
  1. ConversationUpdatedData event
)
override

Implementation

@override
void conversationUpdated(ConversationUpdatedData event) {
  TwilioConversations.log(
      'conversationUpdated => ${event.reason} sid: ${event.conversation?.sid}');
  final conversationData = event.conversation;
  final reasonString = event.reason;
  final reason = reasonString != null
      ? EnumToString.fromString(ConversationUpdateReason.values, reasonString)
      : null;
  final conversationSid = conversationData?.sid;

  if (conversationData == null || reason == null || conversationSid == null) {
    return;
  }

  final conversation = conversations[conversationSid];
  if (conversation != null) {
    updateConversationFromMap(
        Map<String, dynamic>.from(conversationData.encode() as Map));
    _onConversationUpdatedCtrl
        .add(ConversationUpdatedEvent(conversation, reason));
  }
}