Mensagens Multimídia Christiano Freitas de Souza Rafael Oliveira Ribeiro
Agenda Introdução Entidades Padronizadoras SMS e EMS Características da Mensagem Multimídia Arquitetura da Rede SMIL Ferramentas de Criação de Conteúdo Exemplos de Aparelhos
Introdução Serviço de envio de M.M. Evolução: SMS EMS MMS Designado para Redes de Alta Velocidade: GPRS e HSCSD MMSCenter Store-and-Forward Celular Celular, Celular E-mail Celular Outras Aplicações
Entidades Padronizadoras WAP Forum 3GPP Objetivos: Compatibilidade Interoperabilidade Rápida Aceitação e Penetração Redução de Riscos de Operação
SMS Serviço de Mensagens Curtas Recursos Limitados 160 caracteres Transmissão de Texto Plano Transmissão via Canal de Controle
SMS SMSCenter Store-and-Forward Entrega das Mensagens Mensagem de texto e Confirmação Roteamento das Mensagens Interfaceamento com outras Operadoras
EMS Extensão do SMS Envio de: Imagens Melodias Ring-Tones Texto Formatado Concatenação de Mensagens SMS
EMS Distinção do SMS no Cabeçalho: Campo TP-UDHI: informações de controle no corpo da mensagem Header 1 User Data Header Message Body TP-UDHI Campos com descrição do conteúdo
MMS Quatro tipos de serviços: MMS originadas no celular(om); MMS terminadas no celular(tm); MMS originadas em uma aplicação(oa); MMS terminadas em uma aplicação(tm)
Características de uma Mensagem Multimídia Endereçamento Período de validade Notificações e reconhecimentos Confirmação de mensagem, relatório de entrega
Endereçamento MSISDN (Mobile Subscriber ISDN number) MSISDN deve testar em um formato internacional Mensagem MMSC (checar o roteamento) Cada aplicação tem seu próprio número MMSC celular (contata seu MMSC, default, cujo endereço é configurado no próprio celular) Endereçamento com e-mails: para TM (internet)
Período de validade da mensagem Definição pelo próprio usuário ou pela operadora Tempo em que a mensagem permanece válida Falhou entrega armazena para tentar de novo(definido pelo período de validade) Msg chega no MMSC, recebe uma etiqueta de tempo usado no cálculo do PV Se PV expira, a msg é descartada e retirada do banco de dados PV definido pelo usuário X pelo MMSC
Notificações e reconhecimentos MMS Message Confirmation Só diz se a mensagem chegou ao MMS Center, não garantindo nada quanto a entrega ao destino
Notificações e reconhecimentos MMS Message Notification MMSC recebe msg ele notifica o cel destino sobre a nova msg Msg pode ser lida (fetch), buscada depois ou descartada
Notificações e reconhecimentos MMS Delivery Report Relatório de status Informando a origem se a msg foi entregue com sucesso ou não e tem um período de validade associado Pode conter informações, como por exemplo, se o destino rejeitou a mensagem Não é enviado automaticamente
Arquitetura e funcionalidade da rede BSS (Base Station Subsystem) NSS (Network Switching Subsystem) GPRS (Global Packet Radio Subsystem)
Arquitetura Um Gb BSS SGSN GPRS BB GGSN SMS- IWMSC SMS- GMSC SMSC MS BTS BSC A NSS PPG MMSC MSC HLR VLR WAP GW Ext. Appl.
SGSN (Serving GPRS Support Node) Conversão de protocolos usados no backbone IP e os usados na BSS e no celular; codificação e compressão; Autenticação; Gerenciamento de mobilidade; Roteamento de informação para o GGSN apropriado quando uma conexão com uma rede externa for solicitada; Interação com o MSC/VLR e o HLR; Um resumo da bilhetagem e de tráfego estatístico; Busca de informação do HLR do assinante.
GGSN (Gateway GPRS Support Node) Roteamento de pacotes destinados a um celular vindos de uma rede externa para o SGSN; roteamento de pacotes originados do celular para a rede externa correta; Interfaces com redes IP externas; Um resumo da bilhetagem e de tráfego estatístico; Alocação dinâmica ou estática de endereços IP para os celulares, seja por ele mesmo ou com a ajuda de um DHCP ou um servidor RADIUS.
MSC (Mobile Switching Center) Transmite mensagens multimídia entre a BSS e a MMS Center.
SMS-GMSC: (SMS-Gateway Mobile Switching Center) Recebe mensagens curtas da SMSC Interroga o HLR para o informação de roteamento Envia a mensagem curta para o MSC (Mobile Switching Center) apropriado ou para o SGSN Reporta o resultado da operação ao SMSC. Em mensagens multimídia o SMSC só é usado com relatórios de entrega e notificações, que usam SMS como suporte.
WAP Push Proxy ou PPG (Push Proxy Gateway) Enviam relatórios de entrega e notificações para o celular que está usando serviços SMSC
WAP GW (WAP Gateway) Transfere a mensagesn multimídia entre o celular e a MMSC Protocolo WAP é usado para a comunicação com o celular
MMSC (Multimedia Messaging Center) "Evolução natural" da plataforma SMSC SMSC é responsável pelo tratamento de mensagens de texto A plataforma MMSC permite agregar valor ao tráfego de mensagens, possibilitando o uso de combinações de formatos de mídia, tais como: imagem, som e vídeo entre outros.
Ext Appl (External Application) Aplicações do próprio operador Aplicações de 3G Conectividade com e-mail (Mail GW é um exemplo de aplicação externa) Conexões inter-mmsc (IMMSC é um exemplo de aplicação externa) Tal aplicação pode se localizar na rede do operador, na Internet ou em alguma outra rede.
Tipos de PDU MMS Tipo de PDU Descrição M-Send.req M-Send.conf M-Notification.ind M-NotifyResp.req WSP GET.req M-Retrive.conf M-Acknowledge.ind Envia a mensagem para o MMS Center Reconhecimento do MMSC para a mensagem Notificação MMS sobre a nova mensagem Resposta do receptor sobvre a ação a ser tomada Busca a mensagem no MMC Center Recebe a mensagem do MMS Center Reconhecimento da entrega da mensagem M-Delivery.ind Relatório de entrega sobre a mensagem enviada
Estrutura do PDU Especificada pelo Wap Forum na especificação WAP-209-MMSEncapsulation Um PDU consiste de um cabeçalho e um corpo O cabeçalho contém principalmente informações de como transferir a mensagem do terminal de origem para o de destino
Tipos de conteúdo do corpo Pode ser de seção única, contendo somente um objeto Pode ser Multipart/related Corpo contém vários objetos multimídia, cada qual em uma seção separada e a seção de apresentação A seção principal (part root) é apontada pelo parâmetro Start Um exemplo de técnica de apresentação no MMS e é conseguida com o SMIL (Synchronized Multimedia Integration Language) A ordem dos objetos não tem importância, mas a seção de apresentação deve ser a primeira
Multipart/Related
Tipos de conteúdo do corpo (continuação) Pode ser Multipart/mixed Contém vários objetos multimídia Ordem não tem importância e não há, no corpo, informação de apresentação Desta forma, depende da implementação do terminal de como o conteúdo multimídia será apresentado
Reprodução da mensagem A apresentação MMS contém instruções de como o conteúdo multimídia deve ser reproduzido no display e auto-falantes do terminal Uma seção de apresentação é necessária para cada representação em uma mensagem
Cabeçalho Tipo de conteúdo: indicando o conteúdo na multipart, como image/jpeg ou text/plain; Localização de conteúdo: identificando o conteúdo, como image.jpeg ou hello.txt
Cabeçalho
Exemplo do conteúdo de uma PDU As mensagens MMS são submetidas para a entrega em uma PDU M-Send.req Para M-Send.req, os seguintes cabeçalhos são mandatórios: Name X-Mms- Message-Type Binary value of the header 8c Content X-Mms- Transaction-ID X-Mms- Version Message-typevalue= m-send.req Mandatory. Specifies the transaction type Comments 98 Transaction-id-value Mandatory. A unique identifier for the message. Identifies the M-Send.req and the corresponding reply only 8d MMS-version-value Mandatory. The MMS version number. From 89 From-value Mandatory. Address of the message sender
Cabeçalho A completa lista de PDUs MMS e cabeçalhos M-Send.req, bem como os cabeçalhos opcionais, são apresentados no Wap Forum na especificação WAP-209-MMSEncapsulation A mesma PDU antes da codificação em binário: X-Mms-Message-Type: m-send-req X-Mms-Transaction-ID: 1234567890 X-Mms-Version: 1.0 To: +35840222222/TYPE=PLMN From: +35840111111/TYPE=PLMN Subject: Test MMS message Date: Wed Oct 24 09:55:52 2001 Content-Type: application/vnd.wap.multipart.mixed
Cabeçalho + corpo (hex) A mesma mensagem (cabeçalhos + corpo) no formato binário codificado The above M-Send.req in binary encoded format displayed in hex mode 00000000: 8c80 9831 3233 3435 3637 3839 3000 8d90 00000010: 972b 3335 3834 3032 3232 3232 322f 5459 00000020: 5045 3d50 4c4d 4e00 8918 802b 3335 3834 00000030: 3031 3131 3131 312f 5459 5045 3d50 4c4d 00000040: 4e00 9654 6573 7420 4d4d 5320 6d65 7373 00000050: 6167 6500 8504 3bd6 65f8 84a3 0201 3983 00000060: 5468 6973 2069 7320 616e 2065 7861 6d70 00000070: 6c65 204d 4d53 206d 6573 7361 6765 2077 00000080: 6974 6820 706c 6169 6e20 7465 7874 2061 00000090: 6e64 2069 6d61 6765 2e1d 83c3 6403 9e81 000000a0: 83ae 1780 8610 4a46 4946 0001 0201 0131 000000bo: 0131 0000 ffed 0de6 18......1234567890....+35840222222/TY PE=PLMN...+3584 0111111/TYPE=PLM N..Test MMS mess age...;.e...9. This is an examp le MMS message w ith plain text a nd image...d......jfif...1.1......
SMIL Mensagens MMS são baseadas no SMIL (Synchronized Multimidia Integration Language) O SMIL é similar ao HTML na sintaxe e construções É essencialmente uma maneira de sincronizar conteúdos multimídia A intenção é apresentar um conteúdo multimídia em uma ordem específica em um intervalo de tempo predeterminado As apresentações de multimídea do SMIL consistem de elemantos tais como vídeo, voz, imagens, texto, vídeo e gráficos todos sincronizados por meio de uma linha de tempo comum (isto é, não são entreges com anexos)
Tratamento da mensagem na rede O terminal solicita uma operação de WAP POST com a mensagem M-Send.req O terminal compõe uma ID da transação para a mensagem submetida O ID é usado pelo terminal e pelo MMS Center para prover um elo entre a mensagem originada M-Send.req e a resposta M- Send.conf A mensagem é submetida usando uma URI que endereça o MMS Center que dá suporte ao terminal especificado A mensagem é transferida através do BSS para o SGSN, que a envia para o correto GGSN O MMSC atribui uma ID a mensagem quando recebida com sucesso para a entrega
Tratamento da mensagem na rede (cont) Este ID é usado em atividades seguintes que necessitam se referenciar a mensagem específica enviada, como por exemplo, no envio posterior de um relatório de entrega No receptor o MMS Center responde ao WAP POST provendo um código de status para a operação solicitada Se o MMS Center aceitar o pedido para enviar a mensagem, o status é accepted e a mensagem inclui o ID da mensagem que o MMSC havia fornecido A mensagem de confirmação é roteada pela mesmo caminho feito pelo M-Send.req
Mensagem de busca Se o receptor quiser buscar uma mensagem, ele envia o WSP GET.req para o MMSC A URI (endereço da MMS Center) requerida para a recuperação, enviada na mensagem M-notification.ind A informação que retorna (M-Retrieve.conf) do MMSC para o celular receptor inclui a mensagem multimídia Outros tipos de tratamento de mensagens na rede: Alerta de assinante ausente Relatório de entrega Assinante em roaming
Mensagem originada e terminada em uma aplicação O MMS Center encaminha a PDU para uma aplicação externa que pode estar na mesma rede IP que o próprio MMS Center, ou em outra rede A ligação entre o MMS Center e a aplicação externa é feita pelo M- Send.req.
Mensagem originada e terminada em uma aplicação
Mensagem originada e terminada em uma aplicação
Interface de Aplicação Externa (EAIF) É esta interface que será usada na comunicação com aplicações externas, como e-mail e www O protocolo utilizado para este fim é o HTTP 1.1 No contexto de MMS, o servidor é a parte que recebe a mensagem e o cliente é a parte que envia a mensagem Em se tratando de EAIF, tanto o MMSC quanto a aplicação podem fazer o papel de cliente ou servidor As PDUs são entregues através da interface de aplicação externa (EAIF) através do corpo das mensagens HTTP Os aspectos de segurança são tratados utilizando-se SSL (Secure Sockets Layer)
Mensagens HTTP As PDUs MMS usadas na EAIF (M-Send.req e M- Delivery.ind) são entreges para /de aplicações no corpo do HTTP POST request Um HTTP POST request consiste simplesmente de: Cabeçalhos de extensão HTTP (opcional) Cabeçalhos HTTP mandatórios Corpo da mensagem
Mensagens HTTP Estrutura de um HTTP request: Cabeçalhos de extensão e os mandatórios PDU MMS no corpo da mensagem
Estrutura de um HTTP request (mais detalhada)
Conectividade com E-Mail MMSC converte a msg multimídia para uma msg de e-mail normal e a envia para o servidor de e-mail Este servidor reconhece a mensagem recebida usando o protocolo SMTP, o qual é usado na comunicação entre o MMSC e o servidor de e-mail SMTP entende apenas informação de texto puro e é usado efetivamente para a transferência de dados MIME (Multipurpose Internet Mail Extension) é usado para dar suporte a transmissao de dados em formatos diferentes de ASCII (por exemplo arquivos gif, jpeg, wav, etc) como anexos de uma mensagem
Celulares para MMS Series 40 Terminals MMS send and receive (45kB) Supported formats: Basics from Conf. Doc. (baseline JPEG, GIF87a, GIF89a, WBMP) animated GIF89a, PNG, Windows BMP SP-MIDI -- 43 instruments, 4 at a time Nokia wallpaper (image/vnd.nok-wallpaper) file format is JPEG, GIF87a, GIF89a, PNG, BMP Nokia ringing tone (application/vnd.nokia.ringingtone) 128x128 display In MMS Viewer, available display size is 122x96 Using COD: Nokia color operator logo (image/vnd.nok-oplogo-color) 100x50 JPEG, GIF87a, or GIF89a image
Vídeo em MMS Nokia 3650, 6650, 6220 e 6600 são capazes de tocar e gravar clips de vídeo O tamanho máximo em uma mensagem MMS é de 100 Kb
Criando mensagens MMS GoLive w/nokia Developers Suite for MMS - criação baseada no SMIL e não há controle sobre os tipos MIME Nokia Mobile Internet Toolkit 4.0 - criação baseada no conteúdo, controle sobre tipos MIME e suporte a SMIL baseado em texo Nokia MMS Java Library 1.1 Nokia Mobile Server Services API and Library 1.2
Criando mensagens MMS
Conclusão A evolução do SMS para MMS representa, para o mundo das comunicações móveis, o que representou para o mundo da informática a mudança do DOS para o Windows.