This is an automated email from the ASF dual-hosted git repository.

zbendhiba pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git


The following commit(s) were added to refs/heads/main by this push:
     new 5fa53bf  Slack : fix native support for Webhook URL + add test 
coverage Fixes #3541
5fa53bf is described below

commit 5fa53bf7a64d03ce2525dbc88700a301cb73eb4c
Author: Zineb Bendhiba <[email protected]>
AuthorDate: Tue Mar 1 14:51:27 2022 +0100

    Slack : fix native support for Webhook URL + add test coverage
    Fixes #3541
---
 .../component/slack/deployment/SlackProcessor.java |  6 ++
 integration-tests/slack/pom.xml                    |  2 +-
 .../quarkus/component/slack/it/SlackResource.java  | 69 ++++++++++++++++++++--
 .../slack/it/model/SlackMessageResponse.java       | 49 +++++++++++++++
 .../quarkus/component/slack/it/SlackTest.java      | 53 +++++++++++++++--
 .../component/slack/it/SlackTestResource.java      |  2 +-
 ...ge.json => slackChatPostMessageWithBlocks.json} |  2 +-
 ...age.json => slackChatPostMessageWithToken.json} |  2 +-
 ...e.json => slackChatPostMessageWithWebhook.json} |  4 +-
 ... => slackGetConversationHistoryWithBlocks.json} |  4 +-
 ...n => slackGetConversationHistoryWithToken.json} |  2 +-
 ...=> slackGetConversationHistoryWithWebhook.json} |  4 +-
 12 files changed, 177 insertions(+), 22 deletions(-)

diff --git 
a/extensions/slack/deployment/src/main/java/org/apache/camel/quarkus/component/slack/deployment/SlackProcessor.java
 
b/extensions/slack/deployment/src/main/java/org/apache/camel/quarkus/component/slack/deployment/SlackProcessor.java
index b8af065..e4c54a2 100644
--- 
a/extensions/slack/deployment/src/main/java/org/apache/camel/quarkus/component/slack/deployment/SlackProcessor.java
+++ 
b/extensions/slack/deployment/src/main/java/org/apache/camel/quarkus/component/slack/deployment/SlackProcessor.java
@@ -23,6 +23,7 @@ import 
io.quarkus.deployment.builditem.ExtensionSslNativeSupportBuildItem;
 import io.quarkus.deployment.builditem.FeatureBuildItem;
 import io.quarkus.deployment.builditem.IndexDependencyBuildItem;
 import io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem;
+import org.apache.camel.component.slack.helper.SlackMessage;
 import org.jboss.jandex.IndexView;
 
 class SlackProcessor {
@@ -56,4 +57,9 @@ class SlackProcessor {
                 .toArray(String[]::new);
         return new ReflectiveClassBuildItem(false, true, slackApiClasses);
     }
+
+    @BuildStep
+    ReflectiveClassBuildItem registerForReflection() {
+        return new ReflectiveClassBuildItem(false, true, SlackMessage.class);
+    }
 }
diff --git a/integration-tests/slack/pom.xml b/integration-tests/slack/pom.xml
index a61a275..53e8ca0 100644
--- a/integration-tests/slack/pom.xml
+++ b/integration-tests/slack/pom.xml
@@ -42,7 +42,7 @@
         </dependency>
         <dependency>
             <groupId>io.quarkus</groupId>
-            <artifactId>quarkus-resteasy</artifactId>
+            <artifactId>quarkus-resteasy-jackson</artifactId>
         </dependency>
 
         <!-- test dependencies -->
diff --git 
a/integration-tests/slack/src/main/java/org/apache/camel/quarkus/component/slack/it/SlackResource.java
 
b/integration-tests/slack/src/main/java/org/apache/camel/quarkus/component/slack/it/SlackResource.java
index aa01596..abf5fa2 100644
--- 
a/integration-tests/slack/src/main/java/org/apache/camel/quarkus/component/slack/it/SlackResource.java
+++ 
b/integration-tests/slack/src/main/java/org/apache/camel/quarkus/component/slack/it/SlackResource.java
@@ -17,6 +17,9 @@
 package org.apache.camel.quarkus.component.slack.it;
 
 import java.net.URI;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
 
 import javax.enterprise.context.ApplicationScoped;
 import javax.inject.Inject;
