是否可以像 TeamViewer 和 Teams 一样永久显示 office.js 加载项 Button/Group?

Is it possible to display office.js add-in Button/Group permanently like TeamViewer and Teams?

我对创建一般的 Outlook 加载项还很陌生,几天前才开始使用 Office.js。

我已经使用 Yeoman Office 生成器和生成的 manifest.xml 玩了几天,现在开始掌握它的窍门了。我正在尝试创建一个加载项,向 Outlook 的“主页”选项卡添加一个按钮,就像 TeamViewer 和 Teams 按钮一样。

只要我有一条消息 selected/highlighted,我自己的 group/button 就可以正常工作,但是,是否可以显示我的按钮而不需要这样做?比如在空的时候 inbox/permanently,等等

以下是我的意思的一些图片:

https://i.imgur.com/lrEPCyP.png(已选择留言)

https://i.imgur.com/eM0CL9U.png(空邮箱)

这是我目前正在使用的 manifest.xml。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" 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/1.0" xsi:type="MailApp">
  <Id>260e4f3c-61b9-485c-9c0c-525c46708848</Id>
  <Version>1.0.0.0</Version>
  <ProviderName>EasyMeeting</ProviderName>
  <DefaultLocale>no-NB</DefaultLocale>
  <DisplayName DefaultValue="EasyMeeting"/>
  <Description DefaultValue="Lag møte-invitasjoner med EasyMeeting"/>
  <IconUrl DefaultValue="https://i.imgur.com/dgjrg8m.png"/>
  <HighResolutionIconUrl DefaultValue="https://i.imgur.com/ipFcRqx.png"/>
  <SupportUrl DefaultValue="https://www.easymeeting.net/support/"/>
  <AppDomains>
    <AppDomain>easymeeting.net</AppDomain>
    <AppDomain>localhost</AppDomain>
    <AppDomain>imgur.com</AppDomain>
  </AppDomains>
  <Hosts>
    <Host Name="Mailbox"/>
  </Hosts>
  <Requirements>
    <Sets>
      <Set Name="Mailbox" MinVersion="1.3"/>
    </Sets>
  </Requirements>
  <FormSettings>
    <Form xsi:type="ItemRead">
      <DesktopSettings>
        <SourceLocation DefaultValue="https://localhost:3000/taskpane.html"/>
        <RequestedHeight>250</RequestedHeight>
      </DesktopSettings>
    </Form>
  </FormSettings>
  <Permissions>ReadWriteItem</Permissions>
  <Rule xsi:type="RuleCollection" Mode="Or">
    <Rule xsi:type="ItemIs" ItemType="Message" FormType="ReadOrEdit"/>
    <Rule xsi:type="ItemIs" ItemType="Appointment" FormType="ReadOrEdit"/>
  </Rule>
  <DisableEntityHighlighting>false</DisableEntityHighlighting>
  <VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides" xsi:type="VersionOverridesV1_0">
    <VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides/1.1" xsi:type="VersionOverridesV1_1">
      <Requirements>
        <bt:Sets DefaultMinVersion="1.8">
          <bt:Set Name="Mailbox"/>
        </bt:Sets>
      </Requirements>
      <Hosts>
        <Host xsi:type="MailHost">
          <DesktopFormFactor>
            <FunctionFile resid="Commands.Url"/>
            <ExtensionPoint xsi:type="MessageReadCommandSurface">
              <OfficeTab id="TabDefault">
                <Group id="EasyMeeting">
                  <Label resid="GroupLabel"/>
                  <Control xsi:type="Button" id="myCustomButtonId">
                    <Label resid="TaskpaneButton.Label"/>
                    <Supertip>
                      <Title resid="TaskpaneButton.Label"/>
                      <Description resid="TaskpaneButton.Tooltip"/>
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16x16"/>
                      <bt:Image size="32" resid="Icon.32x32"/>
                      <bt:Image size="80" resid="Icon.80x80"/>
                    </Icon>
                    <Action xsi:type="ShowTaskpane">
                      <SourceLocation resid="Taskpane.Url"/>
                    </Action>
                  </Control>
                </Group>
              </OfficeTab>
            </ExtensionPoint>
          </DesktopFormFactor>
        </Host>
      </Hosts>
      <Resources>
        <bt:Images>
          <bt:Image id="Icon.16x16" DefaultValue="https://i.imgur.com/XZCSEzX.png" />
          <bt:Image id="Icon.32x32" DefaultValue="https://i.imgur.com/dgjrg8m.png" />
          <bt:Image id="Icon.80x80" DefaultValue="https://i.imgur.com/ipFcRqx.png" />
        </bt:Images>
        <bt:Urls>
          <bt:Url id="Commands.Url" DefaultValue="https://localhost:3000/commands.html" />
          <bt:Url id="Taskpane.Url" DefaultValue="https://localhost:3000/taskpane.html" />
        </bt:Urls>
        <bt:ShortStrings>
          <bt:String id="GroupLabel" DefaultValue="EasyMeeting.net"/>
          <bt:String id="TaskpaneButton.Label" DefaultValue="Planlegg møte" />
        </bt:ShortStrings>
        <bt:LongStrings>
          <bt:String id="TaskpaneButton.Tooltip" DefaultValue="Planlegg et nytt møte med EasyMeeting og inviter kontakter."/>
        </bt:LongStrings>
      </Resources>
    </VersionOverrides>
  </VersionOverrides>
</OfficeApp>

https://i.imgur.com/eM0CL9U.png(空邮箱)

在撰写或阅读时,Outlook 加载项可用于消息或约会,但不可用于其他项目类型。如果撰写或阅读表单中的当前邮件项目是以下之一,则 Outlook 不会激活加载项:

  • 受信息权限管理 (IRM) 保护或以其他方式加密以进行保护。数字签名消息就是一个示例,因为数字签名依赖于其中一种机制。

  • 包含消息 class IPM.Report.* 的送达报告或通知,包括送达和未送达报告 (NDR) 报告,以及已读、未读,并延迟通知。

  • 草稿(未分配发件人),或在 Outlook 草稿文件夹中。

  • 作为另一封邮件附件的 .msg 或 .eml 文件。

  • 从文件系统打开的 .msg 或 .eml 文件。

  • 使用自定义表单。

一般来说,Outlook 可以为“已发送邮件”文件夹中的项目以读取形式激活加载项,但根据已知实体的字符串匹配激活的加载项除外。

加载项当前 运行 在项目的上下文中。但是,我们已经在 UserVoice 上看到了对此的请求,并且它在我们的积压工作中