Version 36 (modified by pereira.jair, 12 years ago) (diff) |
---|
Expresso Web Service
Este Draft é destinado à especificação dos requisitos referentes à implementação do Web Service do Expresso. Todas as informações contidas neste documento poderão sofrer alterações sem aviso prévio, até o fechamento do escopo deste subprojeto do Expresso.
1. Objetivo
2. Compatibilidade
API: Versões > 2.2
ExpressoMail?: Versões > 2.2
ContactCenter?: Versões > 2.2
3. Arquitetura
4. Protocolo de Comunicação
JSON-RPC versão 1.0
5. Recursos disponíveis
Método: | Expresso.login | Criar sessão autenticada no Expresso |
Parâmetros: | -user -password -auth | -Login do Usuario. -Senha do usuario. -Autenticacao existente, caso ja esteja logado. |
Retorno: | -auth | -auth: Chave de autenticacao do expresso (KP3 do usuario). |
Método: | Expresso.logout | Finalizar sessão autenticada no Expresso |
Parâmetros: | -auth | auth:Autenticacao existente, necessaria para destruir a sessao do usuario. |
Retorno: | -hasLogout | -hasLogout:(Boolean 0 ou 1 indicando se o logout foi realizado com sucesso) |
Método: | Mail.getUserMessages | Listar mensagens de uma pasta de Email |
Parâmetros: | -auth -folderID -msgID -search -page -resultsPerPage | auth:Autenticacao do usuario. folderID:Filtro por pastas (so retornara mensagens da pasta informada) search:filtro por assunto da mensagem, conteudo. page:pagina atual resultsPerPage:Numero de resultados a retornar por pagina. |
Retorno: | -messages array( msgID, folderID, msgDate, msgFrom array(fullName,mailAddress), msgTo array(array(fullName,mailAddress)), msgReplyTo array(array(fullName,mailAddress)), msgCC array(array(fullName,mailAddress)), msgBCC array(array(fullName,mailAddress)), msgBodyResume, msgBody, msgSeen, msgHasAttachments, msgAnswered, msgFlagged, msgDeleted, msgDraft, msgForwarded, msgSize ) | -messages:Array com todas as mensagens retornadas. msgID:Identificador da mensagem. folderID:Identificador da Pasta da Mensagem. msgDate:(YYYY-mm-dd H:i:s) msgFrom: Array com o Nome do contato e email (fullName,mailAddress) msgReplyTo,msgTo,msgCC,msgBCC: Sao arrays e retornam N arrays contendo (fullName,mailAddress) msgBodyResume:Resumo do conteudo da mensagem (sem tags html) msgBody:Conteudo da Mensagem, campo somente retorna valores quando e passado o parametro msgID que especifica qual mensagem sera exibida. msgSeen:Boolean indicando se a mensagem foi marcada como lida. msgHasAttachments:Boolean - indica se tem anexos ou nao. msgAnswered:Boolean - flag do imap para Respondida msgFlagged:Boolean - flag do imap para importantes msgDeleted:Boolean - flag do imap para Deleted. msgDraft:Boolean - flag do imap para Drafts. msgForwarded: msgSize:Tamanho da mensagem em Bytes. |
Método: | Catalog.getUserContacts | Retorna os Contatos do usuario, pode trazer os contatos pessoais da agenda, como do catalogo geral, diferenciando-os apenas pelo type. |
Parâmetros: | -auth -search -contactType -page -resultsPerPage | auth:Autenticacao do usuario. search: busca por nome ou email do contato. contactType:(1:Agenda do Expresso,2:Catalogo Geral.) |
Retorno: | -contacts array( contactID, contactFullName, contactFirstName, contactLastName, contactHasImagePicture, contactType, contactMails array(), contactPhones ) | contactID: Identificador do Contato. contactFullName:Nome completo do Contato contactFirstname:Primeiro nome do contato contactLastName:Ultimo Nome do Contato contactHasImagePicture:Boolean (0:Nao tem foto,1:possui foto). contactType:(1:Agenda do Expresso,2:Catalogo Geral.) contactMails:Array com os Emails do contato. contactPhones:Array com os telefones do contato. |
Retorno de Exemplo: (JSON) | {"result":{"contacts":[{"contactID":"817662","contactMails":exemplodecontato@celepar.pr.gov.br?,"contactAlias":"nome do contato","contactFirstName":"nome do contato","contactLastName":"","contactFullName":"nome do contact","contactBirthDate":"","contactNotes":"","contactHasImagePicture":0}]},"error":null,"id":"4"} |