Sign inSign up

ydkk/slack-line-bridge

By ydkk

•Updated about 1 year ago

https://github.com/YDKK/SlackLineBridge

Image
0

2.2K

ydkk/slack-line-bridge repository overview

⁠SlackLineBridge

Slack <--> LINE Bridge

Slackへの投稿とLINEへの投稿を相互に橋渡しします.

⁠仕組み

image

⁠設定

⁠Slack側の設定
  1. Slack Appを作成する
    • Event Subscriptions を有効にし、Request URLを https://ホスト名/slack2 に設定する
    • Subscribe to bot events で message.channels と message.groups イベントを購読する
  2. 作成したSlack Appをワークスペースにインストールする
  3. 対象のチャンネルにインストールしたSlack Appを参加させる
  4. 対象のチャンネルにIncoming Webhooksを設定する
⁠LINE側の設定
  1. LINE DevelopersからMessaging APIチャンネルを作成する.
  2. Webhook URLを https://ホスト名/line に設定する.
⁠appsettings.json

UseCloudWatchLogs : ログデータをAmazon CloudWatch Logsに書き出すかどうか

⁠appsettings.AWS.json (Optional)

Amazon CloudWatch Logsを使う場合,AWSの資格情報を指定することが可能です.
指定しなかった場合はこの辺⁠から適当に探してくるはず.

{
  "AWS": {
    "AccessKey": "",
    "SecretKey": ""
  }
}

⁠config.json

関連付けるチャンネルの設定

{
  "slackChannels": [ // Slackチャンネルリストの定義
    {
      "name": "hoge",
      "teamId": "",
      "channelId": "",
      "webhookUrl": "" // Incoming WebhooksのUrl
    }
  ],
  "lineChannels": [ // LINEチャンネル(user/group/room)リストの定義
    {
      "name": "fuga",
      "id": "" // 対象のID
    }
  ],
  "slackLineBridges": [ // 関連付けるチャンネルリストの定義
    {
      "slack": "hoge",
      "line": "fuga"
    }
  ],
  "lineAccessToken": "", // LINEのアクセストークン(ロングターム)
  "lineChannelSecret": "", // LINEのチャンネルシークレット
  "slackSigningSecret": "", // Slack AppのSigning Secret
  "slackAccessToken": "" // Slack AppのBot User OAuth Token
}

⁠スクリーンショット

Slack側
image

LINE側
image

⁠制約

  • SlackのユーザアイコンはLINE側には反映されません.
    • v4.0.0でLINE側のユーザアイコンとユーザ名の置き換えに対応しました (#24⁠)
    • 上のスクリーンショットは更新前のものです

⁠Dockerイメージ

https://hub.docker.com/r/ydkk/slack-line-bridge⁠

docker-compose.yml の例

version: '3'
services:
  bridge:
    restart: always
    image: ydkk/slack-line-bridge:latest
    volumes:
      - ./appsettings.AWS.json:/app/appsettings.AWS.json:ro
      - ./appsettings.json:/app/appsettings.json:ro
      - ./config.json:/app/config.json:ro
    networks:
      - bridge_external_network
networks:
  bridge_external_network:
    external: true

⁠License

MIT

Tag summary

Content type

Image

Digest

sha256:436c276c6…

Size

102.1 MB

Last updated

about 1 year ago

docker pull ydkk/slack-line-bridge