From: Neil C. <nc...@co...> - 2005-12-17 22:16:36
|
Matthew Williams wrote: > Neil Cherry wrote: > >>> Neil, I think that you may have missed a central point of my post. >>> With the >>> changes that I will shortly send out, mh will let you know when it >>> loses an >>> OSCAR (AIM/ICQ) connection. >> What you are working on is different than what I need. MH didn't >> disconnect when it was log'd out. It never jumped to that code. I >> wish it had as that would have made it much easier to resolve the >> problem. MH thought it was still log'd in. I tested that with the >> "send a AOL test message" command from telnet. It was sent and the >> log showed no errors. >> > > Neil, > > The OSCAR code didn't ever check whether a message was successfully sent, > nor did it check the status of the connection at any time. The changes I > have made fix this issue. Here is how it works: > > - every second, the socket is checked through the standard Net::OSCAR > functionality > - if an error condition is detected on the socket, Net::OSCAR calls a > callback routine that then runs the hook routines. Oh, my apologies, I completely misunderstood what you were saying. If you have the OSCAR code checking that's perfect then I can use that to determine that the connection is gone. > I can't guarantee that this will fix your problem, but I can't envision a > circumstance where the OSCAR connection dies but doesn't take down the > socket. We'll have to see, though. Yes I agree but that was the hacking I was referring to. I'd guess that the OSCAR code has the socket private. A public interface to the socket would be great. Maybe something like isUp() or isLoggedIn() (quick patent that before M$ does ;-). -- Linux Home Automation Neil Cherry nc...@li... http://www.linuxha.com/ Main site http://linuxha.blogspot.com/ My HA Blog http://home.comcast.net/~ncherry/ Backup site |