private void Update(EvaluationContext context) { var search = Search.GetValue(context); var collectionId = CollectionId.GetValue(context); var triggerRequest = TriggerRequest.GetValue(context); if (triggerRequest && (search != _searchQuery || collectionId != _collectionId)) { TriggerRequest.Value = false; TriggerRequest.TypedInputValue.Value = false; TriggerRequest.DirtyFlag.Invalidate(); _maxResultCount = MaxResultCount.GetValue(context); _apiToken = ApiToken.GetValue(context); _searchQuery = search; _collectionId = collectionId; _request = SearchImagesTask(); } var photoIndex = GetPhotoIndex.GetValue(context); if (photoIndex != _photoIndex) { _photoIndex = photoIndex; if (_photos != null && _photos.Count != 0) { var index = Math.Abs(_photoIndex) % _photos.Count; PhotoAuthor.Value = _photos[index].User.Name; PhotoUrl.Value = _photos[index].Urls.Regular; Log.Debug($"Update photo properties: Author {PhotoAuthor.Value} Url {PhotoUrl.Value}"); } } }
static void Main(string[] args) { string name = "TEST"; string message = String.Empty; string uri = "http://localhost:2525/alarm"; bool auth = false; string user = string.Empty; string pass = string.Empty; string apikey = string.Empty; bool help = false; OptionSet paramset = new OptionSet() { { "m|message=", "The {MESSAGE} of the Triggertest.", s => message = s }, { "n|name=", "The {NAME} of the Trigger to test.", s => name = s }, { "u|uri=", "The {URI} to send the trigger request to.", s => uri = s }, { "a|auth", "Authenticate at the server", s => auth = s != null }, { "c|user="******"Authenticate as {USER}", s => user = s }, { "k|key=", "Set API-Key to {KEY}", s => apikey = s }, { "p|pass="******"Authenticate with password {PASSWORD}", s => pass = s }, { "h|help", "Show help", v => help = v != null } }; paramset.Parse(args); if (name == String.Empty) { Console.WriteLine("AlarmSystem TriggerTest Program"); Console.WriteLine("By Merlin Steuer in 2015"); Console.WriteLine(); paramset.WriteOptionDescriptions(Console.Out); } else { TriggerRequest test = new TriggerRequest(name, (message == string.Empty), message, apikey); TriggerRequestSender sender = new TriggerRequestSender(uri); sender.Authenticate = auth; sender.Username = user; sender.Password = pass; sender.ApiKey = apikey; if (sender.Send(test)) { Console.WriteLine("Success!"); } else { Console.WriteLine("Error!"); } } }
public async Task <ActionResult> Trigger([FromBody] TriggerRequest triggerRequest) { var response = _rabbitMqService.QueueTriggerRequest(triggerRequest); if (response.Status == QueueTriggerRequestStatus.Queued) { return(Ok(response.Status.ToString())); } throw new Exception("Failed to queue request."); }
public static async Task <HttpResponseMessage> TriggerMethod([HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] TriggerRequest req, [DurableClient] IDurableOrchestrationClient starter, ILogger log) { log.LogInformation("C# HTTP trigger function processed a request."); var instanceId = Guid.NewGuid().ToString(); try { instanceId = await starter.StartNewAsync <(string, string)> (nameof(OrchestrationFunction.Orchestrate), instanceId, ("input1", "input2")); } catch (Exception e) { log.LogError("something went wrong in trigger"); throw e; } return(starter.CreateCheckStatusResponse(req, instanceId)); }
public TriggerResponse QueueTriggerRequest(TriggerRequest triggerRequest) { try { _rabbitMqClient.PublishMessage(triggerRequest); return(new TriggerResponse() { Status = QueueTriggerRequestStatus.Queued }); } catch (Exception e) { Console.WriteLine(e); return(new TriggerResponse() { Status = QueueTriggerRequestStatus.FailedToQueue }); } }
public bool Send(TriggerRequest request) { using (HttpClient client = new HttpClient()) { XDocument doc = new XDocument(); XElement root; doc.Add(root = new XElement("Request")); root.Add(new XElement("ApiKey", ApiKey)); root.Add(new XElement("Type", "TriggerRequest")); root.Add(XElement.Parse(request.ToString())); HttpContent content = new StringContent(doc.ToString(), Encoding.UTF8); if (Authenticate) { string authString = String.Format("{0}:{1}", Username, Password); var bytes = Encoding.UTF8.GetBytes(authString); var header = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(bytes)); client.DefaultRequestHeaders.Authorization = header; } using (HttpResponseMessage resp = client.PostAsync(_uri, content).Result) { Console.WriteLine(resp.StatusCode); if (resp.IsSuccessStatusCode) { return(true); } else { return(false); } } } }
private RequestProcessingResult ProcessRequestString(string requestString) { Log.Add(LogLevel.Verbose, PluginName, requestString); XDocument doc = XDocument.Parse(requestString); XElement root = doc.Element("Request"); if (root == null) { return(RequestProcessingResult.XmlError); } XElement typeElement = root.Element("Type"); XElement keyElement = root.Element("ApiKey"); string source = string.Empty; if (typeElement == null) { return(RequestProcessingResult.XmlError); } if (keyElement == null) { return(RequestProcessingResult.XmlError); } // Resolve API-Key MySqlCommand cmd = DatabaseService.TryCreateCommand(); string sql = "SELECT name FROM api_keys WHERE `key`=@key"; cmd.CommandText = sql; cmd.Parameters.AddWithValue("key", keyElement.Value); using (MySqlDataReader reader = cmd.ExecuteReader()) { if (reader.Read()) { source = reader.GetString("name"); reader.Close(); Log.Add(LogLevel.Verbose, PluginName, string.Format("Found application {0} for key {1}", source, keyElement.Value)); } else { Log.Add(LogLevel.Warning, PluginName, "No Application found for key " + keyElement.Value); return(RequestProcessingResult.ApiKeyError); } } // Execute Request string type = typeElement.Value; if (type.Equals("TriggerRequest")) { XElement requestElement = root.Element("TriggerRequest"); if (requestElement != null) { TriggerRequest request = TriggerRequest.Parse(requestElement.ToString()); request.Source = source; if (OnTriggerRequest != null) { OnTriggerRequest(this, request); } return(RequestProcessingResult.Success); } else { return(RequestProcessingResult.XmlError); } } else { return(RequestProcessingResult.UnknownRequest); } }
public void HandleTriggerRequest(object sender, TriggerRequest request) { Log.Add(LogLevel.Debug, "Trigger", "Received trigger request"); ExecuteTrigger(request.TriggerText, request.SendDefaultMessage, request.Message, request.Source); }
public void Put([FromBody] TriggerRequest triggerRequest) { }
/// <summary> Setter constructor. </summary> public Trigger(TriggerRequest request) { Request = request; Response = new TriggerResponse(); }
/// <summary> /// When a triggering request is sent to the producer from <see cref="FeedProducerAsync"/>, the producer pushes this request to the Extraction step to initiate the ETL process. /// You can pass any custom data in your request's payload, if necessary. /// </summary> /// <param name="request"></param> /// <returns>A task to monitor the extraction step.</returns> protected abstract Task <TExtractorResult> ExtractAsync(TriggerRequest request);
/// <summary> /// used by Workflows to check for trigger events. Polled periodically. /// </summary> /// <param name="request">The request received from the client.</param> /// <param name="context">The context of the server-side call handler being invoked.</param> /// <returns>The response to send back to the client (wrapped by a task).</returns> public override Task <TriggerResponse> perform_trigger(TriggerRequest request, ServerCallContext context) { //return null; //return new Task<TriggerResponse>(() => { return new TriggerResponse(); }); return(Task.FromResult(new TriggerResponse())); }