domingo, 10 de junho de 2012

Mobile Connect

Para quebrar um pouco essa sequencia de posts sobre Messaging, vou falar hoje sobre o Mobile Connect, ou Single Number Reach. O que essa feature faz é o seguinte:
Digamos que eu tenha um IP Phone com ramal 5001 e um celular de número (11) 9999-8888. Mas eu sou uma pessoa que vive fora do escritório, e além disso o meu celular é pessoal, e não quero ficar divulgando para os clientes. O único número que os clientes possuem é o meu ramal. Mas eu quero que quando alguém ligar nele, a chamada toque ao mesmo tempo no meu celular, de forma que eu possa atendê-la em qualquer um dos dois dispositivos. Além disso, ninguém na empresa sabe o número do meu celular, e eu nem quero que saibam para que não fiquem me ligando direto. Então eu quero que quando eu ligar para algum ramal da empresa, apareça no telefone como Caller ID o meu ramal com o meu nome, e não o número do meu celular.
É para isso que serve o Mobile Connect.

Para configurar é bem fácil:

1. End User
Primeiramente é preciso criar um End User e habilitar para ele a opção Enable Mobility. Cada usuário habilitado com essa feature consumirá 4 DLUs (licenças), a não ser que você associe o usuário a um telefone através do campo Primary User Device. Nesse caso, cada usuário consumirá 2 DLUs.
Outro parâmetro a ser configurado aqui é o Maximum Wait Time for Desk Pickup. Quando você estiver com uma chamada ativa do seu celular para um ramal interno (ou de um ramal interno para o seu celular), e você desligar a chamada no celular, o seu deskphone vai mostrar a ligação em espera por x milissegundos, e te dará a possibilidade de recuperar a chamada. Dessa forma, você pode transferir a chamada do celular para o deskphone. Esse tempo de x milissegundos que a chamada ficará em espera no IP Phone é configurado através desse parâmetro.

2. Remote Destination Profile
Em Device >> Device Settings >> Remote Destination Profile, teremos que criar um novo profile para esse usuário. O importante aqui é associarmos o User ID e atribuirmos a Calling Search Space e a Rerouting Calling Search Space.
A Calling Search Space vai definir a permissão de discagem do seu profile, e será utilizada quando formos falar de Mobile Voice Access (provavelmente no próximo post). Porém, ela pode também ser utilizada para chegar nos ramais quando você ligar a partir do celular. Por padrão, quando você ligar do seu celular para um ramal da empresa, a Calling Search Space utilizada será a do Gateway. Mas se você mudar o Service Parameter Inbound Calling Search Space for Remote Destination para "Remote Destination Profile + Line Calling Search Space", essa CSS em conjunto com a CSS da Line definirão a visibilidade do profile. Assim, você pode por exemplo dar a essa CSS a permissão de chegar apenas a uma Translation Pattern XXXX, e não diretamente aos ramais. E nessa Translation, podemos ter uma regra de transformation no número de origem, por exemplo, "Use Calling Party's External Phone Number Mask". Fazendo isso, podemos manipular a forma que o ANI será apresentado aos telefones quando você ligar a partir do seu celular.
Bom, e quando alguém ligar no seu ramal e o sistema enviar a chamada para o seu celular, é a Rerouting Calling Search Space que vai definir a saída para ele. Ou seja, essa CSS tem que ter acesso a uma Route Pattern para o seu celular. Caso você esteja usando Local Route Groups, é melhor criar uma Route Pattern específica para os celulares, apontando para o Gateway local, e criar uma Calling Search Space específica. Senão a chamada vai sair pelo Voice Gateway do telefone que originou a chamada.

Depois que criar o Remote Destination Profile, adicione um DN com o mesmo número e partition (ou seja, um shared line) com o seu ramal de mesa. No caso do nosso exemplo, 5001.

3. Remote Destination
Na própria tela de configuração do Remote Destination Profile, vá em Add a New Remote Destination para criar um... Remote Destination. Em Destination Number vamos colocar o número do celular da forma que ele vem da PSTN, por exemplo 1199998888 (depois falarei mais sobre isso). Answer Too Soon Timer é o tempo em ms que tem que passar antes de o celular atender, porque por exemplo, vamos supor que a chamada vai para o seu celular, mas ele está fora de área e cai na caixa postal. Nesse caso, ele nem vai tocar... a mensagem da caixa postal ja atende imediatamente. Aí o sistema não faz a transferência porque o celular atende antes do tempo estipulado nesse parâmetro.  E Answer Too Late Timer é o contrário, ele define em ms quanto tempo o seu celular vai ficar tocando até que o sistema derrube a conexão. Se esse tempo for muito grande, pode ocorrer de o celular desviar para a caixa postal dele, e não é isso que queremos. Depois que esse tempo é expirado, o celular parará de tocar, e o seu deskphone continuará tocando até o tempo de No Answer dele, e dessa forma a chamada é desviada para o seu Voice Mail corporativo, e não para o do seu celular.
Em Ring Schedule é possível definir os dias e horários que o seu celular vai estar ativo para receber as chamadas. Você pode não querer receber chamadas durante o final de semana, por exemplo.
E no quadro When receiving a call during the above ring schedule, podemos definir algumas políticas baseadas em Access Lists (Call Routing >> Class of Control >> Access Lists). Com isso conseguimos definir números que desviam para o celular, e números que não desviam. Por exemplo, se eu quiser que nenhum número de Campinas (DDD 19) toque no meu celular, eu crio uma nova Access List do tipo Blocked, e coloco como Filter Mask "Directory Number" e DN Mask "19!". Depois eu aplico essa Access List dentro do Remote Destination, no campo "Do not ring this destination if caller is in".
Dentro de Remote Destination também, é importante marcar os campos Mobile Phone e Enable Mobile Connect. E marque também a opção Line Association.

4. Application Dial Rules
Agora quando ligarem para o seu ramal 5001, o sistema tentará encaminhar a chamada para o número 1199998888. Mas eventualmente esse número pode não ser "discável" pelo CUCM. Precisamos formatar ele, para que dê match em uma Route Pattern. Fazemos isso em Call Routing >> Dial Rules >> Application Dial Rules. Para o exemplo vamos criar uma com os parâmetros:
Number begins with: 11
Number of Digits: 10
Total Digits to be Removed: 2
Prefix With Pattern: 0
O resultado disso será a string 099998888, que dará match na nossa Route Pattern.

4. Service Parameters
Já está quase pronto. Só precisamos ajustar dois Service Parameters (ou não, dependendo do caso), que são o Matching Caller ID with Remote Destination e o Number of Digits for Caller ID Partial Match. Se o primeiro estiver como Complete Match, o segundo é indiferente.
O que esses parâmetros fazem é definir a quantidade de dígios do Remote Destination que será utilizada para dar match com o número do seu celular. Por exemplo, digamos que a PSTN esteja enviando para nós como ANI o número 1199998888. Como o nosso Remote Destination já está como 1199998888, podemos deixar como Complete Match. Mas se configurássemos o Remote Destination como +551199998888, teriamos que deixar como Partial Match, e dar match em 10 dígitos. Assim, os 10 digitos do ANI dariam match com os 10 últimos do Remote Destination.
Mas aqui está a confusão, pelos testes que eu fiz, esses parâmetros não alteram a quantidades de dígitos do ANI que eu vou ver... se a operadora me mandou 10 dígitos, eu vou ter que dar o match desses 10. Então como a PSTN mandou 1199998888, eu nunca poderia ter um remote destination menor, tipo 99998888. Nunca daria match, por mais que eu mude os meus parâmetros no Service Parameters. A documentação da Cisco é muito confusa sobre esses parâmetros, então eu utilizo essa regra: Sempre considere o ANI completo para o match... se não der, mude o ANI através de uma translation-profile no gateway. Pensando dessa forma, não tive mais problemas.

5. Softkey Template
Por fim, vamos criar uma nova Softkey Template incluindo a tecla Mobility em Idle e Connected. Em idle a tecla servirá para você manualmente ligar ou desligar o Mobile Connect. E em Connected servirá para você transferir uma chamada ativa para o seu celular, sem interromper a chamada.

E isso é tudo o que temos para ver em Mobile Connect. No próximo post falarei sobre Mobile Voice Access, ou DISA.

Nenhum comentário:

Postar um comentário