Fix MS Exchange EWS: add support for version negotiation and other enhancements (closes #6)

This commit is contained in:
Maurus Decimus
2026-06-10 15:27:39 +02:00
parent 295038d8c0
commit f7371cc2ae
4 changed files with 170 additions and 53 deletions
+2 -1
View File
@@ -93,9 +93,10 @@ fn try_sync_folder_items(
let mut deletions: Vec<String> = Vec::new();
let mut iters = 0;
let mut batch = ctx.sync_batch.clamp(SYNC_BATCH_MIN, SYNC_BATCH_MAX);
let version = ctx.client.server_version();
loop {
let retries_before = ctx.client.retries_observed();
let body = sync_folder_items_body(folder, &sync_state, batch);
let body = sync_folder_items_body(folder, &sync_state, batch, version);
let resp = match ctx.client.call(ctx.url, "SyncFolderItems", &body) {
Ok(r) => r,
Err(EwsError::SoapFault {