Hey, everyone,I'm working on trying to contribute some code to make the 
on-demand connection request a reality, but am running into some issues, mainly 
due to trying to wrap my head around AngularJS (I think).
My original goal was to write this as an extension, similar to the 
authentication modules, where someone could load it if they wanted the support, 
but not patch the core Guacamole client code.  I was also looking to add this 
into the Home page - maybe below recent connections but above the All 
Connections section.  So, my questions are as follows:
- First, is this even possible?  Is it possible to write this extension as a 
module that would inject the AngularJS code into the home module to present 
this on-demand connection box on the home screen?  I'm playing with the code 
trying to get it to work, now, and if I look at the source on the browser side 
(Chrome Developer Tools), I see the JS code is present, but my attempts at 
directive() and controller() code for this drop-in module aren't working - the 
functions aren't running.
- In order to load the AngularJS code, do I need to write any Java code?  I'm 
thinking not, since one of my references was the legacy URL module, and that 
doesn't seem to have any Java code at all, but wanted to make sure.
- Once I get through the home screen stuff, I need to actually create the 
connection on the back-end so that the client can connect to it.  Based on the 
current architecture of the Guacamole client, I'm wondering if it's possible to 
start those connections on-the-fly (via the REST API, perhaps), or if they have 
to be created in some sort of connection storage module (JDBC, LDAP, etc.) 
before they can be started?  I was thinking about doing an in-memory database 
(H2, HSQL, SQLite, etc.), creating the connections there, then starting, but 
I'm not sure if that's overkill or not?  What's leading me to believe that I 
need to create it somewhere in a back-end database is that the client uses a 
Base64 encoding to run the connection that combines the data source, type, and 
identifier.
- Assuming I need to create the connection in some sort of back-end database, 
even an in-memory one, is there a preferred way to create an extension for 
connection storage that is not an authentication module?  Or should it just be 
an authentication module that doesn't do anything with username/password 
(always returns null for the authentication functions, or just doesn't have 
them) and just returns valid connections?
Thanks for the help.
-Nick

Reply via email to