Obtener información de configuración de servicio mediante EWS en Exchange
Obtenga información sobre cómo obtener información de configuración de servicio para mensajería unificada, directivas, sugerencias de correo y reglas de protección de EWS en Exchange.
¿Funciona la aplicación EWS con mensajería unificada (UM), directivas, sugerencias de correo o reglas de protección? Si es así, la aplicación tendrá que llamar a la operación GetServiceConfiguration para obtener la información de configuración del servicio que necesita. La operación GetServiceConfiguration devuelve información de configuración específica de cada una de estas características de EWS.
Nota
La API administrada de EWS no implementa esta funcionalidad.
Tabla 1. Información de configuración que devuelve la operación GetServiceConfiguration
Característica EWS | La operación GetServiceConfiguration devuelve... |
---|---|
MENSAJERÍA UNIFICADA |
|
Nudges de directiva |
|
Sugerencias de correo electrónico |
|
Reglas de protección |
|
Ejemplo de código: obtener información de configuración de servicio para sugerencias de correo mediante EWS
En el siguiente ejemplo de código se usa la operación GetServiceConfiguration para solicitar información de configuración del servicio para sugerencias de correo. Puede solicitar información de configuración de servicio adicional agregando más elementos ConfigurationName con valores diferentes.
private static void GetServiceConfiguration(ExchangeService service, NetworkCredential creds)
{
// XML for the GetServiceConfiguration request SOAP envelope for mail tips configuration information.
const string getServiceConfigurationRequest =
"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" +
"<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n" +
" xmlns:m=\"http://schemas.microsoft.com/exchange/services/2006/messages\"\n" +
" xmlns:t=\"http://schemas.microsoft.com/exchange/services/2006/types\" \n" +
" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"\n" +
" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">\n" +
" <soap:Header>\n" +
" <t:RequestServerVersion Version=\"Exchange2013\" />\n" +
" </soap:Header>\n" +
" <soap:Body>\n" +
" <m:GetServiceConfiguration>\n" +
" <m:ActingAs>\n" +
" <t:EmailAddress>user1@contoso.com</t:EmailAddress>\n" +
" <t:RoutingType>SMTP</t:RoutingType>\n" +
" </m:ActingAs>\n" +
" <m:RequestedConfiguration>\n" +
" <m:ConfigurationName>MailTips</m:ConfigurationName>\n" +
" </m:RequestedConfiguration>\n" +
" </m:GetServiceConfiguration>\n" +
" </soap:Body>\n" +
"</soap:Envelope>";
// Encoded GetServiceConfiguration operation request.
byte[] payload = System.Text.Encoding.UTF8.GetBytes(getServiceConfigurationRequest);
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(service.Url);
request.AllowAutoRedirect = false;
request.Credentials = creds;
request.Method = "POST";
request.ContentType = "text/xml";
Stream requestStream = request.GetRequestStream();
requestStream.Write(payload, 0, payload.Length);
requestStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
string responseFromServer = reader.ReadToEnd();
Console.WriteLine("You will need to parse this response to get the configuration information:\n\n" + responseFromServer);
reader.Close();
responseStream.Close();
}
else
throw new WebException(response.StatusDescription);
}
catch (WebException e)
{
Console.WriteLine(e.Message);
}
}
Pasos siguientes
Después de solicitar información de configuración de servicio, use la clase XmlDocument para cargar el XML de respuesta para poder analizarlo. A continuación, según el escenario, puede realizar una de las siguientes acciones:
Use la operación GetMailTips para obtener sugerencias de correo para que las aplicaciones cliente se muestren a los usuarios.
Si la mensajería unificada está habilitada, obtenga información sobre cómo reproducir elementos de buzón en el teléfono.