I have developed an outlook add-in and posted on Microsoft appstore.
But I got validation error report with change request as below:
4.12.1 Add in commands do not appear in the Outlook 2016 Desktop Client or in the Outlook 2016 Client on Mac - there appears to be an issue in the version overrides element in your manifest file
This is the manifest:
<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">
<!-- Begin Basic Settings: Add-in metadata, used for all versions of Office unless override provided. -->
<!-- IMPORTANT! Id must be unique for your add-in, if you reuse this manifest ensure that you change this id to a new GUID. -->
<Id>a0fc93fd-3de0-4a0a-b856-8f5e15c8f91d</Id>
<!--Version. Updates from the store only get triggered if there is a version change. -->
<Version>1.0.0.0</Version>
<ProviderName>WritingAssistant</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<!-- The display name of your add-in. Used on the store and various places of the Office UI such as the add-ins dialog. -->
<DisplayName DefaultValue="WritingAssistant for Outlook" />
<Description DefaultValue="The fastest, easiest way to improve your grammar and writing."/>
<IconUrl DefaultValue="https://outlookplugin.writing-assistant.com/Images/logo-64.png"/>
<HighResolutionIconUrl DefaultValue="https://outlookplugin.writing-assistant.com/Images/logo-80.png"/>
<SupportUrl DefaultValue="https://www.writing-assistant.com/contact.htm" />
<!-- Domains that will be allowed when navigating. For example, if you use ShowTaskpane and then have an href link, navigation will only be allowed if the domain is on this list. -->
<AppDomains>
<AppDomain>AppDomain1</AppDomain>
<AppDomain>AppDomain2</AppDomain>
<AppDomain>AppDomain3</AppDomain>
</AppDomains>
<!--End Basic Settings. -->
<Hosts>
<Host Name="Mailbox" />
</Hosts>
<Requirements>
<Sets>
<Set Name="Mailbox" MinVersion="1.5" />
</Sets>
</Requirements>
<FormSettings>
<Form xsi:type="ItemRead">
<DesktopSettings>
<SourceLocation DefaultValue="https://outlookplugin.writing-assistant.com/MessageRead.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>
<DisableEntityHighlighting>false</DisableEntityHighlighting>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides" xsi:type="VersionOverridesV1_0">
<Requirements>
<bt:Sets DefaultMinVersion="1.5">
<bt:Set Name="Mailbox" />
</bt:Sets>
</Requirements>
<Hosts>
<Host xsi:type="MailHost">
<DesktopFormFactor>
<!-- Location of the Functions that UI-less buttons can trigger (ExecuteFunction Actions). -->
<FunctionFile resid="Contoso.FunctionFile.Url" />
<!-- Message Read -->
<ExtensionPoint xsi:type="MessageComposeCommandSurface">
<!-- Use the default tab of the ExtensionPoint or create your own with <CustomTab id="myTab"> -->
<CustomTab id="customTabLabel">
<Group id="msgReadGroup">
<Label resid="groupLabel" />
<!-- Launch the add-in : task pane button -->
<Control xsi:type="Button" id="msgReadOpenPaneButton">
<Label resid="paneReadButtonLabel" />
<Supertip>
<Title resid="paneReadSuperTipTitle" />
<Description resid="paneReadSuperTipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.TaskpaneButton.Icon16" />
<bt:Image size="32" resid="Contoso.TaskpaneButton.Icon32" />
<bt:Image size="64" resid="Contoso.TaskpaneButton.Icon64" />
<bt:Image size="80" resid="Contoso.TaskpaneButton.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Contoso.Taskpane.Url" />
</Action>
</Control>
</Group>
<Group id="Contoso.Tab1.Group5">
<Label resid="Contoso.Tab1.GroupLabel2" />
<Control xsi:type="Button" id="Contoso.TranslateWord">
<Label resid="Contoso.TranslateWord.Label" />
<Supertip>
<Title resid="Contoso.TranslateWord.Label" />
<Description resid="Contoso.TranslateWord.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.TranslateWord.Icon16" />
<bt:Image size="32" resid="Contoso.TranslateWord.Icon32" />
<bt:Image size="64" resid="Contoso.TranslateWord.Icon64" />
<bt:Image size="80" resid="Contoso.TranslateWord.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Contoso.TranslateWord.Url" />
</Action>
</Control>
<Control xsi:type="Button" id="Contoso.DS">
<Label resid="Contoso.DS.Label" />
<Supertip>
<Title resid="Contoso.DS.Label" />
<Description resid="Contoso.DS.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.DS.Icon16" />
<bt:Image size="32" resid="Contoso.DS.Icon32" />
<bt:Image size="64" resid="Contoso.DS.Icon64" />
<bt:Image size="80" resid="Contoso.DS.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Contoso.DS.Url" />
</Action>
</Control>
</Group>
<Group id="Contoso.Tab1.Group2">
<Label resid="Contoso.Tab1.GroupLabel2" />
<Control xsi:type="Button" id="Contoso.MyDictionary">
<Label resid="Contoso.MyDictionary.Label" />
<Supertip>
<Title resid="Contoso.MyDictionary.Label" />
<Description resid="Contoso.MyDictionary.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.MyDictionary.Icon16" />
<bt:Image size="32" resid="Contoso.MyDictionary.Icon32" />
<bt:Image size="64" resid="Contoso.MyDictionary.Icon64" />
<bt:Image size="80" resid="Contoso.MyDictionary.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Contoso.MyDictionary.Url" />
</Action>
</Control>
<Control xsi:type="Button" id="Contoso.MyStatistics">
<Label resid="Contoso.MyStatistics.Label" />
<Supertip>
<Title resid="Contoso.MyStatistics.Label" />
<Description resid="Contoso.MyStatistics.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.MyStatistics.Icon16" />
<bt:Image size="32" resid="Contoso.MyStatistics.Icon32" />
<bt:Image size="64" resid="Contoso.MyStatistics.Icon64" />
<bt:Image size="80" resid="Contoso.MyStatistics.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Contoso.MyStatistics.Url" />
</Action>
</Control>
<Control xsi:type="Button" id="Contoso.Download">
<Label resid="Contoso.Download.Label" />
<Supertip>
<Title resid="Contoso.Download.Label" />
<Description resid="Contoso.Download.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.Download.Icon16" />
<bt:Image size="32" resid="Contoso.Download.Icon32" />
<bt:Image size="64" resid="Contoso.Download.Icon64" />
<bt:Image size="80" resid="Contoso.Download.Icon80" />
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>report</FunctionName>
</Action>
</Control>
</Group>
<Group id="Contoso.Tab1.Group4">
<Label resid="Contoso.Tab1.GroupLabel4" />
<Control xsi:type="Button" id="Contoso.setting">
<Label resid="Contoso.setting.Label" />
<Supertip>
<Title resid="Contoso.setting.Label" />
<Description resid="Contoso.setting.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.setting.Icon16" />
<bt:Image size="32" resid="Contoso.setting.Icon32" />
<bt:Image size="64" resid="Contoso.setting.Icon64" />
<bt:Image size="80" resid="Contoso.setting.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Contoso.Taskpane5.Url" />
</Action>
</Control>
<Control xsi:type="Button" id="Contoso.FAQ">
<Label resid="Contoso.FAQ.Label" />
<Supertip>
<Title resid="Contoso.FAQ.Label" />
<Description resid="Contoso.FAQ.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.FAQ.Icon16" />
<bt:Image size="32" resid="Contoso.FAQ.Icon32" />
<bt:Image size="64" resid="Contoso.FAQ.Icon64" />
<bt:Image size="80" resid="Contoso.FAQ.Icon80" />
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>faq</FunctionName>
</Action>
</Control>
<Control xsi:type="Button" id="Contoso.Tour">
<Label resid="Contoso.Tour.Label" />
<Supertip>
<Title resid="Contoso.Tour.Label" />
<Description resid="Contoso.Tour.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.Tour.Icon16" />
<bt:Image size="32" resid="Contoso.Tour.Icon32" />
<bt:Image size="64" resid="Contoso.Tour.Icon64" />
<bt:Image size="80" resid="Contoso.Tour.Icon80" />
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>Tour</FunctionName>
</Action>
</Control>
<Control xsi:type="Button" id="Contoso.logout">
<Label resid="Contoso.logout.Label" />
<Supertip>
<Title resid="Contoso.logout.Label" />
<Description resid="Contoso.logout.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.logout.Icon16" />
<bt:Image size="32" resid="Contoso.logout.Icon32" />
<bt:Image size="64" resid="Contoso.logout.Icon64" />
<bt:Image size="80" resid="Contoso.logout.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Contoso.logout.Url" />
</Action>
</Control>
</Group>
<Group id="Contoso.Tab1.Group3">
<Label resid="Contoso.Tab1.GroupLabel3" />
<Control xsi:type="Button" id="Contoso.Check">
<Label resid="Contoso.Check.Label" />
<Supertip>
<Title resid="Contoso.Check.Label" />
<Description resid="Contoso.Check.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.Check.Icon16" />
<bt:Image size="32" resid="Contoso.Check.Icon32" />
<bt:Image size="64" resid="Contoso.Check.Icon64" />
<bt:Image size="80" resid="Contoso.Check.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Contoso.Taskpane3.Url" />
</Action>
</Control>
<Control xsi:type="Button" id="Contoso.Clear">
<Label resid="Contoso.Clear.Label" />
<Supertip>
<Title resid="Contoso.Clear.Label" />
<Description resid="Contoso.Clear.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.Clear.Icon16" />
<bt:Image size="32" resid="Contoso.Clear.Icon32" />
<bt:Image size="64" resid="Contoso.Clear.Icon64" />
<bt:Image size="80" resid="Contoso.Clear.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Contoso.Taskpane4.Url" />
</Action>
</Control>
<Control xsi:type="Button" id="Contoso.Error">
<Label resid="Contoso.ErrorList.Label" />
<Supertip>
<Title resid="Contoso.ErrorList.Label" />
<Description resid="Contoso.ErrorList.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.ErrList.Icon16" />
<bt:Image size="32" resid="Contoso.ErrList.Icon32" />
<bt:Image size="64" resid="Contoso.ErrList.Icon64" />
<bt:Image size="80" resid="Contoso.ErrList.Icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<!--Provide a url resource id for the location that will be displayed on the task pane -->
<SourceLocation resid="Contoso.ErrorList.Url" />
</Action>
</Control>
</Group>
<Label resid="customTabLabel.TabLabel" />
</CustomTab>
</ExtensionPoint>
<!-- Go to http://aka.ms/ExtensionPointsCommands to learn how to add more Extension Points: MessageRead, AppointmentOrganizer, AppointmentAttendee -->
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="Contoso.setting.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-16.png" />
<bt:Image id="Contoso.setting.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-32.png" />
<bt:Image id="Contoso.setting.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-64.png" />
<bt:Image id="Contoso.setting.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-80.png" />
<bt:Image id="Contoso.TaskpaneButton.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/logo-16.png" />
<bt:Image id="Contoso.TaskpaneButton.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/logo-32.png" />
<bt:Image id="Contoso.TaskpaneButton.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/logo-64.png" />
<bt:Image id="Contoso.TaskpaneButton.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/logo-80.png" />
<bt:Image id="Contoso.Check.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/check-16.png" />
<bt:Image id="Contoso.Check.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/check-32.png" />
<bt:Image id="Contoso.Check.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/check-64.png" />
<bt:Image id="Contoso.Check.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/check-80.png" />
<bt:Image id="Contoso.MyDictionary.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/my-dictionary-16.png" />
<bt:Image id="Contoso.MyDictionary.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/my-dictionary-32.png" />
<bt:Image id="Contoso.MyDictionary.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/my-dictionary-64.png" />
<bt:Image id="Contoso.Download.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/download-80.png" />
<bt:Image id="Contoso.TranslateWord.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/translate-word-16.png" />
<bt:Image id="Contoso.TranslateWord.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/translate-word-32.png" />
<bt:Image id="Contoso.TranslateWord.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/translate-word-64.png" />
<bt:Image id="Contoso.TranslateWord.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/translate-word-80.png" />
<bt:Image id="Contoso.WordDefinition.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/wd-16.png" />
<bt:Image id="Contoso.WordDefinition.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/wd-32.png" />
<bt:Image id="Contoso.WordDefinition.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/wd-64.png" />
<bt:Image id="Contoso.WordDefinition.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/wd-80.png" />
<bt:Image id="Contoso.Synonyms.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/synonyms-16.png" />
<bt:Image id="Contoso.Synonyms.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/synonyms-32.png" />
<bt:Image id="Contoso.Synonyms.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/synonyms-64.png" />
<bt:Image id="Contoso.Synonyms.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/synonyms-80.png" />
<bt:Image id="Contoso.Clear.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/clear-icon-16.png" />
<bt:Image id="Contoso.Clear.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/clear-icon-32.png" />
<bt:Image id="Contoso.Clear.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/clear-icon-64.png" />
<bt:Image id="Contoso.Clear.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/clear-icon-80.png" />
<bt:Image id="Contoso.logout.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/logout-16.png" />
<bt:Image id="Contoso.logout.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/logout-32.png" />
<bt:Image id="Contoso.logout.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/logout-64.png" />
<bt:Image id="Contoso.logout.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/logout-80.png" />
<bt:Image id="Contoso.ErrList.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/list-16.png" />
<bt:Image id="Contoso.ErrList.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/list-32.png" />
<bt:Image id="Contoso.ErrList.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/list-64.png" />
<bt:Image id="Contoso.ErrList.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/list-80.png" />
</bt:Images>
<bt:Urls>
<bt:Url id="Contoso.FunctionFile.Url" DefaultValue="https://outlookplugin.writing-assistant.com/Functions/FunctionFile.html"/>
<bt:Url id="Contoso.Taskpane3.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Accordion.html"/>
<bt:Url id="Contoso.Taskpane.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Login.html" />
<bt:Url id="Contoso.Taskpane4.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Clear.html"/>
<bt:Url id="Contoso.TranslateWord.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Translate.html"/>
<bt:Url id="Contoso.WordDefinition.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/GetWordDefinition.html"/>
<bt:Url id="Contoso.Synonyms.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Synonym.html"/>
<bt:Url id="Contoso.MyDictionary.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/GetMyDictionary.html"/>
<bt:Url id="Contoso.MyStatistics.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Statistics.html"/>
<bt:Url id="Contoso.Download.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Download.html"/>
<bt:Url id="Contoso.DS.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/DefinitionandSynonyms.html"/>
<bt:Url id="Contoso.FAQ.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Login.html"/>
<bt:Url id="Contoso.Tour.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Login.html"/>
<bt:Url id="Contoso.ErrorList.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/ErrorList.html"/>
<bt:Url id="Contoso.Taskpane5.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Setting.html"/>
<bt:Url id="Contoso.logout.Url" DefaultValue="https://outlookplugin.writing-assistant.com/UI/Logout.html"/>
</bt:Urls>
<bt:ShortStrings>
<bt:String id="groupLabel" DefaultValue=" "/>
<bt:String id="customTabLabel" DefaultValue="My Add-in Tab"/>
<bt:String id="paneReadButtonLabel" DefaultValue="WritingAssistant"/>
<bt:String id="paneReadSuperTipTitle" DefaultValue="Get all properties"/>
<bt:String id="customTabLabel.TabLabel" DefaultValue="WritingAssistant" />
<bt:String id="Contoso.Check.Label" DefaultValue="Check" />
<bt:String id="Contoso.TranslateWord.Label" DefaultValue="Translate" />
<bt:String id="Contoso.WordDefinition.Label" DefaultValue="Word Definition" />
<bt:String id="Contoso.Synonyms.Label" DefaultValue="Synonyms" />
<bt:String id="Contoso.MyDictionary.Label" DefaultValue="My Dictionary" />
<bt:String id="Contoso.MyStatistics.Label" DefaultValue="Statistics" />
<bt:String id="Contoso.Download.Label" DefaultValue="Download Report" />
<bt:String id="Contoso.DS.Label" DefaultValue="Word Definition" />
<bt:String id="Contoso.FAQ.Label" DefaultValue="FAQs" />
<bt:String id="Contoso.Tour.Label" DefaultValue="Tour" />
<bt:String id="Contoso.Tab1.GroupLabel2" DefaultValue=" " />
<bt:String id="Contoso.TaskpaneButton.Label2" DefaultValue="Check" />
<bt:String id="Contoso.TranslateWord.Label2" DefaultValue="Translate" />
<bt:String id="Contoso.WordDefinition.Label2" DefaultValue="Word Definition" />
<bt:String id="Contoso.Synonyms.Label2" DefaultValue="Synonyms" />
<bt:String id="Contoso.MyDictionary.Label2" DefaultValue="Open My Dictionary" />
<bt:String id="Contoso.MyStatistics.Label2" DefaultValue="Statistics" />
<bt:String id="Contoso.Download.Label2" DefaultValue="Download Report" />
<bt:String id="Contoso.DS.Label2" DefaultValue="DS" />
<bt:String id="Contoso.FAQ.Label2" DefaultValue="Open FAQ" />
<bt:String id="Contoso.Tour.Label2" DefaultValue="Tour" />
<bt:String id="Contoso.Clear.Label" DefaultValue="Clear Highlights" />
<bt:String id="Contoso.Tab1.GroupLabel3" DefaultValue=" " />
<bt:String id="Contoso.logout.Label" DefaultValue="Logout" />
<bt:String id="Contoso.setting.Label" DefaultValue="Settings" />
<bt:String id="Contoso.Tab1.logout" DefaultValue=" " />
<bt:String id="Contoso.Tab1.GroupLabel4" DefaultValue=" " />
<bt:String id="Contoso.ErrorList.Label" DefaultValue="Error List" />
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="paneReadSuperTipDescription" DefaultValue="Open WritingAssistant for a comprehensive analysis of your writing."/>
<bt:String id="Contoso.Check.Tooltip" DefaultValue="Check your writing for grammatical errors." />
<bt:String id="Contoso.TranslateWord.Tooltip" DefaultValue="Translating English to German? Or Hindi to Urdu? The Translate tool has got it covered. Simply enter a word, select a language of your choice, and get started. " />
<bt:String id="Contoso.WordDefinition.Tooltip" DefaultValue="Having trouble with a certain word? Type it in the dictionary search bar for the exact meaning and a short description." />
<bt:String id="Contoso.Synonyms.Tooltip" DefaultValue="Running out of words? Allow us to suggest more options to express the same idea in different words." />
<bt:String id="Contoso.MyDictionary.Tooltip" DefaultValue="A modifiable collection of your most frequently used words" />
<bt:String id="Contoso.MyStatistics.Tooltip" DefaultValue="View a summary of your performance in each category: Mechanics, Grammar, Content Quality, and Vocabulary." />
<bt:String id="Contoso.Download.Tooltip" DefaultValue="Click to download Report" />
<bt:String id="Contoso.DS.Tooltip" DefaultValue="Running out of words? Allow us to suggest more options to express the same idea in different words." />
<bt:String id="Contoso.FAQ.Tooltip" DefaultValue="Have questions about WritingAssistant? We are happy to help." />
<bt:String id="Contoso.Tour.Tooltip" DefaultValue="Buckle up for a tour of WritingAssistant." />
<bt:String id="Contoso.Clear.Tooltip" DefaultValue="Clear the current errors from your text and the list." />
<bt:String id="Contoso.logout.Tooltip" DefaultValue="Log out of WritingAssistant and return to the home page." />
<bt:String id="Contoso.setting.Tooltip" DefaultValue="Customise error subcategories for an experience tailored to your needs." />
<bt:String id="Contoso.ErrorList.Tooltip" DefaultValue="Click to get Error list " />
</bt:LongStrings>
</Resources>
</VersionOverrides>
</OfficeApp>
I don't understand what is needed to change here, as I 'm a beginner
The manifest provided has several mistakes, probably just inattention to copy&paste inside Resources section. The following Images were missing ...
<bt:Image id="Contoso.Tour.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-16.png" />
<bt:Image id="Contoso.Tour.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-32.png" />
<bt:Image id="Contoso.Tour.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-64.png" />
<bt:Image id="Contoso.Tour.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-80.png" />
<bt:Image id="Contoso.FAQ.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-16.png" />
<bt:Image id="Contoso.FAQ.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-32.png" />
<bt:Image id="Contoso.FAQ.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-64.png" />
<bt:Image id="Contoso.FAQ.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-80.png" />
<bt:Image id="Contoso.DS.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-16.png" />
<bt:Image id="Contoso.DS.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-32.png" />
<bt:Image id="Contoso.DS.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-64.png" />
<bt:Image id="Contoso.DS.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-80.png" />
<bt:Image id="Contoso.MyStatistics.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-16.png" />
<bt:Image id="Contoso.MyStatistics.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-32.png" />
<bt:Image id="Contoso.MyStatistics.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-64.png" />
<bt:Image id="Contoso.MyStatistics.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/setting-80.png" />
<bt:Image id="Contoso.MyDictionary.Icon80" DefaultValue="https://outlookplugin.writing-assistant.com/Images/my-dictionary-80.png" />
<bt:Image id="Contoso.Download.Icon16" DefaultValue="https://outlookplugin.writing-assistant.com/Images/download-16.png" />
<bt:Image id="Contoso.Download.Icon32" DefaultValue="https://outlookplugin.writing-assistant.com/Images/download-32.png" />
<bt:Image id="Contoso.Download.Icon64" DefaultValue="https://outlookplugin.writing-assistant.com/Images/download-64.png" />
As long as I added those missing entries the add-in was loaded (obviosly you would need to change the icons for those missing IDs) ...
Related
We have created an Outlook add-in to move emails/attachments to SharePoint which works fine for user mailbox but when I move to the shared mailbox the add-in is not visible
Inside get add-ins to tab the add-in is visible but not visible on the ribbon.
We have configured shared mailbox in Exchange and is auto mapped to outlook. The SupportsSharedFolders is set to true and there are no issues while installing the manifest.
Did I miss any step in configuration?
Please help to get the add-in started for the shared mailbox.
EDIT: Im including the manifest file below. Just found that the desktop client is using version override 1.0 and Web and mobile are using version override 1.1.
<?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>1111111111111</Id>
<Version>1.0.0.4</Version>
<ProviderName>Contoso</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="Contoso E-mail"/>
<Description DefaultValue="Contoso E-mail"/>
<IconUrl DefaultValue="https://localhost:3000/assets/Icon64.png"/>
<HighResolutionIconUrl DefaultValue="https://localhost:3000/assets/Icon128.png"/>
<SupportUrl DefaultValue="https://www.Contoso.com/help"/>
<AppDomains>
<AppDomain>https://login.microsoftonline.com</AppDomain>
<AppDomain>https://login.windows.net</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://localhost:3000/taskpane.html">
<Override Locale="nl-nl" Value="https://localhost:3000/taskpane_nl.html" />
</SourceLocation>
<RequestedHeight>250</RequestedHeight>
</DesktopSettings>
</Form>
</FormSettings>
<Permissions>ReadWriteMailbox</Permissions>
<Rule xsi:type="RuleCollection" Mode="Or">
<Rule xsi:type="ItemIs" ItemType="Message" FormType="Read"/>
</Rule>
<DisableEntityHighlighting>false</DisableEntityHighlighting>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides" 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="MessageReadCommandSurface">
<OfficeTab id="TabDefault">
<Group id="msgReadGroup">
<Label resid="GroupLabel"/>
<Control xsi:type="Button" id="msgReadOpenPaneButton">
<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://localhost:3000/assets/Icon16.png">
<bt:Override Locale="nl-nl" Value="https://localhost:3000/assets/Icon16.png" />
</bt:Image>
<bt:Image id="Icon.32x32" DefaultValue="https://localhost:3000/assets/Icon32.png">
<bt:Override Locale="nl-nl" Value="https://localhost:3000/assets/Icon32.png" />
</bt:Image>
<bt:Image id="Icon.80x80" DefaultValue="https://localhost:3000/assets/Icon80.png">
<bt:Override Locale="nl-nl" Value="https://localhost:3000/assets/Icon80.png" />
</bt:Image>
</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="Contoso E-mail"/>
<bt:String id="TaskpaneButton.Label" DefaultValue="Contoso E-mail"/>
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="TaskpaneButton.Tooltip" DefaultValue="Opens a pane displaying all available properties."/>
</bt:LongStrings>
</Resources>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides/1.1" xsi:type="VersionOverridesV1_1">
<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="MessageReadCommandSurface">
<OfficeTab id="TabDefault">
<Group id="msgReadGroup">
<Label resid="GroupLabel"/>
<Control xsi:type="Button" id="msgReadOpenPaneButton">
<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>
<Host xsi:type="MailHost">
<MobileFormFactor>
<FunctionFile resid="Commands.Url" />
<ExtensionPoint xsi:type="MobileMessageReadCommandSurface">
<Group id="mobileMsgRead">
<Label resid="GroupLabel" />
<Control xsi:type="MobileButton" id="TaskPaneBtn">
<Label resid="TaskpaneButton.Label" />
<Icon xsi:type="bt:MobileIconList">
<bt:Image size="25" scale="1" resid="Icon.25x25" />
<bt:Image size="25" scale="2" resid="Icon.25x25" />
<bt:Image size="25" scale="3" resid="Icon.25x25" />
<bt:Image size="32" scale="1" resid="Icon.32x32" />
<bt:Image size="32" scale="2" resid="Icon.32x32" />
<bt:Image size="32" scale="3" resid="Icon.32x32" />
<bt:Image size="48" scale="1" resid="Icon.48x48" />
<bt:Image size="48" scale="2" resid="Icon.48x48" />
<bt:Image size="48" scale="3" resid="Icon.48x48" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Taskpane.Url" />
</Action>
</Control>
</Group>
</ExtensionPoint>
</MobileFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="Icon.16x16" DefaultValue="https://localhost:3000/assets/Icon16.png">
<bt:Override Locale="nl-nl" Value="https://localhost:3000/assets/Icon16.png" />
</bt:Image>
<bt:Image id="Icon.32x32" DefaultValue="https://localhost:3000/assets/Icon32.png">
<bt:Override Locale="nl-nl" Value="https://localhost:3000/assets/Icon32.png" />
</bt:Image>
<bt:Image id="Icon.80x80" DefaultValue="https://localhost:3000/assets/Icon80.png">
<bt:Override Locale="nl-nl" Value="https://localhost:3000/assets/Icon80.png" />
</bt:Image>
</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="Contoso E-mail"/>
<bt:String id="TaskpaneButton.Label" DefaultValue="Contoso E-mail"/>
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="TaskpaneButton.Tooltip" DefaultValue="Opens a pane displaying all available properties."/>
</bt:LongStrings>
</Resources>
</VersionOverrides>
</VersionOverrides>
</OfficeApp>
You have mentioned that "SupportsSharedFolders" is set true but the manifest you shared does not have "SupportsSharedFolders". Please add "SupportsSharedFolders" as mentioned in docs and check.
Given that outlook for iOS and android only supports "MessageReadCommandSurface" I thought I'd investigate how my add-in looks on safari and chrome running on a mobile. On all other platforms I can see'Send to OneNote' as well as my own app but on mobile i only get 'My Templates'. My add-in doesn't appear. Am i doing something wrong?
<?xml version="1.0" encoding="UTF-8"?>
<!--Created:ce44715c-8c4e-446b-879c-ea9ebe0f09c8-->
<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">
<!-- Begin Basic Settings: Add-in metadata, used for all versions of Office unless override provided. -->
<!-- IMPORTANT! Id must be unique for your add-in, if you reuse this manifest ensure that you change this id to a new GUID. -->
<Id>23c97452-1ba9-4e87-b34d-9e99d92013d6</Id>
<!--Version. Updates from the store only get triggered if there is a version change. -->
<Version>1.0.0.0</Version>
<ProviderName>"Timewatch"</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<!-- The display name of your add-in. Used on the store and various places of the Office UI such as the add-ins dialog. -->
<DisplayName DefaultValue="My Office Add-in" />
<Description DefaultValue="My First Outlook add-in"/>
<IconUrl DefaultValue="~remoteAppUrl/Images/icon64.png"/>
<!--<IconUrl DefaultValue="https://localhost/Images/icon64.png"/>-->
<SupportUrl DefaultValue="http://www.contoso.com" />
<!-- Domains that will be allowed when navigating. For example, if you use ShowTaskpane and then have an href link, navigation will only be allowed if the domain is on this list. -->
<AppDomains>
<AppDomain>AppDomain1</AppDomain>
<AppDomain>AppDomain2</AppDomain>
<AppDomain>AppDomain3</AppDomain>
</AppDomains>
<!--End Basic Settings. -->
<Hosts>
<Host Name="Mailbox" />
</Hosts>
<Requirements>
<Sets>
<Set Name="Mailbox" MinVersion="1.1" />
</Sets>
</Requirements>
<FormSettings>
<Form xsi:type="ItemRead">
<DesktopSettings>
<SourceLocation DefaultValue="~remoteAppUrl/MessageRead.html"/>
<!--<SourceLocation DefaultValue="https://localhost//MessageRead.html"/>-->
<RequestedHeight>250</RequestedHeight>
</DesktopSettings>
</Form>
</FormSettings>
<Permissions>ReadWriteItem</Permissions>
<Rule xsi:type="RuleCollection" Mode="Or">
<Rule xsi:type="ItemIs" ItemType="Message" FormType="Read" />
</Rule>
<DisableEntityHighlighting>false</DisableEntityHighlighting>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides" xsi:type="VersionOverridesV1_0">
<Requirements>
<bt:Sets DefaultMinVersion="1.3">
<bt:Set Name="Mailbox" />
</bt:Sets>
</Requirements>
<Hosts>
<Host xsi:type="MailHost">
<DesktopFormFactor>
<!-- Location of the Functions that UI-less buttons can trigger (ExecuteFunction Actions). -->
<FunctionFile resid="functionFile" />
<!-- Message Read -->
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<!-- Use the default tab of the ExtensionPoint or create your own with <CustomTab id="myTab"> -->
<OfficeTab id="TabDefault">
<!-- Up to 6 Groups added per Tab -->
<Group id="msgReadGroup">
<Label resid="groupLabel" />
<!-- Launch the add-in : task pane button -->
<Control xsi:type="Button" id="msgReadOpenPaneButton">
<Label resid="paneReadButtonLabel" />
<Supertip>
<Title resid="paneReadSuperTipTitle" />
<Description resid="paneReadSuperTipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="icon16" />
<bt:Image size="32" resid="icon32" />
<bt:Image size="80" resid="icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="messageReadTaskPaneUrl" />
</Action>
</Control>
<!-- Go to http://aka.ms/ButtonCommands to learn how to add more Controls: ExecuteFunction and Menu -->
</Group>
</OfficeTab>
</ExtensionPoint>
<!-- Go to http://aka.ms/ExtensionPointsCommands to learn how to add more Extension Points: MessageRead, AppointmentOrganizer, AppointmentAttendee -->
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="icon16" DefaultValue="~remoteAppUrl/Images/icon16.png"/>
<bt:Image id="icon32" DefaultValue="~remoteAppUrl/Images/icon32.png"/>
<bt:Image id="icon80" DefaultValue="~remoteAppUrl/Images/icon80.png"/>
<!--<bt:Image id="icon16" DefaultValue="https://localhost//Images/icon16.png"/>
<bt:Image id="icon32" DefaultValue="https://localhost//Images/icon32.png"/>
<bt:Image id="icon80" DefaultValue="https://localhost//Images/icon80.png"/>-->
</bt:Images>
<bt:Urls>
<bt:Url id="functionFile" DefaultValue="~remoteAppUrl/Functions/FunctionFile.html"/>
<bt:Url id="messageReadTaskPaneUrl" DefaultValue="~remoteAppUrl/MessageRead.html"/>
<!--<bt:Url id="functionFile" DefaultValue="https://localhost//Functions/FunctionFile.html"/>
<bt:Url id="messageReadTaskPaneUrl" DefaultValue="https://localhost//MessageRead.html"/>-->
</bt:Urls>
<bt:ShortStrings>
<bt:String id="groupLabel" DefaultValue="My Add-in Group"/>
<bt:String id="customTabLabel" DefaultValue="My Add-in Tab"/>
<bt:String id="paneReadButtonLabel" DefaultValue="Display all properties"/>
<bt:String id="paneReadSuperTipTitle" DefaultValue="Get all properties"/>
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="paneReadSuperTipDescription" DefaultValue="Opens a pane displaying all available properties. This is an example of a button that opens a task pane."/>
</bt:LongStrings>
</Resources>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides/1.1" xsi:type="VersionOverridesV1_1">
<Requirements>
<bt:Sets DefaultMinVersion="1.5">
<bt:Set Name="Mailbox" />
</bt:Sets>
</Requirements>
<Hosts>
<Host xsi:type="MailHost">
<DesktopFormFactor>
<!-- Location of the Functions that UI-less buttons can trigger (ExecuteFunction Actions). -->
<FunctionFile resid="functionFile" />
<!-- Message Read -->
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<!-- Use the default tab of the ExtensionPoint or create your own with <CustomTab id="myTab"> -->
<OfficeTab id="TabDefault">
<!-- Up to 6 Groups added per Tab -->
<Group id="msgReadGroup">
<Label resid="groupLabel" />
<!-- Launch the add-in : task pane button -->
<Control xsi:type="Button" id="msgReadOpenPaneButton">
<Label resid="paneReadButtonLabel" />
<Supertip>
<Title resid="paneReadSuperTipTitle" />
<Description resid="paneReadSuperTipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="icon16" />
<bt:Image size="32" resid="icon32" />
<bt:Image size="80" resid="icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="messageReadTaskPaneUrl" />
<SupportsPinning>true</SupportsPinning>
</Action>
</Control>
<!-- Go to http://aka.ms/ButtonCommands to learn how to add more Controls: ExecuteFunction and Menu -->
</Group>
</OfficeTab>
</ExtensionPoint>
<!-- Go to http://aka.ms/ExtensionPointsCommands to learn how to add more Extension Points: MessageRead, AppointmentOrganizer, AppointmentAttendee -->
</DesktopFormFactor>
<MobileFormFactor>
<FunctionFile resid="residUILessFunctionFileUrl" />
<ExtensionPoint xsi:type="MobileMessageReadCommandSurface">
<Group id="mobileMsgRead">
<Label resid="GroupOT" />
<Control xsi:type="MobileButton" id="TaskPaneBtn">
<Label resid="ButtonOT" />
<Icon xsi:type="bt:MobileIconList">
<bt:Image size="25" scale="1" resid="icon25" />
<bt:Image size="25" scale="2" resid="icon25" />
<bt:Image size="25" scale="3" resid="icon25" />
<bt:Image size="32" scale="1" resid="icon32" />
<bt:Image size="32" scale="2" resid="icon32" />
<bt:Image size="32" scale="3" resid="icon32" />
<bt:Image size="48" scale="1" resid="icon48" />
<bt:Image size="48" scale="2" resid="icon48" />
<bt:Image size="48" scale="3" resid="icon48" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="messageReadTaskPaneUrl" />
</Action>
</Control>
</Group>
</ExtensionPoint>
</MobileFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="icon16" DefaultValue="~remoteAppUrl/Images/icon16.png"/>
<bt:Image id="icon25" DefaultValue="~remoteAppUrl/Images/icon25.png"/>
<bt:Image id="icon32" DefaultValue="~remoteAppUrl/Images/icon32.png"/>
<bt:Image id="icon48" DefaultValue="~remoteAppUrl/Images/icon48.png"/>
<bt:Image id="icon80" DefaultValue="~remoteAppUrl/Images/icon80.png"/>
<!--<bt:Image id="icon16" DefaultValue="https://localhost//Images/icon16.png"/>
<bt:Image id="icon32" DefaultValue="https://localhost//Images/icon32.png"/>
<bt:Image id="icon80" DefaultValue="https://localhost//Images/icon80.png"/>-->
</bt:Images>
<bt:Urls>
<bt:Url id="functionFile" DefaultValue="~remoteAppUrl/Functions/FunctionFile.html"/>
<bt:Url id="messageReadTaskPaneUrl" DefaultValue="~remoteAppUrl/MessageRead.html"/>
<!--<bt:Url id="functionFile" DefaultValue="https://localhost//Functions/FunctionFile.html"/>
<bt:Url id="messageReadTaskPaneUrl" DefaultValue="https://localhost//MessageRead.html"/>-->
</bt:Urls>
<bt:ShortStrings>
<bt:String id="GroupOT" DefaultValue="OutlookTime®"/>
<bt:String id="ButtonOT" DefaultValue="Outlook Timesheet"/>
<bt:String id="ButtonOTTipTitle" DefaultValue="Outlook Timesheet"/>
<bt:String id="groupLabel" DefaultValue="My Add-in Group"/>
<bt:String id="customTabLabel" DefaultValue="My Add-in Tab"/>
<bt:String id="paneReadButtonLabel" DefaultValue="Display all properties"/>
<bt:String id="paneReadSuperTipTitle" DefaultValue="Get all properties"/>
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="paneReadSuperTipDescription" DefaultValue="Opens a pane displaying all available properties. This is an example of a button that opens a task pane."/>
</bt:LongStrings>
</Resources>
</VersionOverrides>
</VersionOverrides>
</OfficeApp>
Please add PhoneSettings element in your manifest for that experience.
For some reason, when I load the manifest file into Outlook, the default icon is displaying for my Outlook add-in. The add-in is being hosted internally at our organization—would that cause this issue?
Below I have selected the pertinent sections of my manifest file. Please let me know if any other information is needed. Any help would be appreciated.
Manifest hosts:
<Hosts>
<Host xsi:type="MailHost">
<DesktopFormFactor>
<ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface">
<OfficeTab id="TabDefault">
<Group id="msgReadGroup">
<Label resid="groupLabel" />
<Control xsi:type="Button" id="msgReadOpenPaneButton">
<Label resid="paneAppointmentButtonLabel" />
<Supertip>
<Title resid="paneCreateAptSuperTipTitle" />
<Description resid="paneCreateAptTipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="icon16" />
<bt:Image size="32" resid="icon32" />
<bt:Image size="80" resid="icon80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="appointmentCreatePaneURL" />
</Action>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
</DesktopFormFactor>
</Host>
</Hosts>
Manifest resources:
<Resources>
...
<bt:Images>
<bt:Image id="icon16" DefaultValue="https://intranet-domain.com/assets/icon-16.png" />
<bt:Image id="icon32" DefaultValue="https://intranet-domain.com/assets/icon-32.png" />
<bt:Image id="icon80" DefaultValue="https://intranet-domain.com/assets/icon-80.png" />
</bt:Images>
...
</Resources>
I am creating an Outlook Add-in, which works perfectly fine in Outlook 2013. In Outlook 2016, however, nothing shows up. The ribbon items are completely gone. In 2013, there are three ribbon buttons that show up, that do not in 2016.
Any ideas what might be wrong in the manifest file.
<?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"
xsi:type="MailApp">
<Id>3a2be270-ea2f-407c-97f1-138f67352cb4</Id>
<Version>1.1.9</Version>
<ProviderName>--REMOVED--</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="--REMOVED-- for PS"/>
<Description DefaultValue="[Outlook Add-in description]"/>
<IconUrl DefaultValue="https://localhost/--REMOVED--PS/outlook/images/icon-32.png"/>
<HighResolutionIconUrl DefaultValue="https://localhost/--REMOVED--PS/outlook/images/icon-80.png"/>
<SupportUrl DefaultValue="https://help.--REMOVED--.com/Product/--REMOVED--PS/"/>
<Hosts>
<Host Name="Mailbox"/>
</Hosts>
<Requirements>
<Sets>
<Set Name="MailBox" MinVersion="1.1"/>
</Sets>
</Requirements>
<FormSettings>
<Form xsi:type="ItemRead">
<DesktopSettings>
<SourceLocation DefaultValue="https://localhost/--REMOVED--PS/outlook/appread/home/home.html"/>
<RequestedHeight>250</RequestedHeight>
</DesktopSettings>
</Form>
</FormSettings>
<Permissions>ReadItem</Permissions>
<Rule xsi:type="RuleCollection" Mode="Or">
<Rule xsi:type="ItemIs" ItemType="Message" 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="funcFile"/>
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<OfficeTab id="TabDefault">
<Group id="msgReadCmdGroup">
<Label resid="groupLabel"/>
<Control xsi:type="Button" id="msgReadPaneButton">
<Label resid="msgReadPaneButtonLabel"/>
<Supertip>
<Title resid="msgReadPaneButtonTitle"/>
<Description resid="msgReadPaneButtonDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="--REMOVED---16"/>
<bt:Image size="32" resid="--REMOVED---32"/>
<bt:Image size="80" resid="--REMOVED---80"/>
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readPaneUrl"/>
</Action>
</Control>
<Control xsi:type="Menu" id="msgCreateMenu">
<Label resid="menuCreateLabel"/>
<Supertip>
<Title resid="menuCreateTitle"/>
<Description resid="menuCreateDescription"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="new-16"/>
<bt:Image size="32" resid="new-32"/>
<bt:Image size="80" resid="new-80"/>
</Icon>
<Items>
<Item id="msgCreateContact">
<Label resid="createContactLabel"/>
<Supertip>
<Title resid="createContactTitle"/>
<Description resid="createContactDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="contact-16"/>
<bt:Image size="32" resid="contact-32"/>
<bt:Image size="80" resid="contact-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>createContact</FunctionName>
</Action>
</Item>
<Item id="msgCreateFirm">
<Label resid="createFirmLabel"/>
<Supertip>
<Title resid="createFirmTitle"/>
<Description resid="createFirmDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="firm-16"/>
<bt:Image size="32" resid="firm-32"/>
<bt:Image size="80" resid="firm-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>createFirm</FunctionName>
</Action>
</Item>
<Item id="msgCreateOpportunity">
<Label resid="createOpportunityLabel"/>
<Supertip>
<Title resid="createOpportunityTitle"/>
<Description resid="createOpportunityDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="opportunity-16"/>
<bt:Image size="32" resid="opportunity-32"/>
<bt:Image size="80" resid="opportunity-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>createOpportunity</FunctionName>
</Action>
</Item>
<Item id="msgCreateActivity">
<Label resid="createActivityLabel"/>
<Supertip>
<Title resid="createActivityTitle"/>
<Description resid="createActivityDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="activity-16"/>
<bt:Image size="32" resid="activity-32"/>
<bt:Image size="80" resid="activity-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>createActivity</FunctionName>
</Action>
</Item>
</Items>
</Control>
<Control xsi:type="Menu" id="msgSetttingHelpMenu">
<Label resid="menuSettingsHelpLabel"/>
<Supertip>
<Title resid="menuSettingsHelpTitle"/>
<Description resid="menuSettingsHelpDescription"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="settings-16"/>
<bt:Image size="32" resid="settings-32"/>
<bt:Image size="80" resid="settings-80"/>
</Icon>
<Items>
<Item id="msgCheckAccountInformation">
<Label resid="checkAccountInformationLabel"/>
<Supertip>
<Title resid="checkAccountInformationTitle"/>
<Description resid="checkAccountInformationDesc"/>
</Supertip>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="settingsPaneUrl"/>
</Action>
</Item>
<Item id="msgCheckHelp">
<Label resid="checkHelpLabel"/>
<Supertip>
<Title resid="checkHelpTitle"/>
<Description resid="checkHelpDesc"/>
</Supertip>
<Action xsi:type="ExecuteFunction">
<FunctionName>checkHelp</FunctionName>
</Action>
</Item>
</Items>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="--REMOVED---16" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/--REMOVED---16.png"/>
<bt:Image id="--REMOVED---32" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/--REMOVED---32.png"/>
<bt:Image id="--REMOVED---80" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/--REMOVED---80.png"/>
<bt:Image id="new-16" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/new-16.png"/>
<bt:Image id="new-32" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/new-32.png"/>
<bt:Image id="new-80" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/new-80.png"/>
<bt:Image id="settings-16" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/settings-16.png"/>
<bt:Image id="settings-32" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/settings-32.png"/>
<bt:Image id="settings-80" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/settings-80.png"/>
<bt:Image id="activity-16" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/activity-16.png"/>
<bt:Image id="activity-32" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/activity-32.png"/>
<bt:Image id="activity-80" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/activity-80.png"/>
<bt:Image id="contact-16" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/contact-16.png"/>
<bt:Image id="contact-32" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/contact-32.png"/>
<bt:Image id="contact-80" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/contact-80.png"/>
<bt:Image id="firm-16" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/firms-16.png"/>
<bt:Image id="firm-32" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/firms-32.png"/>
<bt:Image id="firm-80" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/firms-80.png"/>
<bt:Image id="opportunity-16" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/opportunity-16.png"/>
<bt:Image id="opportunity-32" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/opportunity-32.png"/>
<bt:Image id="opportunity-80" DefaultValue="https://localhost/--REMOVED--PS/outlook/images/opportunity-80.png"/>
</bt:Images>
<bt:Urls>
<bt:Url id="funcFile" DefaultValue="https://localhost/--REMOVED--PS/outlook/appread/home/Functions.html"/>
<bt:Url id="readPaneUrl" DefaultValue="https://localhost/--REMOVED--PS/outlook/appread/home/home.html"/>
<bt:Url id="settingsPaneUrl" DefaultValue="https://localhost/--REMOVED--PS/outlook/appread/home/home.html?pane=Settings"/>
</bt:Urls>
<bt:ShortStrings>
<bt:String id="groupLabel" DefaultValue="--REMOVED--"/>
<bt:String id="msgReadPaneButtonLabel" DefaultValue="Open --REMOVED--"/>
<bt:String id="menuCreateLabel" DefaultValue="Create New"/>
<bt:String id="menuSettingsHelpLabel" DefaultValue="Settings and Help"/>
<bt:String id="createContactLabel" DefaultValue="Contact"/>
<bt:String id="createFirmLabel" DefaultValue="Firm"/>
<bt:String id="createOpportunityLabel" DefaultValue="Opportunity"/>
<bt:String id="createActivityLabel" DefaultValue="Activity"/>
<bt:String id="checkAccountInformationLabel" DefaultValue="Account Information"/>
<bt:String id="checkHelpLabel" DefaultValue="Help"/>
<bt:String id="msgReadPaneButtonTitle" DefaultValue="--REMOVED--"/>
<bt:String id="menuCreateTitle" DefaultValue="Create New"/>
<bt:String id="createOpportunityTitle" DefaultValue="Create New Opportunity"/>
<bt:String id="checkHelpTitle" DefaultValue="Help"/>
<bt:String id="checkAccountInformationTitle" DefaultValue="Account Information"/>
<bt:String id="createActivityTitle" DefaultValue="Create New Activity"/>
<bt:String id="createFirmTitle" DefaultValue="Create New Firm"/>
<bt:String id="menuSettingsHelpTitle" DefaultValue="Settings and Help"/>
<bt:String id="createContactTitle" DefaultValue="Create New Contact"/>
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="msgReadPaneButtonDesc" DefaultValue="Opens a task pane showing information about the contacts"/>
<bt:String id="checkAccountInformationDesc" DefaultValue="Update your account information for --REMOVED-- for Professional Services"/>
<bt:String id="createContactDesc" DefaultValue="Open --REMOVED-- for Professional Services to create a new Contact"/>
<bt:String id="createFirmDesc" DefaultValue="Open --REMOVED-- for Professional Services to create a new Firm"/>
<bt:String id="createOpportunityDesc" DefaultValue="Open --REMOVED-- for Professional Services to create a new Opportunity"/>
<bt:String id="createActivityDesc" DefaultValue="Open --REMOVED-- for Professional Services to create a new Activity"/>
<bt:String id="checkHelpDesc" DefaultValue="Open --REMOVED-- for Professional Services to check the help interface"/>
<bt:String id="menuCreateDescription" DefaultValue="Create a new Contact, Firm, Opportunity or Activity in --REMOVED-- for Professional Services."/>
<bt:String id="menuSettingsHelpDescription" DefaultValue="Update your account information or access help."/>
</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="funcFile"/>
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<OfficeTab id="TabDefault">
<Group id="msgReadCmdGroup">
<Label resid="groupLabel"/>
<Control xsi:type="Button" id="msgReadPaneButton">
<Label resid="msgReadPaneButtonLabel"/>
<Supertip>
<Title resid="msgReadPaneButtonTitle"/>
<Description resid="msgReadPaneButtonDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="--REMOVED---16"/>
<bt:Image size="32" resid="--REMOVED---32"/>
<bt:Image size="80" resid="--REMOVED---80"/>
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readPaneUrl"/>
<SupportsPinning>true</SupportsPinning>
</Action>
</Control>
<Control xsi:type="Menu" id="msgCreateMenu">
<Label resid="menuCreateLabel"/>
<Supertip>
<Title resid="menuCreateTitle"/>
<Description resid="menuCreateDescription"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="new-16"/>
<bt:Image size="32" resid="new-32"/>
<bt:Image size="80" resid="new-80"/>
</Icon>
<Items>
<Item id="msgCreateContact">
<Label resid="createContactLabel"/>
<Supertip>
<Title resid="createContactTitle"/>
<Description resid="createContactDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="contact-16"/>
<bt:Image size="32" resid="contact-32"/>
<bt:Image size="80" resid="contact-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>createContact</FunctionName>
</Action>
</Item>
<Item id="msgCreateFirm">
<Label resid="createFirmLabel"/>
<Supertip>
<Title resid="createFirmTitle"/>
<Description resid="createFirmDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="firm-16"/>
<bt:Image size="32" resid="firm-32"/>
<bt:Image size="80" resid="firm-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>createFirm</FunctionName>
</Action>
</Item>
<Item id="msgCreateOpportunity">
<Label resid="createOpportunityLabel"/>
<Supertip>
<Title resid="createOpportunityTitle"/>
<Description resid="createOpportunityDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="opportunity-16"/>
<bt:Image size="32" resid="opportunity-32"/>
<bt:Image size="80" resid="opportunity-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>createOpportunity</FunctionName>
</Action>
</Item>
<Item id="msgCreateActivity">
<Label resid="createActivityLabel"/>
<Supertip>
<Title resid="createActivityTitle"/>
<Description resid="createActivityDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="activity-16"/>
<bt:Image size="32" resid="activity-32"/>
<bt:Image size="80" resid="activity-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>createActivity</FunctionName>
</Action>
</Item>
</Items>
</Control>
<Control xsi:type="Menu" id="msgSetttingHelpMenu">
<Label resid="menuSettingsHelpLabel"/>
<Supertip>
<Title resid="menuSettingsHelpTitle"/>
<Description resid="menuSettingsHelpDescription"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="settings-16"/>
<bt:Image size="32" resid="settings-32"/>
<bt:Image size="80" resid="settings-80"/>
</Icon>
<Items>
<Item id="msgCheckAccountInformation">
<Label resid="checkAccountInformationLabel"/>
<Supertip>
<Title resid="checkAccountInformationTitle"/>
<Description resid="checkAccountInformationDesc"/>
</Supertip>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="settingsPaneUrl"/>
<SupportsPinning>true</SupportsPinning>
</Action>
</Item>
<Item id="msgCheckHelp">
<Label resid="checkHelpLabel"/>
<Supertip>
<Title resid="checkHelpTitle"/>
<Description resid="checkHelpDesc"/>
</Supertip>
<Action xsi:type="ExecuteFunction">
<FunctionName>checkHelp</FunctionName>
</Action>
</Item>
</Items>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
</DesktopFormFactor>
</Host>
</Hosts>
</VersionOverrides>
</VersionOverrides>
</OfficeApp>
Inside the <Supertip> tag there are <Title> and <Description>. The <Title> resource must be placed into <bt:ShortStrings> parent tag. In the same time the <Description> resource must be placed into <bt:LongStrings> parent tag.
Documentation on Office Add-ins XML manifest stated the following:
Title: Required. The text for the supertip. The resid attribute must be set to the value of the id attribute of a String element. The String element is a child element of the ShortStrings element, which is a child element of the Resources element.
Description: Required. The description for the supertip. The resid attribute must be set to the value of the id attribute of a String element. The String element is a child element of the LongStrings element, which is a child element of the Resources element.
To fix your manifest I have moved the following Resource Ids into <bt:ShortStrings> ...
<bt:ShortStrings>
<bt:String id="groupLabel" DefaultValue="--REMOVED--"/>
<bt:String id="msgReadPaneButtonLabel" DefaultValue="Open --REMOVED--"/>
<bt:String id="menuCreateLabel" DefaultValue="Create New"/>
<bt:String id="menuSettingsHelpLabel" DefaultValue="Settings and Help"/>
<bt:String id="createContactLabel" DefaultValue="Contact"/>
<bt:String id="createFirmLabel" DefaultValue="Firm"/>
<bt:String id="createOpportunityLabel" DefaultValue="Opportunity"/>
<bt:String id="createActivityLabel" DefaultValue="Activity"/>
<bt:String id="checkAccountInformationLabel" DefaultValue="Account Information"/>
<bt:String id="checkHelpLabel" DefaultValue="Help"/>
<bt:String id="msgReadPaneButtonTitle" DefaultValue="--REMOVED--"/>
<bt:String id="menuCreateTitle" DefaultValue="Create New"/>
<bt:String id="createOpportunityTitle" DefaultValue="Create New Opportunity"/>
<bt:String id="checkHelpTitle" DefaultValue="Help"/>
<bt:String id="checkAccountInformationTitle" DefaultValue="Account Information"/>
<bt:String id="createActivityTitle" DefaultValue="Create New Activity"/>
<bt:String id="createFirmTitle" DefaultValue="Create New Firm"/>
<bt:String id="menuSettingsHelpTitle" DefaultValue="Settings and Help"/>
<bt:String id="createContactTitle" DefaultValue="Create New Contact"/>
</bt:ShortStrings>
EDIT:
This is become "remote debugging" instead of QandA, but I already done it anyway. After take a closer look on your manifest and replacing all image entries with my own I realize you are missing entire <Resources> section in your <VersionOverrides> element. You must have this tag inside VersionOverrides element. As long as I added the section the add-in appeared in Outlook Desktop. Please note, the resource strings in VersionOverrides element will override the same strings in the parent element.
I used office-generator to scaffold out an Outlook addin and it seems to show up and run when mail opened in read mode but its not showing up in the addins section when a new mail is being composed. I wanted to show the addin to show up in compose mode and once clicked open the addin in pane.
Following is the generated 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" xsi:type="MailApp" xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0">
<Id>f1a2f021-ef67-4e8f-a08c-e24700c36c3d</Id>
<Version>1.0.0.0</Version>
<ProviderName>[Provider name]</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="Test"/>
<Description DefaultValue="[Outlook Add-in description]"/>
<IconUrl DefaultValue="https://localhost:8443/images/icon-32.png"/>
<HighResolutionIconUrl DefaultValue="https://localhost:8443/images/hi-res-icon.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://localhost:8443/appread/home/home.html"/>
<RequestedHeight>250</RequestedHeight>
</DesktopSettings>
</Form>
<Form xsi:type="ItemEdit">
<DesktopSettings>
<SourceLocation DefaultValue="https://localhost:8443/appcompose/home/home.html"/>
</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="funcFile"/>
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<OfficeTab id="TabDefault">
<Group id="msgReadCmdGroup">
<Label resid="groupLabel"/>
<Control xsi:type="Button" id="msgReadPaneButton">
<Label resid="msgReadPaneButtonLabel"/>
<Supertip>
<Title resid="msgReadPaneButtonTitle"/>
<Description resid="msgReadPaneButtonDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="icon-16"/>
<bt:Image size="32" resid="icon-32"/>
<bt:Image size="80" resid="icon-80"/>
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readPaneUrl"/>
</Action>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="AppointmentAttendeeCommandSurface">
<OfficeTab id="TabDefault">
<Group id="attendeeCmdGroup">
<Label resid="groupLabel"/>
<Control xsi:type="Button" id="attendeePaneButton">
<Label resid="attendeePaneButtonLabel"/>
<Supertip>
<Title resid="attendeePaneButtonTitle"/>
<Description resid="attendeePaneButtonDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="icon-16"/>
<bt:Image size="32" resid="icon-32"/>
<bt:Image size="80" resid="icon-80"/>
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readPaneUrl"/>
</Action>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface">
<OfficeTab id="TabDefault">
<Group id="organizerCmdGroup">
<Label resid="groupLabel"/>
<Control xsi:type="Button" id="organizerGetSubject">
<Label resid="getSubjectLabel"/>
<Supertip>
<Title resid="getSubjectTitle"/>
<Description resid="getSubjectDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="icon-16"/>
<bt:Image size="32" resid="icon-32"/>
<bt:Image size="80" resid="icon-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>getSubject</FunctionName>
</Action>
</Control>
<Control xsi:type="Menu" id="organizerMenu">
<Label resid="menuLabel"/>
<Supertip>
<Title resid="menuTitle"/>
<Description resid="menuDescription"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="icon-16"/>
<bt:Image size="32" resid="icon-32"/>
<bt:Image size="80" resid="icon-80"/>
</Icon>
<Items>
<Item id="organizerSetSubject">
<Label resid="setSubjectLabel"/>
<Supertip>
<Title resid="setSubjectTitle"/>
<Description resid="setSubjectDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="icon-16"/>
<bt:Image size="32" resid="icon-32"/>
<bt:Image size="80" resid="icon-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>setSubject</FunctionName>
</Action>
</Item>
<Item id="organizerAddRecip">
<Label resid="addRecipLabel"/>
<Supertip>
<Title resid="addRecipTitle"/>
<Description resid="addRecipDesc"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="icon-16"/>
<bt:Image size="32" resid="icon-32"/>
<bt:Image size="80" resid="icon-80"/>
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>addToRecipients</FunctionName>
</Action>
</Item>
</Items>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="icon-16" DefaultValue="https://localhost:8443/images/icon-16.png"/>
<bt:Image id="icon-32" DefaultValue="https://localhost:8443/images/icon-32.png"/>
<bt:Image id="icon-80" DefaultValue="https://localhost:8443/images/icon-80.png"/>
</bt:Images>
<bt:Urls>
<bt:Url id="funcFile" DefaultValue="https://localhost:8443/FunctionFile/Functions.html"/>
<bt:Url id="readPaneUrl" DefaultValue="https://localhost:8443/appread/home/home.html"/>
</bt:Urls>
<bt:ShortStrings>
<bt:String id="groupLabel" DefaultValue="Sample Add-in"/>
<bt:String id="msgReadPaneButtonLabel" DefaultValue="See message details"/>
<bt:String id="msgReadPaneButtonTitle" DefaultValue="See message details"/>
<bt:String id="attendeePaneButtonLabel" DefaultValue="See appointment details"/>
<bt:String id="attendeePaneButtonTitle" DefaultValue="See appointment details"/>
<bt:String id="setSubjectLabel" DefaultValue="Set subject"/>
<bt:String id="setSubjectTitle" DefaultValue="Set subject"/>
<bt:String id="getSubjectLabel" DefaultValue="Get subject"/>
<bt:String id="getSubjectTitle" DefaultValue="Get subject"/>
<bt:String id="addRecipLabel" DefaultValue="Add recipient"/>
<bt:String id="addRecipTitle" DefaultValue="Add recipient"/>
<bt:String id="menuLabel" DefaultValue="Modify message"/>
<bt:String id="menuTitle" DefaultValue="Modify message"/>
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="msgReadPaneButtonDesc" DefaultValue="Opens a task pane showing the subject and sender of the currently selected message"/>
<bt:String id="attendeePaneButtonDesc" DefaultValue="Opens a task pane showing the subject and sender of the currently selected appointment"/>
<bt:String id="setSubjectDesc" DefaultValue="Sets the subject to 'Hello World!'"/>
<bt:String id="getSubjectDesc" DefaultValue="Gets the current subject and displays it in the info bar"/>
<bt:String id="addRecipDesc" DefaultValue="Add yourself to the recipient list (the To line for messages, the Required attendees line for appointments)"/>
<bt:String id="menuDescription" DefaultValue="Expand this menu to set this subject or add yourself to the To line."/>
</bt:LongStrings>
</Resources>
</VersionOverrides>
</OfficeApp>
This is handled in the VersionOverides section. In the manifest you included, you'll notice an ExentionPoint defined as <ExtensionPoint xsi:type="MessageReadCommandSurface">. This defines an extension point for Message Reading.
To enable the add-in during Compose you'll need to add an ExtentionPoint for MessageComposeCommandSurface.
If you would like to only show during Compose, simply remove the MessageReadCommandSurface section. The same applies to AppointmentAttendeeCommandSurface (reading appointments you were invited to) and AppointmentOrganizerCommandSurface (reading appointments you created).