public async Task <IActionResult> Trigger(TriggerDevicesModel model)
        {
            var validationResult = _service.ValidateTriggerDevices(User, model);

            if (!validationResult.Valid)
            {
                return(BadRequest(validationResult.Result));
            }
            var resp = await _service.TriggerDevicesAsync(model);

            return(Ok(new AppResultBuilder().Success(resp)));
        }
Пример #2
0
        public async Task <BatchResponse> TriggerDevicesAsync(TriggerDevicesModel model)
        {
            var messages = model.DeviceIds.Select(id => new Message
            {
                Topic = id,
                Data  = new Dictionary <string, string>()
                {
                    { "action", model.Action }
                }
            });

            return(await FirebaseMessaging.DefaultInstance.SendAllAsync(messages));
        }
Пример #3
0
 public ValidationResult ValidateTriggerDevices(ClaimsPrincipal principal,
                                                TriggerDevicesModel model)
 {
     return(ValidationResult.Pass());
 }