Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Slack の困りごとを何とかしてみた①
Search
しみず ゆうき
October 03, 2020
Programming
110
0
Share
Slack の困りごとを何とかしてみた①
2020.10.3
第8回 富士もくもく会 オンライン LT
しみず ゆうき
October 03, 2020
More Decks by しみず ゆうき
See All by しみず ゆうき
EventBridgeで地域イベントのイベントストリームを作ってみた
yuukis
0
110
2025年 山梨の技術コミュニティを振り返る
yuukis
0
380
サイトを作ったらNFCタグキーホルダーを爆速で作れ!
yuukis
0
1.1k
Perlで痩せる
yuukis
1
870
Pythonで遊べるLEDボードの紹介
yuukis
0
140
今話題のMCPサーバーをFastAPIでサッと作ってみた
yuukis
0
660
地域ITコミュニティの活性化とAWSに移行してみた話
yuukis
0
580
Gemini API を試した話と山梨でオススメのものを語るLT
yuukis
0
110
山梨のIT勉強会コミュニティを盛り上げるためにアレ作ってみた!
yuukis
0
110
Other Decks in Programming
See All in Programming
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
600
ふつうのFeature Flag実践入門
irof
0
110
AI Agent と正しく分析するための環境作り
yoshyum
2
590
デフォルト運用のCodeRabbit、1年で何が変わったか / How CodeRabbit Changed Our Code Review in 1 Year
bake0937
1
100
Sans tests, vos agents ne sont pas fiables
nabondance
0
160
要はバランスからの卒業 #yumemi_grow
kajitack
0
190
iOS26時代の新規アプリ開発
yuukiw00w
0
200
関係性から理解する"同一性"の型用語たち
pvcresin
2
520
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
360
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
3
570
[BalkanRuby 2026] Drop your app/services!
palkan
3
670
UaaL×Androidアプリのメモリ計測 — Memory Profilerの先へ
rio432
0
170
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
290
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
150
Crafting Experiences
bethany
1
160
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
180
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
350
Automating Front-end Workflow
addyosmani
1370
210k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Abbi's Birthday
coloredviolet
2
7.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
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