Remote control of a Windows program by using Bonjour/RemObjects SDK and iPhone/Android app

Hello,

I hope to find some answer here. Please let me introduce myself first: I programming with Delphi but I haven’t got a clue about network programming (I never did it). So please be a bit patient with me.

I like to start with a simple example: a user shall use his iPhone/Android phone to control a trackbar (volume control) in my Windows Delphi program. Like some of already existing remote control apps for existing media players.

So I have been recommended to use Bonjour, as it should already offer a perfect service for all the required communication including establishing the local WLAN network connections. And it seems that the RemObjects SDK supports using Bonjour with Delphi.

Can someone tell me about the first steps to start with the given idea/task? What is necessary to install and to use? Is RemObjects SDK the right choice?
Of course it is required to get a solution for the Windows/Delphi side. And then on the app side.

Thanks in advance for any help.

Uli

Hello,
First you can look on ‘Bonjour Service Discovery’ sample to learn how RO works with Bonjour.
For iPhone you can use server samples: Phone Pairing Server, Phone Photo Server, iOS Background Completion Server.
For Android you can use server samples: MegaDemo, HTTPChat.
You can find these samples here:
Windows XP: C:\Documents and Settings\All Users\Documents\RemObjects Samples\RemObjects SDK for Delphi
Vista,Win7: C:\Users\Public\Documents\RemObjects Samples\RemObjects SDK for Delphi\

Bonjour is service discovery technology, it helps your application to discover servers running in same network. For ex: you can also hardcode server address in settings for your application, and let admin configure client’s app before use. So - it architecture decision what discovery tech to use! In your case address of client and server apps can be different, so Bonjour discovery will be helpful.

Then use RO SDK to remotely invoke server’s methods to authorize your client and call other methods (manage volume setting on server). SKD definitely can be used for that!

If you do not want to use RO SDK, then you can use simple HTTP API (rest based?) to control your server using any HTTP client (JavaScript?).

Then, you can use RO SDK and HTTP client)) So a lot of combinations! Just specify your exact task /or evaluate your req yourself!)

Many thanks so far.

I have downloaded the RO trial and so I have learnt first, that I have 200 MBytes more stuff on my harddisk. Pretty much for a simple task.

A saying comes up in my mind: I do not see the forest because all of the trees :slight_smile:

It is quite difficult to have too many choices but no experience what to select best. As e.g. I have never used a HTTP API before.

Anyway I will try to learn more with the Bonjour Service Discovery sample.

Maybe you can specify your task in details, so somebody can recommend best suitable tech!)

Of course :slight_smile:

As already written in the first post:
I have a Delphi program designed as usual with VCL GUI components. One component is a trackbar which is used to control the playback volume of a music signal.
Now I like to use a mobile phone to control the trackbar.

So my application must play the role of a server and the mobile phone is a client.
This is the basic idea. A rudimentary task.

Client and server shall find each other without problems and connect. The playback volume at the server shall be displayed on a trackbar on the client GUI. A trackbar change shall be sent to the server and handled accordingly by changing the playback volume.
This means a bidirectional communication.

Of course I can imagine a lot of other stuff: buttons, checkboxes, images, dialogs …
But my idea is to get a simple remote control example.

For first test it may make sense to start with a local Windows client first (like in Bonjour Discovery) and then to add the mobile phone client a bit later.