プロポーザル
これは応募されたプロポーザルです。聞きたいと思うプロポーザルを各ページの下部にあるSNSのボタンで拡散しましょう。拡散された投稿をプロポーザルへの投票としてカウントし、選考時に参考にさせていただきます。
talk
PyCon JP Bot: Python ベースの chatbot が支える PyCon JP(ja)
スピーカー
Takanori Suzuki
対象レベル:
初級
カテゴリ:
Industry Uses
説明
PyCon JP を開催するためにスタッフはSlackを中心にさまざまツールを使ってイベント開催に向けて作業を進めています。このトークでは、日々の作業を楽にしたり、繰り返し作業を自動化するために作成したたさまざまな Python 製の chatbot について、その技術的なポイント紹介します。
目的
slackとの連携する chatbot の作る方法を学びます。また、chatbot からりようできる各種APIとの連携方法やハマりどころについても紹介します。
概要
## slackと連携したプログラムの作成方法
slackにメッセージを送信する方法、slackとやりとりするbotの作成の基本を、Python製のライブラリを使用して解説します。以下の要素を説明します。
* Slack API: Incoming Webhooks
* Slack API: Bot users
* [slacker][4]
* [slackbot][5]
## 定期実行系bot
定期的に実行する作業を、cron で動作するbotプログラムによって効率化します。
以下ような機能と要素をコードを交えて解説します。
* SNS通知を楽にしたい: Google SpreadsheetとTwitter/Facebook連携
* PyCon JP カレンダーのメンテナンス: connpass API と Google Calendar連携
* チケットの棚卸し: JIRA API連携
* ソースコード: [https://github.com/pyconjp/pyconjp-cron][1]
* ソースコード: [https://github.com/pyconjp/jira-issue-report][2]
## PyCon JP Bot
PyCon JP Slackに常駐しているchatbotの各種機能と、その機能をどのように実現しているかをコードを交えて解説します。
* 感謝の++したい: O/R Mapper
* あいさつとリアクション: slackbot
* 割り勘計算したい: SymPy
* JIRAのissue探したい: JIRA API
* JIRAのissueをまとめて作りたい: JIRA API
* Google driveからファイル探したい: Google Drive API
* Google Suite のアカウント管理したい: Google Directory API
* ソースコード: [https://github.com/pyconjp/pyconjpbot][3]
[1]: https://github.com/os/slacker
[2]: https://github.com/pyconjp/jira-issue-report
[3]: https://github.com/pyconjp/pyconjpbot
[4]: https://github.com/os/slacker
[5]: https://github.com/lins05/slackbot