Перейти к содержанию

Файл manifest.xml

Основные файлы, управляющие работой плагина:

  • файл manifest.xml в корневом каталоге проекта определяет настройки и возможности надстройки;
  • файл taskpane.html содержит разметку HTML для области задач;
  • файл taskpane.css содержит код CSS, который применяется к содержимому области задач;
  • файл taskpane.js содержит код API JavaScript для Office, который управляет взаимодействием между областью задач и клиентским приложением Office.

Основной файл манифеста (по умолчанию manifest.xml) состоит из записей в файле формата XML. Его основные параметры приведены ниже.

Основные параметры файла манифеста

Параметры файла manifest.xml, которые задают основные сведения о плагине:

  • Элемент ProviderName может содержать название вашей компании или название плагина.
<ProviderName>VK Teams</ProviderName>
  • Элемент Description содержит краткое текстовое описание плагина.
<Description DefaultValue="Эта надстройка позволяет создавать конференции VK Teams и управлять их настройками"/>
  • Элемент DefaultLocale устанавливает язык по умолчанию, используемый плагином.
<DefaultLocale>ru-RU</DefaultLocale>
  • Элементы, приведенные ниже, задают иконки соответствующих размеров (логотипы) приложения в выбранной области их отображения.
<IconUrl DefaultValue="https://url-adress.ru/assets/icon-64.png"/>

<HighResolutionIconUrl DefaultValue="https://url-adress.ru/assets/icon-128.png"/>

Технические параметры манифеста и область отображения

Один из важнейших параметров в блоке <FormSettings> — параметр <SourceLocation>. Он задает URL-адрес файла taskpane.html, содержащий разметку HTML для выбранной области отображения.

Пример использования:

<FormSettings>
  <Form xsi:type="ItemRead">
   <DesktopSettings>
     <SourceLocation DefaultValue="https://url-adress.ru/taskpane.html"/>
       <RequestedHeight>250</RequestedHeight>
   </DesktopSettings>
  </Form>
</FormSettings>

В блоке <Resources> задаются дополнительные параметры функциональности, вложенные файлы, управляющие функциональностью плагина, описаны ресурсы, такие как иконки, кнопки и подписи к кнопкам, используемым в плагине.

Пример использования:

<Resources>

 <bt:Images>
   <bt:Image id="Icon.16x16" DefaultValue="https://url-adress.ru/assets/icon-16.png"/>
   <bt:Image id="Icon.32x32" DefaultValue="https://url-adress.ru/assets/icon-32.png"/>
   <bt:Image id="Icon.80x80" DefaultValue="https://url-adress.ru/assets/icon-80.png"/>
 </bt:Images>
 <bt:Urls>
   <bt:Url id="Commands.Url" DefaultValue="https://url-adress.ru/commands.html"/>
   <bt:Url id="Taskpane.Url" DefaultValue="https://url-adress.ru/taskpane.html"/>
 </bt:Urls>
 <bt:ShortStrings>
   <bt:String id="GroupLabel" DefaultValue="VK Teams Add-in"/>
   <bt:String id="TaskpaneButton.Label" DefaultValue="VK Teams"/>
   <bt:String id="ActionButton.Label" DefaultValue="Создать конференцию"/>
 </bt:ShortStrings>
 <bt:LongStrings>
   <bt:String id="TaskpaneButton.Tooltip" DefaultValue="Создать конференцию."/>
   <bt:String id="ActionButton.Tooltip" DefaultValue="Создать конференцию"/>
 </bt:LongStrings>

</Resources>

Дополнительные параметры и функции

Дополнительные параметры и функции могут быть организованы и заданы различными способами, однако общие пожелания по стилю разработки определены в разделе выше.

Параметр <ExtensionPoint> определяет тип элемента, который задает параметры расположения кнопки-иконки, запускающей плагин на выполнение. Его основные параметры для Outlook:

  • MessageReadCommandSurface. Помещает кнопки на панель команд для чтения почты. В классической версии Outlook эта панель отображается на ленте.

  • MessageComposeCommandSurface. Добавляет кнопки на ленту для надстроек, использующих форму создания сообщения.

  • AppointmentOrganizerCommandSurface. Добавляет кнопки на ленту для формы, предназначенной для организатора конференции. Актуально для текущего веб-плагина.

  • AppointmentAttendeeCommandSurface. Добавляет кнопки на ленту для формы, предназначенной для участника конференции.

  • Module (может использоваться только в форм-факторе настрольных устройств). Добавляет кнопки на ленту для расширения модуля.

  • MobileMessageReadCommandSurface. Помещает кнопки на панель команд для чтения почты в форм-факторе мобильного устройства.

  • MobileOnlineMeetingCommandSurface. Помещает соответствующий режим переключателя в области команд для встречи в форм-факторе мобильного устройства. Организатор может создать конференцию по сети, а участник может впоследствии присоединиться к конференции по сети.

  • MobileLogEventAppointmentAttendee. Помещает кнопку действия журнала в область команд для встречи в форм-факторе мобильного устройства. Участники встреч, у которых установлена надстройка, могут сохранять заметки о встрече во внешнем приложении одним кликом. Эта точка расширения поддерживает функциональные возможности для команд области задач и функций. Дополнительные сведения об этом сценарии на сайте производителя.

  • LaunchEvent. Позволяет надстройке активироваться на основе поддерживаемых событий в форм-факторах настольных и мобильных устройств. Дополнительные сведения об активации на основе событий и полный список поддерживаемых событий на сайте производителя.

  • Events (LaunchEvent). Позволяет надстройке активироваться на основе поддерживаемых событий в форм-факторах настольных и мобильных устройств. Дополнительные сведения об активации на основе событий и полный список поддерживаемых событий сайте производителя.

  • DetectedEntity. Добавляет активацию контекстной надстройки для указанного типа сущности. Дополнительные сведения об использовании этой точки расширения на сайте произвиодителя.

  • ReportPhishingCommandSurface (предварительная версия). Активирует надстройку, сообщающую о спаме на ленте Outlook, и предотвращает ее появление в конце ленты или в меню переполнения.

