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 しみず ゆうき
12年前のAndroidアプリを蘇らせた話
yuukis
0
54
EventBridgeで地域イベントのイベントストリームを作ってみた
yuukis
0
120
2025年 山梨の技術コミュニティを振り返る
yuukis
0
420
サイトを作ったらNFCタグキーホルダーを爆速で作れ!
yuukis
0
1.2k
Perlで痩せる
yuukis
1
890
Pythonで遊べるLEDボードの紹介
yuukis
0
150
今話題のMCPサーバーをFastAPIでサッと作ってみた
yuukis
0
690
地域ITコミュニティの活性化とAWSに移行してみた話
yuukis
0
610
Gemini API を試した話と山梨でオススメのものを語るLT
yuukis
0
110
Other Decks in Programming
See All in Programming
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
190
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
500
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
2
1.5k
霧の中の代数的エフェクト
funnyycat
1
390
Foundation Models frameworkで画像分析
ryodeveloper
1
120
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
130
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
0
200
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
1.5k
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
190
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
100
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
500
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
760
Featured
See All Featured
A Soul's Torment
seathinner
6
3.1k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
420
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
Tell your own story through comics
letsgokoyo
1
990
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
410
Visualization
eitanlees
152
17k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
410
New Earth Scene 8
popppiees
3
2.4k
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