none
ActiveSync GetItemEstimate always returns Status 2. RRS feed

  • Question

  • I'm implementing an ActiveSync Client. However, when sending a GetItemEstimate command I get back a Status of 2 for contact, task and calendar folders if EAS v2.5 is used.

    This is what I send: 

    <GetItemEstimate xmlns='GetItemEstimate'>
    <Collections>
    <Collection>
    <SyncKey xmlns='AirSync'>2</SyncKey>
    <CollectionId>13</CollectionId>
    <FilterType xmlns='AirSync'>0</FilterType>
    </Collection>
    </Collections>
    </GetItemEstimate>

    The corresponding WBXML is

    3 1 6a 0 0 6 45 47 48 0 0 4b 3 32 0 1 0 6 4a 3 31 33 0 1 0 0 58 3 30 0 1 0 6 1 1 1

    I tried including CLASS but that does not change anything. I included FilterType, because the docs say it is req. for v2.5.
    The used CollectionId belongs to a default contacts folder and the synckey is correct. It also does not work with a task or calendar folder.

    This is what I get back:

    <GetItemEstimate xmlns='GetItemEstimate'>
    <Response>
    <Status>2</Status>
    </Response>
    </GetItemEstimate>


    When using EAS v14.0, it works as expected. This is the request:

    <GetItemEstimate xmlns='GetItemEstimate'>
    <Collections>
    <Collection>
    <SyncKey xmlns='AirSync'>1510714876</SyncKey>
    <CollectionId>2</CollectionId>
    </Collection>
    </Collections>
    </GetItemEstimate>

    and this is the response:

    <GetItemEstimate xmlns='GetItemEstimate'>
    <Response>
    <Status>1</Status>
    <Collection>
    <CollectionId>2</CollectionId>
    <Estimate>0</Estimate>
    </Collection>
    </Response>
    </GetItemEstimate>

    Any help, on why it does not work with EAS v2.5 would be great.

    Thanks,
    John


    Tuesday, January 23, 2018 3:07 PM

All replies

  • Hi John, 

    Thank you for your question about GetItemEstimate. One of the Open Specifications team members will respond shortly to begin working with you. 

    Best regards,
    Tom Jebo 
    Sr Escalation Engineer
    Microsoft Open Specifications Support

    Tuesday, January 23, 2018 5:08 PM
    Moderator
  • Hello John - 

    I'm researching this for you and will keep you posted as I make progress during my research.

    Thanks.


    Tarun Chopra | Escalation Engineer | Open Specifications Support Team

    Tuesday, January 23, 2018 5:15 PM
  • John - 

    Your request format while targeting v2.5 doesn't look correct. 'FilterType' element should be under 'Options' element. Can you please try these requests and let me know if you still get status as 2 ?

    <GetItemEstimate xmlns="GetItemEstimate:">
      <Collections>
        <Collection>
          <SyncKey xmlns="AirSync:">2</SyncKey>
          <CollectionId>13</CollectionId>
          <Options xmlns="AirSync:">
            <FilterType>0</FilterType>
          </Options>
        </Collection>
      </Collections>
    </GetItemEstimate>

    OR

    <GetItemEstimate xmlns="GetItemEstimate:">
      <Collections>
        <Collection>
          <SyncKey xmlns="AirSync:">2</SyncKey>
          <CollectionId>13</CollectionId>     
        </Collection>
      </Collections>
    </GetItemEstimate>

    Thanks


    Tarun Chopra | Escalation Engineer | Open Specifications Support Team

    Tuesday, January 23, 2018 5:39 PM
  • Hello,

    I did as you told me, but no Change. However, your suggestion contradicts the documentation:

    https://msdn.microsoft.com/en-us/library/gg663562(v=exchg.80).aspx

    There it is stated:

    The FilterType element is a required child element of the Collection element when protocol version 2.5, 12.0, or 12.1 is used; the FilterType element is an optional child element of the airsync:Options element when protocol version 14.0, 14.1, 16.0, or 16.1 is used.

    My original request obeys these requirements, but does not work with EAS v2.5. Your sugested request works fine with EAS v14.0

    By the way, I also tested against eas.outlok.com with my user id, do you have access to error logs of eas.outlook.com?

    Thanks
    John

    Tuesday, January 23, 2018 7:08 PM
  • Hello John -

    Which version of exchange server are you targeting when you use v2.5 ? Is it exchange online (O365) only or on-Prem as well?

    Thanks 


    Tarun Chopra | Escalation Engineer | Open Specifications Support Team


    Tuesday, January 23, 2018 7:38 PM
  • Hi,

    I am testing against an E3 O365 account and against an Outlook.com account. Both report the same error. I can provide the user IDs, if you want.

    Thanks,
    John

    Tuesday, January 23, 2018 10:17 PM
  • Hello John - 

    Please drop me a mail at dochelp at Microsoft.com so that we can collect traces and discuss further.

    We will update this thread once we are able to resolve the issue to your satisfaction.

    Thanks


    Tarun Chopra | Escalation Engineer | Open Specifications Support Team




    Wednesday, January 24, 2018 1:02 AM
  • To circle back; following sample request resolved the issue. 

    <?xml version="1.0"?>
    <GetItemEstimate xmlns='GetItemEstimate:'>
        <Collections>
            <Collection>
                <Class>Calendar</Class>
                <CollectionId>2</CollectionId>
                <FilterType xmlns='AirSync:'>0</FilterType>
                <SyncKey xmlns='AirSync:'>1</SyncKey>
            </Collection>
        </Collections>
    </GetItemEstimate>
    
    Our MS-ASCMD specification was missing information and we are working on updating following sections 2.2.3.29.1 Collection and 6.20 GetItemEstimate Request Schema to address the issue. Thanks John for your patience and bringing this to our attention.

    Tarun Chopra | Escalation Engineer | Open Specifications Support Team

    Friday, February 2, 2018 11:24 PM