Ways to communicate with someone, from lowest to highest latency (from impulse to communicate to main conversation handshake)
- Talk (VoIP)
- Instant Message
- Meet (in-person) [which we can't do end-to-end, but can make scheduling easier]
You want to reach someone, and you don't care how:
- Drill down the priority list above, initiating a conversation in the first mode both you and the other person can use at the moment.
- "At the moment" means after trivial dependency resolution (like: they're signed on to a messaging service, and you need gaim/Gossip/etc. launched for you)
- What is the other user's local time? AKA: Don't call them if they're in a different time zone, and it's 3 AM there.
- Before diving into writing a detailed email (because the other person isn't available for real time discussion) check whether there are scheduled appointments in near future for high bandwidth face to face discussion instead
You have something low priority that you don't want to spend 15 minutes talking about right now:
- Provide a sensible list of generic comm. types to initiate in one-click (ie, "I want to IM, but I don't care which service")
- Instant Message (collapsed by default, but expands to the list of services your apps support and are configured for):
IRC (?) (pretty hard to handle, nicks aren't persistent, and regular people don't use IRC (esp. for messaging))
- Schedule a meeting (?) (does this make sense here, or should that be a separate action?)