Create Telepathy Approver for messaging menu

Registered by Ken VanDine

Drop existing patch to empathy and create a telepathy approver for messaging menu integration.

Blueprint information

Status:
Complete
Approver:
Sebastien Bacher
Priority:
Low
Drafter:
Ken VanDine
Direction:
Needs approval
Assignee:
Ken VanDine
Definition:
Approved
Series goal:
Accepted for oneiric
Implementation:
Implemented
Milestone target:
milestone icon ubuntu-11.10-beta-1
Started by
Ken VanDine
Completed by
Ken VanDine

Related branches

Sprints

Whiteboard

Work items:
Package telepathy-indicator and upload to oneiric: DONE
MIR for telepathy-indicator: DONE
Get user friendly contact information to display in the indicator: DONE
Ensure indicators are cleared properly when chats are viewed without activating the indicator: DONE
Display unseen message count in the unity launcher: DONE

Work items for ubuntu-11.10-beta-2:
Call the handler for unseen messages in an existing chat: POSTPONED
Display avatar in the messaging menu: DONE

Testing:
  * We should be able to follow the http://desktop.qa.ubuntu.com test cases for empathy, and see no regressions in notification/indicator behavior

2011-01-06, seb128: drop the natty target since it will not be ready for alpha-2 and we will stay on the current empathy anyway so there is no strong reason to switch this cycle, that should land in a ppa instead and be ready for next cycle

2010-11-08, seb128: when would be the target for upload to natty? Is there any test plan or behaviour description to ensure it has no regression over the current behaviour?

2010-11-08, ken-vandine: Targetting A1. I think we need to use test cases on the desktop testing project to make sure there aren't regressions.

2010-11-30, ken-vandine: The telepathy high-level text channel API needed for this is ready for review, so should be landing soon. The current code in lp:telepathy-indicator doesn't build against the natty version of telepathy-glib, I'll fix it when the new APIs land in telepathy-glib.
=== Carry over from maverick ===

maverick-alpha-3:
Create a simple service that starts on login (indicator-approver): DONE
Become an Approver using TpSimpleApprover: DONE
Register with the messaging indicator: DONE
Add incoming messages to the messaging indicator: DONE
Call the handler for new chats: DONE
Become an Observer to see incoming messages on existing channels: DONE

ubuntu-10.10-beta:
Call the handler for unseen messages in an existing chat: TODO
Get user friendly contact information to display in the indicator: DONE
Ensure indicators are cleared properly when chats are viewed without activating the indicator: TODO
Packaging: TODO

Items:
Optionally automatically open the chat, without stealing focus: TODO
Update empathy patch to check for the use_indicator preference and display the status icon if it isn't enabled: TODO
apport hook to send logs in bug report, default set to not send log: TODO

2010-08-13, seb128: dropped from the maverick list since it's late for feature freeze and still blocked on some telepathy-glib api limitation, nothing we couldn't workaround but it needs testing so it will go in a ppa now and land early next cycle

=== Notes ===
Empathy/Telepathy

Indicator applet : pretty intrusive patch want to move them to a new separate application
for maverick, for inbound call that require immediate attention, morph the applet into a window

Re implement the indicator as an approver.
Empathy is going to be modified to integrate better with mission control (~1 week),
which mean the applet can ask for the conversation to be open and Empathy will open it

Question : Can the applet be notified when the conversation is open so it can stop blinking (or if it fail)
A : All the approver get notified for opened and closed channel that need dispatching

Question : Is the logger an observer ? A : Yes

Question : Should the applet be an observer as well?
A : It may prove useful for channel that get automatically approved
For this use case it won't actually be needed

Cassidy : we now have easy API to implement approver, it will be binded in Python, JS, etc..
with GObject introspection
the binding API is not stable yet, will be for 3.0 probably
Example approver in java script
Examples code in tp-glib for approver

Seb128 want to talk about the bug reporting process, especially integration with apport.
Cassidy wrote code for that which get automatically the logs from telepathy and hand it to apport
the concern is for privacy, we could accidently upload private user info (password not included)

Question from ploum : Could we automatically remove the user info from the logs?
A : it will prove difficult, except if we want to have crazy regex everywhere,
also we may remove useful debug info

Maverick will probably have an option to only mark one file as private execpt of the whole bug report

There is a number of patches from ubuntu on the upstream bugzilla which got reviewed
by upstream and got no responses from ubuntu dev

It will make sense to merge the patch to disable the tray icon later, since there
will be other approvers such as gnome-shell who want it

Rob explain libfolks for metacontacts and why it's not in empathy or tp-glib directly
ubuntu? is coding a contact picker. Rob suggest them using libfolks
Libfolks aggregate data from different source, it need a writable source to know how to group contacts
More than one writable source may lead to synchronisation problems
http://telepathy.freedesktop.org/wiki/Folks

Return to the log: Question from seb128 : should we send the log every time ? Which components log should we send?
A : We need at least Empathy and mission-control and one of the connection manager log.
We could ask the user which account has failed so we know which CM log to send.

Question from seb128 : Is there anything during the unstable cycle we should be aware of? We should always use the newest version?
New major version of mission-control soon but should be ok.
Question : Will 5.5.X be stable for Gnome 3.0 ? Should ubuntu ship it?
It may be useful to receive feedback. We could have it in the PPA so we can test it, but usually we only put in the PPA version which is going to ship in the next ubuntu version.
-> Yes have it in ubuntu

ACTION: (kenvandine) apport hook to send logs in bug report, default set to not send log

pitti, 2011-02-18: too close to FF now, moving to o.

(?)

Work Items