Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Slack の困りごとを何とかしてみた①
Search
Yuuki Shimizu
October 03, 2020
Programming
0
97
Slack の困りごとを何とかしてみた①
2020.10.3
第8回 富士もくもく会 オンライン LT
Yuuki Shimizu
October 03, 2020
Tweet
Share
More Decks by Yuuki Shimizu
See All by Yuuki Shimizu
サイトを作ったらNFCタグキーホルダーを爆速で作れ!
yuukis
0
960
Perlで痩せる
yuukis
1
790
Pythonで遊べるLEDボードの紹介
yuukis
0
94
今話題のMCPサーバーをFastAPIでサッと作ってみた
yuukis
0
520
地域ITコミュニティの活性化とAWSに移行してみた話
yuukis
0
490
Gemini API を試した話と山梨でオススメのものを語るLT
yuukis
0
90
山梨のIT勉強会コミュニティを盛り上げるためにアレ作ってみた!
yuukis
0
85
FastAPI を活用した オープンデータAPI の作成
yuukis
0
1k
FastAPIで始める やまなし温泉めぐり
yuukis
0
480
Other Decks in Programming
See All in Programming
WebRTC と Rust と8K 60fps
tnoho
2
1.8k
How Software Deployment tools have changed in the past 20 years
geshan
0
27k
チーム開発の “地ならし"
konifar
8
6.8k
モデル駆動設計をやってみよう Modeling Forum2025ワークショップ/Let’s Try Model-Driven Design
haru860
0
220
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
5
16k
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
510
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
10
10k
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
250
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
5
850
Herb to ReActionView: A New Foundation for the View Layer @ San Francisco Ruby Conference 2025
marcoroth
0
230
Microservices Platforms: When Team Topologies Meets Microservices Patterns
cer
PRO
1
840
分散DBって何者なんだ... Spannerから学ぶRDBとの違い
iwashi623
0
160
Featured
See All Featured
Scaling GitHub
holman
464
140k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Rails Girls Zürich Keynote
gr2m
95
14k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
700
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
RailsConf 2023
tenderlove
30
1.3k
Transcript
ʲୈճ ࢜͘͘ձ ΦϯϥΠϯ -5ʳ slackͷࠔΓ͝ͱΛ Կͱ͔ͯ͠Έͨᶃ 2020. 10. 3 しみず
ゆうき 1
͓·͑୭Αʁ ͠Έͣ Ώ͏͖ • ࢁསݝߕࢢ ग़ɺ౦ژʹग़Ք͗த • ϞόΠϧΞϓϦ ΤϯδχΞ(Android/iOS) •
࠷ۙɺϦϯάϑΟοτ Ξυϕϯνϟʔʹ ·ͬͯ·͢ (3 kg མͪ·ͨ͠) 2
ં֯ͷ LT ͳͷͰɺ ࠔΓ͝ͱΛղܾ͍ͨ͠ʂ 3
ۀͰͷ࠷ۙͷࠔΓ͝ͱ 4 ձࣾ Slack ͷνϟϯωϧ͕૿͑͗ͯ͢୳͢ͷ͕େมʂ શࣾ࿈བྷ ܽ੮࿈བྷ ߪೖਃ ࡶஊ ։ൃؔ࿈ใڞ༗
֤छϩάग़ྗ ֤Ҋ݅ͷνʔϜ࿈བྷ χϡʔεڞ༗ πʔϧ༡ͼ ֤ϝϯόʔͷใ ΠϕϯτࢀՃใࠂ FUD ׆ಈͷແ͍νϟϯωϧϦετ͔ΒӅ͍ͨ͠
աڈͷ LT Ͱ Slack API Λ͞Θ͍ͬͯΔͷͰɺ 5
ٱ͠ৼΓʹ Python ίʔυॻͧ͘ ʙ !! 6
ͱࢥ͚ͬͨͲɺطͷπʔϧΛݟ͚ͭ·ͨ͠ 7
Symantec/slack-autoarchive • Python Ͱॻ͔Εͨ Slack ༻ ࣗಈΞʔΧΠϒ εΫϦϓτ • աڈ60ؒͰʢbot
Ҏ֎ͷʣϝοηʔδ͕ͳ͍νϟϯωϧΛ ࣗಈͰΞʔΧΠϒ͢Δ • ΞʔΧΠϒͤͨ͘͞ͳ͍νϟϯωϧΛࢦఆՄೳ ʢϗϫΠτϦετʣ 8
αΫοͱಋೖͯ͠Έͨ 9
ᶃ ϦϙδτϦΛ Fork 10
ᶄ Slack API Token Λऔಘɾઃఆ 11 API Token
ᶅ GitHub Actions ϫʔΫϑϩʔ࡞ • ຖ݄1 9:00AM(JST) ʹ࣮ߦ • 180Ҏ্ϝοηʔδ͕ແ͍
νϟϯωϧ͕ରͱͳΔΑ͏ ઃఆ • ϗϫΠτϦετΛڥมͰ ઃఆ 12 name: CI on: schedule: - cron: "0 0 1 * *" jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up Python 3.8 uses: actions/setup-python@v1 with: python-version: 3.8 - name: Install dependencies run: | pip install -r requirements.txt - name: Run auto-archive run: | SLACK_TOKEN=$SLACK_TOKEN ¥ DRY_RUN=$DRY_RUN ¥ python slack_autoarchive.py env: SLACK_TOKEN: ${{ secrets.SLACK_TOKEN }} DRY_RUN: false DAYS_INACTIVE: 180 WHITELIST_KEYWORDS: 'general,times_' ADMIN_CHANNEL: activity .github/workflows/main.yml
݁ՌɺࣗಈͰΞʔΧΠϒ͞Εͨ 13
·ͱΊ ʮSlack ͷࠔΓ͝ͱΛԿͱ͔ͯ͠Έͨʯ • Python ͩͱΓ͍ͨ͜ͱΛ͍ίʔυͰαΫοͱ࣮ݱ Ͱ͖ͯྑ͍ʂ • GitHub Actions
ศརʂ • ࣍ Slack ʹΞοϓϩʔυͨ͠ϑΝΠϧΛཧ͢Δπʔϧ Λ࡞Γ͍ͨʂ 14