Skip to content

Slack으로 다양한 정보 전송 프로젝트

Notifications You must be signed in to change notification settings

Ghosttrio/with-slack

Repository files navigation

WithSlack - 간단한 슬랙 정보 전송 서버

목적

슬랙 봇을 이용하여 간단한 메시지를 보낼 때 사용

사용법

직접 사용

server:
  port: 8080
slack:
  token: # Slack 토큰을 추가
  channel: # Slack Channel ID 추가합니다.

Dockerfile 사용

docker pull ghosttrio/with-slack:latest

docker run -d -p 8080:8080 --env SLACK_TOKEN=<토큰입력> --env SLACK_CHANNEL=<채널입력> --name=with-slack ghosttrio/with-slack:latest

Docker Compose 사용

version: '3.8'
services:
  app:
    image: ghosttrio/with-slack:latest
    ports:
      - "8080:8080"
    environment:
      SLACK_TOKEN: # Slack 토큰을 추가
      SLACK_CHANNEL: # Slack Channel ID 추가합니다.
docker compose up

기능

  • 슬랙으로 기본 메시지 보내기
  • 슬랙으로 Blocks 메시지 보내기
  • 슬랙으로 Scheduler 메시지 보내기
  • 슬랙으로 PDF 메시지 보내기

API

[Message API]

POST /api/slack/messages/test -> 테스트 메시지 전송
POST /api/slack/messages/text -> 문자열 메시지 전송
{
    "text": <텍스트 입력>
}
POST /api/slack/messages/blocks -> Slack Blocks 형식 메시지 전송
{
    "blocks" : <LayoutBlock 배열 입력>
}
POST /api/slack/messages/pdf -> PDF 메시지 전송 
{
    "pdf": <pdf 데이터 byte[] 입력>,
    "comment": <commnet 입력>
}

[Scheduler API]

POST /api/slack/schedulers/test -> 스케줄러 시작, 테스트 메시지 전송
POST /api/slack/schedulers/text -> 스케줄러 시작, 텍스트 메시지 전송
{
    "cron": <Cron Job 입력 ex) * * * * * *>,
    "text": <텍스트 입력>
}
POST /api/slack/schedulers/blocks -> 스케줄러 시작, Blocks 메시지 전송
{
    "cron": <Cron Job 입력 ex) * * * * * *>,
    "blocks" : <LayoutBlock 배열 입력>
}
POST /api/slack/schedulers/pdf -> 스케줄러 시작, PDF 메시지 전송
{
    "cron": <Cron Job 입력 ex) * * * * * *>,
    "pdf": <pdf 데이터 byte[] 입력>,
    "comment": <commnet 입력>
}
POST /api/slack/schedulers/off -> 스케줄러 종료
GET /api/slack/schedulers/status -> 스케줄러 상태 조회

About

Slack으로 다양한 정보 전송 프로젝트

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published