24
EXTENSÃO DE WEBSERVICE PARA JOOMLA 3

Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Embed Size (px)

DESCRIPTION

Palestra apresentada em 02/05/2014 no Joomla Day Brasil sobre a extensão de Webservice desenvolvida pela No Boss Tecnnologia.

Citation preview

Page 1: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

EXTENSÃO DE WEBSERVICE PARA JOOMLA 3

Page 2: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

QUEM SOU EU?

• Johnny Salazar Reidel

• Gaúcho, morador do Rio Grande do Sul

• Sócio fundador da “No Boss Tecnologia”

• GERENTE DE PROJETOS WEB NA TI ASAV

• Desenvolvedor Joomla desde 2006

Page 3: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

O que é um Webservice?

• Solução que integra e comunica aplicações de diferentes plataformas

• Recebe REQUISIÇÕES HTTP para Retornar DADOS UTILIZANDO LINGUAGENS UNIVERSAIS

WEBSERVICE

BASE DE DADOS

CLIENTE X

CLIENTE Y

REQUISIÇÃO HTTP

XML, JSON, HTML

Page 4: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Nosso Webservice

• Desenvolvido 100% pela “No Boss TECNOLOGIA”

• Permite integrar sistemas

• Gera relatórios

• APLICA CONCEITOS DA ARQUITETURA rest

Page 5: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Por que REST?

• Facilidade no desenvolvimento

• Popular

• Funciona sobre protocolo HTTP

Page 6: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Motivadores

• Necessidade de integrar um portal EDUCACIONAL com ERP E APLICAÇÃO MOBILE.

• Dificuldade de liberação de acessos para aplicações de terceiros acessarem bases DE DADOS de aplicações internas.

• Dificuldade de encontrar no mercado uma ferramenta DE INTEGRAÇÃO que seja flexível, FÁCIL de administrar E com VALOR ACESSÍVEL.

Page 7: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Vantagens

• integrações centralizadas entre sistemas

• Interface simples para administração

• ACL para aplicações e serviços

• PADRONIZAÇÃO NOS FORMATOS DE SAÍDA DOS SERVIÇOS (xml, json E RELATÓRIO)

• Informações podem ser consumidas sem programação server-side

Page 8: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

FUNCIONALIDADES

• Cadastro de bases de dados

• Conexões MYSQL e MSSQL (SQL SERVER)

• Conexão via ODBC (opcional)

Page 9: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

FUNCIONALIDADES

• Cadastro de serviços

• Autenticação (opcional)

• Conexão segura por HTTPS (opcional)

• Formatos de saída JSON, XML e relatório

• Solicitações por método GET ou POST

• Requisições somente a partir de uma url (opcional)

• POSSIBILIDADE DE INSERIR DATA LIMITE DE USO

• Consulta SQL

Page 10: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

FUNCIONALIDADES

• Cadastro de aplicações

• Definição de responsável pela aplicação

• Geração automática de chaves de identificação

• ACL para definir quais serviços e quais dados

retornados pelo serviço cada aplicação tem

acesso

• POSSIBILIDADE DE INSERIR DATA LIMITE DE USO

Page 11: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Telas

Page 12: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Telas

Page 13: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

• Telas

Page 14: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Telas

Page 15: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Telas

Page 16: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

AUTENTICAÇÃO

• Possui três dados de identificação

• Usuário, chave (appKey) e secret

• Utilizado dois algoritmos combinados com outros métodos de segurança

• 3DES: utiliza três chaves de 64 bits

• SHA1: possui 160 bits e foi considerado o sucessor do md5

Page 17: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

AUTENTICAÇÃO

• Em serviços que exigem autenticação:

• É necessário obter um token antes de consumir qualquer dado

• É Necessário envio do appKey no cabeçalho das requisições

• É Obrigatório o uso do método POST

• O token possui um tempo de vida parametrizável

• O token somente é válido para o IP do servidor que realizou a

solicitação

• Pode ser definido como obrigatória a autenticação com HTTPS

Page 18: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Exemplos de uso

• Aplicação mobile que dependa de dados de um erp

• Relatórios do moodle para professores

• Integração de um portal ou site com aplicações externas de diferentes linguagens e bancos de dados

Page 19: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

ANALISANDO NA PRÁTICA

• INSTALAÇÃO E Apresentação da extensão

• Exemplos práticos de uso

1. Consulta de notas e faltas de alunos NO ERP

EDUCACIONAL DA TOTVS UTILIZANDO ODBC E MÉTODO GET

2. Busca de cursos de uma universidade UTILIZANDO

AUTENTICAÇÃO, MÉTODO POST E RETORNO POR JSON

• APRESENTAÇÃO DO CÓDIGO FONTE DO EXEMPLO 2

Page 20: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Versões do WebserviceFUNCIONALIDADE GRATUITA PAGA

Interface administrativa

Logs de criação e modificação de registros

Autenticação do serviço

Conexão segura por HTTPS

Formato de saída em JSON

Formato de saída em XML

Formato de saída em relatório

Método de solicitação GET

Método de solicitação POST

Restrição de URL solicitante

Parâmetros ilimitados nas consultas SQL

Page 21: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Versões do WebserviceFUNCIONALIDADE GRATUITA PAGA

Data de expiração do serviço e/ou aplicação

Exemplos de serviços que consomem informações do Joomla

ACL sobre as informações retornadas pelo serviço

ACL sobre os serviços que cada aplicação pode acessar

Cadastro de responsável pela aplicação

Cadastro ilimitado de base de dados, serviços e aplicação

Geração de chaves de identificação

Conexão com banco de dados MYSQL

Conexão com banco de dados MSSQL

Conexão via ODBC

Teste de conexão de base de dados

Page 22: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Data de lançamento

• LANÇAMENTO OFICIAL EM 02 DE JUNHO DE 2014.

• Participantes do Joomla Day Brasil PODEM concorreR a uma versão paga REALIZANDO DOIS PASSOS:

1. Siga a No Boss Tecnologia no Facebook;

2. Compartilhe o post que será publicado no final da

apresentação com as hashtags “#jdbr14” e

“#nobosstecnologia”.

Page 23: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

Funcionalidades futuras

• POSSIBILIDADE DE CONSULTAS SQL com INSERT, UPDATE e DELETE

• ADIÇÃO DE NOVOS TIPOS DE BANCOS DE DADOS. Exemplo: POSTGRES

• POSSIBILIDADE DE Extração de arquivos no formato XLS e PDF nos relatórios

• Botão de geração automática de URL quando utilizado o método GET

Page 24: Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3

CONHEÇA A NO BOSS TECNOLOGIA:

NOBOSS.COM.BR

facebook.com/NOBOSSTECNOLOGIA

[email protected]

linkedin.com/in/johnnymgo

facebook.com/johnnymgo

Obrigado!