Rumah >pembangunan bahagian belakang >tutorial php >Cara menambah fungsi sembang pengguna masa nyata ke tapak web anda menggunakan PHP dan MQTT

Cara menambah fungsi sembang pengguna masa nyata ke tapak web anda menggunakan PHP dan MQTT

WBOY
WBOYasal
2023-07-08 19:46:371499semak imbas

Cara menggunakan PHP dan MQTT untuk menambah fungsi sembang pengguna masa nyata ke laman web

Dalam era Internet hari ini, pengguna laman web semakin memerlukan komunikasi dan komunikasi masa nyata Bagi memenuhi permintaan ini, kita boleh menggunakan PHP dan MQTT untuk menambah pengguna masa nyata ke fungsi Sembang. Artikel ini akan memperkenalkan cara menggunakan PHP dan MQTT untuk melaksanakan fungsi sembang pengguna masa nyata tapak web dan menyediakan contoh kod.

  1. Pastikan penyediaan persekitaran
    Sebelum bermula, pastikan anda telah memasang dan mengkonfigurasi persekitaran berjalan PHP dan MQTT. Anda boleh menggunakan persekitaran pembangunan bersepadu seperti XAMPP, atau anda boleh mengkonfigurasi persekitaran berjalan PHP dan MQTT secara berasingan. Pada masa yang sama, anda juga memerlukan Broker MQTT Anda boleh menggunakan Broker MQTT sumber terbuka seperti Mosquitto.
  2. Pasang sambungan PHP MQTT
    Untuk dapat menggunakan protokol MQTT dalam PHP, kita perlu memasang sambungan PHP MQTT. Anda boleh memuat turun dan menyusun serta memasang sambungan PHP MQTT daripada GitHub, atau gunakan Komposer untuk memasangnya.
  3. Sambung ke MQTT Broker
    Dalam kod PHP, kita perlu menyambung ke MQTT Broker terlebih dahulu untuk menghantar dan menerima mesej. Berikut adalah contoh sambungan kepada MQTT Broker:
<?php
require("phpMQTT.php");

$mqtt = new phpMQTT("mqtt.example.com", 1883, "phpMQTT Chat Client");
if (!$mqtt->connect()) {
    exit("连接MQTT Broker失败");
}

Dalam kod di atas, kami menggunakan kelas phpMQTT untuk menyambung ke MQTT Broker. Ambil perhatian bahawa anda perlu menggantikan "Mqtt.example.com" dengan alamat Broker MQTT anda sendiri.

  1. Menghantar dan menerima mesej
    Setelah berjaya disambungkan kepada Broker MQTT, kami boleh menghantar dan menerima mesej dengan menerbitkan dan melanggan topik. Berikut ialah contoh menghantar mesej:
<?php
$topic = "chat";
$message = "Hello, World!";
$mqtt->publish($topic, $message);

Dalam kod di atas, kami menerbitkan topik bernama "sembang" dan menghantar mesej.

Berikut ialah contoh menerima mesej:

<?php
$topic = "chat";
$mqtt->subscribe($topic);
while($mqtt->proc()){
    $message = $mqtt->message;
    echo "收到消息:".$message;
}

Dalam kod di atas, kami melanggan topik "sembang" dan menggunakan gelung untuk terus menerima mesej dan mencetaknya.

  1. Tambah antara muka sembang ke tapak web
    Untuk menambah fungsi sembang pada tapak web, kita perlu membenamkan tetingkap sembang dalam antara muka bahagian hadapan dan menerima mesej daripada MQTT Broker melalui JavaScript dan memaparkannya dalam tetingkap sembang.

Berikut ialah kod HTML tetingkap sembang ringkas:

<!DOCTYPE html>
<html>
<head>
    <title>实时用户聊天</title>
</head>
<body>
    <div id="chat-window">
        <ul id="chat-messages"></ul>
        <input type="text" id="message-input" placeholder="输入消息">
        <button id="send-button">发送</button>
    </div>
    
    <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
    <script src="mqttws31.js"></script>
    <script>
        var mqtt = new Paho.MQTT.Client("mqtt.example.com", Number(1883), "jsMQTT Chat Client");
        mqtt.onMessageArrived = function(message) {
            $("#chat-messages").append("<li>" + message.payloadString + "</li>");
        };
        mqtt.connect({onSuccess:function() {
            mqtt.subscribe("chat");
        }});
        
        $(document).ready(function() {
            $("#send-button").click(function() {
                var message = $("#message-input").val();
                var message = new Paho.MQTT.Message(message);
                message.destinationName = "chat";
                mqtt.send(message);
                $("#message-input").val("");
            });
        });
    </script>
</body>
</html>

Dalam kod di atas, kami menggunakan kelas Paho.MQTT.Client untuk menyambung kepada Broker MQTT dan melaksanakan sembang dengan melanggan topik, menerima mesej dan menghantar mesej Fungsi.

Dengan menyimpan kod di atas sebagai fail HTML dan menggantikan alamat Broker MQTT dengan alamat anda sendiri, anda boleh menggunakan ciri sembang pengguna secara langsung di tapak web anda.

Ringkasan
Artikel ini menerangkan cara menambahkan fungsi sembang pengguna masa nyata pada tapak web anda menggunakan PHP dan MQTT. Dengan menyambung ke MQTT Broker, menghantar dan menerima mesej, dan menambah antara muka sembang ke tapak web, kami boleh melaksanakan fungsi sembang pengguna masa nyata yang ringkas. Harap artikel ini dapat membantu anda menyiapkan tugasan ini.

Atas ialah kandungan terperinci Cara menambah fungsi sembang pengguna masa nyata ke tapak web anda menggunakan PHP dan MQTT. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn