Fisl10 adenilson08

346 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
346
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Fisl10 adenilson08

  1. 1. Implementing KDE-pim supportfor google calendar and contactsAdenilson Cavalcanti da SilvaBsc. Msc.Senior Developeradenilson.silva@indt.org.br
  2. 2. why?
  3. 3. Why google and KDE?- beautiful!- documentation- PoC- KDE: community
  4. 4. What is community?
  5. 5. Good community: where is easy fornew coders, designers, usersto contribute.
  6. 6. Video: gcontacts + KAddressbook
  7. 7. Video: gcalendar + Kontact
  8. 8. KDE + libgcal Akonadi resource http://techbase.kde.org/Schedules/KDE4/4.3_Feature_Plan#kdepim KDE planet and commits digest! http://www.kdedevelopers.org/node/3931
  9. 9. Gcalendar and contacts *rip off from EA...
  10. 10. Top 10 bugs: 2009-06-16
  11. 11. Top 10 bugs: 2009-06-16
  12. 12. Top 10 bugs: 2009-06-16
  13. 13. Top 10 bugs: 2009-06-16
  14. 14. Tip: be open to newcomers
  15. 15. How google data protocol works?- REST + atom (i.e. HTTP + XML)- Allows: get all, add/edit/delete, query, others- Sync: tricky!
  16. 16. Authentication- HTTPS POST to feed (clientlogin)- You get:
  17. 17. Add
  18. 18. Edit
  19. 19. Delete
  20. 20. Who implements gdata protocol?
  21. 21. libgcal - dependencies: libxml, libcurl - BSD license - features - origin: opensync python plugin by Ehabkost
  22. 22. Syncml + libgcal
  23. 23. Libgcal: unit tests
  24. 24. Libgcal: unit tests
  25. 25. Libgcal: unit tests
  26. 26. Look mom! libgcal on google blog!
  27. 27. KDE4 + PIM = akonadi
  28. 28. Akonadi support protocol support IMAP ++ POP3 +++ vcard +++ ical +++ googledata +++ Exchange ++ Kolab ++GSoC: Syncml.
  29. 29. Akonadi (mis)features good: D-BUS, LGPL, asynchronous, Qt BAD: mysql branch/akonadimobile has support for sqlite!
  30. 30. How difficult is akonadi?Coding:- Gcontacts: 3 weeks- gcalendar: 3 daysquestion? ALT+F2
  31. 31. KDE devel- distro really up-to-date (e.g. OpenSuse)- run the trunk! YMMV
  32. 32. Sync considerations
  33. 33. What time is it?
  34. 34. Inclusive query
  35. 35. Added or edited? Cant tell!
  36. 36. Bugs X Programmers
  37. 37. How to add?
  38. 38. Documentation may be wrong...Written: If you received the redirect, then sendthe same POST request again, with the sameAuthorization header and the same content, butwith the gsessionid parameter appended.Should be: When you receive the redirect, sendthe same POST request, with the sameAuthorization header, to the location specified inthe response location.
  39. 39. Parsing is the root of evil... result = org.xml.sax.SAXParseException: The processing instruction target matching "[xX][mM][lL]" is not allowed.
  40. 40. Parsing is the root of evil...
  41. 41. Sync or Async?
  42. 42. Sync or Async?
  43. 43. Sync or Async?
  44. 44. Rant1: is XML or iCalendar?
  45. 45. Rant2: dichotomy cal x contacts
  46. 46. Rant3: is 2.0 == 2.1?
  47. 47. Rant4: Pessimization
  48. 48. Rant4: Pessimisation
  49. 49. Rant4: Pessimisation
  50. 50. Rant4: Pessimisation
  51. 51. The end?
  52. 52. Special thanks - Kevin Krammer, Igor Trindade, Mike Arthur - Friends - INdT

×