Avançar para a área de conteúdo

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

A primeira vez que acessar o developerWorks, um perfil será criado para você. Informações do seu perfil (tais como: nome, país / região, e empresa) estarão disponíveis ao público, que poderá acompanhar qualquer conteúdo que você publicar. Seu perfil no developerWorks pode ser atualizado a qualquer momento.

Todas as informações enviadas são seguras.

  • Fechar [x]

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

Todas as informações enviadas são seguras.

  • Fechar [x]

Desenvolva um serviço da web de chamada de terceiros usando o WebSphere Telecom Web Services Server

Siddique Mohammed Adoni, Advisory Software Engineer, Os compiladores IBM
Siddique A. Mohammed é um engenheiro e consultor de software e faz parte da equipe de desenvolvimento de produto do IBM Communications Service Enablers nos Laboratórios de software da IBM na Índia, Bangalore. Com mais de 10 anos de experiência em TI, ele trabalhou em muitos dos produtos de middleware da IBM para o domínio de telecomunicações e gerenciamento de processos de negócios. Siddique é bacharel em Engenharia Eletrônica e da Computação.

Resumo:  Os aplicativos e soluções de telecomunicação têm base em produtos desenvolvidos de acordo com os padrões, o que ajuda a assegurar a interoperabilidade com os equipamentos necessários fornecidos por diversos fornecedores. Porém, há certas situações nas quais a interação com um equipamento de rede específico, como softswitches de um fabricante, pode exigir a personalização da solução ou do serviço que interage com ele.

Este artigo tem a intenção de fornecer aos desenvolvedores uma diretriz e procedimentos para desenvolver uma implementação personalizada do serviço da web usando o IBM WebSphere® Telecom Web Services Server como a plataforma de desenvolvimento a fim de ajudar a solução a funcionar com o softswitch específico.

Data:  31/Jan/2012
Nível:  Intermediário Também disponível em :   Inglês
Atividade:  1592 visualizações
Comentários:  


Visão geral

Acrônimos usados frequentemente

  • EAR: archive corporativo
  • J2EE: Java™ 2 Platform Enterprise Edition
  • SIP: Protocolo de Inicialização de Sessão
  • TPCC: controle de chamada de terceiros
  • WSDL: Web Services Description Language

Neste artigo, criaremos uma implementação de serviço personalizada usando o documento WSDL de chamada de terceiros, Parlay X 2.1, e criaremos um serviço do WebSphere Telecom Web Services Server customizado usando o Platform Application Service. A implementação customizada do serviço da web de chamada de terceiros serve para um fluxo de chamada de específico que funciona com determinados softswitches e tem um requisito de suporte de extensão de 100 rel e interação inicial de mídia.

Essa implementação customizada de serviço da web de chamada de terceiros é um desvio dos fluxos de chamada padrão definidos em "RFC 3725 Melhores práticas atuais para controle de chamada de terceiros no Protocolo de Inicialização de Sessão (SIP)".

Pré-requisitos

O desenvolvimento de uma implementação de serviço customizada com o WebSphere Telecom Web Services Server como uma plataforma exige o seguinte:

  • Compreensão das especificações de serviço da web do controle de chamada de terceiros (TPCC), Parlay X
  • Fluxo de chamada com os agentes de usuário e servidor de mídia
  • Plataforma WebSphere Telecom Web Services Server

WebSphere Telecom Web Services Server

Uma implementação do serviço WebSphere Telecom Web Services Server é composta por uma implementação de serviço da web expondo abstrações com base em padrões para serviços de rede subjacentes, por exemplo, o controle de chamada de terceiros, Parlay X. A implementação do serviço participa do ambiente de plataforma de serviço WebSphere Telecom Web Services Server, permitindo que um provedor de serviço integre e exponha as interfaces de rede interfaces de TI de nível superior que permitem o desenvolvimento de serviços ricos e com valor agregado. As seções subsequentes discutem as considerações de design específicas às implementações do serviço customizado.

Interface da chamada de terceiros customizada

A interface de chamada de terceiros é SOAP, o Simple Object Access Protocol, sobre serviço da web de solicitação HTTP. A interface de chamada de terceiros implementa um controlador SIP back-to-back user agent (B2BUA) por chamada que mantém o estado da chamada de terceiros até que um dos agentes do usuário encerre a chamada. As seguintes operações são suportadas como parte da interface de chamada de terceiros:

  • makeCall

    Configura uma chamada de voz entre 2 endereços, callingParty e calledParty.

  • getCallInformation

    recupera o status atual, CallInformation, da chamada identificada pelo CallIdentifier.

  • endCall

    Finaliza a chamada identificada pelo callidentifier.

  • cancelCall

    Cancela a chamada solicitada anteriormente identificada por callidentifier.

