- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Note: This particular issue has significant impact on our customers, which translates to high business impact with direct consequences on revenue.
当用户在撰写电子邮件草稿时与我们的加载项交互时,我们的 Outlook Office 加载项如何才能最大限度地缩短 EWS GetItem API 返回我们从 Office.context.mailbox.item.saveAsync()
收到的 itemId
响应是否正常?
如果事实证明我们的加载项无法控制项目何时保留到 EWS,那么最终用户可以采取什么措施来加快速度?
我们正在寻找 (a) 技术解决方案,或 (b) 消息来指导我们的客户如何缓解/修复/解决此问题。
我们的一些客户无法使用 Outlook 的 Office 加载项发送电子邮件,或者必须等待很长时间(> 2 分钟)才能发送电子邮件。
我们希望所有客户都能够使用我们的加载项发送电子邮件,而不必等待不合理的时间。
根据我们的日志和客户报告,此问题仅存在于 Outlook 2016 for Windows 桌面应用程序中。我们没有证据表明任何其他版本的 Outlook(包括 Outlook 2013 或 Outlook for Mac)中都存在此问题,但这些客户端中也可能存在此问题。
我们的插件与撰写模式集成,可在撰写电子邮件时提供附加功能,例如模板、跟进、打开和点击跟踪以及日程安排。
我们的加载项与我们的 SaaS 产品协同工作,如下所示:
我们的加载项在电子邮件上设置 EWS 扩展属性,并使用元数据指示该邮件启用了哪些功能。
我们的带外 SaaS 产品配置为通过 EWS API 从客户的邮箱中读取。当它遇到我们的 Office 加载项编写的 EWS 扩展属性时,它会触发代码路径以满足所需的行为。
问题的根本原因是我们在 Outlook 2016 for Windows 中与 EWS 的交互。 为了成功与 EWS 交互以读取/写入邮箱项目,它必须知道该项目。
Office.context.mailbox.item.saveAsync()
的文档说:
In Outlook Web App or Outlook in online mode, the item is saved to the server. In Outlook in cached mode, the item is saved to the local cache.
进一步说:
Note: If your add-in calls
saveAsync
on an item in compose mode in order to get anitemId
to use with EWS or the REST API, be aware that when Outlook is in cached mode, it may take some time before the item is actually synced to the server. Until the item is synced, using theitemId
will return an error.
因此,我们得出的结论是 Office.context.mailbox.item.saveAsync()
,尽管它确实返回一个最终有效 itemId
,不保证任何后续 EWS 交互都会成功。到目前为止,我们还没有找到任何方法来加速 Outlook 客户端实际使 EWS 识别邮箱项目的过程。
我们尝试通过轮询来缓解此问题 EWS GetItem尝试获取具有从 Office.context.mailbox.item.saveAsync()
收到的 itemId
的项目的 ChangeKey
。虽然我们已经看到这最终会成功,但可能需要一分钟或更长时间才能发生。对于我们的客户来说,等待的时间实在是太长了。
如果 Outlook 2016 for Windows 桌面客户端处于“缓存模式”,用户可以执行以下操作:
最佳答案
在缓存模式下无法加快速度。不幸的是,这是撰写模式下 saveAsync 的限制。一些注意事项:
1) EWSId 仅当项目为草稿时才有效。发送后,当该项目在已发送项目中时,它将有一个新的 EWSId,该 EWSId 无法从 Office.js 获取
2) 您能否将您的信息保存到自定义属性中,而不是 EWS 扩展属性中。 (Office.context.mailbox.item.customProperties)https://dev.office.com/reference/add-ins/outlook/1.5/CustomProperties?product=outlook
这些属性将保存到已发送项目的邮件中,但不会被传输。那么你能找到这些属性
它们以 JSON 字典的形式存储在键/值对中的项目上。 mapi 属性的名称是“cecp-[ list 中的扩展 ID]”(在 PS_PUBLIC_STRINGS 中)
https://msdn.microsoft.com/en-us/library/office/cc842512.aspx
3) 听起来确实是解决这个问题的更好方法是使用 Office.js 函数来提供对此的写访问权限? (尽管我们不完全理解您的情况)。对新功能的请求应通过 UserVoice:
https://officespdev.uservoice.com/forums/224641-general/category/131778-outlook-add-ins 。
4)处于在线模式将大大减少时间。用户可以知道他或她是否处于在线模式,但外接程序不能。
此外,状态栏在缓存模式下会显示“已连接到 Microsoft Exchange”,在在线模式下会显示“与 Microsoft Exchange 联机”。
切换到在线模式会消除缓存模式所具有的许多优势。 Outlook 2016 中默认使用缓存模式。
关于outlook - 我们如何强制将邮箱项目持久保存到 EWS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46671562/
我试图在两个元素之间放置一个图像,但是当它到达电子邮件客户端时,它不起作用。 是否有可能获得元素的绝对定位或至少用 float 或其他东西模拟它?如果没有,那么...回到基础知识然后(图片) 我有几个
我正在使用 Gmail SMTP 服务器发送来 self 网站用户的电子邮件。 这些是我的 settings.py 中的默认设置 EMAIL_HOST = 'smtp.gmail.com' EMAIL
最近做一个邮箱验证的功能,研究了一会,搞定了邮件的自动发送。下面用qq邮箱作为演示,一步一步来解释: 代码下载地址 首先,就是做到邮件的发送,代码如下: ?
本文实例为大家分享了常用的iOS正则表达式,供大家参考,具体内容如下 ?
我想知道 facebook API 允许 PHP 网页提取以下用户数据的先决条件是什么: 姓名 电子邮件 电话 据我了解,提取电话号码需要您的网站在 facebook/Websense 的白名单中吗?
我的 iOS 应用程序通过 username 和 password 使用 Firebase 登录。但我想提供更改设置中的 username 的可能性。 问题是,Firebase 是否支持更改用户名?
我正在尝试销毁我的 ROR 应用程序中的对象。 但我收到以下错误: ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relati
我正在尝试开发一个应用程序来访问来自邮箱(例如Gmail和Yahoo Mail)的电子邮件,并将其存储在本地存储中。有什么办法可以实现这一目标吗? 最佳答案 当然可以。 您可以使用imap_clien
我需要在 Gmail 中选择“已发送”和“垃圾邮件”文件夹,但我的帐户无法使用。后来我发现这些文件夹是非英语的,但它似乎也不代表那些语言的 unicode 字符。有人知道如何找出 Gmail 帐户的“
看起来这两种IPC机制非常相似,它们之间有什么区别吗? 最佳答案 我认为 MSDN 上对每种机制的介绍都回答了这个问题: Mailslots : A mailslot is a mechanism f
我一直在使用 Apple 的脚本编辑器编写 JXA 脚本。本质上,我想浏览我的收件箱文件夹并将超过 44 天的邮件移动到存档文件夹。我能够找到帐户、我的收件箱和存档“邮箱”,但我终究无法弄清楚如何将该
我正在为我的网站设计一个用户注册表,我们需要支持使用相同的密码通过用户名/电子邮件/手机登录。 用户可以通过用户名、邮箱或手机进行注册,注册后可以绑定(bind)邮箱或手机。 这是我正在考虑的表格,但
我想使用 Zimbra 允许像 myusername+something@mydomain.com 这样的电子邮件,而不是简单的 myusername@mydomain.com - 这是 Gmail
对 Akka Actor 邮箱进行压力测试的最佳方法是什么?我应该关注的测量是什么?我在猜测它的内存和延迟(完成工作需要多长时间)。 通常,在对网站进行负载测试时,我们会检查每秒请求数和每个请求的平均
我正在尝试通过 C# 代码在 Exchange 2010 服务器上创建/启用邮箱。我到处都看到人们使用下面显示的代码。 但是我得到以下错误: 术语“Enable-Mailbox”未被识别为 cmdle
我正在使用 python 包邮箱,我正在尝试提取消息并清理数据。我遇到了一个问题,对于大型数据库,我可以用我的示例文件调用构造函数,但是当我尝试打印任何消息时,我的程序挂起。我认为这是因为我要读取的文
本文实例讲述了Java正则验证电话,手机,邮箱,日期,金额的方法。分享给大家供大家参考,具体如下: ?
我正在使用 编写监控解决方案python3 与 exchangelib 并尝试计算我们团队邮箱中的消息。条件之一:收件人列表必须包含特定的电子邮件地址 . 当我使用 filter()与 author或
我刚刚在 Active Directory 中创建了一个用户。我想为此用户创建一个交换邮箱。我可以只设置一些用户属性吗?像这样: DirectoryEntry user = ...Get the us
我想为每个用户显示正在进行的对话列表。所以他们只需点击它并显示他们想要的对话。我很难找到如何创建此链接,因为邮箱中的对话对象没有 ID。 这个id好像是保存在notification对象中的,所以我尝
我是一名优秀的程序员,十分优秀!