onMessageIncoming method

void onMessageIncoming(
  1. int messageId,
  2. int accId,
  3. String from,
  4. String body,
)

Handle library event raised when received new message from remote side

Implementation

void onMessageIncoming(int messageId, int accId, String from, String body) {
  _logs?.print('onMessageIncoming messageId:$messageId accId:$accId from:$from');

  int idx = _messages.indexWhere((msg) => (msg.myMessageId == messageId));
  if(idx != -1) {
    _logs?.print('message with id:$messageId already exist');
    return;
  }

  String accUri = _accountsModel.getUri(accId);
  MessageModel newMsg = MessageModel.incoming(accUri, from, body);
  _messages.add(newMsg);

  notifyListeners();

  if(_messages.length > maxItems)  _messages.removeAt(0);
  _raiseSaveChanges();
}