Componentes do serviço de chamada de terceiros

O serviço de chamada de terceiros customizado é realizado como um serviço da web. A lógica do serviço é composta pelos seguintes componentes:

  • A implementação do serviço da web com ligação do Java™Bean, junto com a lógica para invocar componentes comuns do WebSphere Telecom Web Services Server
  • Servlets SIP que manipulam a sinalização SIP de e para os elementos de rede, por exemplo, Softswitch
  • Componentes do Java Management Extensions MBean para gerenciar o serviço no WebSphere Telecom Web Services Server
  • Criação de log e mensagens de rastreio em diversos estágios do processamento

Métodos SIP usados pela chamada de terceiros personalizada

A chamada de terceiros personalizada indicará isso pela configuração dos métodos na mensagem SIP INVITE: INVITE, UPDATE, BYE, ACK, CANCEL, PRACK, 100rel, Precondition.

Ambiente de desenvolvimento

Rational Application Developer versão 7.0 é o ambiente de desenvolvimento recomendado. O Rational Application Developer fornece um integrated development environment (IDE) com assistentes fáceis e simples e widgets para o desenvolvimento de aplicativos J2EE e de aplicativos com base em serviços da web.


Criar um projeto de serviço customizado

Um serviço customizado é criado pela implementação de um projeto usando o Platform Application Service. O Platform Application Service está disponível com o Telecom Web Services Server na seguinte forma: platform.ear

  1. Inicie o Rational Application Developer e escolha criar uma área de trabalho.
  2. Importe o platform.ear com a ajuda de um assistente de importação do Rational Application Developer. Escolha a pasta J2EE e selecione a opção EAR file da coluna. Renomeie o arquivo EAR como "PX21_TPC_IMS" para fazer referência ao serviço da web Parlay X
  3. A próxima janela exibirá uma lista de bibliotecas (armazenadas como jars utilitários). Selecione a biblioteca que cria projetos utilitários sob o aplicativo corporativo. Os arquivos jar de utilitário a serem selecionados sã oadmincons-ejb.jar, admincons-web.war e admincons.
  4. Localize o descritor de implementação para o PX21_TPC_IMS, clique duas vezes para editar e alterar o nome de exibição para "PX2_TPC_IMS".

Desenvolva um serviço Parlay X

  1. Selecione o projeto PX21_TPC_IMS e crie um projeto da web dinâmico, defina o nome como "thirdparty-web". Esse projeto terá acesso a todos os jars de utilitário importados para a área de trabalho.

    Este projeto da web é composto pelo B2BUA e por manipuladores que representam os agentes do usuário respectivos, UA1 e UA2, envolvidos em uma chamada de terceiros.

    Os manipuladores são siplets que ampliam a superclasse SipServlet que implementa os métodos SIP básicos: doAck, doBye, doCancel, doErrorResponse (Falha de resposta, por exemplo, o telefone UA2 toca, mas ninguém atende à chamada), doInfo, doInvite, doOptions, doProvisionalResponse, doUpdate e doSuccessResponse.

  2. Defina o projeto da web dinâmico com todas as caixas de seleção essenciais das bibliotecas do WebSphere Telecom Web Services Server.

Importar o WSDL e gerar as ligações do serviço da web

  1. Após a criação do projeto da web dinâmico, importe o WSDL de chamada de terceiros, Parlay X, e os arquivos de definição de esquema do WebSphere Telecom Web Services Server.
  2. Crie uma nova pasta da seguinte maneira: Thirdparty-web -> WebContent -> WEB-INF -> wsdl Selecione a pasta no explorer onde os arquivos wsdl estão disponíveis (extraídos do platform.ear) e importe-os para a pasta wsdl
  3. Gere as ligações do serviço da web:
    • Clique com o botão direito do mouse em px_tpc_s_2_3.wsdl e selecione Web Service. Gere um esqueleto Java. Na janela Web Service, muda o nível de "Start Service" para "Deploy Service".
    • Mude o "Web service runtime" para "IBM WebSphere JAX-RPC". Isso permite a ligação para implementar javax.xml.rpc.server.ServiceLifeCycle e fornece acesso ao tempo de execução do objeto ServletContext subjacente.

      BindingImpl é gerado para as 4 operações suportadas por ThirdParty Call, namely: makeCall, getCallInformation, cancelCall e endCall. O BindingImpl gerado para ThirdPartyCall será nomeado ThirdPartyCallBindingImpl.java.


