On Thu, Sep 1, 2016 at 4:37 PM, Hogne Vevle <[email protected]> wrote:
> ... While everything works great in a test setup with the stock > guacamole-server and guacamole-client java web application, we need to > integrate things into our existing control panel. We cannot ship customers > out of our control panel and into a Guacamole UI - we need to simply show > the actual VNC "feed" within our application. Our code base is mostly all > C#, and our coding skills are also concentrated on that language. > > OK. I'm with you so far. > In a default setup of Guacamole, you have to create users and connections > in guacamole-client in order to connect to a VNC session. Is it possible to > bypass this step, by simply passing a host and port to either > guacamole-client or guacd directly? Yes. The concepts of a Guacamole "user", "connection", etc. are actually specific to the Guacamole web application and its extension API. If you are building your own application (or adding guac functionality to an existing application), you do *not* need them. The underlying core APIs which provide the remote desktop functionality are all independent of the web application that we've written with them. How authentication is handled, if at all, is up to you. Are we able to accomplish this strictly by using the javascript "classes" > provided by guacamole-common-js? Yes, along with a tunnel implementation from guacamole-common. If so, are there any examples on how this can be achieved? Yes. In the manual: http://guacamole.incubator.apache.org/doc/gug/writing-you-own-guacamole-app.html Also, in the incubator-guacamole-client source tree: https://github.com/mike-jumper/incubator-guacamole-client/tree/master/doc/guacamole-example The above examples are essentially identical, and are very bare-bones demos of how guacamole-common and guacamole-common-js can be used together to provide remote desktop functionality. The intent is that these examples be used to get a base understanding of the concepts at hand, as well as the organization of the APIs, and that you will build from there for the more complex needs of your app. The Guacamole JavaScript API provides other components to make life easier, such as various forms of touch support, WebSocket, and an on-screen keyboard implementation, so you have other tools available to you once you're ready to move past the basics. - Mike
