QR コードまたはバーコード スキャナー機能を統合する
バーコードとは、視覚的でコンピューターが読み取り可能な形式でデータを表す方法です。 バーコードには、製品に関する情報 (種類、サイズ、製造元、国や地域など) がバーやスペースの形式で含まれています。 コードは、ネイティブ デバイス カメラの光学スキャナーを使用して読み取られます。 より充実した共同作業エクスペリエンスを実現するために、Teams プラットフォームで提供される QR またはバーコード スキャナー機能を Teams アプリと統合できます。
JavaScript クライアント ライブラリMicrosoft Teams使用できます。これは、アプリがユーザーのネイティブ デバイス機能にアクセスするために必要なツールを提供します。 scanBarCode API を使用して、スキャナー機能をアプリ内に統合します。
QR またはバーコード スキャナー機能を統合する利点
QR またはバーコード スキャナー機能の統合の利点を次に示します。
- この統合により、Teams プラットフォーム上の Web アプリ開発者は、Teams JavaScript クライアント ライブラリを使用して QR またはバーコード スキャン機能を利用できます。
- この機能を使用すると、ユーザーはスキャナー UI の中央にあるフレーム内の QR またはバーコードのみを配置する必要があり、コードは自動的にスキャンされます。 保存されたデータは、呼び出し元の Web アプリと共有されます。 これにより、長い製品コードやその他の関連情報を手動で入力する際の不便さと人的エラーを回避できます。
QR またはバーコード スキャナー機能を統合するには、アプリ マニフェスト ファイルを更新し、scanBarCode API を呼び出す必要があります。 効果的な統合を実現するには、ネイティブ QR またはバーコード スキャナー機能を使用できる code スニペット で scanBarCode API を呼び出す方法をよく理解している必要があります。 API では、サポートされていないバーコード標準に対してエラーが発生します。 Teams アプリのエラーを処理するには、API 応答エラーを理解しておくことが重要です。
注:
MICROSOFT TEAMS QR またはバーコード スキャナー機能のサポートは、モバイル クライアントでのみ使用できます。
マニフェストを更新する
devicePermissions
プロパティを追加して media
を指定することにより、Teamsアプリの manifest.json ファイルを更新します。 これにより、アプリは、QR またはバーコード スキャナー機能の使用を開始する前に、ユーザーに必要なアクセス許可を要求できます。 アプリ マニフェストの更新プログラムは次のとおりです。
"devicePermissions": [
"media",
],
注:
アクセス許可要求 プロンプトは、関連する Teams API が開始されると自動的に表示されます。 詳細については、「デバイスのアクセス許可要求」 を参照してください。
ScanBarCode API
scanBarCode API は、ユーザーがさまざまな種類のバーコードをスキャンできるようにするスキャナー コントロールを呼び出し、結果を文字列として返します。
バーコード スキャン エクスペリエンスをカスタマイズするために、省略可能な バーコード構成 が入力として scanBarCode API に渡されます。
timeOutIntervalInSec
を使用して、スキャンタイムアウト間隔を秒単位で指定できます。 既定値は 30 秒で、最大値は 60 秒です。
scanBarCode() API では、次のバーコードの種類がサポートされています。
バーコードの種類 | Android でサポートされています | iOS でサポート: |
---|---|---|
コード バー | はい | 不要 |
コード 39 | はい | はい |
コード 93 | はい | はい |
コード 128 | はい | はい |
EAN-13 | はい | はい |
EAN-8 | はい | はい |
ITF | 不要 | はい |
QR コード | はい | はい |
RSS は展開されています | はい | 不要 |
RSS-14 | はい | 不要 |
UPC-A | はい | はい |
UPC-E | はい | はい |
次の図は、QR またはバーコード スキャナー機能の Web アプリエクスペリエンスを示しています。
エラー処理
Teams アプリでこれらのエラーを適切に処理する必要があります。 次の表に、エラー コードとエラーが生成される条件を示します。
エラー コード | エラー名 | 条件 |
---|---|---|
100 | NOT_SUPPORTED_ON_PLATFORM | API は現在のプラットフォームではサポートされていません。 |
500 | 内部エラーです(_E) | 必要な操作の実行中に内部エラーが発生しました。 |
1000 | PERMISSION_DENIED | アクセス許可がユーザーによって拒否されました。 |
3000 | NO_HW_SUPPORT | 基になるハードウェアでは、この機能はサポートされていません。 |
4000 | 引数が無効です | いくつかの引数は無効です。 |
8000 | USER_ABORT | ユーザーが操作を中止します。 |
8001 | OPERATION_TIMED_OUT | 指定された時間間隔でバーコードを検出できませんでした。 |
9000 | OLD_PLATFORM | プラットフォーム コードは古く、この API は実装されていません。 |
コード スニペット
カメラを使用して QR またはバーコードをスキャンするため で ScanBarCode()
API を呼び出しています。
const config: microsoftTeams.media.BarCodeConfig = {
timeOutIntervalInSec: 30};
microsoftTeams.media.scanBarCode((error: microsoftTeams.SdkError, decodedText: string) => {
if (error) {
if (error.message) {
output(" ErrorCode: " + error.errorCode + error.message);
} else {
output(" ErrorCode: " + error.errorCode);
}
} else if (decodedText) {
output(decodedText);
}
}, config);
コード サンプル
サンプルの名前 | 説明 | .NET | Node.js | マニフェスト |
---|---|---|---|---|
QR によるボット参加チーム | このサンプルでは、ユーザーがボットを介してチームの ID を含む QR コードを使用してチームに参加できる機能を使用する方法を示します。 | 表示 | 表示 | 表示 |
タブ製品検査 | このサンプル アプリでは、ユーザーが製品をスキャンし、画像をキャプチャし、承認済みまたは拒否済みとしてマークできる機能を使用する方法を示します。 | 表示 | 表示 | 表示 |
関連項目
Platform Docs