Opened 11 years ago

Last modified 8 years ago

#4778 new enhancement

Scheduled status changes

Reported by: vertigo_2_20 Owned by:
Milestone: Plugin Suggested Component: plugins
Version: 2.3.1 Keywords: schedule scheduled status invisible
Cc:

Description

I would like to suggest the implementation of scheduled status changes either into pidgin or as a plugin, so for example you can set a time for each night of the week, preferably independently but at least one setting for all week or one for weeknights (Sunday night through Thursday night) and one for weekends (Friday and Saturday night), to change the status from available to invisible, then change back at a preset time in the morning. This way, for users like me that leave pidgin open 24/7, we won't be disturbed by incoming IM's while trying to sleep.

Change History (9)

comment:1 Changed 11 years ago by vertigo_2_20

I just had another thought for this, instead of (or in addition to) having it change the status, it could mute sounds. This would have the added benefit of stopping the sounds of people logging on and off and changing their status.

comment:2 Changed 11 years ago by deryni

  • Milestone set to Plugin Suggested

Definitely something a plugin could do.

comment:3 Changed 11 years ago by bbbburns

I see a few methods for accomplishing this:

  1. Server side status - grabbed from external calendar

Cisco currently does this by having the Cisco Presence server grab calendar information from Exchange via WebDav? for each user it manages presence for.

The Exchange calendar info can be pushed out to the Cisco client or to a SameTime? server where your status will be set to something like "In a meeting" when your schedule says you have a meeting.

Since pidgin has no control of the server side this option is out, but interesting to consider.

  1. Client side status - pulled from an internal source

The user has a method to input their own hours of availability directly into pidgin instead of pulling from an external source.

This method is much simpler to add since we don't need to integrate with an external data source. The framework for programmatically setting away message based on some calendar could be one piece.

This leads us to:

  1. Client side status - grabbed from external calendar

The client would connect to whatever calendaring source you have available and get your status. iCal / Google calendar seem like they might be doable.

If your calendar says you're in a meeting, or sleeping, or what have you, your status can be updated appropriately (and maybe even pull the meeting text as well for the away message).

This would be the most work to configure, but would expand beyond just the simple "turn sounds off" use case.

I'd like to work on this sometime later in May. Integrating Pidgin with an external presence source would be pretty cool (and would make my Google calendar even more useful).

comment:4 Changed 11 years ago by IbrahimA

I believe this is part of what autoprofile was supposed to do, but I never got to try it since it hasn't been updated in years. As of two days from now, the site will have been unupdated for a whole year, and the plugin still only exists in a 2.0 beta 3 compatible form. http://hkn.eecs.berkeley.edu/~casey/autoprofile/ If anyone has the know-how to port it to Pidgin, that would be great. I tried but I don't really know much C or Pidgin's plugin system at all so I failed miserably.

comment:5 follow-up: Changed 10 years ago by endolith

Could this be done using an external scheduled actions tool (cron or Scheduled Tasks, etc) that controls Pidgin using the command line or D-Bus or API or whatever?

comment:6 in reply to: ↑ 5 ; follow-up: Changed 10 years ago by rekkanoryo

Replying to endolith:

Could this be done using an external scheduled actions tool (cron or Scheduled Tasks, etc) that controls Pidgin using the command line or D-Bus or API or whatever?

Yes, this could be managed with purple-remote and cron on UNIX systems. On Windows, however, this would be a trickier proposition.

comment:7 Changed 10 years ago by ibrahima

I'm on Windows primarily, so those will unfortunately not do me much good (unless Cygwin has a cron daemon or something). However, at this point I feel much more comfortable with C than I did 10 months ago, so I might attempt a plugin, as it seems like this should not be too complicated. No promises though, as I seem to always have 5 programming project ideas that I want to follow through on and never do.

comment:8 in reply to: ↑ 6 ; follow-up: Changed 10 years ago by endolith

Replying to rekkanoryo:

Yes, this could be managed with purple-remote and cron on UNIX systems. On Windows, however, this would be a trickier proposition.

Just use the scheduled Tasks tool to call purple-remote?

comment:9 in reply to: ↑ 8 Changed 10 years ago by rekkanoryo

Replying to endolith:

Just use the scheduled Tasks tool to call purple-remote?

There is no purple-remote for Windows. purple-remote requires python and DBus.

Note: See TracTickets for help on using tickets.
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!