Подробное описание параметров

Подробное описание параметров доступно на сайте производителя: Точки расширения для Outlook (Extension point).

Пример файла manifest.xml

<OfficeApp xsi:type="MailApp">

  <Id>7fa0c9ac-fa88-4a1c-b380-a42691743447</Id>
  <Version>1.0.0.0</Version>
  <ProviderName>VK Teams</ProviderName>
  <DefaultLocale>en-US</DefaultLocale>
  <DisplayName DefaultValue="VK Teams"/>
  <Description DefaultValue="Эта надстройка позволяет создавать конференции VK Teams и управлять их настройками"/>
  <IconUrl DefaultValue="https://url-adress.ru/assets/icon-64.png"/>
  <HighResolutionIconUrl DefaultValue="https://url-adress.ru/assets/icon-128.png"/>
  <Hosts>
     <Host Name="Mailbox"/>
  </Hosts>
  <Requirements>
     <Sets>
       <Set Name="Mailbox" MinVersion="1.1"/>
     </Sets>
  </Requirements>
  <FormSettings>
     <Form xsi:type="ItemRead">
       <DesktopSettings>
         <SourceLocation DefaultValue="https://url-adress.ru/taskpane.html"/>
         <RequestedHeight>250</RequestedHeight>
       </DesktopSettings>
     </Form>
  </FormSettings>
  <Permissions>ReadWriteItem</Permissions>
  <Rule xsi:type="RuleCollection" Mode="Or">
  <Rule xsi:type="ItemIs" ItemType="Appointment" FormType="Read"/></Rule>
  <DisableEntityHighlighting>false</DisableEntityHighlighting>
  <VersionOverrides xsi:type="VersionOverridesV1_0">
    <Requirements>
       <bt:Sets DefaultMinVersion="1.3">
         <bt:Set Name="Mailbox"/>
       </bt:Sets>
    </Requirements>
    <Hosts>
       <Host xsi:type="MailHost">
         <DesktopFormFactor>
           <FunctionFile resid="Commands.Url"/>
           <ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface">
             <OfficeTab id="TabDefault">
               <Group id="msgReadGroup2">
               <Label resid="GroupLabel"/>
                 <Control xsi:type="Button" id="msgReadOpenPaneButton2">
                   <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://url-adress.ru/assets/icon-16.png"/>
       <bt:Image id="Icon.32x32" DefaultValue="https://url-adress.ru/assets/icon-32.png"/>
       <bt:Image id="Icon.80x80" DefaultValue="https://url-adress.ru/assets/icon-80.png"/>
      </bt:Images>
      <bt:Urls>
       <bt:Url id="Commands.Url" DefaultValue="https://url-adress.ru/commands.html"/>
       <bt:Url id="Taskpane.Url" DefaultValue="https://url-adress.ru/taskpane.html"/>
      </bt:Urls>
      <bt:ShortStrings>
        <bt:String id="GroupLabel" DefaultValue="VK Teams Add-in"/>
        <bt:String id="TaskpaneButton.Label" DefaultValue="VK Teams"/>
        <bt:String id="ActionButton.Label" DefaultValue="Создать конференцию"/>
      </bt:ShortStrings>
      <bt:LongStrings>
        <bt:String id="TaskpaneButton.Tooltip" DefaultValue="Создать конференцию"/>
        <bt:String id="ActionButton.Tooltip" DefaultValue="Создать конференцию"/>
      </bt:LongStrings>
    </Resources>
  </VersionOverrides>

</OfficeApp>


ИИ-помощник
Здравствуйте!

Напишите сюда свой вопрос, я помогу найти ответ и дам ссылки на статьи.

Вызов оператора в этом чате не предусмотрен. Не пишите логины, пароли и др. конфиденциальную информацию. Общение со мной записывается для улучшения качества.