Файл 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>
<ProviderName>VK WorkSpace</ProviderName>
- Элемент Description содержит краткое текстовое описание плагина.
<Description DefaultValue="Эта надстройка позволяет создавать конференции VK WorkSpace и управлять их настройками"/>
- Элемент 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 WorkSpace Add-in"/><bt:String id="TaskpaneButton.Label" DefaultValue="VK WorkSpace"/><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)
<OfficeApp xsi:type="MailApp"><Id>7fa0c9ac-fa88-4a1c-b380-a42691743447</Id><Version>1.0.0.0</Version><ProviderName>VK WorkSpace</ProviderName><DefaultLocale>en-US</DefaultLocale><DisplayName DefaultValue="VK WorkSpace"/><Description DefaultValue="Эта надстройка позволяет создавать конференции VK WorkSpace и управлять их настройками"/><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 WorkSpace Add-in"/><bt:String id="TaskpaneButton.Label" DefaultValue="VK WorkSpace"/><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>