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!


   ?

Cejs notificacoes html5