GUACAMOLE-1293: Add common support for the msg instruction.

This commit is contained in:
Virtually Nick
2021-12-25 21:15:59 -05:00
parent 5966dcae63
commit ca2b89077c
3 changed files with 32 additions and 1 deletions

View File

@@ -688,6 +688,17 @@ Guacamole.Client = function(tunnel) {
*/ */
this.onerror = null; this.onerror = null;
/**
* Fired when a message is received from the remote tunnel and needs to be
* displayed to the user.
*
* @event
* @param {String} message
* The message sent by the remote end of the tunnel that should be
* displayed for the user.
*/
this.onmsg = null;
/** /**
* Fired when a audio stream is created. The stream provided to this event * Fired when a audio stream is created. The stream provided to this event
* handler will contain its own event handlers for received data. * handler will contain its own event handlers for received data.
@@ -1400,6 +1411,12 @@ Guacamole.Client = function(tunnel) {
}, },
"msg" : function(parameters) {
if (guac_client.onmsg) guac_client.onmsg(parameters[0]);
},
"name": function(parameters) { "name": function(parameters) {
if (guac_client.onname) guac_client.onname(parameters[0]); if (guac_client.onname) guac_client.onname(parameters[0]);
}, },

View File

@@ -33,6 +33,13 @@ public enum GuacamoleProtocolCapability {
*/ */
ARBITRARY_HANDSHAKE_ORDER(GuacamoleProtocolVersion.VERSION_1_1_0), ARBITRARY_HANDSHAKE_ORDER(GuacamoleProtocolVersion.VERSION_1_1_0),
/**
* Support for the "msg" instruction. The "msg" instruction allows the
* server to send messages to the client. Support for this instruction was
* introduced in {@link GuacamoleProtocolVersion#VERSION_1_5_0}.
*/
MSG_INSTRUCTION(GuacamoleProtocolVersion.VERSION_1_5_0),
/** /**
* Negotiation of Guacamole protocol version between client and server * Negotiation of Guacamole protocol version between client and server
* during the protocol handshake. The ability to negotiate protocol * during the protocol handshake. The ability to negotiate protocol

View File

@@ -53,11 +53,18 @@ public class GuacamoleProtocolVersion {
*/ */
public static final GuacamoleProtocolVersion VERSION_1_3_0 = new GuacamoleProtocolVersion(1, 3, 0); public static final GuacamoleProtocolVersion VERSION_1_3_0 = new GuacamoleProtocolVersion(1, 3, 0);
/**
* Protocol version 1.5.0, which introduces the "msg" instruction, allowing
* the server to send message notifications that will be displayed on the
* client.
*/
public static final GuacamoleProtocolVersion VERSION_1_5_0 = new GuacamoleProtocolVersion(1, 5, 0);
/** /**
* The most recent version of the Guacamole protocol at the time this * The most recent version of the Guacamole protocol at the time this
* version of GuacamoleProtocolVersion was built. * version of GuacamoleProtocolVersion was built.
*/ */
public static final GuacamoleProtocolVersion LATEST = VERSION_1_3_0; public static final GuacamoleProtocolVersion LATEST = VERSION_1_5_0;
/** /**
* A regular expression that matches the VERSION_X_Y_Z pattern, where * A regular expression that matches the VERSION_X_Y_Z pattern, where