Получение консольного сообщения «Отказано в доступе» при выполнении OfficeItem.organizer.getAsync в Office365 - PullRequest
0 голосов
/ 14 марта 2019

В Office 365 (версия 1803) локально установлен Outlook (настольный клиент). Мы добавили наш плагин, который появляется на боковой панели. Он извлекает некоторую информацию о полях из внешнего вида рабочего стола, используя Outlook API. Требуется информация об этих 5 свойствах полей из внешнего вида рабочего стола: «subject», «itemId», «organizer», «requiredAttendees», «optionAttendees»

Мы используем API getAsync для этого в режиме создания Назначения, чтобы получить эти значения.

Пример:

  1. В случае субъекта мы получаем правильный ответ в консоли.

    window.Office.context.mailbox.item.subject.getAsync(function(res){console.log(res)});
    

вывод: {status:"succeeded", value: "appointment1"}

  1. В случае организатора

    window.Office.context.mailbox.item.organizer.getAsync(function(res){console.log(res)});
    

вывод: В доступе отказано

Пожалуйста, смотрите прикрепленное изображение для сообщения об ошибке консоли.

Примечания: Тот же поток отлично работает в Outlook Web APP (OWA) в браузере Internet Explorer.

Мы попробовали описанный выше сценарий в потоках создания и обновления из собственного внешнего вида.

Кто-нибудь знает причину этой проблемы? Что я могу сделать, чтобы решить эту проблему в моем локально установленном клиенте Outlook?

console screenshot

