はじめに
この記事では、Asanaに登録されたタスク情報をもとに、週報を自動生成し、LINE WORKSに投稿する仕組みの作り方について紹介します。これにより、毎週手動で行っていた週報の作成・送信作業を自動化し、負担を軽減することが目的です。
Asana、GitHub Actions、LINEWORKS を組み合わせる理由
チームではAsanaを使ってタスク管理を行っており、日々の業務内容は基本的にすべてAsanaに記録されています。この情報を活用すれば、正確な週報を自動で作ることができると考えました。また、週次での自動実行にはGitHub Actionsを使うことで、サーバーレスかつ無料で定期処理を実行できるメリットがあります。
完成した週報はLINE WORKSで上司に共有しているため、最終的な出力先をLINE WORKSに設定することで、手動でのコピー&ペースト作業も不要にできます。このように、Asanaでタスク情報を集めて、GitHub Actionsで自動処理し、LINE WORKSで共有するという流れを作ることで、報告作業の効率化を図りました。
1.システム全体の概要
フロー図(Asana → GitHub Actions → LINEWORKS)
各ツールの役割
- Asana: タスク情報の管理
- GitHub Actions: スケジュール実行&API連携
- LINEWORKS: 週報の送信先
2.必要な準備
Asana API の設定
- APIトークンの取得方法
- 取得したいタスクのフィルタリング方法
GitHub Actions の設定
- GitHubリポジトリの作成
secrets
の設定(APIトークンを環境変数に格納)
LINEWORKS API の設定
- Botの作成
- APIトークンの取得
3.GitHub Actions の実装
ワークフローの作成
schedule
を使って毎週特定の曜日・時間に実行- Asana API からタスク情報を取得
- LINEWORKS API にリクエストを送信してメッセージ投稿
コード例の紹介
main.yml
(GitHub Actions の設定)script.js
/script.py
(Asana からデータ取得&LINEWORKS に送信)
4.実行結果の確認と運用
GitHub Actions の実行ログの確認方法
LINEWORKS に送信された週報のスクリーンショット
トラブルシューティング(APIキーの有効期限、エラーハンドリング)
5.まとめ
システム導入後のメリット(時間短縮、手間削減、ミス防止)
今後の改善ポイント(柔軟なメッセージフォーマット対応、Slack連携など)
読者へのメッセージ(「ぜひ試してみてください!」)