Yuki Takei 4 лет назад
Родитель
Сommit
a542351323
1 измененных файлов с 24 добавлено и 24 удалено
  1. 24 24
      packages/slack/src/utils/check-communicable.ts

+ 24 - 24
packages/slack/src/utils/check-communicable.ts

@@ -67,6 +67,29 @@ const retrieveWorkspaceName = async(client: WebClient): Promise<string> => {
   return (result as any).team?.name;
 };
 
+/**
+ * @param token bot OAuth token
+ * @returns
+ */
+export const testToSlack = async(token:string): Promise<ConnectionStatus> => {
+  const client = generateWebClient(token);
+  const status: ConnectionStatus = {};
+
+  try {
+    // try to connect
+    const resultTestSlackApiServer = await testSlackApiServer(client);
+    // check scope
+    await checkSlackScopes(resultTestSlackApiServer);
+    // retrieve workspace name
+    status.workspaceName = await retrieveWorkspaceName(client);
+  }
+  catch (err) {
+    status.error = err;
+  }
+
+  return status;
+};
+
 /**
  * Get token string to ConnectionStatus map
  * @param tokens Array of bot OAuth token
@@ -76,23 +99,10 @@ export const getConnectionStatuses = async(tokens: string[]): Promise<{[key: str
   const map = tokens
     .reduce<Promise<Map<string, ConnectionStatus>>>(
       async(acc, token) => {
-        const client = generateWebClient(token);
-
-        const status: ConnectionStatus = {};
-        try {
-          // try to connect
-          await testSlackApiServer(client);
-          // retrieve workspace name
-          status.workspaceName = await retrieveWorkspaceName(client);
-        }
-        catch (err) {
-          status.error = err;
-        }
+        const status: ConnectionStatus = await testToSlack(token);
 
         (await acc).set(token, status);
-
         return acc;
-
       },
       // define initial accumulator
       Promise.resolve(new Map<string, ConnectionStatus>()),
@@ -102,16 +112,6 @@ export const getConnectionStatuses = async(tokens: string[]): Promise<{[key: str
   return Object.fromEntries(await map);
 };
 
-/**
- * @param token bot OAuth token
- * @returns
- */
-export const testToSlack = async(token:string): Promise<void> => {
-  const client = generateWebClient(token);
-  const res = await testSlackApiServer(client);
-  await checkSlackScopes(res);
-};
-
 export const sendSuccessMessage = async(token:string, channel:string, appSiteUrl:string): Promise<void> => {
   const client = generateWebClient(token);
   await client.chat.postMessage({