SlideShare a Scribd company logo
Ask the Speaker 写真撮影 動画撮影
セッション資料
後日公開
Twitter ハッシュタグ
PR03
これでできる!
Microsoft Teams アプリ開発のポイント徹底解説
日本マイクロソフト株式会社 パートナー事業本部 テクニカルエバンジェリスト
物江 修
#decode19 #PR03
de:code 2019 PR03
これでできる!
Microsoft Teams アプリ開発の
ポイント徹底解説
日本マイクロソフト株式会社
パートナー事業本部 テクニカルエバンジェリスト
物江 修
さまざまな Teams のセッションをご用意しています
PR08
速習!
Microsoft Teams
~最新情報を一気に
キャッチ アップ~
PR04
これからはじめる!
やさしい Microsoft
Teams アプリ開発の
基本
PR03
これでできる!
Microsoft Teams
アプリ開発のポイント
徹底解説
本セッションはこちら
このセッションの目的
• Teams アプリケーションの概念の理解(おさらい)
• アプリ開発を開始するための具体的な方法
• Teams が提供する代表的なリソースの利用方法
Microsoft Teams アプリケーションの開発について
対象者 : コーディングスキルを持ったプログラマー
アジェンダ
1. Microsoft Teams での開発
2. アプリケーションの実装
3. アプリの配布
Microsoft Teams での開発
Microsoft Teams
Microsoft 365 における
チームワークのハブ
コミュニケーション
コラボレーション
さまざまなツールとの連携
安心・安全
タブ
Microsoft Teams が提供する拡張可能なプラットフォーム
アプリの配布と管理
ボット
音声と
ビデオ
メッセージ
拡張
Microsoft Graph
アダプティブ
カード
通知
アプリをビルド
チャット、チャネル、個人のワークスペース
Bot Framework
Microsoft Teams SDK
Microsoft
Teams
API
Microsoft Teams の開発
ボット
メッセージ
拡張/アクション
タスク
モジュール
Web
Microsoft
Graph
APIs
Web アプリかボットをマッシュアップ + Teams 固有の機能
タブ
Microsoft Teams の SDK と API
.NET
JS
Teams Bot Builder SDK
• Microsoft
Teams JavaScript
client SDK
• C#/.NET (v3)
• C#/.NET - Beta (v4)
• Node.js (v3)
• Node.js - Beta (v4)
Microsoft Graph
{ REST }
• Microsoft
Teams API v1.0
• Microsoft
Teams API - Beta
Teams のタブから使用 ボットを Teams 固有の機能で拡張 Teams にコードからアクセス
アプリの
定義
• アプリ マニフェストを
作成
• 機能を指定
1
機能の
実装
• Web やサービス
アプリケーションを
ホスティング
• ボット、タブなどを
実装
• Teams SDK を
利用
2
アプリの
テスト
• アプリ パッケージを
作成
• Teams に
サイド ロード
3
アプリの
配布
• パッケージを
アップロード
• 組織のユーザーの
アプリを有効化
4
Teams におけるアプリ開発のワークフロー
開発の準備 1/2
開発用 Office 365 サブスクリプションの準備
https://developer.microsoft.com/ja-JP/office/dev-program
開発の準備 2/2
Microsoft 365 管理センターで外部アプリの
サイドローディングを有効化
Teams アプリケーションの実装
アプリの定義 : アプリマニフェストの記述
manifest.json に JSON でアプリケーションの機能を定義
アプリの定義
App Studio を使用したアプリマニフェストの編集
• アプリ プロジェクトの作成と保存
• manifest.json の編集
• カードのコードのプレビューと生成
• 1 クリック サイド ロード
• ボット認証情報と
設定管理を完全に統合
GUI ツールで
アプリマニフェストを作成
タブ
• Teams JavaScript client SDK で
Teams の情報にアクセス可能
• 静的タブと構成可能タブ
• 個々のユーザーをサポート (静的)
• チャネルの一部として動作 (構成可能)
Web サイト/アプリをマッシュアップ
Teams JavaScript client SDK の使用
//DOM がロードされたら
document.addEventListener('DOMContentLoaded', () => {
//Microsoft Teams のユーザーコンテキストを取得
microsoftTeams.getContext((context) => {
$id('showUpn').innerText = context.upn;
$id('showUoid').innerText = context.userObjectId;
$id('showTheme').innerText = context.theme;
$id('showLocale').innerText = context.locale;
});
タブ内の JavaScript でユーザー情報を取得
デモ : タブと
Teams JavaScript client SDK
ボット
• コマンド
• アクション可能なメッセージ
Microsoft Bot Framework に登録されたボットに接続
Teams へのボットの登録
アプリマニフェストに登録する情報
• App パスワード
App Studio から直接ボットの登録を
行える
ボットプロジェクトの作成
New Visual Studio template
MSBOT/npm コマンド
Teams 開発におけるボットサービスのホスト
開発の段階に合わせてホストする方法を変える
デモ : ボット作成と Teams での
公開
Bot Builder SDK の Teams 拡張
ボットを Teams 固有の機能で拡張
メッセージ拡張
メッセージアクション
タスクモジュール (※)
Microsoft
Teams SDK
(※) ボット/タブ内から使用
メッセージ拡張の構成
Bot Builder SDK
Teams 拡張
JSON
アダプティブカード/
タスクモジュール等
"composeExtensions": [
{
"botId": "92f1101b-3b54-46af-98e9-c542a30a8d77",
"commands": [
{
"id": "queryCards",
"description": "Test command to run query",
"title": "Query cards",
"parameters": [
{
"name": "queryText",
"title": "Query parameter",
"description": "Query parameter"
}
]
},
{
"id": "createCard",
"type": "action",
"description": "Test command to run action to create a card",
"title": "Create cards",
"fetchTask": true,
メッセージ拡張の UI 定義
←メッセージ拡張
←① ←①
←②
←②
←③
←③
メッセージ拡張
メッセージ作成時にボットの機能を呼び出す
• 投稿時にアプリ コンテンツを
クエリしたり、会話に挿入
• コマンドボックスからも利用可能
メッセージ アクション New!
投稿済メッセージの内容を取得してアクション
• [その他のオプション] から起動
• JSON 形式で投稿内容を取得
デモ : メッセージ拡張と
メッセージアクション
• 共通かつ一貫した方法で
UI コンテンツを交換できるオープンな
カード交換形式
(https://adaptivecards.io)
• Web、デスクトップ、モバイルでの
完全サポート
• iOS および Android の UI に対
• 迅速な対話とタスク完了
アダプティブ カード
機能豊富で柔軟性の高い対話式カードで
ボット エクスペリエンスを向上
デモ : アダプティブカード
コネクタ
他のサービスの更新をチャネルに配信
デモ : カスタムコネクタの作成
ボット
メッセージ拡張
タブ
コネクタ
アダプティブ カード
タスク モジュール
自然言語コマンドによる会話
構造化 UI ベースの
ボット コマンド呼び出し
コンテンツの完全埋め込み
エクスペリエンスの実現
チャネルへの通知送信のための
シンプルな着信 Web フック統合
対話コンテンツの機能豊富で
柔軟性の高いレイアウト
ユーザー入力や
レンダリング詳細情報の収集
既存の資産を以下に
接続:
• SharePoint
• Microsoft Graph
• Azure Bot Service
• Flow &
PowerApps
Teams 拡張のチートシート
Teams アプリケーションの配布
アプリの配布
A. Teams アプリ ストアによる
一般公開配布
• Microsoft 販売者ダッシュボードから
• アプリ パッケージを提出 (パートナー セ
ンターからもまもなく可能)
B. テナント アプリ カタログによる、
社内ユーザーのみを対象とした配布
• Teams 内から、または API 経由で
アップロード
アプリ配布の 2 つのオプション
Office 365 管理ポータル
きめ細かい許可管理
アプリへのユーザー アクセスを管理
アプリ設定のポリシー
アプリのプレインストールと
プレピン留めで組織アプリの検出と
利用を促進
開発の制御
アプリの「サイド ロード」を特定の
個人に限定
アプリの管理
まとめ
多様性を活かした開発
Microsoft Teams アプリ
Teams デベロッパー センター
• Microsoft Teams の優れたアプリ、ボット、
タブのビルドを開始する
• トレーニングとチュートリアル
• 開発を迅速に進めるために用意されたリソース
Developer サポート
•アナウンスとプログラム情報
•ベスト プラクティスや最新情報を常に
入手
Teams デベロッパー ガイダンス
Microsoft Teams の計画、配信、採
用、管理の方法を学ぶ
チームの移行ガイダンスに Skype for
Business を含める
https://aka.ms/TeamsDeveloper https://aka.ms/TeamsDevSupport https://aka.ms/TeamsDevDocs
Microsoft Teams 開発のリソース
リソース次のステップ
• さぁ、はじめよう
Microsoft Teams
Teamwork Solution Accelerator
• リソースとサポートへアクセスする
• FastTrack
• https://aka.ms/SuccessWithTeams
•
• https://developer.microsoft.com/ja-
JP/office/dev-program
•
• https://github.com/OfficeDev/BotBuilder-
MicrosoftTeams-node
https://aka.ms/TeamworkSolutionAccelerator
aka.ms/TeamworkAssessment
https://aka.ms/TeamsDeveloper
https://aka.ms/TeamsDevSupport
https://aka.ms/TeamsDevDocs
© 2018 Microsoft Corporation. All rights reserved.
本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。
© 2019 Microsoft Corporation. All rights reserved.
本情報の内容 (添付文書、リンク先などを含む) は、de:code 2019 開催日 (2019年5月29~30日) 時点のものであり、予告なく変更される場合があります。
本コンテンツの著作権、および本コンテンツ中に出てくる商標権、団体名、ロゴ、製品、サービスなどはそれぞれ、各権利保有者に帰属します。

More Related Content

PDF
Burp suite を使って iPhone アプリを診断した時に困ったことと、解決方法
PPTX
Cloud Firestore を使って、Polling をやめたい話
PDF
あなたのチームの「いい人」は機能していますか?
PDF
IT系エンジニアのためのプレゼンテーション入門
PDF
イミュータブルデータモデルの極意
PPTX
Inside WebM
PPTX
GraphQLのsubscriptionで出来ること
PDF
Python 3.9からの新定番zoneinfoを使いこなそう
Burp suite を使って iPhone アプリを診断した時に困ったことと、解決方法
Cloud Firestore を使って、Polling をやめたい話
あなたのチームの「いい人」は機能していますか?
IT系エンジニアのためのプレゼンテーション入門
イミュータブルデータモデルの極意
Inside WebM
GraphQLのsubscriptionで出来ること
Python 3.9からの新定番zoneinfoを使いこなそう

What's hot (20)

PPTX
C#とILとネイティブと
PDF
トップエンジニアが実践する思考整理法~テクニカルライティングを用いた課題解決の基本
PDF
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
PDF
ざっくり DDD 入門!!
PDF
SharePoint 開発でできること 2019年9月版
PDF
AWSのログ管理ベストプラクティス
PDF
WebSocketのキホン
PDF
全文検索でRedmineをさらに活用!
PDF
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
PDF
2018 builderscon airflowを用いて、 複雑大規模なジョブフロー管理 に立ち向かう
PDF
こんなに使える!今どきのAPIドキュメンテーションツール
PDF
Unityでオニオンアーキテクチャ
PDF
AWS Black Belt Techシリーズ Amazon CloudSearch
PDF
DevOps with Database on AWS
PPTX
概念モデリング再入門 + DDD
PDF
アイデアソン・ハッカソン運営ガイドブック
PDF
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
PDF
WebAssemblyのWeb以外のことぜんぶ話す
PDF
ドメイン駆動設計のためのオブジェクト指向入門
PDF
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
C#とILとネイティブと
トップエンジニアが実践する思考整理法~テクニカルライティングを用いた課題解決の基本
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
ざっくり DDD 入門!!
SharePoint 開発でできること 2019年9月版
AWSのログ管理ベストプラクティス
WebSocketのキホン
全文検索でRedmineをさらに活用!
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
2018 builderscon airflowを用いて、 複雑大規模なジョブフロー管理 に立ち向かう
こんなに使える!今どきのAPIドキュメンテーションツール
Unityでオニオンアーキテクチャ
AWS Black Belt Techシリーズ Amazon CloudSearch
DevOps with Database on AWS
概念モデリング再入門 + DDD
アイデアソン・ハッカソン運営ガイドブック
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
WebAssemblyのWeb以外のことぜんぶ話す
ドメイン駆動設計のためのオブジェクト指向入門
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Ad

Similar to これでできる! Microsoft Teams アプリ開発のポイント徹底解説 (20)

PDF
Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4
PPTX
Bot frameworksdk
PDF
【de:code 2020】 開発者が語る! Microsoft Teams アプリケーション開発の実例とコツ
PDF
[POST.Dev Japan] VS Code で試みる開発体験の向上
PPTX
CLR/H #clrh104 あなたのアプリにスパイスを! ~ コグニティブと対話 Botのプチレシピ
PPTX
Azure Bot!! Microsoft Bot Framework で簡単Bot開発
PDF
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
PDF
【de:code 2020】 Azure Bot Services を使って Teams bot を開発する
PPTX
MS系Chatbot触ってみた
PDF
[Japan Tech summit 2017] PRD 002
PDF
Microsoft Build 2021をさらに楽しむためのおすすめセッション/サンプル コード Powered by Microsoft MVPs
PDF
高品質な Teams アプリを開発するためのポイント
PPTX
Microsoft Teams Custom
PPTX
Microsoft Teams 管理のススメ
PDF
MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築
PDF
Computer Vision と Translator Text API 使ってみた
PDF
【de:code 2020】 Teams から WinActor を呼び出そう! ~WinActor Bot のご紹介~
PDF
User groupandfuture
PPTX
WPF on .NET Core 3.0
PPTX
Chat bot created by QnA Maker
Tech Summit 2018: ユーザーインターフェースとしてのチャットボット開発手法 と Bot Framework V4
Bot frameworksdk
【de:code 2020】 開発者が語る! Microsoft Teams アプリケーション開発の実例とコツ
[POST.Dev Japan] VS Code で試みる開発体験の向上
CLR/H #clrh104 あなたのアプリにスパイスを! ~ コグニティブと対話 Botのプチレシピ
Azure Bot!! Microsoft Bot Framework で簡単Bot開発
[TL08] 50 分で Bot 開発者になれる!~実践的ノウハウと、 Azure や Office 365 を組み合わせたアーキテクチャの伝授~
【de:code 2020】 Azure Bot Services を使って Teams bot を開発する
MS系Chatbot触ってみた
[Japan Tech summit 2017] PRD 002
Microsoft Build 2021をさらに楽しむためのおすすめセッション/サンプル コード Powered by Microsoft MVPs
高品質な Teams アプリを開発するためのポイント
Microsoft Teams Custom
Microsoft Teams 管理のススメ
MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築
Computer Vision と Translator Text API 使ってみた
【de:code 2020】 Teams から WinActor を呼び出そう! ~WinActor Bot のご紹介~
User groupandfuture
WPF on .NET Core 3.0
Chat bot created by QnA Maker
Ad

More from Osamu Monoe (20)

PDF
PWA on Windows
PDF
Web プラットフォーム再考 ~PWA のもたらす未来の光と影~
PDF
Microsoft Edge のFIDO サポート状況
PDF
JavaScript と Bot Service を使った Bot 開発
PDF
Web サーバー管理者のための Azure App Service 再入門
PDF
NativeScript 環境のインストールとはじめてのプロジェクト実行
PDF
Microsoft Bot Framework と Cognitive Services を活用した 業務サポートBOT 構築
PDF
JS で Bot つくろうぜ! ~刮目せよ!、これがMSのBot Framewok だ!!~
PDF
For every people achieve more : マイクロソフトの Inclusive Design について
PDF
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~
PDF
Microsoft Edge 最新アップデートとこれから
PDF
Visual Studio 2015 を使用した Cordova アプリの開発
PDF
html5j Webプラットフォームの紹介
PDF
Microsoft edge deep dive
PDF
Edge と IE、来年からの Web 制作
PDF
マイクロソフトにおけるエバンジェリズム活動
PDF
Windows 10 のあたらしい Web ブラウザーの F12 開発者ツール
PDF
Microsoft Edgeで サポートされる 新しい API について
PDF
Windows 10 の あたらしい Web ブラウザー について
PDF
酒と泪と Edge と IE
PWA on Windows
Web プラットフォーム再考 ~PWA のもたらす未来の光と影~
Microsoft Edge のFIDO サポート状況
JavaScript と Bot Service を使った Bot 開発
Web サーバー管理者のための Azure App Service 再入門
NativeScript 環境のインストールとはじめてのプロジェクト実行
Microsoft Bot Framework と Cognitive Services を活用した 業務サポートBOT 構築
JS で Bot つくろうぜ! ~刮目せよ!、これがMSのBot Framewok だ!!~
For every people achieve more : マイクロソフトの Inclusive Design について
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~
Microsoft Edge 最新アップデートとこれから
Visual Studio 2015 を使用した Cordova アプリの開発
html5j Webプラットフォームの紹介
Microsoft edge deep dive
Edge と IE、来年からの Web 制作
マイクロソフトにおけるエバンジェリズム活動
Windows 10 のあたらしい Web ブラウザーの F12 開発者ツール
Microsoft Edgeで サポートされる 新しい API について
Windows 10 の あたらしい Web ブラウザー について
酒と泪と Edge と IE

これでできる! Microsoft Teams アプリ開発のポイント徹底解説