ファイル ハンドラー 2.0 のアクションを指定する
ファイル ハンドラーの登録時には、そのファイル ハンドラーで有効になるアクションのセットを指定します。
次に示す 3 つの組み込みのアクションは、ファイル ハンドラーでサポートすることを選択できます。
-
newFile
: OneDrive および SharePoint の [新規] メニューに表示されるファイルの種類。 -
open
: ファイル ハンドラーで開くことができるファイル。OneDrive および SharePoint の [開く] メニューに表示されます。 開くアクションは、新しいブラウザー タブで起動されます。 -
preview
: ファイル ハンドラーでプレビューできるファイル。 プレビューは、OneDrive および SharePoint で、ユーザーがファイルを左クリックしたときに実行されます。 プレビュー アクションは、OneDrive および SharePoint の Web サイトの<IFRAME>
要素内に読み込まれます。 -
custom
: ファイルは、ファイル ハンドラーを使用して、アプリケーション定義アクションを作成できます。 これに該当する追加のアクションは、OneDrive および SharePoint のツール バーに表示され、任意のファイル拡張子に追加できます。
ファイル ハンドラー マニフェストでアクションを定義する
アクションは、ファイル ハンドラー マニフェストの actions キー/値ペアで定義されます。これには、ファイル ハンドラーでサポートされるアクションの配列が含まれます。
次に、3 つの組み込みアクションと 1 つのカスタム アクションの定義例を示します。
[
{
"type": "newFile",
"url": "https://url/for/endpoint",
"availableOn": {
"file": { "extensions": [".bin"] },
"web": { }
}
},
{
"type": "open",
"url": "https://url/for/endpoint",
"availableOn": {
"file": { "extensions": [".bin"] },
"web": { }
}
},
{
"type": "preview",
"url": "https://url/for/endpoint",
"availableOn": {
"file": { "extensions": [".bin"] },
"web": { }
}
},
{
"type": "custom",
"url": "https://url/for/endpoint",
"displayName": "Add Signature with Contoso",
"shortDisplayName": "Add Signature",
"icon": {
"png1x": "https://url/for/icon.png"
},
"availableOn": {
"file": { "extensions": ["*"] },
"folder": { },
"allowMultiSelect": true,
"web": { }
}
}
]
Azure Active Directory アドイン拡張機能の制限により、これらのアクションは文字列にシリアル化されて保管されます。 マニフェストに保管するために文字列値に変換する前に、配列を JSON 形式で縮小するようにしてください。
たとえば、前述のアクションの定義は、次のようにしてファイル ハンドラー マニフェストに保管します。
{
"type": "FileHandler",
"properties": [
{
"key": "version",
"value": "2"
},
{
"key": "actions",
"value": "[{\"type\":\"newFile\",\"url\":\"https://url/for/endpoint\",\"availableOn\":{\"file\":{\"extensions\":[\".bin\"]},\"web\":{}}},{\"type\":\"open\",\"url\":\"https://url/for/endpoint\",\"availableOn\":{\"file\":{\"extensions\":[\".bin\"]},\"web\":{}}},{\"type\":\"preview\",\"url\":\"https://url/for/endpoint\",\"availableOn\":{\"file\":{\"extensions\":[\".bin\"]},\"web\":{}}},{\"type\":\"custom\",\"url\":\"https://url/for/endpoint\",\"displayName\":\"Add Signature with Contoso\",\"shortDisplayName\":\"Add Signature\",\"icon\":{\"png1x\":\"https://url/for/icon.png\"},\"availableOn\":{\"file\":{\"extensions\":[\"*\"]},\"folder\":{},\"allowMultiSelect\":true,\"web\":{}}}]"
}
]
}
アクション パラメーター
アクション パラメーターで宣言した各アクションは、次に示す形式になります。
{
"type": "newFile | open | preview | custom",
"url": "url",
"displayName": "string",
"shortDisplayName": "string",
"icon": {
"@odata.type": "microsoft.graph.displayIcon",
"svg": "url",
"png1x": "url",
"png1_5x": "url",
"png2x": "url"
},
"availableOn": {
"@odata.type": "microsoft.graph.availableOn",
"file": {
"@odata.type": "microsoft.graph.availableOnFile",
"extensions": [ ".pdf", ".png", ".psd" ]
},
"folder": {
"@odata.type": "microsoft.graph.availableOnFolder"
},
"allowMultiSelect": false,
"web": { "@odata.type": "microsoft.graph.availableOnWeb" }
}
}
プロパティ
すべてのプロパティが必要なわけではありません。指定したアクションの種類によって異なります。
パラメーター名 | 型 | 説明 |
---|---|---|
type | string | 、、open 、または preview のnewFile custom 値。 必須です。 |
url | URL | ファイル ハンドラーのアクションを処理するエンドポイントの https:// URL。 必須。 |
displayName | string | アクションを表すために使用される既定のロケール文字列。 省略可能。 既定値は、 の "ブラウザーで開く" です type: "open" 。 |
shortDisplayName | 文字列 | ツール バーまたは折りたたまれたアクション メニューのアクションを表すために使用される既定のロケール文字列。 省略可能。 |
availableOn | オブジェクト | このアクションが使用可能になる状況を定義する、プロパティのコレクション。 必須。 |
アイコン | displayIcon | このファイルの種類のアイコン イメージへの URL を含むオブジェクト。 省略可能。 |
AvailableOn プロパティ
availableOn プロパティ内のプロパティを設定することで、アクションを使用できる場所をカスタマイズできます。
パラメーター名 | 型 | 説明 |
---|---|---|
file.extensions | 文字列の配列 | アクションが使用可能になる、ファイル拡張子の配列。 ファイル拡張子は、ピリオド (.) で始まる必要があります。 ワイルドカード文字 * は、カスタム アクションがすべてのファイル拡張子に対応することを示すために使用できます。 |
folder | オブジェクト | パラメーターのないオブジェクトは、フォルダーが選択されているとき、またはファイルが選択されていないときに、ファイル ハンドラーが使用可能になることを示します。 null 値またはプロパティが定義されていない場合は、このアクションがフォルダーに対して使用できないことを示します。 |
allowMultiSelect | boolean |
true の場合、複数のファイルの選択が可能になり、アクションが表されたままになります。
false または指定なしの場合、アクションは 1 つのアイテムが選択されているときにのみ表示されます。 |
web | オブジェクト | パラメーターのないオブジェクトは、Web サイトを閲覧しているときにファイル ハンドラーが使用可能になることを示します。 |
- アクションの種類が
newFile
の場合、指定できるファイル拡張子は 1 つのみです。 これは、新しく作成されるファイルに付けられる拡張子です。 複数のファイル拡張子がリスト表示された場合は、最初のファイル拡張子が使用されます。 -
folder
プロパティとallowMultiSelect
プロパティは、アクションの種類がcustom
の場合にのみ適用されます。 これらの値は、その他の種類のアクションでは無視されます。