On Mon, 04 Jun 2007 19:32:02 +0200, neimad <[EMAIL PROTECTED]> wrote:

"David Bourgeois" <[EMAIL PROTECTED]> writes:

[...]
I forgot something here. The daemon will start when the dongle is
plugged,  will open the USB connection, but the connection to tux
won't be  initialized. It's the client that will request to conenct to
tux with a  specific id or do a id lookup. So during this function,
the client is  connected to the dongle. Anyway, during the id lookup,

I didn't get this. What do you mean with "the client is connected to
the dongle" ? In my mind, a client is a program that connects to the
daemon; how could it be connected to the dongle ?

Sorry, that's indeed not very clear. I meant of course that:
the client will request the daemon to request the USB IC to request the RF module to connect to a specific tux depending on it's id. Hum, that's not clearer actually, the chain is too long ;-) So the daemon is started as soon as you physically connect the USB cable (udev or start the daemon manually.) But the RF connection between the dongle and tux is not started yet. The daemon will never initialize an RF connection by itself (unless we find a good reason to do so). The client will connect to the daemon and request it to initialize the RF connection to a specific tux (with the id as parameter) or do the id_lookup in which case the id which is returned by the dongle will be sent back to the client so it can use it to request a connection.


there's nothing  else to send back to the client but the client might
send another request  to the daemon (though I don't have an exmaple on
hand yet but we may find  the need sometime). So I'll probably cut it
in 2 parts like a normal tux  command.

Why allow the connection of clients if the id lookup is not completed ?

Do you mean that the id lookup is *triggered* by the connection of a
client that specifically requested to talk to a given Tux ? If so,
okay, but then the client should await for an ack from the daemon
("ok, i've found the Tux you requested, proceed") or a nack ("sorry,
no such Tux here").

Yes, that's what I meant. The connect_to_tux(id) function of the daemon is triggered by the client and the above ACK will be returned. The id_lookup() function is also triggered by the client and the ACK will contain the id that has been found or a nack is no tux is found. By the way, the id_lookup function can only find an unconnected tux. Practically that means that you switch on your tux, plug the dongle, the RF modules don't connect yet, id_lookup() will return the id of your tux and connect_to_tux(id) will initialize the RF connection. Once the client kows the id of your tux, you can skip the first step.

I guess you should get the point now. If you think about modifications or improvements, they're welcome of course.

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
tux-droid-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-user

Reply via email to