On Thu, Jan 24, 2019 at 10:31 AM Nico Schottelius < nico.schottel...@ungleich.ch> wrote:
> > Hello, > > and thanks, wow! > > Thanks for the great feedback, Nick and Adam - I certainly haven't > expected that and also that fast! > > We were already thinking about modifying the database to match sessions > created by a script from outside. > > Is there any kind of "hook mechanism" in guacamole that would allow us > to create a new session, when the user logins? We could check if the > user already has a session entry and if not, we would connect to the > "VNC server" backend and launch a new session. > There's nothing directly implemented today that would do this for you, but the capability to implement is definitely there. Guacamole has Event Listeners for several types of events, including User Logon, User Logoff, Tunnel Connect, and Tunnel Disconnect. It would be relatively easy to listen for a User Logon event, for example, and start a VNC session on that event, and then make sure it's shut down when the user logs off (if you so desire). You could probably also use something like this combined with the decoration capability to actually track what VNC session is associated with a particular user, and do some sort of session persistence. Just thinking out loud - anyway, point is, it should be doable. Here's the documentation on the Event Listeners, including example implementations: http://guacamole.apache.org/doc/gug/event-listeners.html > > Hypothetically, if there is a hook and if what we create is generic > enough, we could in theory think about open sourc'ing it later as a > Guacamole add-on (I will have to discuss with our client first though). > We would certainly love the contributions of source code to the project - we want to build a community around the project, and the best way is if everyone contributes to that :-). > > In terms of fixed resolution: this is certainly a drawback, however much > less from our point of view then having users to create their own > session. > This might be something you could work around with the event listener - you might be able to pull the browser information and pass that along somehow or another during that capture of the event. Not 100% certain about that, but might be possible. -Nick