public async Task <IActionResult> AddToken([FromBody] FcmToken fcmToken)
        {
            try
            {
                string userId = User.FindFirst(ClaimTypes.NameIdentifier).Value;
                fcmToken.TokenOwner = userId;
                FcmToken existingToken = await _fcmTokenRepo.Read(fcmToken.Token);

                if (existingToken != null && existingToken.TokenOwner != fcmToken.TokenOwner)
                {
                    await _fcmTokenRepo.Update(fcmToken.Token, fcmToken.TokenOwner);

                    return(Ok());
                }
                else if (existingToken == null)
                {
                    await _fcmTokenRepo.Create(fcmToken.Token, fcmToken.TokenOwner);

                    return(Ok());
                }
                else
                {
                    return(Ok());
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
Exemple #2
0
 public async Task Delete(FcmToken fcmToken)
 {
     try
     {
         _dbContext.FcmTokens.Remove(fcmToken);
         await _dbContext.SaveChangesAsync();
     }
     catch (Exception e)
     {
         throw new Exception(e.Message);
     }
 }
        public async Task Create(int userId, string fcmtoken)
        {
            var token = await _context.FcmToken.SingleOrDefaultAsync(s => s.FcmToken1 == fcmtoken);

            if (token == null)
            {
                var fcmToken = new FcmToken
                {
                    UserId    = userId,
                    FcmToken1 = fcmtoken
                };
                await _context.AddAsync(fcmToken);
            }
        }
Exemple #4
0
        public async Task AddFirebaseToken(string token)
        {
            var prevToken = await dbContext.FcmToken.FirstOrDefaultAsync(t => t.Token == token);

            if (prevToken == null)
            {
                var t = new FcmToken
                {
                    UserId = await currentUserService.CurrentUserId(),
                    Token  = token
                };

                dbContext.FcmToken.Add(t);
            }

            await dbContext.SaveChangesAsync();
        }
        public async Task <ActionResult> PostAndroidToken([Required] string token)
        {
            var fcmToken = new FcmToken()
            {
                Uid       = User.Id(),
                Timestamp = DateTime.UtcNow,
                Token     = token,
                Platform  = MobilePlatform.Android
            };

            await _dbContext.Tokens
            .Upsert(fcmToken)
            .On(x => new { x.Token })
            .RunAsync();

            return(NoContent());
        }
Exemple #6
0
        public async Task Update(string token, string userId)
        {
            try
            {
                FcmToken fcmToken = await _dbContext.FcmTokens.FirstOrDefaultAsync(t => t.Token == token);

                if (fcmToken != null)
                {
                    fcmToken.TokenOwner = userId;
                    _dbContext.FcmTokens.Update(fcmToken);
                    await _dbContext.SaveChangesAsync();
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }