Compartilhar via


Regras de normalização de telefone

 

Tópico modificado em: 2010-12-14

No Lync Server 2010, as regras de normalização são aplicadas depois que o número é recebido do Serviço de Catálogo de Endereços, que remove todos os espaços em branco e caracteres não obrigatórios do número do telefone antes de aplicar a regra de normalização. Exemplos de caracteres não obrigatórios: !, @, ., - e *.

Essa ordem de processamento simplifica as regras de normalização, pois não existe mais uma necessidade de levar em conta a possibilidade de espaço em branco ou caracteres não obrigatórios no número de telefone. A mudança na maneira em que os números são formatados antes da normalização foi feita para ser consistente com o método usado para normalização em outras partes do produto Lync Server. A ordem de processamento também simplifica as regras de normalização que são exigidas para formatar adequadamente o número quando ele é apresentado ao cliente.

Em versões anteriores, suas regras regex para normalização podem ter sido parecidas com as seguintes:

^\(?(\d\{3})?[\s\-\./](\d{3})[\s()\-\./](\d{4})[\s]*[x|X](\d{5})$

+1$1$2$3;ext=$4

As regras anteriores podem ser reescritas no Lync Server como exemplificado a seguir, pois não existe qualquer espaço em branco ou caractere não obrigatório a ser encontrado:

(\d{10})[x|X](\d{5})

+1$1;ext=$2

O novo método de processamento realmente pode causar com que algumas das regras de normalização, que funcionavam em versões anteriores do Office Communications Server, falhem. Visto que a regra agora é aplicada após o espaço em branco e outros caracteres específicos são removidos, uma expressão regex que antecipa estes caracteres específicos não funciona mais como esperado. Por exemplo:

\s*\(\s*\d\d\d\s*\)\s*\-\s*\d\d\d\s*\-\s*\d\d\d\d

Essa expressão falha pois o caractere ‘-‘ foi removido pelo pós-processamento. A verificação para ()- não é mais capaz de corresponder o caractere esperado na string de entrada. Para resolver o regex anterior para que este funcione com o novo formato pré-processado, você pode simplificá-lo assim :

\d{10}

A nova regra regex iguala apenas dez dígitos.