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
Pythonでslackの困りごとを何とかしてみた①
Search
しみず ゆうき
September 09, 2020
Programming
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Pythonでslackの困りごとを何とかしてみた①
しみず ゆうき
September 09, 2020
More Decks by しみず ゆうき
See All by しみず ゆうき
EventBridgeで地域イベントのイベントストリームを作ってみた
yuukis
0
120
2025年 山梨の技術コミュニティを振り返る
yuukis
0
400
サイトを作ったらNFCタグキーホルダーを爆速で作れ!
yuukis
0
1.2k
Perlで痩せる
yuukis
1
880
Pythonで遊べるLEDボードの紹介
yuukis
0
140
今話題のMCPサーバーをFastAPIでサッと作ってみた
yuukis
0
670
地域ITコミュニティの活性化とAWSに移行してみた話
yuukis
0
590
Gemini API を試した話と山梨でオススメのものを語るLT
yuukis
0
110
山梨のIT勉強会コミュニティを盛り上げるためにアレ作ってみた!
yuukis
0
120
Other Decks in Programming
See All in Programming
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
180
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
230
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
160
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
330
dRuby over BLE
makicamel
2
340
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.3k
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
680
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
120
net-httpのHTTP/2対応について
naruse
0
480
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4k
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
580
CSC307 Lecture 17
javiergs
PRO
0
320
Featured
See All Featured
WENDY [Excerpt]
tessaabrams
11
38k
How GitHub (no longer) Works
holman
316
150k
Un-Boring Meetings
codingconduct
0
310
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Building an army of robots
kneath
306
46k
The Language of Interfaces
destraynor
162
27k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
A Modern Web Designer's Workflow
chriscoyier
698
190k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
160
Transcript
ʲ৴ݰύΠ ΦϯϥΠϯಡॻձ ୈ -5ʳ PythonͰ slackͷ ࠔΓ͝ͱΛԿͱ͔ͯ͠Έͨᶃ 2020. 9. 9
͠Έͣ Ώ͏͖ 1
͓·͑୭Αʁ ͠Έͣ Ώ͏͖ • ࢁསݝߕࢢग़ɺ౦ژʹग़Ք͗த • ϞόΠϧΞϓϦ ΤϯδχΞ(Android/iOS) • Python
৴ݰύΠͰ͞ΘΔ͘Β͍ 2
ં֯ͷ LT ͳͷͰɺ Python ͰࠔΓ͝ͱΛ ղܾ͍ͨ͠ʂ 3
ۀͰͷ࠷ۙͷࠔΓ͝ͱ 4 ձࣾ Slack ͷνϟϯωϧ͕૿͑͗ͯ͢୳͢ͷ͕େมʂ શࣾ࿈བྷ ܽ੮࿈བྷ ߪೖਃ ࡶஊ ։ൃؔ࿈ใڞ༗
֤छϩάग़ྗ ֤Ҋ݅ͷνʔϜ࿈བྷ χϡʔεڞ༗ πʔϧ༡ͼ ֤ϝϯόʔͷใ ΠϕϯτࢀՃใࠂ FUD ׆ಈͷແ͍νϟϯωϧϦετ͔ΒӅ͍ͨ͠
աڈͷ LT Ͱ Slack API Λ͞Θ͍ͬͯΔͷͰɺ 5
ٱ͠ৼΓʹ Python ίʔυॻͧ͘ ʙ !! 6
ͱࢥ͚ͬͨͲɺطͷπʔϧΛݟ͚ͭ·ͨ͠ 7
Symantec/slack-autoarchive • Python Ͱॻ͔Εͨ Slack ༻ ࣗಈΞʔΧΠϒ εΫϦϓτ • աڈؒͰʢCPUҎ֎ͷʣϝοηʔδ͕ͳ͍νϟϯωϧΛ
ࣗಈͰΞʔΧΠϒ͢Δ • ΞʔΧΠϒͤͨ͘͞ͳ͍νϟϯωϧΛࢦఆՄೳ ʢϗϫΠτϦετʣ 8
αΫοͱಋೖͯ͠Έͨ 9
ᶃ ϦϙδτϦΛ Fork 10
ᶄ Slack API Token Λऔಘɾઃఆ 11 API Token
ᶅ GitHub Actions ϫʔΫϑϩʔ࡞ • ຖ݄ 9:00AM(JST) ʹ࣮ߦ • Ҏ্ϝοηʔδ͕ແ͍
νϟϯωϧ͕ରͱͳΔΑ͏ ઃఆ • ϗϫΠτϦετΛڥมͰ ઃఆ 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
·ͱΊ ʮPython Ͱ Slack ͷࠔΓ͝ͱΛԿͱ͔ͯ͠Έͨʯ • Γ͍ͨ͜ͱΛ͍ίʔυͰαΫοͱ࣮ݱͰ͖ͯྑ͍ʂ • ࣍ Slack
ʹΞοϓϩʔυͨ͠ϑΝΠϧΛཧ͢Δπʔϧ Λ࡞Γ͍ͨʂ 14