/// <summary> /// /// </summary> public void Run() { var stop = false; var i = 1; while (!stop) // never stop :) { try { Console.WriteLine(); Console.WriteLine($"################## ITERATION {i} ##################"); var idList = GetSearchResultIDs(); Console.WriteLine($"{idList.Count} centres identifiés autour de {_city}"); ProcessIDs(idList, i); Thread.Sleep(10000); // Dodo pour 10s pour eviter de se faire ban i++; } catch (Exception e) { _logger.WriteLine(e.Message); _slackClient.SendMessage(e.Message, true); } } }
private void SendSlackMessage(ConcurrentBag <ReservationRequest> priorityReservations) { var slackClient = new SlackClient(); var payload = CreatePayloadFromReservationInformation(CommunicationService.GetSlackChannel(), priorityReservations.Count); slackClient.SendMessage(payload, CommunicationService.GetSlackWebHook()); }
public static async Task Run( [ServiceBusTrigger("atmosphere-face-training-sent", AccessRights.Listen, Connection = Settings.SB_CONN_NAME)] string message, TraceWriter log) { log.Info($"Queue trigger '{nameof(CleanupTag)}' with message: {message}"); var slackInput = message.FromJson <TaggingMessage>(); var firstName = (await getMapping(slackInput.UserId))?.FirstName; await Task.WhenAll( storeFaceUserMapping(slackInput.FaceId, slackInput.UserId), SlackClient.SendMessage(getMessage(slackInput.FaceId, firstName), log, slackInput.ResponseUrl)); }
public static async Task Run( [ServiceBusTrigger("atmosphere-face-cleanup", AccessRights.Listen, Connection = Settings.SB_CONN_NAME)] string message, TraceWriter log) { log.Info($"Queue trigger '{nameof(CleanupTag)}' with message: {message}"); var slackInput = message.FromJson <TaggingMessage>(); var rowsDeleted = await cleanupDb(slackInput.FaceId); log.Info($"{rowsDeleted} rows cleaned up from DB for faceId {slackInput.FaceId}"); await SlackClient.SendMessage(getMessage(slackInput.FaceId), log, slackInput.ResponseUrl); }
public static async Task Run( [ServiceBusTrigger("atmosphere-face-identified", AccessRights.Listen, Connection = Settings.SB_CONN_NAME)] string message, TraceWriter log) { log.Info($"Topic trigger '{nameof(FinalizeIdentified)}' with message: {message}"); var tupleMessage = message.FromJson <Tuple <CognitiveIdentifyResponse.Candidate, Face> >(); var candidate = tupleMessage.Item1; var face = tupleMessage.Item2; var firstName = await getUserName(face.Id); await SlackClient.SendMessage(getMessage(face.Id.ToString(), firstName, candidate.Confidence), log); }
public void SendMessage_With_Incorrect_Url() { //ARRANGE string incorrectSlackUrl = "https://hooks.slack.com"; SlackClient sut = new SlackClient(incorrectSlackUrl); Payload payload = new Payload(); //ACT sut.SendMessage(payload); //ASSERT Assert.IsTrue(true); }
public void SendMessage_With_Incorrect_Slack_Url() { //ARRANGE string incorrectSlackUrlWithAccessToken = "https://hooks.slack.com/services/T0ZA94TDE/B0ZA97MC0/CvraASyHz69dL5VGyE1dbYn"; SlackClient sut = new SlackClient(incorrectSlackUrlWithAccessToken); Payload payload = new Payload(); //ACT sut.SendMessage(payload); //ASSERT Assert.IsTrue(true); }
public void PostMessage() { string urlWithAccessToken = ""; // Use your slack webhook here : D SlackClient client = new SlackClient(); SlackPayload payload = new SlackPayload() { Channel = "avengers", Text = "Here we go!", }; client.SendMessage(payload, urlWithAccessToken); }
public void SendMessage_With_Default_Payload() { //ARRANGE SlackClient sut = new SlackClient(_slackUrlWithAccessToken); ResponseSlackClientEnum expected = ResponseSlackClientEnum.ok; ResponseSlackClientEnum actual; Payload payload = new Payload(); //ACT actual = sut.SendMessage(payload); //ASSERT Assert.AreEqual(expected, actual); }
private void TestButton_Click(object sender, EventArgs e) { var client = new SlackClient(); var webHook = this.WebHookUrlTextBox.Text; var channel = this.ChannelTextBox.Text; var user = this.UserTextBox.Text; var text = this.SimpleMessageTextBox.Text; var message = new SlackMessage(); message.Username = user; message.Text = text; message.Attachments = this.SlackMessage.Attachments.Select(z => { var a = new Attachment(); a.Text = z.Text; a.PreText = z.PreText; a.AuthorIconUrl = z.AuthorIconUrl; a.AuthorName = z.AuthorName; if (z.Fields != null) { a.Fields = z.Fields.Select(f => new Field { Title = f.Title, Value = f.Value, Short = f.Short }).ToArray(); } a.FooterIconUrl = z.FooterIconUrl; a.ImageUrl = z.ImageUrl; a.ThumbUrl = z.ThumbUrl; a.TimeStamp = z.TimeStamp; a.Title = z.Title; a.TitleLinkUrl = z.TitleLinkUrl; a.AuthorLink = z.AuthorLink; a.Color = z.Color; a.Fallaback = z.Fallaback; a.Footer = z.Footer; return(a); }).ToArray(); this.ResponseTextBox.Text = client.SendMessage(message, webHook); }
public void SendMessage_With_Attachments_Payload() { //ARRANGE SlackClient sut = new SlackClient(_slackUrlWithAccessToken); ResponseSlackClientEnum expected = ResponseSlackClientEnum.ok; ResponseSlackClientEnum actual; Payload payload = new Payload(); payload.Attachments.Add(new Attachment("Fallback Attachment, Test from SlackClient.ServiceLibrary.IntegrationTests") { Color = "danger", Text = "Optional Text from test", Fields = new List <Field>() { new Field("ShortField1") { Short = true, Value = "Value for Short Field 1" }, new Field("ShortField2") { Short = true, Value = "Value for Short Field 2" }, new Field("LongField1") { Short = false, Value = "Value for *Long Long Long Long* Long Field 1" }, new Field("LongField2WithFormat") { Short = false, Value = "```Value for Long Long Long Long Long Field 2```" } } }); //ACT actual = sut.SendMessage(payload); //ASSERT Assert.AreEqual(expected, actual); }
public override DTSExecResult Execute(Connections connections, VariableDispenser variableDispenser, IDTSComponentEvents componentEvents, IDTSLogging log, object transaction) { try { var client = new SlackClient(); var message = new SlackMessage(); message.Text = this.Text; message.Username = this.User; client.SendMessage(message, this.WebHookUrl); } catch (Exception e) { componentEvents.FireError(0, "Slact Taks", "Error sending message to Slack. Webhook = " + WebHookUrl, "", 0); } //Always retun sucess because we do not want to fail package if we cannot send message to Slack //TODO: Should this be a setting? return(DTSExecResult.Success); }
public void SendMessage_With_Link_In_Payload() { //ARRANGE SlackClient sut = new SlackClient(_slackUrlWithAccessToken); ResponseSlackClientEnum expected = ResponseSlackClientEnum.ok; ResponseSlackClientEnum actual; Payload payload = new Payload() { Username = "******", Text = @"https://slack.com/: <https://slack.com/|Click aquí>", Channel = "#devtest" }; //ACT actual = sut.SendMessage(payload); //ASSERT Assert.AreEqual(expected, actual); }
public void SendMessage_With_Simple_Payload() { //ARRANGE SlackClient sut = new SlackClient(_slackUrlWithAccessToken); ResponseSlackClientEnum expected = ResponseSlackClientEnum.ok; ResponseSlackClientEnum actual; Payload payload = new Payload() { Username = "******", Text = "MessageSample From Integrarion Tests .Net", Channel = "#devtest" }; //ACT actual = sut.SendMessage(payload); //ASSERT Assert.AreEqual(expected, actual); }
private void TestButton_Click(object sender, EventArgs e) { var client = new SlackClient(); var webHook = this.WebHookUrlTextBox.Text; var channel = this.ChannelTextBox.Text; var user = this.UserTextBox.Text; var text = this.TextTextBox.Text; var attachement = new Attachment { AuthorIconUrl = this.AttachmentAuthorIconUrlTextBox.Text, Text = this.AttachmentTextTextBox.Text, AuthorLink = this.AttachmentAuthorLinkUrlTextBox.Text, AuthorName = this.AttachmentAuthorNameTextBox.Text, Color = this.AttachmentColorTextBox.Text, Fallaback = this.AttachmentFallabackTextTextBox.Text, Footer = this.AttachmentFooterTextBox.Text, FooterIconUrl = this.AttachmentFooterIconUrlTextBox.Text, ImageUrl = this.AttachmentImageUrlTextBox.Text, PreText = this.AttachmentPreTextTextBox.Text, ThumbUrl = this.AttachmentThumbUrlTextBox.Text, TimeStamp = (int)this.AttachmentTimeStampDatePicker.Value.ToEpochTime(), Title = this.AttachmentTitleTextBox.Text, TitleLinkUrl = this.AttachmentTitleLinkUrlTextBox.Text }; var message = new SlackMessage { Username = user, Text = text, Attachments = new [] { attachement } }; this.ResponseTextBox.Text = client.SendMessage(message, webHook); }
public void SendMessage_With_EmojiUrl_In_Payload() { //ARRANGE SlackClient sut = new SlackClient(_slackUrlWithAccessToken); ResponseSlackClientEnum expected = ResponseSlackClientEnum.ok; ResponseSlackClientEnum actual; Payload payload = new Payload() { Username = "******", Text = @"Text with custom Emoji Icon", Channel = "#devtest", IconEmoji = @":ghost:" }; //ACT actual = sut.SendMessage(payload); //ASSERT Assert.AreEqual(expected, actual); }
public void SendMessage_With_IconUrl_In_Payload() { //ARRANGE SlackClient sut = new SlackClient(_slackUrlWithAccessToken); ResponseSlackClientEnum expected = ResponseSlackClientEnum.ok; ResponseSlackClientEnum actual; Payload payload = new Payload() { Username = "******", Text = @"Text with custom Icon Url", Channel = "#devtest", IconUrl = @"https://slack.com/img/icons/app-57.png" }; //ACT actual = sut.SendMessage(payload); //ASSERT Assert.AreEqual(expected, actual); }
public static async Task Run( [ServiceBusTrigger("atmosphere-face-not-identified", AccessRights.Listen, Connection = Settings.SB_CONN_NAME)] string message, TraceWriter log) { log.Info($"Topic trigger '{nameof(RequestTaggingOnSlack)}' with message: {message}"); var face = message.FromJson <Face>(); // check image size using (var inputStream = BlobStorageClient.DownloadBlob(Settings.CONTAINER_RECTANGLES, $"{face.Id}.jpg")) using (var sourceImage = Image.FromStream(inputStream)) { log.Info($"The size of face thumbnail is {sourceImage.Size}"); if (sourceImage.Size.Width < MIN_WIDTH || sourceImage.Size.Height < MIN_HEIGHT) { await SlackClient.SendMessage(getMessageImageTooSmall(face.Id, sourceImage.Size), log); } else { await SlackClient.SendMessage(getMessageForTagging(face.Id), log); } } }
public void TestMessage() { var client = new SlackClient(""); client.SendMessage("", "", "", ""); }