public async Task <IActionResult> Subscribe(BellumGensPushSubscriptionViewModel sub)
        {
            BellumGensPushSubscription push = new()
            {
                Endpoint       = sub.Endpoint,
                ExpirationTime = sub.ExpirationTime,
                UserId         = (await GetAuthUser())?.Id,
                P256dh         = sub.Keys.P256dh,
                Auth           = sub.Keys.Auth
            };

            _dbContext.BellumGensPushSubscriptions.Add(push);

            try
            {
                await _dbContext.SaveChangesAsync();
            }
            catch (DbUpdateException e)
            {
                System.Diagnostics.Trace.TraceError("Push notification sub error: " + e.Message);
                return(Ok("Sub already exists..."));
            }
            return(Ok(push));
        }
    }
Ejemplo n.º 2
0
        public IHttpActionResult Subscribe(BellumGensPushSubscriptionViewModel sub)
        {
            BellumGensPushSubscription push = new BellumGensPushSubscription()
            {
                endpoint       = sub.endpoint,
                expirationTime = sub.expirationTime,
                userId         = GetAuthUser()?.Id,
                p256dh         = sub.keys.p256dh,
                auth           = sub.keys.auth
            };

            _dbContext.PushSubscriptions.Add(push);

            try
            {
                _dbContext.SaveChanges();
            }
            catch (DbUpdateException e)
            {
                System.Diagnostics.Trace.TraceError("Push notification sub error: " + e.Message);
                return(Ok("Sub already exists..."));
            }
            return(Ok(push));
        }