Пример #1
0
        public bool RegisterPushDevice(UserProfile user, PushDeviceRegistrationModel deviceRegistrationModel)
        {
            UserPushNotificationDevice userPushNotificationDevice = _userPushNotificationDeviceRepository.ReadUserDevice(user.UserId, deviceRegistrationModel.DeviceId, deviceRegistrationModel.DeviceOS);

            if (userPushNotificationDevice == null)
            {
                userPushNotificationDevice = new UserPushNotificationDevice()
                {
                    DeviceOS = deviceRegistrationModel.DeviceOS,
                    DeviceId = deviceRegistrationModel.DeviceId,
                    UserId   = user.UserId
                };
            }

            userPushNotificationDevice.ProviderToken      = deviceRegistrationModel.ProviderToken;
            userPushNotificationDevice.ProviderEndpointId = _pushNotificationMessageProvider.RegisterRecipient(userPushNotificationDevice);
            userPushNotificationDevice.Enabled            = true;

            _userPushNotificationDeviceRepository.CreateOrUpdate(userPushNotificationDevice);
            _uow.SaveChanges();

            // now, to create/confirm/update the application endpoint in AWS
            return(true);
        }