生成 ActiveSync 同步/获取命令加载到 Exchange 服务器上

发布于 2024-11-29 08:29:43 字数 709 浏览 1 评论 0原文

我正在开发一个可能会影响 ActiveSync 操作的 Exchange 插件。 我现在正在寻找一种快速方法来生成高负载的同步/获取操作,该方法将模拟多个 ISO/Android 设备,这些设备试图从多个邮箱同步和获取电子邮件。

它能够将 10,000 个邮箱加载到我的 Exchange 2010 SP1 服务器,但在使用 SyncKey: 1 和 Class: Email 发送请求时,我似乎无法同步任何这些邮箱。即使邮箱已装满邮件,它也总是会失败并显示未找到对象状态代码。

由于某种原因,一旦我用特定邮箱配置了真正的IOS/Android Exchange客户端,突然就可以同步该邮箱了。

有没有一种简单的方法可以在所有这 10,000 个邮箱上配置此初始状态,以便我稍后能够使用简单的同步命令(SyncKey:1 和 Class:Email)同步它们?或者您有其他想法如何生成这种负载?

这是我在发送 SyncKey = 0 的同步命令时收到的响应:

<?xml version="1.0"?>
<Sync xmlns="http://synce.org/formats/airsync_wm5/airsync">
    <Status xmlns="http://synce.org/formats/airsync_wm5/airsync">8</Status>
</Sync>

I'm developing an Exchange plugin that may effect ActiveSync operations.
I am now looking for a quick way to generate a high load of sync/fetch operations that will simulate multiple ISO/Android devices which are tring to sync and fetch emails from multiple mailboxes.

It was able to load 10,000 mailbox to my Exchange 2010 SP1 server, but it seems I can not sync any of those mailbox when sending a request with SyncKey: 1 and Class: Email. It always fails with an object not found status code, even when the mailbox is filled with messages.

For some reason, as soon as I configured a real IOS/Android Exchange client with a specific mailbox, suddenly It is possible to sync this mailbox.

Is there an easy way to configure this initial state on all of those 10,000 mailboxes, so I would be able to sync them all later with a simple Sync command (SyncKey: 1 and Class: Email) ? Or do you have any other idea how to generate this kind of load?

Here is the response I'm getting, when sending a Sync command with SyncKey = 0:

<?xml version="1.0"?>
<Sync xmlns="http://synce.org/formats/airsync_wm5/airsync">
    <Status xmlns="http://synce.org/formats/airsync_wm5/airsync">8</Status>
</Sync>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

寄居人 2024-12-06 08:29:43

恐怕没有简单的方法可以做到这一点;客户端基本上必须执行以下操作:

  1. 运行 FolderSync w。 SyncKey=0 获取整体文件夹结构。
  2. 运行Sync w。在每个文件夹上 SyncKey=0 以获取其内容。

具体来说,对于给定文件夹的任何操作,您始终必须返回之前的 SyncKey,从而迫使您按顺序执行操作。基本上,[MS-ASCMD] 是值得一看的地方。

(您可能还需要向服务器发送 Provision 命令才能开始。查看 [MS-ASPROV] 了解详细信息。)

所以基本上,我认为您最好使用现有的客户端,该客户端要么实现更简单的 API,要么代理更可行的东西。您可以查看 DAVMail,它是一个 IMAP→EAS 代理 - 因此您“只需”实施IMAP 中的某些内容...

I'm afraid there is no easy way to do this; clients basically must go through the following:

  1. Run FolderSync w. SyncKey=0 to get the overall folder structure.
  2. Run Sync w. SyncKey=0 on each of those folders to get it's contents.

Specifically, you always have to return the previous SyncKey for any operation on a given folder, thus forcing you to do things sequentially. Basically, [MS-ASCMD] is the place to look.

(You might also have to send a Provision-command to the server to get started. Check out [MS-ASPROV] for the details.)

So basically, I think you'd be better off using an existing client that either implements a simpler API or proxies to something more workable. You could look at DAVMail, which is a IMAP→EAS proxy - thus you'd "only" have to implement something in IMAP...

维持三分热 2024-12-06 08:29:43

你确定同步密钥是1吗?当我使用 Exchange 服务器和主动同步时,第一个真正的同步密钥始终类似于 000000000{388899F6-C5A1-4903-B638-1F5021C556BE}0

通过使用 运行同步命令来获取同步密钥同步键=0

Are you sure the sync key is 1? When I have worked with Exchange servers and active sync the first real sync key is always something like 000000000{388899F6-C5A1-4903-B638-1F5021C556BE}0

Get the synckey by running sync command with synckey = 0

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文