Jelajahi Sumber

apply testToSlack

zahmis 4 tahun lalu
induk
melakukan
8bc67d61dc

+ 12 - 3
packages/slack/src/utils/check-communicable.ts

@@ -94,8 +94,17 @@ export const getConnectionStatuses = async(tokens: string[]): Promise<{[key: str
  * @param token bot OAuth token
  * @param token bot OAuth token
  * @returns
  * @returns
  */
  */
-export const relationTestToSlack = async(token:string): Promise<void> => {
+export const testToSlack = async(token:string, channel:string): Promise<void> => {
   const client = generateWebClient(token);
   const client = generateWebClient(token);
-  // TODO GW-6002 fire chat.postMessage
-  await testSlackApiServer(client);
+  try {
+    await testSlackApiServer(client);
+    await client.chat.postMessage({
+      channel,
+      text: 'Your test was successful!',
+    });
+  }
+  catch (error) {
+    console.log(error);
+  }
+
 };
 };

+ 4 - 5
src/server/routes/apiv3/slack-integration-settings.js

@@ -5,7 +5,7 @@ const axios = require('axios');
 const urljoin = require('url-join');
 const urljoin = require('url-join');
 const loggerFactory = require('@alias/logger');
 const loggerFactory = require('@alias/logger');
 
 
-const { getConnectionStatuses, relationTestToSlack } = require('@growi/slack');
+const { getConnectionStatuses, testToSlack } = require('@growi/slack');
 
 
 const ErrorV3 = require('../../models/vo/error-apiv3');
 const ErrorV3 = require('../../models/vo/error-apiv3');
 
 
@@ -505,12 +505,11 @@ module.exports = (crowi) => {
       const msg = 'Select Without Proxy Type';
       const msg = 'Select Without Proxy Type';
       return res.apiv3Err(new ErrorV3(msg, 'select-not-proxy-type'), 400);
       return res.apiv3Err(new ErrorV3(msg, 'select-not-proxy-type'), 400);
     }
     }
-    // TODO impl req.body at GW-5998
-    // const { channel } = req.body;
+    const { channel } = req.body;
     const slackBotToken = crowi.configManager.getConfig('crowi', 'slackbot:token');
     const slackBotToken = crowi.configManager.getConfig('crowi', 'slackbot:token');
     try {
     try {
-      await relationTestToSlack(slackBotToken);
-      // TODO impl return response after imple 5996, 6002
+      const res = await testToSlack(slackBotToken, channel);
+      console.log(res);
     }
     }
     catch (error) {
     catch (error) {
       logger.error('Error', error);
       logger.error('Error', error);