using System.Collections; using System.Collections.Generic; using System.Globalization; using UnityEngine; using Rocworks.Mqtt; namespace ToneTuneToolkit.MQTT { public class MQTTManager : MonoBehaviour { public static MQTTManager Instance; #region Path private string configPath = $"{Application.streamingAssetsPath}/configs/mqttconfig.json"; #endregion public MqttClient MqttClient; // ================================================== private void Awake() { Instance = this; } private void Start() { Init(); } // private void OnApplicationQuit() // { // Uninit(); // } // ================================================== private void Init() { // MqttClient.Host = JsonManager.GetJson(configPath, "host"); // MqttClient.Port = JsonManager.GetJson(configPath, "port"); return; } // private void Uninit() // { // return; // } // ================================================== public void SetMQTTClientHost(string value) { MqttClient.Host = value; return; } public void SetMQTTClientPort(int value) { MqttClient.Port = value; return; } // ================================================== /// /// 发送消息 /// /// /// public void SendMessageOut(string topic, string message) { MqttClient.Connection.Publish(topic, message); Debug.Log($"[MQTT Manager] Message [{message}] send to [{MqttClient.Host}:{MqttClient.Port}]."); return; } /// /// 接收消息 /// /// public void OnMessageArrived(MqttMessage value) { Debug.Log($"[MQTT Manager] Message [{value}] received."); return; } } }