SlideShare uma empresa Scribd logo
1 de 79
Notificações para
    HTML5

             @rodrigodealer
Perguntinha
Quem trabalha com
    HTML5?
Quem já usou?
O que achou?
Notificações
Notifique seus usuários
    em tempo real
Opções (mostradas aqui)
                 Socket.IO




     Pusher (serviço)
Do que vou precisar?
1. NodeJS instalado;
2. Socket.IO instalado;
1. NodeJS instalado;
     2. Socket.IO instalado;
3. Algumas linhas de código, claro.
1. NodeJS instalado;
1. NodeJS instalado;
 $ brew install nodejs
          ou
git clone https://github.com/joyent/node.git
cd node
./configure
make
sudo make install
1. NodeJS instalado;

$ curl https://npmjs.org/install.sh | sh
1. NodeJS instalado;

   NPM - Node Package Manager

$ curl https://npmjs.org/install.sh | sh
1. NodeJS instalado;

   NPM - Node Package Manager

$ curl https://npmjs.org/install.sh | sh
1. NodeJS instalado;
1. NodeJS instalado;
2. Socket.IO instalado;
1. NodeJS instalado;
 2. Socket.IO instalado;
$ npm install socket.io
1. NodeJS instalado;
 2. Socket.IO instalado;
$ npm install socket.io
1. NodeJS instalado;
 2. Socket.IO instalado;
$ npm install socket.io
app.js
app.js
    Importa o módulo http e cria um servidor
app.js
   Importa o módulo do socket.io
app.js
     Importa o módulo do XMl2JS
app.js


    Inicializa o servidor
app.js
app.js
     Faz o roteamento dos requests para index.html
app.js
         Monitora conexões
app.js

         Monitora arquivo exemple.xml
app.js

          Monitora arquivo exemple.xml
         Quando for modificado, será lido
app.js




                   Adiciona listener
           Ao final da leitura do arquivo, irá
         notificar os clientes com o conteúdo
index.html


             Importa Socket.IO
index.html



             Importa jQuery
index.html



             Importa jQuery <3
index.html




                       Abre conexão com o Socket.IO
             Cria Listener para uma ‘notification’
index.html




                      Abre conexão com o Socket.IO
             Cria Listener para uma ‘notification’
             Quando houver, mostra informações do
                              XML
Opções (mostradas aqui)
                 Socket.IO




     Pusher (serviço)
Pusher
Pusher

Do que vou precisar?
Pusher

Do que vou precisar?
Uma conta no serviço
Sim, e umas linhas de código
Pusher
Do que vou precisar?

Uma conta no serviço
Pusher
Do que vou precisar?

Uma conta no serviço
Pusher
                          Do que vou precisar?

                          Uma conta no serviço




Uma apliação cadastrada
Pusher
                          Do que vou precisar?

                          Uma conta no serviço




Uma apliação cadastrada
Pusher
Pusher
Pusher
Pusher
         Código da sua app
Pusher


         “Login” da sua app
Pusher


         Senha da sua app
Pusher
Pusher
Pusher


         Importa o Pusher
Pusher



         Ativa o log
Pusher




         Inicia com o “login”
                 da app
Pusher




         Cria um canal “test_channel”
Pusher




         Cria um listener para o canal
            “my_channel” para os
             eventos “my_event”
Pusher




 Vamos testar?
Pusher




 Vamos testar?
Pusher

Comando para teste
Pusher

Comando para teste
Pusher

Comando para teste
                     Mensagem
Pusher

Comando para teste

                     URL do pusher
Pusher

Comando para teste

                             URL do pusher
                     Canal “test_channel”
Pusher

Comando para teste

                     Evento “my_event”
Pusher

Comando para teste


                     “Login” da app
Pusher

Comando para teste
Prós e contras
Prós e contras
        Precisa programar mais
Prós e contras
        Precisa programar mais
        Possibilidade de erros
Prós e contras
        Precisa programar mais
        Possibilidade de erros
        Estrutura de servidor
Prós e contras
        Precisa programar mais
        Possibilidade de erros
        Estrutura de servidor
        Tudo ao teu controle
Prós e contras
                   Precisa programar mais
                   Possibilidade de erros
                   Estrutura de servidor
                   Tudo ao teu controle

Menos linhas de código
Serviço, fora do teu controle
Sem estrutura de servidor sua
Você paga por consumo
Prós e contras
                   Precisa programar mais
                   Possibilidade de erros
                   Estrutura de servidor
                   Tudo ao teu controle

Menos linhas de código
Serviço, fora do teu controle
Sem estrutura de servidor sua
Você paga por consumo
Obrigado!


   ?

Mais conteúdo relacionado

Semelhante a Cejs notificacoes html5

Aprendendo a criar plugins para o Wordpress - Richard Barros
Aprendendo a criar plugins para o Wordpress - Richard BarrosAprendendo a criar plugins para o Wordpress - Richard Barros
Aprendendo a criar plugins para o Wordpress - Richard BarrosRichard Barros
 
