如何通过Outlook加载项manifest文件在邮件和日历页面添加自定义按钮
Outlook加载项自定义按钮实现方案
核心结论
Outlook完全支持通过manifest配置在邮件阅读页、日历页面添加自定义按钮,点击按钮可直接触发加载项中的自定义函数,无需额外操作。
对应扩展点说明
你可以根据需要选择对应场景的扩展点配置:
- 邮件阅读页面按钮:使用
MessageReadCommandSurface扩展点,配置完成后按钮会展示在邮件阅读界面的顶部功能区,和你提供的截图位置一致。 - 日历页面按钮:根据使用场景选择对应扩展点:
- 查看已创建的日历项(组织者视角):使用
AppointmentOrganizerCommandSurface - 查看已创建的日历项(参会者视角):使用
AppointmentAttendeeCommandSurface - 日历主界面选中单条日历项时展示按钮:使用
EventCommandSurface
- 查看已创建的日历项(组织者视角):使用
点击触发函数的配置方法
如果需要点击按钮直接触发自定义函数、不弹出任务窗格,将按钮的Action类型设置为ExecuteFunction即可,核心配置示例如下:
<!-- 邮件阅读页按钮配置示例 --> <ExtensionPoint xsi:type="MessageReadCommandSurface"> <OfficeTab id="TabDefault"> <Group id="customGroup"> <Label resid="customGroupLabel" /> <Control xsi:type="Button" id="customFuncButton"> <Label resid="buttonLabel" /> <Supertip> <Title resid="buttonTipTitle" /> <Description resid="buttonTipDesc" /> </Supertip> <Icon> <bt:Image size="16" resid="icon16" /> <bt:Image size="32" resid="icon32" /> <bt:Image size="80" resid="icon80" /> </Icon> <!-- 触发自定义函数的核心配置 --> <Action xsi:type="ExecuteFunction"> <FunctionName>yourCustomFunctionName</FunctionName> </Action> </Control> </Group> </OfficeTab> </ExtensionPoint>
配置完成后,将你要触发的函数写入manifest中指定的函数加载文件即可,点击按钮会自动调用对应函数。
注意事项&操作建议
- 建议在manifest的
Requirements节点中指定最低API版本为Mailbox 1.5及以上,可适配Windows、Mac、网页版、移动端全场景的Outlook客户端 - 先单独调试单个场景的按钮配置,比如先完成邮件阅读页的按钮测试生效后,再添加日历场景的配置,降低问题排查成本
- 按钮图标请准备1616、3232、80*80等多个尺寸的资源,确保在不同分辨率的客户端上显示正常
- 如果需要点击按钮弹出任务窗格,将Action类型替换为
ShowTaskpane并指定任务窗格的页面地址即可
内容的提问来源于stack exchange,提问作者Tamilarasan Rajamanickam
相关产品推荐
相关产品推荐

