private void AddMessageToDataSource(Twilio.IPMessaging.Message message) { var identity = JsonConvert.DeserializeObject <IdentityToken>(message.Author); // Get Agent Avatar if (identity.identityId != AppSettingsManager.ClientId && GravatarManager.GetImage(GravatarUser.Agent) == null) { GravatarManager.SetImage(GravatarUser.Agent, identity.picture); } // Get Customer Avatar if (identity.identityId == AppSettingsManager.ClientId && GravatarManager.GetImage(GravatarUser.Customer) == null) { GravatarManager.SetImage(GravatarUser.Customer, identity.picture); } var jmsg = new JMessage ( identity.identityId, identity.name, message.DateUpdatedAsDate, message.Body ); messages.Add(jmsg); SystemSoundPlayer.PlayMessageReceivedSound(); FinishReceivingMessage(true); ScrollToBottom(true); }
public async Task Execute(CancellationToken cancellationToken, IProgress <double> progress) { var gravatarManager = new GravatarManager(_providerManager, _logger); var users = _userManager.Users.ToList(); var percentPerUser = 100 / users.Count; var numComplete = 0; double currentProgress = 0; foreach (var user in users) { await gravatarManager.Post(user, CancellationToken.None).ConfigureAwait(false); numComplete++; currentProgress = percentPerUser * numComplete; progress.Report(currentProgress); } }
public override IMessageAvatarImageDataSource GetAvatarImageData(MessagesCollectionView collectionView, NSIndexPath indexPath) { UIImage image = null; var index = (int)indexPath.Item; if (messages[index].SenderId == AppSettingsManager.ClientId) { image = GravatarManager.GetImage(GravatarUser.Customer); } else { image = GravatarManager.GetImage(GravatarUser.Agent); } // Default is (34, 34) for diameter if (image != null) { return(MessagesAvatarImageFactory.CreateAvatarImage(image, 34)); } return(null); }