uMov.me API - Do básico ao avançado
uMov.me API - Do básico ao avançadouMov.me API - Do básico ao avançado
uMov.me API - Do básico ao avançadoEduardo Bohrer
 
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...GUTS-RS
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaConstruindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaAmazon Web Services LATAM
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaConstruindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaAmazon Web Services LATAM
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaConstruindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaAmazon Web Services LATAM
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos WebSergio Henrique
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaConstruindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaAmazon Web Services LATAM
 
API's Automidia: Provendo Meios Estruturados de Integração
API's Automidia: Provendo Meios Estruturados de IntegraçãoAPI's Automidia: Provendo Meios Estruturados de Integração
API's Automidia: Provendo Meios Estruturados de IntegraçãoRequestia Software
 
Testes para dispositivos móveis
Testes para dispositivos móveisTestes para dispositivos móveis
Testes para dispositivos móveisQualister
 
Rest fuuuu front-end
Rest fuuuu front-endRest fuuuu front-end
Rest fuuuu front-endIgor Santos
 
Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPFlavio Souza
 
Segurança e automação na Amazon: Lições das trincheiras
Segurança e automação na Amazon: Lições das trincheirasSegurança e automação na Amazon: Lições das trincheiras
Segurança e automação na Amazon: Lições das trincheirasBruno Luiz Pereira da Silva
 
Treze ferramentas/frameworks para desenvolvimento Android
Treze ferramentas/frameworks para desenvolvimento AndroidTreze ferramentas/frameworks para desenvolvimento Android
Treze ferramentas/frameworks para desenvolvimento AndroidAdriano Rocha
 
Treze ferramentas/frameworks para desenvolvimento android
Treze ferramentas/frameworks para desenvolvimento androidTreze ferramentas/frameworks para desenvolvimento android
Treze ferramentas/frameworks para desenvolvimento androidRicardo Longa
 
Evoluindo Apps e Serviços com Testes de Contrato
Evoluindo Apps e Serviços com Testes de ContratoEvoluindo Apps e Serviços com Testes de Contrato
Evoluindo Apps e Serviços com Testes de ContratoRafael Portela
 

Semelhante a Cejs notificacoes html5 (20)

Aprendendo a criar plugins para o Wordpress - Richard Barros
Aprendendo a criar plugins para o Wordpress - Richard BarrosAprendendo a criar plugins para o Wordpress - Richard Barros
Aprendendo a criar plugins para o Wordpress - Richard Barros
 
Apresentação rest api
Apresentação rest apiApresentação rest api
Apresentação rest api
 
uMov.me API - Do básico ao avançado
uMov.me API - Do básico ao avançadouMov.me API - Do básico ao avançado
uMov.me API - Do básico ao avançado
 
Web apis
Web apisWeb apis
Web apis
 
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
 
PHP no Google AppEngine
PHP no Google AppEnginePHP no Google AppEngine
PHP no Google AppEngine
 
REST com Python
REST com PythonREST com Python
REST com Python
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaConstruindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS Lambda
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaConstruindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS Lambda
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaConstruindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS Lambda
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos Web
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS LambdaConstruindo APIs com Amazon API Gateway e AWS Lambda
Construindo APIs com Amazon API Gateway e AWS Lambda
 
API's Automidia: Provendo Meios Estruturados de Integração
API's Automidia: Provendo Meios Estruturados de IntegraçãoAPI's Automidia: Provendo Meios Estruturados de Integração
API's Automidia: Provendo Meios Estruturados de Integração
 
Testes para dispositivos móveis
Testes para dispositivos móveisTestes para dispositivos móveis
Testes para dispositivos móveis
 
Rest fuuuu front-end
Rest fuuuu front-endRest fuuuu front-end
Rest fuuuu front-end
 
Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHP
 
Segurança e automação na Amazon: Lições das trincheiras
Segurança e automação na Amazon: Lições das trincheirasSegurança e automação na Amazon: Lições das trincheiras
Segurança e automação na Amazon: Lições das trincheiras
 
Treze ferramentas/frameworks para desenvolvimento Android
Treze ferramentas/frameworks para desenvolvimento AndroidTreze ferramentas/frameworks para desenvolvimento Android
Treze ferramentas/frameworks para desenvolvimento Android
 
Treze ferramentas/frameworks para desenvolvimento android
Treze ferramentas/frameworks para desenvolvimento androidTreze ferramentas/frameworks para desenvolvimento android
Treze ferramentas/frameworks para desenvolvimento android
 
Evoluindo Apps e Serviços com Testes de Contrato
Evoluindo Apps e Serviços com Testes de ContratoEvoluindo Apps e Serviços com Testes de Contrato
Evoluindo Apps e Serviços com Testes de Contrato
 

Cejs notificacoes html5

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n