<?xml version="1.0" encoding="UTF-8"?>
<!--Created:cb85b80c-f585-40ff-8bfc-12ff4d0e34a9-->
<OfficeApp xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"
           xmlns:mailappor="http://schemas.microsoft.com/office/mailappversionoverrides"
           xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xsi:type="MailApp">
    <Id>69833250-ebab-4f58-8606-59df2b358121</Id>
    <Version>1.0.0.0</Version>
    <ProviderName>Oracle</ProviderName>
    <DefaultLocale>en-US</DefaultLocale>
    <DisplayName DefaultValue="Engagement Cloud"/>
    <Description DefaultValue="fuscdrmsmc151-fa-ext.us.oracle.com"/>
    <IconUrl DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/css/images/osc_icon_80.png"/>
    <HighResolutionIconUrl DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/css/images/osc_icon_80.png"/>
    <AppDomains>
        <AppDomain>https://login.microsoftonline.com/</AppDomain>
    </AppDomains>
    <Hosts>
        <Host Name="Mailbox"/>
    </Hosts>
    <Requirements>
        <Sets>
            <Set Name="MailBox" MinVersion="1.1"/>
        </Sets>
    </Requirements>
    <FormSettings>
        <Form xsi:type="ItemRead">
            <DesktopSettings>
                <SourceLocation DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/index.html"/>
                <RequestedHeight>250</RequestedHeight>
            </DesktopSettings>
        </Form>
        <Form xsi:type="ItemEdit">
            <DesktopSettings>
                <SourceLocation DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/index.html?rc_channel=COMPOSE"/>
            </DesktopSettings>
        </Form>
    </FormSettings>
    <Permissions>ReadWriteItem</Permissions>
    <Rule xsi:type="RuleCollection" Mode="Or">
        <Rule xsi:type="ItemIs" ItemType="Message" FormType="Edit"/>
        <Rule xsi:type="ItemIs" ItemType="Message" FormType="Read"/>
        <Rule xsi:type="ItemIs" ItemType="Appointment" FormType="Edit"/>
        <Rule xsi:type="ItemIs" ItemType="Appointment" FormType="Read"/>
    </Rule>
    <DisableEntityHighlighting>false</DisableEntityHighlighting>
    <VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides"
                      xsi:type="VersionOverridesV1_0">
        <Hosts>
            <Host xsi:type="MailHost">
                <DesktopFormFactor>
                    <FunctionFile resid="functionFile"/>
                    <ExtensionPoint xsi:type="MessageReadCommandSurface">
                        <OfficeTab id="TabDefaultRead">
                            <Group id="oscReadGroup">
                                <Label resid="groupLabel"/>
                                <Tooltip resid="groupTooltip"/>

                                <Control xsi:type="Button" id="oscReadButton">
                                    <Label resid="buttonLabel"/>
                                    <Tooltip resid="buttonTooltip"/>
                                    <Supertip>
                                        <Title resid="superTipTitle"/>
                                        <Description resid="superTipDescription"/>
                                    </Supertip>
                                    <Icon>
                                        <bt:Image size="16" resid="osc_icon_16x16"/>
                                        <bt:Image size="32" resid="osc_icon_32x32"/>
                                        <bt:Image size="80" resid="osc_icon_80x80"/>
                                    </Icon>
                                    <Action xsi:type="ShowTaskpane">
                                        <SourceLocation resid="residOscHomeUrl"/>
                                    </Action>
                                </Control>
                            </Group>
                        </OfficeTab>
                    </ExtensionPoint>
                    <ExtensionPoint xsi:type="MessageComposeCommandSurface">
                        <OfficeTab id="TabDefaultCompose">
                            <Group id="oscComposeGroup">
                                <Label resid="groupLabel"/>
                                <Tooltip resid="groupTooltip"/>

                                <Control xsi:type="Button" id="oscComposeButton">
                                    <Label resid="buttonLabel"/>
                                    <Tooltip resid="buttonTooltip"/>
                                    <Supertip>
                                        <Title resid="superTipTitle"/>
                                        <Description resid="superTipDescription"/>
                                    </Supertip>
                                    <Icon>
                                        <bt:Image size="16" resid="osc_icon_16x16"/>
                                        <bt:Image size="32" resid="osc_icon_32x32"/>
                                        <bt:Image size="80" resid="osc_icon_80x80"/>
                                    </Icon>
                                    <Action xsi:type="ShowTaskpane">
                                        <SourceLocation resid="residOscHomeEditUrl"/>
                                    </Action>
                                </Control>
                            </Group>
                        </OfficeTab>
                    </ExtensionPoint>
                    <ExtensionPoint xsi:type="AppointmentAttendeeCommandSurface">
                        <OfficeTab id="TabDefaultApptRead">
                            <Group id="oscApptReadGroup">
                                <Label resid="groupLabel"/>
                                <Tooltip resid="groupTooltip"/>

                                <Control xsi:type="Button" id="oscApptReadButton">
                                    <Label resid="buttonLabel"/>
                                    <Tooltip resid="buttonTooltip"/>
                                    <Supertip>
                                        <Title resid="superTipTitle"/>
                                        <Description resid="superTipDescription"/>
                                    </Supertip>
                                    <Icon>
                                        <bt:Image size="16" resid="osc_icon_16x16"/>
                                        <bt:Image size="32" resid="osc_icon_32x32"/>
                                        <bt:Image size="80" resid="osc_icon_80x80"/>
                                    </Icon>
                                    <Action xsi:type="ShowTaskpane">
                                        <SourceLocation resid="residOscHomeUrl"/>
                                    </Action>
                                </Control>
                            </Group>
                        </OfficeTab>
                    </ExtensionPoint>
                    <ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface">
                        <OfficeTab id="TabDefaultApptCompose">
                            <Group id="oscApptComposeGroup">
                                <Label resid="groupLabel"/>
                                <Tooltip resid="groupTooltip"/>
                                <Control xsi:type="Button" id="oscApptComposeButton">
                                    <Label resid="buttonLabel"/>
                                    <Tooltip resid="buttonTooltip"/>
                                    <Supertip>
                                        <Title resid="superTipTitle"/>
                                        <Description resid="superTipDescription"/>
                                    </Supertip>
                                    <Icon>
                                        <bt:Image size="16" resid="osc_icon_16x16"/>
                                        <bt:Image size="32" resid="osc_icon_32x32"/>
                                        <bt:Image size="80" resid="osc_icon_80x80"/>
                                    </Icon>
                                    <Action xsi:type="ShowTaskpane">
                                        <SourceLocation resid="residOscHomeEditUrl"/>
                                    </Action>
                                </Control>
                            </Group>
                        </OfficeTab>
                    </ExtensionPoint>
                </DesktopFormFactor>
            </Host>
        </Hosts>
        <Resources>
            <bt:Images>
                <bt:Image id="osc_icon_16x16" DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/css/images/osc_icon_16.png"/>
                <bt:Image id="osc_icon_32x32" DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/css/images/osc_icon_32.png"/>
                <bt:Image id="osc_icon_80x80" DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/css/images/osc_icon_80.png"/>
            </bt:Images>
            <bt:Urls>
                <bt:Url id="residOscHomeUrl" DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/index.html"/>
                <bt:Url id="residOscHomeEditUrl" DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/index.html?rc_channel=COMPOSE"/>
            </bt:Urls>
            <bt:ShortStrings>
                <bt:String id="groupLabel" DefaultValue="Engagement Cloud"/>
                <bt:String id="buttonLabel" DefaultValue="Engagement Cloud"/>
                <bt:String id="superTipTitle" DefaultValue="fuscdrmsmc151-fa-ext.us.oracle.com"/>
            </bt:ShortStrings>
            <bt:LongStrings>
                <bt:String id="groupTooltip" DefaultValue="Oracle Engagement Cloud actions"/>
                <bt:String id="buttonTooltip" DefaultValue="Launches Oracle Engagement Cloud Application"/>
                <bt:String id="superTipDescription" DefaultValue="Launches Oracle Engagement Cloud Application"/>
            </bt:LongStrings>
        </Resources>
        <VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides/1.1"
                          xsi:type="VersionOverridesV1_1">
            <Hosts>
                <Host xsi:type="MailHost">
                    <DesktopFormFactor>
                        <FunctionFile resid="functionFile"/>
                        <ExtensionPoint xsi:type="MessageReadCommandSurface">
                            <OfficeTab id="TabDefaultRead">
                                <Group id="oscReadGroup">
                                    <Label resid="groupLabel"/>
                                    <Tooltip resid="groupTooltip"/>

                                    <Control xsi:type="Button" id="oscReadButton">
                                        <Label resid="buttonLabel"/>
                                        <Tooltip resid="buttonTooltip"/>
                                        <Supertip>
                                            <Title resid="superTipTitle"/>
                                            <Description resid="superTipDescription"/>
                                        </Supertip>
                                        <Icon>
                                            <bt:Image size="16" resid="osc_icon_16x16"/>
                                            <bt:Image size="32" resid="osc_icon_32x32"/>
                                            <bt:Image size="80" resid="osc_icon_80x80"/>
                                        </Icon>
                                        <Action xsi:type="ShowTaskpane">
                                            <SourceLocation resid="residOscHomeUrl"/>
                                            <SupportsPinning>true</SupportsPinning>
                                        </Action>
                                    </Control>
                                </Group>
                            </OfficeTab>
                        </ExtensionPoint>
                        <ExtensionPoint xsi:type="MessageComposeCommandSurface">
                            <OfficeTab id="TabDefaultCompose">
                                <Group id="oscComposeGroup">
                                    <Label resid="groupLabel"/>
                                    <Tooltip resid="groupTooltip"/>

                                    <Control xsi:type="Button" id="oscComposeButton">
                                        <Label resid="buttonLabel"/>
                                        <Tooltip resid="buttonTooltip"/>
                                        <Supertip>
                                            <Title resid="superTipTitle"/>
                                            <Description resid="superTipDescription"/>
                                        </Supertip>
                                        <Icon>
                                            <bt:Image size="16" resid="osc_icon_16x16"/>
                                            <bt:Image size="32" resid="osc_icon_32x32"/>
                                            <bt:Image size="80" resid="osc_icon_80x80"/>
                                        </Icon>
                                        <Action xsi:type="ShowTaskpane">
                                            <SourceLocation resid="residOscHomeEditUrl"/>
                                            <SupportsPinning>true</SupportsPinning>
                                        </Action>
                                    </Control>
                                </Group>
                            </OfficeTab>
                        </ExtensionPoint>
                        <ExtensionPoint xsi:type="AppointmentAttendeeCommandSurface">
                            <OfficeTab id="TabDefaultApptRead">
                                <Group id="oscApptReadGroup">
                                    <Label resid="groupLabel"/>
                                    <Tooltip resid="groupTooltip"/>

                                    <Control xsi:type="Button" id="oscApptReadButton">
                                        <Label resid="buttonLabel"/>
                                        <Tooltip resid="buttonTooltip"/>
                                        <Supertip>
                                            <Title resid="superTipTitle"/>
                                            <Description resid="superTipDescription"/>
                                        </Supertip>
                                        <Icon>
                                            <bt:Image size="16" resid="osc_icon_16x16"/>
                                            <bt:Image size="32" resid="osc_icon_32x32"/>
                                            <bt:Image size="80" resid="osc_icon_80x80"/>
                                        </Icon>
                                        <Action xsi:type="ShowTaskpane">
                                            <SourceLocation resid="residOscHomeUrl"/>
                                            <SupportsPinning>true</SupportsPinning>
                                        </Action>
                                    </Control>
                                </Group>
                            </OfficeTab>
                        </ExtensionPoint>
                        <ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface">
                            <OfficeTab id="TabDefaultApptCompose">
                                <Group id="oscApptComposeGroup">
                                    <Label resid="groupLabel"/>
                                    <Tooltip resid="groupTooltip"/>

                                    <Control xsi:type="Button" id="oscApptComposeButton">
                                        <Label resid="buttonLabel"/>
                                        <Tooltip resid="buttonTooltip"/>
                                        <Supertip>
                                            <Title resid="superTipTitle"/>
                                            <Description resid="superTipDescription"/>
                                        </Supertip>
                                        <Icon>
                                            <bt:Image size="16" resid="osc_icon_16x16"/>
                                            <bt:Image size="32" resid="osc_icon_32x32"/>
                                            <bt:Image size="80" resid="osc_icon_80x80"/>
                                        </Icon>
                                        <Action xsi:type="ShowTaskpane">
                                            <SourceLocation resid="residOscHomeEditUrl"/>
                                            <SupportsPinning>true</SupportsPinning>
                                        </Action>
                                    </Control>
                                </Group>
                            </OfficeTab>
                        </ExtensionPoint>
                    </DesktopFormFactor>
                </Host>
            </Hosts>
            <Resources>
                <bt:Images>
                    <bt:Image id="osc_icon_16x16"
                              DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/css/images/osc_icon_16.png"/>
                    <bt:Image id="osc_icon_32x32"
                              DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/css/images/osc_icon_32.png"/>
                    <bt:Image id="osc_icon_80x80"
                              DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/css/images/osc_icon_80.png"/>
                </bt:Images>
                <bt:Urls>
                    <bt:Url id="residOscHomeUrl"
                            DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/index.html"/>
                    <bt:Url id="residOscHomeEditUrl"
                            DefaultValue="https://fuscdrmsmc151-fa-ext.us.oracle.com/crmUI/osc365/web/index.html?rc_channel=COMPOSE"/>
                </bt:Urls>
                <bt:ShortStrings>
                    <bt:String id="groupLabel" DefaultValue="Engagement Cloud"/>
                    <bt:String id="buttonLabel" DefaultValue="Engagement Cloud"/>
                    <bt:String id="superTipTitle" DefaultValue="fuscdrmsmc151-fa-ext.us.oracle.com"/>
                </bt:ShortStrings>
                <bt:LongStrings>
                    <bt:String id="groupTooltip" DefaultValue="Oracle Engagement Cloud actions"/>
                    <bt:String id="buttonTooltip" DefaultValue="Launches Oracle Engagement Cloud Application"/>
                    <bt:String id="superTipDescription" DefaultValue="Launches Oracle Engagement Cloud Application"/>
                </bt:LongStrings>
            </Resources>
        </VersionOverrides>
    </VersionOverrides>
