decode2019 ppt template...decode2019_ppt_template author ryuta suzuki subject keywords decode2019...

41
de:code 2019 PR03 これでできる! Microsoft Teams アプリ開発の ポイント徹底解説 日本マイクロソフト株式会社 パートナー事業本部 テクニカルエバンジェリスト 物江 修

Upload: others

Post on 11-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

de:code 2019 PR03

これでできる!

Microsoft Teams アプリ開発の

ポイント徹底解説日本マイクロソフト株式会社

パートナー事業本部 テクニカルエバンジェリスト

物江 修

Page 2: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

さまざまな Teams のセッションをご用意しています

PR08

速習! Microsoft Teams ~最新情報を一気にキャッチ アップ~

PR04

これからはじめる!

やさしい Microsoft

Teams アプリ開発の

基本

PR03

これでできる!

Microsoft Teams

アプリ開発のポイント

徹底解説

本セッションはこちら

Page 3: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

このセッションの目的

• Teams アプリケーションの概念の理解(おさらい)

• アプリ開発を開始するための具体的な方法

• Teams が提供する代表的なリソースの利用方法

Microsoft Teams アプリケーションの開発について

対象者 : コーディングスキルを持ったプログラマー

Page 4: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

アジェンダ

1. Microsoft Teams での開発

2. アプリケーションの実装

3. アプリの配布

Page 5: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Microsoft Teams での開発

Page 6: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Microsoft Teams

Microsoft 365 における

チームワークのハブ

コミュニケーション

コラボレーション

さまざまなツールとの連携

安心・安全

Page 7: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

タブ

Microsoft Teams が提供する拡張可能なプラットフォーム

アプリの配布と管理

ボット

音声と

ビデオ

メッセージ

拡張

Microsoft Graph

アダプティブ

カード

通知

アプリをビルドチャット、チャネル、個人のワークスペース

Page 8: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Bot Framework

Microsoft Teams SDK

Microsoft Teams

API

Microsoft Teams の開発

ボットメッセージ

拡張/アクションタスクモジュール

Web

Microsoft

Graph

APIs

Web アプリかボットをマッシュアップ + Teams 固有の機能

タブ

Page 9: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

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 にコードからアクセス

Page 10: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

アプリの定義

•アプリ マニフェストを

作成

•機能を指定

1

機能の実装

•Web やサービス

アプリケーションを

ホスティング

•ボット、タブなどを

実装

• Teams SDK を

利用

2

アプリのテスト

•アプリ パッケージを

作成

• Teams に

サイド ロード

3

アプリの配布

•パッケージを

アップロード

•組織のユーザーの

アプリを有効化

4

Teams におけるアプリ開発のワークフロー

Page 11: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

開発の準備 1/2

開発用 Office 365 サブスクリプションの準備

https://developer.microsoft.com/ja-JP/office/dev-program

Page 12: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

開発の準備 2/2

Microsoft 365 管理センターで外部アプリのサイドローディングを有効化

Page 13: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Teams アプリケーションの実装

Page 14: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

アプリの定義 : アプリマニフェストの記述

manifest.json に JSON でアプリケーションの機能を定義

アプリの定義

Page 15: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

App Studio を使用したアプリマニフェストの編集

• アプリ プロジェクトの作成と保存

• manifest.json の編集

• カードのコードのプレビューと生成

• 1 クリック サイド ロード

• ボット認証情報と設定管理を完全に統合

GUI ツールでアプリマニフェストを作成

Page 16: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

タブ

• Teams JavaScript client SDK で

Teams の情報にアクセス可能

• 静的タブと構成可能タブ

• 個々のユーザーをサポート (静的)

• チャネルの一部として動作 (構成可能)

Web サイト/アプリをマッシュアップ

Page 17: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

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 でユーザー情報を取得

Page 18: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

デモ : タブとTeams JavaScript client SDK

Page 19: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

ボット

• コマンド

• アクション可能なメッセージ

Microsoft Bot Framework に登録されたボットに接続

Page 20: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Teams へのボットの登録

アプリマニフェストに登録する情報

• App パスワード

App Studio から直接ボットの登録を行える

Page 21: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

ボットプロジェクトの作成

New Visual Studio template

MSBOT/npm コマンド

Page 22: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Teams 開発におけるボットサービスのホスト

開発の段階に合わせてホストする方法を変える

Page 23: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

デモ : ボット作成と Teams での公開

