Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. A call for supporting Andama, the open source remote desktop application.
Forum Updated to NodeBB v4.3 + New Features

A call for supporting Andama, the open source remote desktop application.

Scheduled Pinned Locked Moved Unsolved General and Desktop
18 Posts 5 Posters 7.0k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Y Offline
    Y Offline
    Yianni
    wrote on last edited by
    #1

    I am John Bourkelis, the developer of the remote desktop application, Andama Remote Desktop.

    First, I would like to thank everyone working for Qt because by using the Qt framework I managed to make this application a reality, running on multiple operating systems and in a very short time.

    Andama is an open source remote desktop software that enables you to connect to a remote computer and use the mouse and keyboard as if you were sitting in front of it.
    There is no need for complicated router setup, or any knowledge of the remote computer IP. Only the remote computer's ID and password are required.

    You can download and try the first experimental version of the application from this link: http://www.andama.org/downloads. The keyboard is not working on Linux yet.
    The source code can be found here: https://github.com/YiannisBourkelis/Andama-Remote-Desktop

    Of course, there are many things to be done such as:

    • Converting UI from Qt Widgets to Qt Quick
    • Developing the application for iOS, Android and Windows Phone

    For these reasons, I started an Indiegogo campaign to gather the required funds for the further development of the application.

    To promote the Indiegogo campaign, I assigned to an office the composition and distribution of a press release for the application in blogs and in the media, as English is not my mother tongue. The press release has been published in Cision but for some reason I have not seen posts on other blogs and technology news websites. As a result, the Indiegogo campaign didn’t  get the required attention.

    Through this post I would like to ask anyone who finds Andama interesting to support it either through a donation or by uploading a review of the software on his blog or news site so that it will be promoted. The campaign will end on 23 January 2016 and is located here: https://www.indiegogo.com/projects/andama-an-open-source-remote-desktop-software/x/12527307#/
    The press release is here: http://news.cision.com/dakota-digitalltd/r/sovereign-software-developer-unveils-new-era-of-remote-desktop-management,c9885870

    I am also available for Qt, if they wish to present the application as an example of an open source application that uses Qt Quick and runs on all popular platforms for desktop computers and mobile devices including Windows, OSX, Linux, iOS, Android and Windows Phone.
    The application architecture is such that the code is common to all platforms by more than 99%. I estimate that the total lines of code in the first stable version will be less than 10,000. This makes it ideal for someone who would like to study how to use Qt Quick to write user interfaces that work across all platforms, how a communication protocol is implemented, how encryption and compression of data are implemented, how you can use an API of a specific operating system and many other interesting programming practices.

    1 Reply Last reply
    0
    • CharbyC Offline
      CharbyC Offline
      Charby
      wrote on last edited by
      #2

      Sounds great !
      However, I don't understand if Andama UI uses QtQuick and if it is already to iOS and Android and Windows phone : at some point, you state it is to be done but later on you write that Andama is a good example showing QtQuick and mobile OS target...but I will sure have a look to your github repo ! Thanks for sharing.

      Y 1 Reply Last reply
      0
      • mrjjM Offline
        mrjjM Offline
        mrjj
        Lifetime Qt Champion
        wrote on last edited by
        #3

        Will I be able to run my own Andama Proxy ?

        Y 1 Reply Last reply
        0
        • mrjjM mrjj

          Will I be able to run my own Andama Proxy ?

          Y Offline
          Y Offline
          Yianni
          wrote on last edited by
          #4

          @mrjj Yes you car run your own Andama Proxy. The code already compiles fine under Linux, OSX and Windows. The proxy source code is located here: https://github.com/YiannisBourkelis/Andama-Remote-Desktop/tree/master/src/AndamaProxy

          1 Reply Last reply
          0
          • CharbyC Charby

            Sounds great !
            However, I don't understand if Andama UI uses QtQuick and if it is already to iOS and Android and Windows phone : at some point, you state it is to be done but later on you write that Andama is a good example showing QtQuick and mobile OS target...but I will sure have a look to your github repo ! Thanks for sharing.

            Y Offline
            Y Offline
            Yianni
            wrote on last edited by
            #5

            @Charby Currenty Andama uses Qt Widgets for the UI. I was able to compile the application for iOS and run it on an iPad just for testing. I am planning to create the UI for the mobile platforms using QtQuick because it is more suitable for this purpose.

            CharbyC 1 Reply Last reply
            0
            • Y Yianni

              @Charby Currenty Andama uses Qt Widgets for the UI. I was able to compile the application for iOS and run it on an iPad just for testing. I am planning to create the UI for the mobile platforms using QtQuick because it is more suitable for this purpose.

              CharbyC Offline
              CharbyC Offline
              Charby
              wrote on last edited by
              #6

              @Yianni I can help designing a QtQuick MVP to have a try on mobile

              Y 1 Reply Last reply
              0
              • mrjjM Offline
                mrjjM Offline
                mrjj
                Lifetime Qt Champion
                wrote on last edited by mrjj
                #7

                So this would be working like teamviewer?
                sounds really cool.

                Y 1 Reply Last reply
                0
                • CharbyC Charby

                  @Yianni I can help designing a QtQuick MVP to have a try on mobile

                  Y Offline
                  Y Offline
                  Yianni
                  wrote on last edited by
                  #8

                  @Charby Great! We can discuss about it when you have some spare time.

                  CharbyC 1 Reply Last reply
                  0
                  • Y Yianni

                    @Charby Great! We can discuss about it when you have some spare time.

                    CharbyC Offline
                    CharbyC Offline
                    Charby
                    wrote on last edited by
                    #9

                    @Yianni I can get myself available one day starting from next week to have a try.
                    What were your reasons no to fork UltraVNC GPL project, creating a Qt branch for instance ?

                    Y 1 Reply Last reply
                    0
                    • mrjjM mrjj

                      So this would be working like teamviewer?
                      sounds really cool.

                      Y Offline
                      Y Offline
                      Yianni
                      wrote on last edited by
                      #10

                      @mrjj Yes there are some similarities, but there are some important differences to:

                      • It is free and open source.
                      • You can connect to a remote computer for as long as you want.
                      • You can connect to multiple remote computers at the same time.
                      • You can host the AndamaProxy on your own server for increased speed and security.
                      • All data will be encrypted using client-side encryption. The encryption key will be the password of the remote computer (This is what I am considering implementing).
                      • You can inspect the source code of the program to be sure that everything is implemented as described.
                      1 Reply Last reply
                      1
                      • CharbyC Charby

                        @Yianni I can get myself available one day starting from next week to have a try.
                        What were your reasons no to fork UltraVNC GPL project, creating a Qt branch for instance ?

                        Y Offline
                        Y Offline
                        Yianni
                        wrote on last edited by
                        #11

                        @Charby UltraVNC contains C code written maybe 10+ years before and it is very difficult to follow the logic.
                        I wanted to know exactly what every bit of code is doing. Also I used C++ and RAII to minimise the possibility of memory leaks.
                        The philosophy of VNC in general is to connect to an other computer using it's IP address and setting up port forwarding rules on the router.

                        Maybe I took the hard road to implement everything from the beginning but at the end I managed to create a solution with much less code that runs pretty fast and contains modern C++ code. The current implementation with the proxy has a latency between 500ms-1000ms when doing something on the remote computer. It will be much faster with direct connections.

                        1 Reply Last reply
                        0
                        • SGaistS Offline
                          SGaistS Offline
                          SGaist
                          Lifetime Qt Champion
                          wrote on last edited by
                          #12

                          Hi and welcome to devnet,

                          Looks very promising :)

                          Interested in AI ? www.idiap.ch
                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                          Y 1 Reply Last reply
                          0
                          • SGaistS SGaist

                            Hi and welcome to devnet,

                            Looks very promising :)

                            Y Offline
                            Y Offline
                            Yianni
                            wrote on last edited by
                            #13

                            @SGaist Thank you for the warm welcome

                            1 Reply Last reply
                            0
                            • hskoglundH Offline
                              hskoglundH Offline
                              hskoglund
                              wrote on last edited by
                              #14

                              Hi, good idea of supporting a proxy, for connecting to some of my customers (because they are doctors inside of a hospital firewall) I have to pay for proprietary solutions like www.gotomypc.com, which gives you a proxy connection. But it's sloooow for console windows.

                              So if Andama (αντάμα right?) would offer a good proxy that would be great!

                              BTW: I looked at your source code on GitHub, consider switching commenting in Greek to commenting in English, remember the English people have a saying: it's all Greek to me :-)

                              Y 1 Reply Last reply
                              0
                              • hskoglundH hskoglund

                                Hi, good idea of supporting a proxy, for connecting to some of my customers (because they are doctors inside of a hospital firewall) I have to pay for proprietary solutions like www.gotomypc.com, which gives you a proxy connection. But it's sloooow for console windows.

                                So if Andama (αντάμα right?) would offer a good proxy that would be great!

                                BTW: I looked at your source code on GitHub, consider switching commenting in Greek to commenting in English, remember the English people have a saying: it's all Greek to me :-)

                                Y Offline
                                Y Offline
                                Yianni
                                wrote on last edited by
                                #15

                                @hskoglund Yes, Andama is αντάμα. I am planning to do plenty of refactoring to the current code and I will also try to translate all the comments from Greek to English.

                                Have you tried Andama inside the hospital? How was your experience?

                                1 Reply Last reply
                                0
                                • hskoglundH Offline
                                  hskoglundH Offline
                                  hskoglund
                                  wrote on last edited by
                                  #16

                                  About trying Andama: not yet, the hospital is 600 km away, but I'll go there in a couple of weeks, should be interesting to try (i know things like FTP or chat programs doesn't work inside the hospital's firewall).

                                  1 Reply Last reply
                                  0
                                  • CharbyC Offline
                                    CharbyC Offline
                                    Charby
                                    wrote on last edited by
                                    #17

                                    Do you already have a design documentation and a bug tracker in place?
                                    I would like to work on Andama next Wednesday to switch to Qt Quick and integrate localisation with Qt linguist. As for issues : I have noticed that keyboard local settings are not handle (typing 'a' on a french kb will result with a 'q')
                                    It is already satisfactory (congrats!) but It would be even better to compare frames and send incremental changes only...

                                    Y 1 Reply Last reply
                                    0
                                    • CharbyC Charby

                                      Do you already have a design documentation and a bug tracker in place?
                                      I would like to work on Andama next Wednesday to switch to Qt Quick and integrate localisation with Qt linguist. As for issues : I have noticed that keyboard local settings are not handle (typing 'a' on a french kb will result with a 'q')
                                      It is already satisfactory (congrats!) but It would be even better to compare frames and send incremental changes only...

                                      Y Offline
                                      Y Offline
                                      Yianni
                                      wrote on last edited by
                                      #18

                                      @Charby I have not created a design documentation yet, only code comments in Greek language. I will start translating these comments in English.

                                      For issues we can use the issue tracker on github.

                                      Next Wednesday is ok for me. We can arrange a meeting and start working on it. In the meantime I will upload in github some UI prototypes for the mobile devices I have created.
                                      I suggest to start with the mobile UI because it is a little bit simpler to implement compared to the Desktop OS UI.

                                      Andama is already sending only incremental desktop image changes. When a client is connected to a host, the host sends the whole desktop image to the client. After that, it sends only the changes to the previous desktop image.
                                      This is implemented in screenshotsworker.cpp > void screenshotsWorker::prepareAndSendScreenshotDiff().
                                      The lag that we experience now is because all traffic is routed through the proxy located on a linux VPS in Germany. When direct connection functionality is implemented everything will be much faster.

                                      1 Reply Last reply
                                      0

                                      • Login

                                      • Login or register to search.
                                      • First post
                                        Last post
                                      0
                                      • Categories
                                      • Recent
                                      • Tags
                                      • Popular
                                      • Users
                                      • Groups
                                      • Search
                                      • Get Qt Extensions
                                      • Unsolved