Hi Everyone,
I'm hoping that some of you guys can help me by providing some general guidance. I am a newbie on this forum, but pretty experienced with Coldfire and CodeWarrior.
OK, I have 32 remote products, which I want to monitor over ethernet. They are each on my client's enterprise networks, and I want a keep-alive from each box every 5 minutes, and to report a status byte when anything changes. I had planned to use the AJAX technique described in the Web_Server_with_labs material, but of course got caught out by the enterprise firewalls. I now need to change my thinking from the board running a web server (HTTP server) to running a web client. Every 5 minutes, the CF board can send a HTTP packet over to my local server:
I have a CGI script running on my server, and the http request I plan to make every 5 minutes is:
GET
/cgi-bin/marcia/marcia.cgi?Board%3d55+Status%3dAA
HTTP/1.0
So now I have a web client which can make a HTTP request to my server. But I need your advice on the InterNiche web client. As it stands, the freescale_http demo is a web server.
I know I have to do this:
M_SOCK socket = m_socket();
int m_connect(M_SOCK socket, struct sockaddr_in * sin, M_CALLBACK(my cb function));
bytes_sent = m_send (socket, data, length);
err=m_close(socket);
I have found it challenging to turn this theory into a workable CW project, and I'm not sure how I should be handling the response from my server - it's just a HTTP/1.1 200 OK frame. Also, when I run the Freescale http server, and break to look at the socket it is using, there is lots of data in the socket. Does the m_socket() function populate this for me? How do I set blocking and unblocking, etc. I dont think I really understand the sockaddr structure in the m_connect, also.
Does anyone have any advice that you could share with me??
Marcia