Boot-スナイケBootのバインド
7703 ワード
機能の定義
1.Snak Appの作成
https://api.slack.com/Slak Botの作成
-AppNameは後で変更可能
-ワークスペースがないとappを作成できません!
→複数ワークスペースで使用するbotを開発する場合は、作成後に配布を設定する必要があります
作成後にBotsを選択!
Scopeの適用
Review Scopesを追加したら、必要なScopeを選択します!
Bot Token Scopes
エchat:write
万設置Workspaceでのインストール
2.Spring Boot設定
https://slack.dev/java-slack-sdk/guides/getting-started-with-bolt#gradle参考
Gradle環境の設定
build.gradle
dependencies {
implementation("com.slack.api:bolt:1.18.0")
implementation("com.slack.api:bolt-servlet:1.18.0")
implementation("com.slack.api:bolt-jetty:1.18.0")
}
application.yml
slack:
token: 'xoxb-발급받은 토큰'
channel: '#채널명'
NotificationService
import org.springframework.beans.factory.annotation.Value;
@Value(value = "${slack.token}")
String token;
@Value(value = "${slack.channel}")
String channel;
private void sendSlackMessage(String username, Boolean activate) {
String message = (activate)? "> :writing_hand: *["+username+"]* 님이 업무 집중을 시작했어요!"
: "> :raised_hands: *["+username+"]* 님이 쉬고 있어요!";
try{
MethodsClient methods = Slack.getInstance().methods(token);
ChatPostMessageRequest request = ChatPostMessageRequest.builder()
.channel(channel)
.text(message)
.build();
methods.chatPostMessage(request);
}catch (Exception e){
throw new CustomException(ErrorCode.FAIL_SEND_SLACK);
}
}
(いくつかの異なるタグダウンロード文法があるので、必ず公式サイトで確認してください…!)
実際のメッセージ形式を表示するためのページ
結果
Reference
この問題について(Boot-スナイケBootのバインド), 我々は、より多くの情報をここで見つけました
https://velog.io/@dot2__/SpringBoot-Slack-Bot-연동하기
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
Reference
この問題について(Boot-スナイケBootのバインド), 我々は、より多くの情報をここで見つけました https://velog.io/@dot2__/SpringBoot-Slack-Bot-연동하기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol