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
HimekaKawaguchi
February 29, 2024
0
20
社内Slackでバズっている投稿が知りたい!
HimekaKawaguchi
February 29, 2024
Tweet
Share
More Decks by HimekaKawaguchi
See All by HimekaKawaguchi
若手エンジニアの成長記- 技術以外に大事なこと -
himekakawaguchi
0
3
COPYコマンドって知ってる?
himekakawaguchi
0
92
Azure Functions を使って社内Slackで今週バズってる投稿が知りたい!
himekakawaguchi
0
74
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
96
A Tale of Four Properties
chriscoyier
156
23k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Fireside Chat
paigeccino
34
3k
Building an army of robots
kneath
302
43k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Visualization
eitanlees
145
15k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
890
What's in a price? How to price your products and services
michaelherold
243
12k
Transcript
社内Slackで バズってる投稿が 知りたい! SaaSとデータ活用を学ぶ!セミナー&ライトニングトーク 2024/02/29 株式会社セゾン情報システムズ 川口媛香
はじめまして Himeka Kawaguchi 川口 媛香 2022年セゾン情報システムズ 入社 データ活用によるお客様の業務効率化を目指すPJに参画 ドメインの理解とエンジニアリングの習熟の両立に奮闘する日々 業務で使用する技術:Snowflake
PowerBI 2
いきなりですが 3
社内メンバーとの コミュニケーションは十分に取れていますか? 4
Slackのリアクションもコミュニケーションの1つ 5
リアクションはもらえると嬉しい 6
バズる=リアクションが多い 7
社内Slackで バズってる投稿が 知りたい! 8
きっかけ 社内Slackで2023年に1番リアクションをもらった投稿が気になり Pythonを使いローカルでSlackリアクションランキングを実装した! 1年の振り返りにはもってこい。 Qiitaもアップしています!いいね♡ください! https://qiita.com/Himeka_Kawaguchi/items/dfed601108f7caa62009 9
最近沢山リアクションがついた投稿も気になる 年単位の振り返りだけでなく MonthlyやWeeklyランキングを作成すれば 社内でいま注目度の高い投稿が分かりそう…? 10 今回は社内の「今」を知る為にWeeklyランキングを作成!
やったこと ①Pythonを使いSlackリアクション数ランキングを実装 ②作成したランキングをDataSpiderServistaでWeekly実行 11
12 API Pythonスクリプト 投稿 実行 全体像
13 ①Pythonを使い Slackリアクション数ランキングを実装
14 API Pythonスクリプト 投稿 実行 全体像
Pythonで Slackリアクション数ランキングを実装 実装に使用したもの ・Slack ・Slack API ・Python 15
Pythonで Slackリアクション数ランキングを実装 流れ ①サービス側で権限の設定 →Slackアプリを作る ②APIを使う準備 →Slackが提供するSDKを使う ③Pythonでランキングを集計 16
Pythonで Slackリアクション数ランキングを実装 ①Slackアプリを作る slackapiからアプリを作成し権限追加 17 ・channels:history →パブリックチャンネルの投稿などを取得 ・groups:history →プライベートチャンネルの投稿などを取得 ・chat:write
→ランキング結果をチャンネルに書き込むために 設定した内容(一部抜粋)
Pythonで Slackリアクション数ランキングを実装 ①Slackアプリを作る 作成したアプリをSlackのWorkspaceにインストール →完了するとトークンが発行される! 18
Pythonで Slackリアクション数ランキングを実装 ②Slack APIを使う準備 PythonのソースコードにはAPIを使用する。 何度もREST APIを呼び出すのは面倒… →Slack提供のSDKを使おう! 19 py
-m pip install slack-sdk
Pythonで Slackリアクション数ランキングを実装 ③Pythonでランキングを集計 <実装の流れ> ・チャンネル名&投稿のリンクを取得 ・投稿につくリアクション数を集計 ・カウントダウン形式でランキング結果をSlackに投稿 20
Pythonで Slackリアクション数ランキングを実装 ③Pythonでランキングを集計 ・投稿につくリアクション数を集計 →過去の会話履歴からリアクションのあった投稿だけに絞り込みリアクション数を合計 conversations_history() 21 Weekly実行なので 1週間前の日にちから取得。 UNIX時間に注意!
23 ②作成したランキングを DataSpiderServistaで Weekly実行
DataSpiderServistaで Weeklyランキングに! 24 <DataSpiderServistaの流れ> スクリプト作成→サービス登録→トリガー設定
25 API Pythonスクリプト 投稿 実行 全体像
DataSpiderServistaで Weeklyランキングに! 26 スクリプト作成 ・外部アプリケーション起動処理 ツールパレット>基本>処理> 外部アプリケーション起動処理
DataSpiderServistaで Weeklyランキングに! 27 外部アプリケーション起動処理のプロパティ ・起動コマンドに 用意したPythonスクリプトのパスを設定
DataSpiderServistaで Weeklyランキングに! 29 トリガー設定 ・実行したい日時を設定 ・登録したサービスと、スクリプトを選択 選択内容 毎週金曜日17:00、休日にも実行
DataSpiderServistaで Weeklyランキングに! 30 マイトリガーから実行結果を確認する 正常終了であれば成功!
出来たもの WeeklyランキングをSlackに投稿 投稿URL 31 投稿URL 投稿URL
32 おまけ
33 せっかくPythonコード書いたし いろいろ遊んでみよう!
Slackへ投稿以外にも何かできそう! 34 API Pythonスクリプト 投稿
Slackへ投稿以外にも何かできそう! 35 API Pythonスクリプト Streamlit
Streamlitもやってみた! 36
Streamlitもやってみた! 37 チャンネル名を 取得 件数を指定 集計結果を表示! ユーザー名を取得
Streamlitもやってみた! 38
Streamlitもやってみた! 39 ワクワクしながら はじめての技術に触れていました!
まとめ ・ Weeklyランキングにより社内の『今』を知ることが出来た! 在宅勤務ではどうしても見えにくい社内の動きは自分でキャッチアップしないと いけないがWeeklyランキングを見れば簡単に社内の流れを追えそう! ・やってみたい!と思ったことが自分の手で実現できると、とっても嬉しい! 初めての事ばかりで最初は苦戦するもののいつの間にか楽しめるようになっていた。 少しずつ完成に近づいていく過程にワクワクした。 気になる!やってみたい!と思った事をきっかけに、新しい技術・はじめての技術 を楽しみながら触れることが出来た。今後も続けたい!
40
以上です!ありがとうございました! 41