$Id: TODO.txt,v 1.3 2009-10-03 15:56:45 kyrian Exp $ Currently the only notification that an out of hours auto-disconnect has happened in the debug log, and it really should give some other kind of notification, eg. a pop-up, or add a line in the conversation window to say that it's happened and at what time because of what office hours preference. Confirm whether sunday is returned as day 0, or day 7 from perl localtime(), and amend code accordingly. Also I might add a configurable threshold in addition to merely being idle, so if it's eg. 30 mins after you're supposed to have left, and then you go idle it will perform its actions. But then surely that is reinventing the wheel so I should not do it? Also similar could be accomplished with a flexible tick-interval anyway. This is because people do work late by a certain margin, even if they don't always remember doing it. Additionally, the aforementioned 'tick' interval should be put into the configuration dialogue eventually. TESTED + CONFIRMED BEHAVIOURS: - Disabling the plugin in the plugin prefs prevents it from auto logging you off. - Re-enabling the plugin re-enables the functionality without anything weird happening. - Windows for various protocols are left open when the auto-offline functionality happens. ------------- @accounts = Purple::accounts Returns a list of all accounts, online or offline. @chats = Purple::chats Returns a list of all chats currently open. @connections = Purple::connections Returns a list of all active connections. @conversations = Purple::conversations Returns a list of all conversations, both IM and chat, currently open. @conv_windows = Purple::conv_windows Returns a list of all conversation windows currently open. @ims = Purple::ims Returns a list of all instant messages currently open. Combine with http://developer.pidgin.im/doxygen/dev/html/perl-howto.html and I'm sure I could work it out. Thusly: # Use get_im_data() to get a handle for the conversation print "Testing Purple::Conversation::get_im_data()...\n"; $im = $conv1->get_im_data(); if ($im) { print "ok.\n"; } else { print "fail.\n"; } # Here we send messages to the conversation print "Testing Purple::Conversation::IM::send()...\n"; $im->send("Message Test."); print "Testing Purple::Conversation::IM::write()...\n"; $conv2->get_im_data()->write("SENDER", "Message Test.", 0, 0); (Assuming the Purple::conversations() returns a list of Purple::Conversation object types) But it would be much easier to use the "Request Dialog Box API" from the above to do a simple pop-up stating what's been done, I presume! What about Pidgin::Dialogs::info?