WebSocket JMS Tutorial - Task 8
by Kaazing Corporation
HTML
<script src="//cdn.kaazing.com/releases/enterprise.javascript.client/4.1.0/WebSocket.js"></script>
<script src="//cdn.kaazing.com/releases/enterprise.javascript.client/4.1.0/JmsClient.js"></script>
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
<body onload="doConnect()">
<!-- Task 1 -->
<div id="sliderDiv">
<input id="slider" type="range" min="0" max="1200" value="600" onchange="sliderChange(this.value)" />
</div>
<!-- Task 1 -->
<div id="logMsgs"></div>
</body>
JavaScript
// Variables you can change
//
var WEBSOCKET_URL = "wss://sandbox.kaazing.net/jms";
var TOPIC_NAME = "/topic/myTopic";
var IN_DEBUG_MODE = true;
var DEBUG_TO_SCREEN = true;
// WebSocket and JMS variables
//
var connection;
var session;
var wsUrl;
// Variable for log messages
//
var screenMsg = "";
// JSFiddle-specific variables
//
var runningOnJSFiddle = (window.location.hostname === "fiddle.jshell.net");
// Used for development and debugging. All logging can be turned
// off by modifying this function.
//
var consoleLog = function(text) {
if (IN_DEBUG_MODE) {
if (runningOnJSFiddle || DEBUG_TO_SCREEN) {
// Logging to the screen
screenMsg = screenMsg + text + "<br>";
$("#logMsgs").html(screenMsg);
} else {
// Logging to the browser console
console.log(text);
}
}
};
var handleException = function(e) {
consoleLog("EXCEPTION: " + e);
};
// *** Task 6a ***
var handleTopicMessage = function(message) {
// *** Task 8b ***
$("#slider").val(message.getText());
// *** Task 8b ***
};
// *** Task 6a ***
// *** Task 2 ***
var sliderChange = function(sliderValue) {
consoleLog("Slider changed: " + sliderValue);
// *** Task 8a ***
doSend(session.createTextMessage(sliderValue));
// *** Task 8a ***
};
// *** Task 2 ***
// *** Task 7a ***
// Send a message to the topic.
//
var doSend = function(message) {
topicProducer.send(null, message, DeliveryMode.NON_PERSISTENT, 3, 1, function() {
});
consoleLog("Message sent: " + message.getText());
};
// *** Task 7a ***
// Connecting...
//
var doConnect = function() {
// Connect to JMS, create a session and start it.
//
var jmsConnectionFactory = new JmsConnectionFactory(WEBSOCKET_URL);
try {
var connectionFuture = jmsConnectionFactory.createConnection('', '', function() {
if (!connectionFuture.exception) {
try {
connection = connectionFuture.getValue();
...