Operación GetStreamingEventsGetStreamingEvents operation

Buscar información sobre la operación de EWS de GetStreamingEvents .Find information about the GetStreamingEvents EWS operation.

La operación GetStreamingEvents se usa en los clientes de suscripción de transmisión por secuencias para solicitar notificaciones del servidor de acceso de cliente.The GetStreamingEvents operation is used by streaming subscription clients to request notifications from the Client Access server. La respuesta GetStreamingEvents devuelve una matriz de elementos y eventos que se han producido en un buzón desde la última notificación.The GetStreamingEvents response returns an array of items and events that have occurred in a mailbox since the last the notification.

Ejemplo de solicitud GetStreamingEventsGetStreamingEvents request example

DescriptionDescription

En el siguiente ejemplo de una operación GetStreamingEvents se muestra cómo solicitar los eventos y los elementos asociados a una suscripción identificada por el identificador de suscripción.The following example of a GetStreamingEvents operation shows how to request the events and items that are associated with a subscription that is identified by the subscription identifier.

CódigoCode

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types"
  xmlns:m="https://schemas.microsoft.com/exchange/services/2006/messages">
  <soap:Body>
    <GetStreamingEvents xmlns="https://schemas.microsoft.com/exchange/services/2006/messages">
      <SubscriptionId>f6bc657d-dde1-4f94-952d-143b95d6483d</SubscriptionId>
      <ConnectionTimeout>30</ConnectionTimeout>
    </GetStreamingEvents>
  </soap:Body>
</soap:Envelope>

Elementos de solicitud de GetStreamingEventsGetStreamingEvents request elements

Los siguientes elementos se usan en la solicitud:The following elements are used in the request:

Ejemplo de respuesta GetStreamingEvents correctaSuccessful GetStreamingEvents response example

DescriptionDescription

El siguiente ejemplo de una respuesta de GetStreamingEvents muestra las notificaciones que se envían al cliente cuando se recibe un nuevo mensaje de correo electrónico.The following example of a GetStreamingEvents response shows the notifications that are sent to the client when a new email message is received. Incluye notificaciones para los eventos siguientes: CreatedEvent, NewMail y ModifiedEvent.It includes notifications for the following events: CreatedEvent, NewMail, and ModifiedEvent.

CódigoCode

<?xml version="1.0" encoding="utf-8" ?>
<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <ServerVersionInfo xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" MajorVersion="15" MinorVersion="0" MajorBuildNumber="775" MinorBuildNumber="7" Version="V2_4" xmlns="https://schemas.microsoft.com/exchange/services/2006/types" />
</soap:Header>
<soap:Body xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <m:GetStreamingEventsResponse xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types" xmlns:m="https://schemas.microsoft.com/exchange/services/2006/messages">
    <m:ResponseMessages>
      <m:GetStreamingEventsResponseMessage ResponseClass="Success">
        <m:ResponseCode>NoError</m:ResponseCode>
        <m:Notifications>
          <m:Notification>
            <t:SubscriptionId>f6bc657d-dde1-4f94-952d-143b95d6483d</t:SubscriptionId>
            <t:CreatedEvent>
              <t:TimeStamp>2013-09-16T04:31:29Z</t:TimeStamp>
              <t:ItemId Id="AAMkADkzNjJjODUzLWZhMDMtNDVkMS05ZDdjLWVmMDlkYjQ1Zjc4MwBGAAAAAABSSWVKrmGUTJE+MVIvofglBwDZGACZQpSgSpyNkexYe2b7AAAAAAENAADZGACZQpSgSpyNkexYe2b7AAANGFYwAAA=" ChangeKey="CQAAAA==" />
              <t:ParentFolderId Id="AQMkADkzNjJjODUzLWZhMDMtNDVkMS05ZDdjLWVmMDlkYjQ1Zjc4MwAuAAADUkllSq5hlEyRPjFSL6H4JQEA2RgAmUKUoEqcjZHsWHtm+wAAAgENAAAA" ChangeKey="AQAAAA==" />
            </t:CreatedEvent>
            <t:NewMailEvent>
              <t:TimeStamp>2013-09-16T04:31:29Z</t:TimeStamp>
              <t:ItemId Id="AAMkADkzNjJjODUzLWZhMDMtNDVkMS05ZDdjLWVmMDlkYjQ1Zjc4MwBGAAAAAABSSWVKrmGUTJE+MVIvofglBwDZGACZQpSgSpyNkexYe2b7AAAAAAENAADZGACZQpSgSpyNkexYe2b7AAANGFYwAAA=" ChangeKey="CQAAAA==" />
              <t:ParentFolderId Id="AQMkADkzNjJjODUzLWZhMDMtNDVkMS05ZDdjLWVmMDlkYjQ1Zjc4MwAuAAADUkllSq5hlEyRPjFSL6H4JQEA2RgAmUKUoEqcjZHsWHtm+wAAAgENAAAA" ChangeKey="AQAAAA==" />
            </t:NewMailEvent>
            <t:ModifiedEvent>
              <t:TimeStamp>2013-09-16T04:31:29Z</t:TimeStamp>
              <t:FolderId Id="AQMkADkzNjJjODUzLWZhMDMtNDVkMS05ZDdjLWVmMDlkYjQ1Zjc4MwAuAAADUkllSq5hlEyRPjFSL6H4JQEA2RgAmUKUoEqcjZHsWHtm+wAAAgENAAAA" ChangeKey="AQAAAA==" />
              <t:ParentFolderId Id="AQMkADkzNjJjODUzLWZhMDMtNDVkMS05ZDdjLWVmMDlkYjQ1Zjc4MwAuAAADUkllSq5hlEyRPjFSL6H4JQEA2RgAmUKUoEqcjZHsWHtm+wAAAgEJAAAA" ChangeKey="AQAAAA==" />
              <t:UnreadCount>1</t:UnreadCount>
            </t:ModifiedEvent>
          </m:Notification>
        </m:Notifications>
      </m:GetStreamingEventsResponseMessage>
    </m:ResponseMessages>
  </m:GetStreamingEventsResponse>
