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

Reply via email to