Page 24: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Bot Builder SDK の Teams 拡張

ボットを Teams 固有の機能で拡張

メッセージ拡張

メッセージアクション

タスクモジュール (※)

Microsoft

Teams SDK

(※) ボット/タブ内から使用

Page 25: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

メッセージ拡張の構成

Bot Builder SDK

Teams 拡張

JSON

アダプティブカード/

タスクモジュール等

Page 26: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

"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 定義

←メッセージ拡張

←① ←①

←②

←②

←③

←③

Page 27: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

メッセージ拡張

メッセージ作成時にボットの機能を呼び出す

• 投稿時にアプリ コンテンツをクエリしたり、会話に挿入

• コマンドボックスからも利用可能

Page 28: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

メッセージ アクション New!

投稿済メッセージの内容を取得してアクション

• [その他のオプション] から起動

• JSON 形式で投稿内容を取得

Page 29: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

デモ : メッセージ拡張とメッセージアクション

Page 30: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

• 共通かつ一貫した方法でUI コンテンツを交換できるオープンなカード交換形式(https://adaptivecards.io)

• Web、デスクトップ、モバイルでの完全サポート

• iOS および Android の UI に対

• 迅速な対話とタスク完了

アダプティブ カード

機能豊富で柔軟性の高い対話式カードでボット エクスペリエンスを向上

Page 31: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

デモ : アダプティブカード

Page 32: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

コネクタ

他のサービスの更新をチャネルに配信

Page 33: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

デモ : カスタムコネクタの作成

Page 34: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

ボット

メッセージ拡張

タブ

コネクタ

アダプティブ カード

タスク モジュール

自然言語コマンドによる会話

構造化 UI ベースの

ボット コマンド呼び出し

コンテンツの完全埋め込み

エクスペリエンスの実現

チャネルへの通知送信のための

シンプルな着信 Web フック統合

対話コンテンツの機能豊富で

柔軟性の高いレイアウト

ユーザー入力や

レンダリング詳細情報の収集

既存の資産を以下に

接続:

• SharePoint

• Microsoft Graph

• Azure Bot Service

• Flow &

PowerApps

Teams 拡張のチートシート

Page 35: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Teams アプリケーションの配布

Page 36: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

アプリの配布

A. Teams アプリ ストアによる

一般公開配布

• Microsoft 販売者ダッシュボードから

• アプリ パッケージを提出 (パートナー セ

ンターからもまもなく可能)

B. テナント アプリ カタログによる、

社内ユーザーのみを対象とした配布

• Teams 内から、または API 経由で

アップロード

アプリ配布の 2 つのオプション

Page 37: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Office 365 管理ポータル

きめ細かい許可管理アプリへのユーザー アクセスを管理

アプリ設定のポリシーアプリのプレインストールと

プレピン留めで組織アプリの検出と

利用を促進

開発の制御アプリの「サイド ロード」を特定の

個人に限定

アプリの管理

Page 38: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

まとめ

多様性を活かした開発

Microsoft Teams アプリ

Page 39: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

Teams デベロッパー センター

• Microsoft Teams の優れたアプリ、ボット、

タブのビルドを開始する

• トレーニングとチュートリアル

• 開発を迅速に進めるために用意されたリソース

Developer サポート

•アナウンスとプログラム情報

•ベスト プラクティスや最新情報を常に

入手

Teams デベロッパー ガイダンス

Microsoft Teams の計画、配信、採

用、管理の方法を学ぶ

チームの移行ガイダンスに Skype for

Business を含める

https://aka.ms/TeamsDeveloper https://aka.ms/TeamsDevSupport https://aka.ms/TeamsDevDocs

Microsoft Teams 開発のリソース

Page 40: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

リソース次のステップ

• さぁ、はじめよう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

Page 41: decode2019 PPT Template...decode2019_PPT_Template Author Ryuta Suzuki Subject Keywords decode2019 Created Date 6/3/2019 11:29:01 AM

© 2018 Microsoft Corporation. All rights reserved.

本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。

© 2019 Microsoft Corporation. All rights reserved.

本情報の内容 (添付文書、リンク先などを含む) は、de:code 2019 開催日 (2019年5月29~30日) 時点のものであり、予告なく変更される場合があります。

本コンテンツの著作権、および本コンテンツ中に出てくる商標権、団体名、ロゴ、製品、サービスなどはそれぞれ、各権利保有者に帰属します。