</OfficeApp>

Ответы [ 2 ]

0 голосов
/ 21 марта 2019

API organizer.getAsync не реализован в версии 1803. Я рекомендую проверить требование, установленное через Office.context.requirements.isSetSupported("Mailbox", 1.7), перед вызовом API. Это позволит вам узнать, поддерживается ли набор требований вашей клиентской версией, прежде чем использовать API.

0 голосов
/ 14 марта 2019

Какие разрешения вы указали в манифесте?

Надстройки Outlook указывают требуемый уровень разрешений в своем манифесте. Доступные уровни: Restricted, ReadItem, ReadWriteItem или ReadWriteMailbox. Эти уровни разрешений являются кумулятивными: Restricted является самым низким уровнем, и каждый более высокий уровень включает в себя разрешения всех более низких уровней. ReadWriteMailbox включает все поддерживаемые разрешения.

Разрешение Restricted является самым базовым уровнем разрешения. Укажите Restricted в элементе Permissions в манифесте, чтобы запросить это разрешение. Outlook назначает это разрешение почтовой надстройке по умолчанию, если надстройка не запрашивает конкретное разрешение в своем манифесте.

Попытка доступа к таким участникам, как субъект или организатор, вернет значение NULL и приведет к сообщению об ошибке, в котором говорится, что Outlook требует, чтобы надстройка почты имела повышенные разрешения. Вы должны запросить как минимум разрешение ReadItem.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...