[Stk] RE: how does incoming TCP/IP data trigger your socket?

Andreas Krueger services@andreaskrueger.de
Sat, 24 Jan 2004 21:01:21 +0100


Hi!
Thanks for the answer.

> The Messager class was created primarily for the demo application and 
> will probably not be useful in more general contexts.  
Oh no, it has already proven quite useful. I more or less ignored 
all client-related questions and concentrated on the server-side 
questions. Great idea to wrap midi into tcp/ip packets!
It will improve my idea in a way that I didn't even consider 
before I found your library.

> >   Does the operating system socket routine send some signal whenever 
> >   there is incoming data - and DOES your library catch that signal? 
> >   WHERE is that implemented in your library?
> You can check out the code ... it's relatively basic.  For example, 
> the "readBuffer" function just calls the standard socket function 
> "recv" (which you can read about in the man pages).
yes. but it CALLS, right?

> >   Where could I put "_one_line_of_code_" to inform MY program 
> >   of incoming TCP/IP - SKINI data so that it starts a 
> >   "messager->nextMessage()" until the buffer is empty again?
> You'll need to design an "interrupt" strategy, 

Exactly here is where I am lost.

I'm no expert of Windows(MFC)programming - and I dont actually
want to become one, cause of platform-dependent results of such 
thinking.

> Hope that helps!  
yes.

> Thanks for the thanks.  :-)
Thanks for the reason for the thanks again.
I really do appreciate your work!
It's exactly what I expected to find when I asked google.
Funny world, isn't it? I already knew a lot about your library, 
before I even googled for it...

> "interrupt strategy"
hmmmm....
I'll probably go for plan B now:

> > P.S.: Is there some documentation about the server client protocoll? 
> > I am actually considering writing my own server for the incoming
> > SKINI data. But then I needed a detailed protocol of all the exchanged
> > messages between client-connect and client-disconnect.

Would you be so kind? Just please type the dialog:

1 client: connect to server (with data: "..." ? )
2 server: react to socket connection request (by data: "..." ?)
3 client: send data: "..."
4 server: (?) ack, data "..." received (or no ack?)
goto 3
5a client: quit connection by: "..."
6a server: ack (?), closed 
OR
5b server: quit connection by: "..."
6b client: closed

or is your port2001-protocol already documented somewhere?


bye - and have a nice weekend!
                      Andreas