WebSocket JMS Tutorial - Task 4

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 2 ***
var sliderChange = function(sliderValue) {
 consoleLog("Slider changed: " + sliderValue);
};
// *** Task 2 ***
// 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();
                   connection.setExceptionListener(handleException);

                   consoleLog("Connected to " + WEBSOCKET_URL);
                   session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
                   
                   // *** Task 3 ***
                   // Creating topic
                   var myTopic = session.createTopic(TOPIC_NAME);
                   consoleLog("Topic created...");
                   // *** Task 3 ***
                   // *** Task 4 ***
                   //...