Office.DevicePermissionType enum
Указывает возможность устройства, доступ к которому запрашивает надстройка.
Комментарии
Приложения. Этот API поддерживается следующими приложениями Office при запуске в браузерах на основе Chromium, таких как Microsoft Edge и Google Chrome.
Excel в Интернете
Outlook в Интернете
PowerPoint в Интернете
Word в Интернете
Он также поддерживается в новом Outlook в Windows.
Набор обязательных требований: DevicePermission 1.1
Примеры
// Request permission from a user to access their device capabilities.
const host = Office.context.host;
if (host === Office.HostType.Excel || host === Office.HostType.PowerPoint || host === Office.HostType.Word) {
if (Office.context.platform === Office.PlatformType.OfficeOnline) {
const deviceCapabilities = [
Office.DevicePermissionType.camera,
Office.DevicePermissionType.microphone
];
Office.devicePermission
.requestPermissions(deviceCapabilities)
.then((isGranted) => {
if (isGranted) {
console.log("Permission granted.");
// Reload your add-in before you run code that uses the device capabilities.
location.reload();
} else {
console.log("Permission has been previously granted and is already set in the iframe.");
// Since permission has been previously granted, you don't need to reload your add-in.
// Do something with the device capabilities.
}
})
.catch((error) => {
console.log("Permission denied.");
console.error(error);
// Do something when permission is denied.
});
}
} else if (host === Office.HostType.Outlook) {
if (Office.context.mailbox.diagnostics.hostName === "OutlookWebApp") {
const deviceCapabilities = [
Office.DevicePermissionType.camera,
Office.DevicePermissionType.geolocation,
Office.DevicePermissionType.microphone
];
Office.devicePermission.requestPermissionsAsync(deviceCapabilities, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Permission denied.");
// Do something when permission is denied.
} else {
if (asyncResult.value) {
console.log("Permission granted.");
// Reload your add-in before you run code that uses the device capabilities.
location.reload();
} else {
console.log("Permission has been previously granted and is already set in the iframe.");
// Since permission has been previously granted, you don't need to reload your add-in.
// Do something with the device capabilities.
}
}
});
}
} else {
console.log("The add-in isn't running in Excel, Outlook, PowerPoint, or Word.");
}
Поля
camera | Надстройка запрашивает доступ к камере пользователя. |
geolocation | Надстройка запрашивает доступ к географическому расположению пользователя. Важно! Доступ к географическому расположению пользователя поддерживается только в Outlook в Интернете и новом Outlook в Windows. |
microphone | Надстройка запрашивает доступ к микрофону пользователя. |
Office Add-ins