public async Task ProcessUser(Rest.Yammer.User user, Guid sourceId, Credential creds) { var received = Events.User.From(user, sourceId); var existing = _store.GetUser(sourceId, received.Id); if (existing == null) { _store.Add(sourceId, received); } await _events.Sync(creds, sourceId, received, existing, Math.Min(received.KnownSince.ToUnixTimeMilliseconds(), (existing?.KnownSince ?? DateTimeOffset.MaxValue).ToUnixTimeMilliseconds())); }
public static User From(Rest.Yammer.User user, Guid sourceId) { return(new User { AvatarUrl = user.MugshotUrl.AbsoluteUri, Description = user.JobTitle, Name = user.FullName, Network = Network.Yammer, Id = user.Id.AsId <User>(Network.Yammer), SourceId = sourceId }); }