public async Task <AlertsResponse> RequestGlobalAlerts(IEnumerable <string> deviceIds, Action onReconnect = null, bool silentMode = false) { try { //prepare request var request = new AlertsRequest(deviceIds); //get response var response = await this.DoRequest <AlertsRequest, AlertsResponse>(request, withCaching : false, onReconnect : onReconnect, silentMode : silentMode); //after-response tasks this.UpdateDevices(response, deviceIds); if (response != null && response.IsSuccessful) { DataCache.SetActiveAlertsCount(response.Body?.ActiveAlertsCount); } return(response); } catch (Exception e) { LogUtility.LogException(e); } return(null); }
public async Task <AlertsResponse> RequestAlerts(Device device, Action onReconnect = null, bool silentMode = false) { try { //prepare request var deviceRequest = new DeviceRequest(device); var request = new AlertsRequest(new DeviceRequest[] { deviceRequest }); //get response var response = await this.DoRequest <AlertsRequest, AlertsResponse>(request, withCaching : false, onReconnect : onReconnect, silentMode : silentMode); //after-response tasks this.UpdateDevices(response, new string[] { device.Id }); return(response); } catch (Exception e) { LogUtility.LogException(e); } return(null); }