Esempio n. 1
0
        private async Task SubscribeUserAsync(SubscribedCallback callback)
        {
            if (await _userDataStore.ExistAsync(x => x.ViberId == callback.User.Id).ConfigureAwait(false))
            {
                return;
            }

            var entity = ViberUserFactory.ToEntity(callback);

            await _userDataStore.CreateAsync(entity).ConfigureAwait(false);

            await _userDataStore.SaveAsync().ConfigureAwait(false);
        }
Esempio n. 2
0
        public static ViberUserEntity ToEntity(SubscribedCallback callback)
        {
            var now = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();

            return(new ViberUserEntity
            {
                Avatart = callback.User.Avatart,
                Country = callback.User.Country,
                CreatedTimestamp = now,
                UpdatedTimestamp = now,
                IsSubscribed = true,
                Language = callback.User.Language,
                SessionId = Guid.NewGuid().ToString(),
                Name = callback.User.Name,
                ViberId = callback.User.Id
            });
        }
Esempio n. 3
0
 public void Unsubscribe <T>(SubscribedCallback cb) where T : IEvent
 {
     unsubscribeRequestQueue.Enqueue(new KeyValuePair <Type, SubscribedCallback>(typeof(T), cb));
 }