Invocar a mensagem PUSH do PubNub via MySQL Trigger em UPDATE, INSERT e DELETE
MySQL Simplifica o encapsulamento de sua codificação em TRIGGERS de fácil acesso via Procedimentos Armazenados. Você pode criar algo parecido com pusher e eu sei como fazer isso com PubNub; então aqui está um guia rápido com PubNub e MySQL. Simplicidade é o que você procura e aqui está a sua solução! Mostrarei uma maneira fácil de vincular qualquer ATUALIZAÇÃO , INSERIR e EXCLUIR ação em sua tabela para uma função armazenada que será invocada a cada vez, enviando notificações push para seus aplicativos móveis e web facilmente com o PubNub.
Mensagem push do PubNub
DELIMITER $$
CREATE PROCEDURE push_message
(p1 DOUBLE,
p2 DOUBLE,
p3 BIGINT)
BEGIN
DECLARE cmd CHAR(255);
DECLARE result CHAR(255);
SET cmd = CONCAT('curl https://pubsub.pubnub.com/publish/demo/demo/0/mysql_triggers/0/%22',p1, ',' ,p2, ',' ,p3,'%22');
SET result = sys_eval(cmd);
END$$;
OBSERVAÇÃO:verifique se os tipos de PROCEDIMENTO estão corretos DOUBLE ou VARCHAR ou TEXTO .
Exemplo de INSERÇÃO de código de gatilho MySQL
CREATE TRIGGER push_message_trigger AFTER INSERT ON your_table_name_here
FOR EACH ROW
CALL push_message(NEW.Column1, NEW.Column2, NEW.Column3);
OBSERVAÇÃO:certifique-se de incluir as colunas necessárias aqui em sua mensagem push.
Exemplo de ATUALIZAÇÃO do código de gatilho do MySQL
CREATE TRIGGER push_message_trigger AFTER UPDATE ON your_table_name_here
FOR EACH ROW
CALL push_message(NEW.Column1, NEW.Column2, NEW.Column3);
Monitore a mensagem push por meio do console de depuração
http://www.pubnub.com/console?sub=demo&pub=demo&channel =mysql_triggers - Você pode assistir seus gatilhos sendo acionados via PubNub Dev Console. Dessa forma, você pode entender quais parâmetros precisam ser alterados e quais dados são importantes para você incluir em cada notificação push que pode ser recebida pelo Websocket PubNub e muito mais no dispositivo móvel e Web.
Recebendo a mensagem push em JavaScript
<div id=pubnub ssl=on></div>
<script src=//pubnub.a.ssl.fastly.net/pubnub-3.4.5.min.js></script>
<script>(function(){
PUBNUB.init({
subscribe_key : 'demo',
ssl : true
}).subscribe({
channel : 'mysql_triggers',
callback : function(mysql_trigger_details) {
alert(mysql_trigger_details);
}
});
})();</script>
Agora você tem as etapas necessárias para enviar e receber eventos de alteração do MySQL diretamente através de procedimentos simples. Também existem maneiras de otimizar esse método, como emitir um sinal para um processo daemon que enfileira e agrupa notificações push HTTPS. Isso deve ser bastante eficiente.