Criar projetos utilitários

Para criar os projetos utilitários mencionados abaixo, no Rational Application Developer, siga este caminho: File -> New -> Project -> Java EE -> Utility Project. Use os nomes de projeto a seguir apropriadamente.

  • thirdparty

    Este projeto contém o JavaBean (métodos getter e setter) para cada um dos elementos definidos pelas especificações da chamada de terceiros Parlay X.

  • thirdpartyAC

    Este projeto contém as classes MBean que representam os diversos parâmetros de configuração específicos aos Serviços da web de terceiros customizados. Eles são exibidos no console de administração do IBM Telecom Web Services Server.

  • thirdparty-utils

    Este projeto contém as classes do utilitário para validação do formato do endereço, p-asserted-identity, representação de dados para o Session Description Protocol, conforme a RFC 2327.

Os detalhes fornecidos acima ajudarão a criar uma implementação de serviço da web customizada na plataforma WebSphere Telecom Web Services Server. Uma amostra de código demonstrando os recursos de um serviço da web de chamada de terceiros customizado é fornecida com este artigo, consulte Faça o download do.

Observação: essa amostra de implementação é coberta pelo IBM Certificate of Originality.


Implementar o serviço da web customizado

Após o desenvolvimento do serviço da web de chamada de terceiros customizado, exporte o aplicativo como um arquivo EAR. Isso representa um aplicativo J2EE.

A partir da área de trabalho do Rational Application Developer:

  1. Clique com o botão direito do mouse no projeto PX21_TPC_IMS e escolha a opção export.
  2. Selecione o conjunto de dados Ear file
  3. Salve o arquivo em uma pasta no sistema de arquivos local.

Esse aplicativo corporativo pode ser implementado em um WebSphere Application Server. Inicie o aplicativo "Custom Third Party Call web service". Isso permitirá que o serviço fique visível no console de administração do WebSphere Telecom Web Services Server. Para configurar os diversos parâmetros para o serviço customizado, clique no link Web Service platform exibido sob TWSS Administration Console.



Downloads

DescriçãoNomeTamanhoMétodo de download
Sample codeTWSS_Custom_3pcc_PI_17112011.zip4MBHTTP
DocumentationCustom_3pcc_Import_To_Eclipse.zip2MBHTTP

Informações sobre métodos de download


Recursos

Aprender

Obter produtos e tecnologias

Discutir

  • Participe da comunidade My developerWorks. Entre em contato com outros usuários do developerWorks, enquanto explora blogs, fóruns, grupos e wikis orientados a desenvolvedores.

Sobre o autor

Siddique A. Mohammed é um engenheiro e consultor de software e faz parte da equipe de desenvolvimento de produto do IBM Communications Service Enablers nos Laboratórios de software da IBM na Índia, Bangalore. Com mais de 10 anos de experiência em TI, ele trabalhou em muitos dos produtos de middleware da IBM para o domínio de telecomunicações e gerenciamento de processos de negócios. Siddique é bacharel em Engenharia Eletrônica e da Computação.

Ajuda para Relatar Abuso

Relatar abuso

Obrigado. Esta entrada foi sinalizada para atenção do moderador.


Ajuda para Relatar Abuso

Relatar abuso

Falha no envio do Relatório de abuso. Tente novamente mais tarde.


developerWorks: Registre-se


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Na primeira vez que você efetua sign in no developerWorks, um perfil é criado para você. Informações selecionadas do seu perfil developerWorks são exibidas ao público, mas você pode editá-las a qualquer momento. Seu primeiro nome, sobrenome (a menos que escolha ocultá-los), e seu nome de exibição acompanharão o conteúdo que postar.

Selecione seu nome de exibição

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

(Deve possuir de 3 a 31 caracteres.)


Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Classificar este artigo

Comentários

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Segmentos de mercado, WebSphere, Rational
ArticleID=779727
ArticleTitle=Desenvolva um serviço da web de chamada de terceiros usando o WebSphere Telecom Web Services Server
publish-date=01312012