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通知botを作る
Search
Ryosuke Uchiyama
April 04, 2024
Technology
22
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PythonでSlack通知botを作る
Ryosuke Uchiyama
April 04, 2024
More Decks by Ryosuke Uchiyama
See All by Ryosuke Uchiyama
AWSでサーバレスな書籍管理アプリを作る
step63r
0
58
ChatGPT実践
step63r
1
390
IoT実践! 行先予定表を電子ペーパーで作る
step63r
0
35
React x Socket.ioで人狼サーバを作る 第一章 フロントエンド実装
step63r
0
25
深層強化学習で東方AI 第一章 DQNの基本
step63r
0
310
Build 2021 プレイバック
step63r
0
38
WPFで実践アプリ開発! 第四章 機能の実装 Part 2
step63r
0
54
WPFで実践アプリ開発! 第三章 機能の実装 Part 1
step63r
0
130
WPFで実践アプリ開発! 第二章 UI
step63r
0
180
Other Decks in Technology
See All in Technology
20260807_第6回_関東kaggler会LT_claw系bot xangiと始める、"寂しくない" kaggle
sugupoko
0
290
同じWAFが、攻撃の“形”は弾く── 正当な“形”の不正は通す
kuroneko13
0
210
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
今こそ聞きたいソフトウェア設計 ドメイン駆動設計再入門
masuda220
PRO
17
7.4k
Webアクセシビリティ入門 2026
recruitengineers
PRO
3
590
DatadogのBits Chatが開発組織にもたらしたもの / What Bits Chat Has Brought Us
sms_tech
1
270
【CEDEC2026】『ウマ娘 プリティーダービー』 英語版のキャラクターの方言や口調をローカライズするための創造的アプローチ
cygames
PRO
2
1k
【CEDEC2026】コードレビュー支援ツール開発から学ぶ:LLMを用いた業務システムの実践的な運用設計と誤出力対策
cygames
PRO
0
810
モダンフロントエンド 開発研修
recruitengineers
PRO
4
670
私がブラウザを自作したくなった理由
supurazako
1
240
LanceDB入門
mocobeta
8
540
ハーレムエンジニアリング
kazuma777777
0
170
Featured
See All Featured
Side Projects
sachag
455
43k
Embracing the Ebb and Flow
colly
88
5.1k
Accessibility Awareness
sabderemane
1
180
AI: The stuff that nobody shows you
jnunemaker
PRO
9
910
Between Models and Reality
mayunak
4
390
Google's AI Overviews - The New Search
badams
0
1.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Scaling GitHub
holman
464
140k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1.1k
Speed Design
sergeychernyshev
33
2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
How to build a perfect <img>
jonoalderson
1
5.9k
Transcript
PythonでSlack通知botを作る Ryosuke Uchiyama 1 © 2023 minato project. step63r step63r
2 AGENDA © 2023 minato project. 1. 概要 • 作るもの
• 前提知識 • 開発環境 • Webhookとは 2. 実践 • Slackでアプリを作成する • Pythonでプログラムを書く • Azureにデプロイする
1. 概要 3 © 2023 minato project. Overview
4 作るもの © 2023 minato project. • 毎朝9時にその日の東京の天気をSlackにお知らせするbotを作ります • 気象情報の取得にはOpen-Meteoを利用します
• プログラムのデプロイ先はAzureとします Open-MeteoのAPI仕様は こちら をご確認ください。 タイマーイベント 天気を通知 Azure Functions Slack データ取得
前提知識 © 2023 minato project. 5 • HTTP通信の基礎知識 • Python
(3.7以降) の基本構文 • Slackの操作方法 • Azureの基礎知識
開発環境 © 2023 minato project. 6 • Windows 11 Pro
23H2 • Visual Studio Code • Azure Tools v1.2.0 • Azurite v3.29.0 • Python v2024.2.1 • Python 3.11.2 • Azure Functions Core Tools 4.0.5441
Webhookとは © 2023 minato project. 7 • アプリケーションの更新情報を他のアプリケーションへリアルタイム提供する仕組みや概念のこと。 • イベント(リポジトリにプッシュなど)発生時、指定したURLにPOSTリクエストする仕組みのこと。
git push等 Webhook通知 Webhookとは? #初心者 - Qiita GitHub Slack
2. 実践 8 © 2023 minato project. Practice
9 Slackでアプリを作成する © 2023 minato project. 1. あらかじめSlackのアカウントとワークスペースを作成しておく 2. Slack
APIにアクセスする 3. 「Create an App」を押下する 4. 「From scratch」→ 名前とワークスペースを入力・選択し「Create App」を押下する 5. 「Incoming Webhooks」→「Activate Incoming Webhooks」を「On」にする 6. 「Add New Webhook to Workspace」を選択、投稿先のチャンネルを選択し「許可する」を押下する 7. 「Sample curl request to post a channel」のコードをコピーし、PowerShellに貼り付け、実行 8. 設定したチャンネルに投稿がされていれば設定完了
10 Pythonでプログラムを書く © 2023 minato project. step63r/uchi-notify-weather-slack-bot https://github.com/step63r/uchi-notify-weather-slack-bot
Azureにデプロイする © 2023 minato project. 11
ご清聴ありがとうございました