</soap:Body>

Elementos de respuesta GetStreamingEventsGetStreamingEvents response elements

En la respuesta se usan los siguientes elementos:The following elements are used in the response:

Para buscar otras opciones para el mensaje de respuesta de la operación GetStreamingEvents , explore la jerarquía del esquema.To find other options for the response message of the GetStreamingEvents operation, explore the schema hierarchy. Comenzar en el elemento de notificación .Start at the Notification element.

Ejemplo de respuesta de error GetStreamingEventsGetStreamingEvents error response example

DescriptionDescription

En el ejemplo siguiente se muestra una respuesta de error a una solicitud GetStreamingEvents .The following example shows an error response to a GetStreamingEvents request.

CódigoCode

<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Header>
    <t:ServerVersionInfo MajorVersion="8" MinorVersion="0" MajorBuildNumber="628" MinorBuildNumber="0" 
                         xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types" />
  </soap:Header>
  <soap:Body>
    <GetStreamingEventsResponse xmlns:m="https://schemas.microsoft.com/exchange/services/2006/messages" 
                       xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types" 
                       xmlns="https://schemas.microsoft.com/exchange/services/2006/messages">
      <m:ResponseMessages>
        <m:GetStreamingEventsResponseMessage ResponseClass="Error">
        <m:MessageText></m:MessageText>
        <m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>
        <m:ResponseCode>ErrorInvalidSubscription</m:ResponseCode>
        <m:ConnectionStatus>Closed</m:ConnectionStatus>
      </m:ResponseMessages>
    </GetStreamingEventsResponse>
  </soap:Body>
</soap:Envelope>

ComentariosRemarks

Al procesar una solicitud de GetStreamingEvents , el servidor de acceso de cliente realiza los pasos siguientes:When processing a GetStreamingEvents request, the Client Access server performs the following steps:

  1. El SubscriptionId (GetStreamingEvents) de la solicitud se confirma como una suscripción válida hospedada en el servidor de acceso de cliente.The SubscriptionId (GetStreamingEvents) of the request is confirmed to be a valid subscription that is hosted on the Client Access server. Si no es así, se produce un error en la llamada GetStreamingEvents .If it is not, the GetStreamingEvents call fails.

  2. La dirección SMTP del usuario autenticado para la solicitud se valida para que tenga derechos de suplantación.The SMTP address of the authenticated user for the request is validated to have impersonation rights. Si no es así, se produce un error en la solicitud GetStreamingEvents .If they do not, the GetStreamingEvents request fails.

  3. La cola de suscripción se consulta para los eventos que están a la espera de ser enviados al cliente.The subscription queue is queried for events that are waiting to be sent to the client. Si la cola no está vacía, los primeros 50 eventos de la cola se extraen de la cola y se codifican en una notificación.If the queue is not empty, the first 50 events from the queue are pulled from the queue and encoded into a notification.

  4. Si no se encuentra ningún evento en la cola, se genera un StatusEvent y se codifica en una respuesta de notificación.If no events are found in the queue, a StatusEvent is generated and encoded into a notification response.

  5. La respuesta de la notificación se devuelve al cliente.The notification response is returned to the client.

  6. Los eventos incluidos en la notificación se quitan de la cola de suscripción y la última marca de agua local del servidor de acceso de cliente de la suscripción se establece en la marca de agua del último evento que se devuelve.The events that are included in the notification are removed from the subscription queue and the Client Access server-local last watermark for the subscription is set to the watermark of the last event that is returned.

  7. Se restablece el temporizador de tiempo de espera de la suscripción.The timeout timer for the subscription is reset.

Vea tambiénSee also

Operación subscribeSubscribe operation

Operación unsubscribeUnsubscribe operation