ホームページ >バックエンド開発 >PHPチュートリアル >PHP と MQTT を使用して IoT デバイスにリアルタイム アラートを追加する方法

PHP と MQTT を使用して IoT デバイスにリアルタイム アラートを追加する方法

WBOY
WBOYオリジナル
2023-07-08 12:46:361707ブラウズ

PHP と MQTT を使用して IoT デバイスにリアルタイム アラーム機能を追加する方法

モノのインターネットの急速な発展に伴い、ますます多くのデバイスがリアルタイムで通信およびデータ交換できるようになりました。インターネット。しかし、実際のアプリケーションでは、機器の異常にタイムリーに対処するために、機器の状態を監視し、警告する必要があることがよくあります。この記事では、PHP および MQTT プロトコルを使用して、IoT デバイスにリアルタイム アラーム機能を追加する方法を紹介します。

MQTT (Message Queuing Telemetry Transport) は、パブリッシュ/サブスクライブ モデルに基づく軽量の IoT プロトコルで、デバイス間のリアルタイム通信の問題を効果的に解決します。 PHP は、Web 開発の分野で広く使用されている汎用のサーバー側スクリプト言語です。

リアルタイム アラーム機能を IoT デバイスに追加するには、まず MQTT サーバーを構築する必要があります。オープン ソースの Mosquitto または Eclipse Mosquitto を MQTT サーバーとして使用できます。次のコマンドを使用して、Linux システムに Mosquitto をインストールします:

sudo apt-get install mosquitto mosquitto-clients

インストールが完了したら、Mosquitto サーバーを起動します:

mosquitto

次に、PHP の MQTT クライアント ライブラリを使用します。phpMQTT は、デバイスのサブスクリプション機能と公開機能を実装します。まず、phpMQTT ライブラリを PHP プロジェクトに導入します:

require("phpMQTT.php");

次に、MQTT クライアント インスタンスを作成し、MQTT サーバーに接続します:

$mqtt = new phpMQTT("localhost", 1883, "ClientID" . rand());
if (!$mqtt->connect(true, null, null, null, null)) {
    exit(1);
}

接続が成功したら、サブスクライブして公開できます。動作しました。たとえば、トピックをサブスクライブします:

$mqtt->subscribe("device/sensor", 0);

指定されたトピックにメッセージをパブリッシュします:

$mqtt->publish("device/sensor", "Warning: Sensor value exceeds threshold", 0);

上記のコードでは、「device/sensor」という名前のトピックをサブスクライブし、アラーム 同じトピックへのメッセージ。

もちろん、リアルタイム アラーム機能を実現するには、リアルタイムの監視とアラームのためにデバイスのステータス情報を MQTT サーバーに送信する必要もあります。デバイス側は Python やその他の言語を使用して MQTT クライアントを実装し、指定されたトピックにデバイスのステータス情報を定期的に公開できます。

PHP プロジェクトにデバイス ステータス情報を受信するページを追加し、このトピックを購読することでデバイス ステータス情報を取得できます。例:

while ($mqtt->proc()) {
    // 接收设备状态信息
    $message = $mqtt->message;
    echo $message['topic'] . ": " . $message['payload'] . "
";
}

上記のコードでは、無限ループを使用してデバイスのステータス情報を受信し、それを処理のために出力します。デバイスが新しいステータス情報をリリースすると、対応するアラーム動作がトリガーされます。

要約すると、PHP と MQTT プロトコルを使用して IoT デバイスにリアルタイム アラーム機能を追加することは複雑ではありません。 MQTT サーバーを構築し、購読および公開操作に phpMQTT ライブラリを使用し、デバイス側からステータス情報を送信することで、デバイスのステータスのリアルタイム監視と警報を実現できます。この記事の紹介が IoT 開発者にとって役立つことを願っています。

(注: 上記のサンプル コードはデモンストレーションのみを目的としており、完全に使用可能なコードではありません。実際のアプリケーションでは、特定のニーズに応じて変更および改善してください。)

以上がPHP と MQTT を使用して IoT デバイスにリアルタイム アラートを追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。