Partilhar via


Obter informações de configuração de serviço usando o EWS no Exchange

Descubra como obter informações de configuração de serviço para um, empurrões de política, dicas de email e regras de proteção do EWS no Exchange.

O aplicativo EWS funciona com o UM (Unified Messaging), as dicas de política, as dicas de email ou as regras de proteção? Nesse caso, seu aplicativo precisará chamar a operação GetServiceConfiguration para obter as informações de configuração de serviço necessárias. A operação GetServiceConfiguration retorna informações de configuração específicas para cada um desses recursos EWS.

Observação

A API gerenciada EWS não implementa essa funcionalidade.

Tabela 1. Informações de configuração que a operação GetServiceConfiguration retorna

Recurso EWS A operação GetServiceConfiguration retorna...
UM
  • Um valor que indica se o UM está habilitado.
  • Um valor que indica se a reprodução no telefone está habilitada.
  • A reprodução na cadeia de caracteres de discagem telefônica.
Empurrões de política
  • Empurrões de política para exibição em seu cliente.
Dicas de email
  • Um valor que indica se as dicas de email estão habilitadas.
  • O número máximo de destinatários por solicitação.
  • O tamanho máximo da mensagem.
  • O limite de audiência grande.
  • Um valor que indica se o número de destinatários externos é mostrado.
  • Uma lista de domínios internos.
  • Um valor que indica se as dicas de política estão habilitadas.
  • O limite de limite de audiência grande para indicar se seu email é considerado com um grande número de destinatários.
Regras de proteção
  • Configuração de regras de proteção para seu cliente.
  • Uma lista de domínios internos para sua organização.

Exemplo de código: obter informações de configuração de serviço para dicas de email usando o EWS

O exemplo de código a seguir usa a operação GetServiceConfiguration para solicitar informações de configuração de serviço para dicas de email. Você pode solicitar informações adicionais de configuração de serviço adicionando mais elementos ConfigurationName com 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);
  }
}

Próximas etapas

Depois de solicitar informações de configuração de serviço, use a classe XmlDocument para carregar o XML de resposta para que você possa analisá-la. Em seguida, dependendo do cenário, você pode fazer um dos seguintes procedimentos:

Confira também