@@ -29,8 +32,13 @@ import javax.ws.rs.core.MediaType;
 import javax.ws.rs.core.Response;
 
 import com.slack.api.model.Message;
+import com.slack.api.model.block.DividerBlock;
+import com.slack.api.model.block.LayoutBlock;
+import com.slack.api.model.block.SectionBlock;
+import com.slack.api.model.block.composition.MarkdownTextObject;
 import org.apache.camel.ConsumerTemplate;
 import org.apache.camel.ProducerTemplate;
+import org.apache.camel.quarkus.component.slack.it.model.SlackMessageResponse;
 import org.eclipse.microprofile.config.inject.ConfigProperty;
 
 @Path("/slack")
@@ -48,19 +56,70 @@ public class SlackResource {
     @ConfigProperty(name = "slack.token")
     String slackToken;
 
+    @ConfigProperty(name = "slack.webhook.url")
+    String slackWebHookUrl;
+
     @Path("/messages")
     @GET
-    @Produces(MediaType.TEXT_PLAIN)
-    public String getSlackMessages() throws Exception {
+    @Produces(MediaType.APPLICATION_JSON)
+    public SlackMessageResponse getSlackMessages() throws Exception {
         Message message = 
consumerTemplate.receiveBody("slack://test-channel?maxResults=1&" + 
getSlackAuthParams(),
                 5000L, Message.class);
-        return message.getText();
+        return new SlackMessageResponse(message.getText(), message.getBlocks() 
!= null ? message.getBlocks().size() : 0);
+    }
+
+    @Path("/message/token")
+    @POST
+    @Consumes(MediaType.TEXT_PLAIN)
+    public Response createSlackMessageWithToken(String message) throws 
Exception {
+        producerTemplate.requestBody("slack://test-channel?" + 
getSlackAuthParams(), message);
+        return Response
+                .created(new URI("https://camel.apache.org/";))
+                .build();
     }
 
-    @Path("/message")
+    @Path("/message/webhook")
     @POST
     @Consumes(MediaType.TEXT_PLAIN)
-    public Response createSlackMessage(String message) throws Exception {
+    public Response createSlackMessageWithWebhook(String message) throws 
Exception {
+        
producerTemplate.requestBody(String.format("slack://test-channel?webhookUrl=%s",
 slackWebHookUrl), message);
+        return Response
+                .created(new URI("https://camel.apache.org/";))
+                .build();
+    }
+
+    @Path("/message/block")
+    @POST
+    @Consumes(MediaType.TEXT_PLAIN)
+    public Response createBlockMessage(String text) throws Exception {
+        List<LayoutBlock> blocks = new ArrayList();
+        blocks.add(SectionBlock
+                .builder()
+                .text(MarkdownTextObject
+                        .builder()
+                        .text(text)
+                        .build())
+                .build());
+        blocks.add(SectionBlock
+                .builder()
+                .fields(Arrays.asList(
+                        MarkdownTextObject
+                                .builder()
+                                .text("*Testing Camel Quarkus blocks*")
+                                .build(),
+                        MarkdownTextObject
+                                .builder()
+                                .text("*You should be able to see these 
blocks")
+                                .build()))
+                .build());
+        blocks.add(DividerBlock
+                .builder()
+                .build());
+
+        Message message = new Message();
+        message.setText(text);
+        message.setBlocks(blocks);
+
         producerTemplate.requestBody("slack://test-channel?" + 
getSlackAuthParams(), message);
         return Response
                 .created(new URI("https://camel.apache.org/";))
diff --git 
a/integration-tests/slack/src/main/java/org/apache/camel/quarkus/component/slack/it/model/SlackMessageResponse.java
 
b/integration-tests/slack/src/main/java/org/apache/camel/quarkus/component/slack/it/model/SlackMessageResponse.java
new file mode 100644
index 0000000..f0b2272
--- /dev/null
+++ 
b/integration-tests/slack/src/main/java/org/apache/camel/quarkus/component/slack/it/model/SlackMessageResponse.java
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.quarkus.component.slack.it.model;
+
+import io.quarkus.runtime.annotations.RegisterForReflection;
+
+@RegisterForReflection
+public class SlackMessageResponse {
+    String text;
+    int nbBlocks;
+
+    public SlackMessageResponse() {
+    }
+
+    public SlackMessageResponse(String text, int nbBlocks) {
+        this.text = text;
+        this.nbBlocks = nbBlocks;
+    }
+
+    public String getText() {
+        return text;
+    }
+
+    public void setText(String text) {
+        this.text = text;
+    }
+
+    public int getNbBlocks() {
+        return nbBlocks;
+    }
+
+    public void setNbBlocks(int nbBlocks) {
+        this.nbBlocks = nbBlocks;
+    }
+}
diff --git 
a/integration-tests/slack/src/test/java/org/apache/camel/quarkus/component/slack/it/SlackTest.java
 
b/integration-tests/slack/src/test/java/org/apache/camel/quarkus/component/slack/it/SlackTest.java
index c3e8bab..3d7ef69 100644
--- 
a/integration-tests/slack/src/test/java/org/apache/camel/quarkus/component/slack/it/SlackTest.java
+++ 
b/integration-tests/slack/src/test/java/org/apache/camel/quarkus/component/slack/it/SlackTest.java
@@ -21,12 +21,12 @@ import java.util.UUID;
 import com.github.tomakehurst.wiremock.WireMockServer;
 import io.quarkus.test.common.QuarkusTestResource;
 import io.quarkus.test.junit.QuarkusTest;
-import io.restassured.RestAssured;
 import io.restassured.http.ContentType;
 import org.apache.camel.quarkus.test.wiremock.MockServer;
 import org.eclipse.microprofile.config.ConfigProvider;
 import org.junit.jupiter.api.Test;
 
+import static io.restassured.RestAssured.given;
 import static org.hamcrest.CoreMatchers.equalTo;
 
 /**
@@ -47,21 +47,62 @@ class SlackTest {
 
     @Test
     public void testSlackProduceConsumeMessages() {
-        final String message = "Hello Camel Quarkus Slack" + 
(externalSlackEnabled() ? " " + UUID.randomUUID() : "");
-        RestAssured.given()
+        // sending a message using Token
+        String message = "Hello Camel Quarkus Slack using Token" + 
(externalSlackEnabled() ? " " + UUID.randomUUID() : "");
+        given()
                 .contentType(ContentType.TEXT)
                 .body(message)
-                .post("/slack/message")
+                .post("/slack/message/token")
                 .then()
                 .statusCode(201);
 
-        RestAssured.get("/slack/messages")
+        given()
+                .contentType(ContentType.JSON)
+                .get("/slack/messages")
                 .then()
                 .statusCode(200)
-                .body(equalTo(message));
+                .body(equalTo(getExpectedResponse(message, 0)));
+
+        // sending a message using Webhook URL
+        message = "Hello Camel Quarkus Slack using Webhook URL" + 
(externalSlackEnabled() ? " " + UUID.randomUUID() : "");
+
+        given()
+                .contentType(ContentType.TEXT)
+                .body(message)
+                .post("/slack/message/webhook")
+                .then()
+                .statusCode(201);
+
+        given()
+                .contentType(ContentType.JSON)
+                .get("/slack/messages")
+                .then()
+                .statusCode(200)
+                .body(equalTo(getExpectedResponse(message, 0)));
+
+        message = "Hello Camel Quarkus Slack using Blocks" + 
(externalSlackEnabled() ? " " + UUID.randomUUID() : "");
+
+        // sending message with blocks
+        given()
+                .contentType(ContentType.TEXT)
+                .body(message)
+                .post("/slack/message/block")
+                .then()
+                .statusCode(201);
+
+        given()
+                .contentType(ContentType.JSON)
+                .get("/slack/messages")
+                .then()
+                .statusCode(200)
+                .body(equalTo(getExpectedResponse(message, 3)));
     }
 
     boolean externalSlackEnabled() {
         return !ConfigProvider.getConfig().getOptionalValue("wiremock.url", 
String.class).isPresent();
     }
+
+    String getExpectedResponse(String message, int nbBlocks) {
+        return String.format("{\"text\":\"%s\",\"nbBlocks\":%s}", message, 
nbBlocks);
+    }
 }
diff --git 
a/integration-tests/slack/src/test/java/org/apache/camel/quarkus/component/slack/it/SlackTestResource.java
 
b/integration-tests/slack/src/test/java/org/apache/camel/quarkus/component/slack/it/SlackTestResource.java
index ee51939..d00fbc3 100644
--- 
a/integration-tests/slack/src/test/java/org/apache/camel/quarkus/component/slack/it/SlackTestResource.java
+++ 
b/integration-tests/slack/src/test/java/org/apache/camel/quarkus/component/slack/it/SlackTestResource.java
@@ -38,7 +38,7 @@ public class SlackTestResource extends 
WireMockTestResourceLifecycleManager {
         String webhookUrl = wiremockUrl != null ? wiremockUrl + 
"/services/webhook"
                 : ConfigProvider.getConfig().getValue(SLACK_ENV_WEBHOOK_URL, 
String.class);
         return CollectionHelper.mergeMaps(properties, CollectionHelper.mapOf(
-                "camel.component.slack.webhook-url", webhookUrl,
+                "slack.webhook.url", webhookUrl,
                 "slack.server-url", serverUrl,
                 "slack.token", envOrDefault(SLACK_ENV_TOKEN, "test-token")));
     }
diff --git 
a/integration-tests/slack/src/test/resources/mappings/slackChatPostMessage.json 
b/integration-tests/slack/src/test/resources/mappings/slackChatPostMessageWithBlocks.json
similarity index 80%
copy from 
integration-tests/slack/src/test/resources/mappings/slackChatPostMessage.json
copy to 
integration-tests/slack/src/test/resources/mappings/slackChatPostMessageWithBlocks.json
index d811dac..c67c3d1 100644
--- 
a/integration-tests/slack/src/test/resources/mappings/slackChatPostMessage.json
+++ 
b/integration-tests/slack/src/test/resources/mappings/slackChatPostMessageWithBlocks.json
@@ -5,7 +5,7 @@
     "url" : "/api/chat.postMessage",
     "method" : "POST",
     "bodyPatterns" : [ {
-      "equalTo" : 
"channel=test-channel&text=Hello%20Camel%20Quarkus%20Slack&link_names=0&mrkdwn=1&unfurl_links=0&unfurl_media=0&reply_broadcast=0",
+      "equalTo" : 
"channel=test-channel&text=Hello%20Camel%20Quarkus%20Slack%20using%20Blocks&link_names=0&mrkdwn=1&blocks=%5B%7B%22type%22%3A%22section%22%2C%22text%22%3A%7B%22type%22%3A%22mrkdwn%22%2C%22text%22%3A%22Hello%20Camel%20Quarkus%20Slack%20using%20Blocks%22%7D%7D%2C%7B%22type%22%3A%22section%22%2C%22fields%22%3A%5B%7B%22type%22%3A%22mrkdwn%22%2C%22text%22%3A%22*Testing%20Camel%20Quarkus%20blocks*%22%7D%2C%7B%22type%22%3A%22mrkdwn%22%2C%22text%22%3A%22*You%20should%20be%20able
 [...]
       "caseInsensitive" : false
     } ]
   },
diff --git 
a/integration-tests/slack/src/test/resources/mappings/slackChatPostMessage.json 
b/integration-tests/slack/src/test/resources/mappings/slackChatPostMessageWithToken.json
similarity index 95%
copy from 
integration-tests/slack/src/test/resources/mappings/slackChatPostMessage.json
copy to 
integration-tests/slack/src/test/resources/mappings/slackChatPostMessageWithToken.json
index d811dac..2043c66 100644
--- 
a/integration-tests/slack/src/test/resources/mappings/slackChatPostMessage.json
+++ 
b/integration-tests/slack/src/test/resources/mappings/slackChatPostMessageWithToken.json
@@ -5,7 +5,7 @@
     "url" : "/api/chat.postMessage",
     "method" : "POST",
     "bodyPatterns" : [ {
-      "equalTo" : 
"channel=test-channel&text=Hello%20Camel%20Quarkus%20Slack&link_names=0&mrkdwn=1&unfurl_links=0&unfurl_media=0&reply_broadcast=0",
+      "equalTo" : 
"channel=test-channel&text=Hello%20Camel%20Quarkus%20Slack%20using%20Token&link_names=0&mrkdwn=1&unfurl_links=0&unfurl_media=0&reply_broadcast=0",
       "caseInsensitive" : false
     } ]
   },
diff --git 
a/integration-tests/slack/src/test/resources/mappings/slackChatPostMessage.json 
b/integration-tests/slack/src/test/resources/mappings/slackChatPostMessageWithWebhook.json
similarity index 92%
rename from 
integration-tests/slack/src/test/resources/mappings/slackChatPostMessage.json
rename to 
integration-tests/slack/src/test/resources/mappings/slackChatPostMessageWithWebhook.json
index d811dac..d969ea0 100644
--- 
a/integration-tests/slack/src/test/resources/mappings/slackChatPostMessage.json
+++ 
b/integration-tests/slack/src/test/resources/mappings/slackChatPostMessageWithWebhook.json
@@ -2,10 +2,10 @@
   "id" : "c86380a0-2c6e-41ec-8183-467013109f96",
   "name" : "chatpostmessage",
   "request" : {
-    "url" : "/api/chat.postMessage",
+    "url" : "/services/webhook",
     "method" : "POST",
     "bodyPatterns" : [ {
-      "equalTo" : 
"channel=test-channel&text=Hello%20Camel%20Quarkus%20Slack&link_names=0&mrkdwn=1&unfurl_links=0&unfurl_media=0&reply_broadcast=0",
+      "equalTo" : "{\"text\":\"Hello Camel Quarkus Slack using Webhook 
URL\",\"channel\":\"test-channel\"}",
       "caseInsensitive" : false
     } ]
   },
diff --git 
a/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistory.json
 
b/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistoryWithBlocks.json
similarity index 56%
copy from 
integration-tests/slack/src/test/resources/mappings/slackGetConversationHistory.json
copy to 
integration-tests/slack/src/test/resources/mappings/slackGetConversationHistoryWithBlocks.json
index affefc2..e0ebd2b 100644
--- 
a/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistory.json
+++ 
b/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistoryWithBlocks.json
@@ -5,13 +5,13 @@
     "url" : "/api/conversations.history",
     "method" : "POST",
     "bodyPatterns" : [ {
-      "equalTo" : "channel=test-channel&limit=1&inclusive=0",
+      "equalTo" : 
"channel=test-channel&limit=1&oldest=1615377778.002901&inclusive=0",
       "caseInsensitive" : false
     } ]
   },
   "response" : {
     "status" : 200,
-    "body" : 
"{\"ok\":true,\"messages\":[{\"bot_id\":\"test\",\"type\":\"message\",\"text\":\"Hello
 Camel Quarkus 
Slack\",\"user\":\"test\",\"ts\":\"1615377778.002900\",\"team\":\"test\",\"bot_profile\":{\"id\":\"test\",\"deleted\":false,\"name\":\"API
 
Test\",\"updated\":1615375056,\"app_id\":\"test\",\"icons\":{\"image_36\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/bot_36.png\",\"image_48\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/bot_48.png\",
 [...]
+    "body" : 
"{\"ok\":true,\"messages\":[{\"bot_id\":\"test\",\"type\":\"message\",\"text\":\"Hello
 Camel Quarkus Slack using 
Blocks\",\"user\":\"test\",\"ts\":\"1615377778.002900\",\"team\":\"test\",\"bot_profile\":{\"id\":\"test\",\"deleted\":false,\"name\":\"API
 
Test\",\"updated\":1615375056,\"app_id\":\"test\",\"icons\":{\"image_36\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/bot_36.png\",\"image_48\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/
 [...]
     "headers" : {
       "date" : "Wed, 10 Mar 2021 12:03:00 GMT",
       "server" : "Apache",
diff --git 
a/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistory.json
 
b/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistoryWithToken.json
similarity index 70%
copy from 
integration-tests/slack/src/test/resources/mappings/slackGetConversationHistory.json
copy to 
integration-tests/slack/src/test/resources/mappings/slackGetConversationHistoryWithToken.json
index affefc2..5fc587d 100644
--- 
a/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistory.json
+++ 
b/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistoryWithToken.json
@@ -11,7 +11,7 @@
   },
   "response" : {
     "status" : 200,
-    "body" : 
"{\"ok\":true,\"messages\":[{\"bot_id\":\"test\",\"type\":\"message\",\"text\":\"Hello
 Camel Quarkus 
Slack\",\"user\":\"test\",\"ts\":\"1615377778.002900\",\"team\":\"test\",\"bot_profile\":{\"id\":\"test\",\"deleted\":false,\"name\":\"API
 
Test\",\"updated\":1615375056,\"app_id\":\"test\",\"icons\":{\"image_36\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/bot_36.png\",\"image_48\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/bot_48.png\",
 [...]
+    "body" : 
"{\"ok\":true,\"messages\":[{\"bot_id\":\"test\",\"type\":\"message\",\"text\":\"Hello
 Camel Quarkus Slack using 
Token\",\"user\":\"test\",\"ts\":\"1615377778.002900\",\"team\":\"test\",\"bot_profile\":{\"id\":\"test\",\"deleted\":false,\"name\":\"API
 
Test\",\"updated\":1615375056,\"app_id\":\"test\",\"icons\":{\"image_36\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/bot_36.png\",\"image_48\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/b
 [...]
     "headers" : {
       "date" : "Wed, 10 Mar 2021 12:03:00 GMT",
       "server" : "Apache",
diff --git 
a/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistory.json
 
b/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistoryWithWebhook.json
similarity index 66%
rename from 
integration-tests/slack/src/test/resources/mappings/slackGetConversationHistory.json
rename to 
integration-tests/slack/src/test/resources/mappings/slackGetConversationHistoryWithWebhook.json
index affefc2..464f6fc 100644
--- 
a/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistory.json
+++ 
b/integration-tests/slack/src/test/resources/mappings/slackGetConversationHistoryWithWebhook.json
@@ -5,13 +5,13 @@
     "url" : "/api/conversations.history",
     "method" : "POST",
     "bodyPatterns" : [ {
-      "equalTo" : "channel=test-channel&limit=1&inclusive=0",
+      "equalTo" : 
"channel=test-channel&limit=1&oldest=1615377778.002900&inclusive=0",
       "caseInsensitive" : false
     } ]
   },
   "response" : {
     "status" : 200,
-    "body" : 
"{\"ok\":true,\"messages\":[{\"bot_id\":\"test\",\"type\":\"message\",\"text\":\"Hello
 Camel Quarkus 
Slack\",\"user\":\"test\",\"ts\":\"1615377778.002900\",\"team\":\"test\",\"bot_profile\":{\"id\":\"test\",\"deleted\":false,\"name\":\"API
 
Test\",\"updated\":1615375056,\"app_id\":\"test\",\"icons\":{\"image_36\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/bot_36.png\",\"image_48\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/bot_48.png\",
 [...]
+    "body" : 
"{\"ok\":true,\"messages\":[{\"bot_id\":\"test\",\"type\":\"message\",\"text\":\"Hello
 Camel Quarkus Slack using Webhook 
URL\",\"user\":\"test\",\"ts\":\"1615377778.002901\",\"team\":\"test\",\"bot_profile\":{\"id\":\"test\",\"deleted\":false,\"name\":\"API
 
Test\",\"updated\":1615375056,\"app_id\":\"test\",\"icons\":{\"image_36\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/app\\/bot_36.png\",\"image_48\":\"https:\\/\\/a.slack-edge.com\\/80588\\/img\\/plugins\\/a
 [...]
     "headers" : {
       "date" : "Wed, 10 Mar 2021 12:03:00 GMT",
       "server" : "Apache",

Reply via email to