xxxxxxxxxx
54
let mqttClient;
let hostname = "theyonetwork.cloud.shiftr.io"; //shiftr broker URL
let port = 443; //always use 443 for browser-based (HTTPS) connections
let username = "theyonetwork"; //the name of your broker
let password = "hereismysecret"; //the password/"token secret" you set
let clientID = window.prompt("Welcome! What is your name?"); //displayed in shiftr interface
while (clientID.length < 3) {
clientID = window.prompt("3+ characters please!")
}
//function triggered by "connect to MQTT broker" button
function MQTTConnect() {
if (mqttClient) return;
mqttClient = new Paho.MQTT.Client(
hostname, port, clientID
);
mqttClient.connect({
userName: username,
password: password,
useSSL: true, //required for browser-based MQTT clients
onSuccess: function() {
let connectButton = document.getElementById("MQTTConnectButton");
connectButton.innerHTML = "Connected!";
connectButton.disabled = true;
document.getElementById("MQTTSendButton").disabled = false;
document.getElementById("MQTTQuestionButton").disabled = false;
},
});
}
function sendMQTTmessage(isQuestion) {
var payload = window.prompt("Enter your message!");
var newMessage = new Paho.MQTT.Message(payload);
if (isQuestion) {
newMessage.destinationName = "/questions/" + clientID;
}
else newMessage.destinationName = "/messages/" + clientID;
mqttClient.send(newMessage)
}