Utilizar MQTT com PHP de forma fácil e rápida

MQTT
MQTT

Estou atualmente em um projeto que envolve entre outras coisas, visão computacional, redes neurais e um dos protocolos de transferência de mensagens é o MQTT, onde alguns pontos se subescrevem a um determinado tópico. Na interface de monitoramento as informações chegarão também por MQTT e essa interface está sendo desenvolvida em PHP. Logo, eu antecipei-me ao trabalho do desenvolvedor web e deixei tudo funcional para ele se preocupar exclusivamente com o feedback visual. Então decidi deixar “documentado” o procedimento, mas em forma de artigo, assim vocês também poderão desfrutar da configuração inicial sem preocupações extras.

Broker

Essa é uma configuração client. Se você precisa de um broker MQTT, leia esse artigo onde trato exclusivamente disso.

Client





Se precisa de um client para fazer publish enquanto testando o código abaixo, sugiro o MQTT Dashboard ou o MyMQTT, disponíveis no Google Play.

Instalação dos pacotes necessários

Essa vai ser rápida e fácil, simplesmente utilizando apt e pecl:

Se seu sistema acusar mais alguma dependência, supra-a e repita o último passo com o pecl. Feito isso, você deve entrar em /etc/php5 e modificar o php.ini do apache e o php.ini do cli (caso deseje utilizar o mqtt no apache e debugar por linha de comando também). Edite com seu editor preferido (um está no diretório ‘apache2’ e o outro no diretório ‘cli’). Procure pela sessão que exemplifica a adição de biblioteca e adicione essa linha:

Agora basta fazer a conexão! Eu deixei um código de um exemplo que achei e adicionei apenas as credenciais que não estavam no exemplo:

Apenas com essa porção de código já se pode interagir com o broker. Para executar um teste, salve esse código em um arquivo e chame por linha de comando:

E publique algo no tópico. Não vou colocar um print porque meus testes estão sendo efetuados com algumas técnicas extras relacionadas ao projeto em que estou trabalhando e essa estrutura não pode ser revelada, mas é fácil como descrito, pode comprovar.

Inscreva-se no nosso newsletter, alí em cima à direita e receba novos posts por email.

Siga-nos no Do bit Ao Byte no Facebook.

Prefere twitter? @DobitAoByte.

Inscreva-se no nosso canal Do bit Ao Byte Brasil no YouTube.

Nossos grupos:

Arduino BR – https://www.facebook.com/groups/microcontroladorarduinobr/
Raspberry Pi BR – https://www.facebook.com/groups/raspberrybr/
Orange Pi BR – https://www.facebook.com/groups/OrangePiBR/
Odroid BR – https://www.facebook.com/groups/odroidBR/
Sistemas Embarcados BR – https://www.facebook.com/groups/SistemasEmbarcadosBR/
MIPS BR – https://www.facebook.com/groups/MIPSBR/
Do Bit ao Byte – https://www.facebook.com/groups/dobitaobyte/

Próximo post a caminho!

Comments

comments

Djames Suhanko

Djames Suhanko é Perito Forense Digital. Já atuou com deployer em sistemas de missão critica em diversos países pelo mundão. Programador Shell, Python, C, C++ e Qt, tendo contato com embarcados ( ora profissionalmente, ora por lazer ) desde 2009.