SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Evolution
as
Email Service
Srinivasa Ragavan
sragavan@gnome.org
03 Aug 2013
Mail to EDS
Let me start with the problems...
Here they are
• Evolution mail is isolated. No interfaces at all.
• Since GMail, there is only one big INBOX and that adds problems like
memory usage and so can't keep it running it all the time.
• Need for (e)lite services like new mail notification, idle download and
smart inline reply etc
• Applications nautilus-sendto , Libreoffice need Evolution to be started
for sending emails.
This is how it will be
When you boot up
• A small background process called e-mail-factory starts up and
checks if you have any email accounts, if not it quits.
• You go to Control Center->Online Accounts (or somewhere there)
create a Gmail account or Yahoo account or your corporate account
and say you want Email, Contacts and Calendar.
• Once the account is configured and created, it starts up the e-mail-
factory process, if it is not running already
• It sees the list of account, authenticates with them with the help of
stored password, download basic stuffs like list of folders, unread/total
email count and at the back ground download summary for INBOX
and other folders or just configured folders and filters them, checks for
spam etc.
When you boot up...
• Once everything is downloaded and stored locally, it goes back to rest
with a open connection for PUSH email or checks emails at intervals.
• When a new email arrives, it downloads them and notifies the desktop
• Notification bubble shows the email and the user clicks on the email
and a viewer with inline reply opens up (not the email app) and closed
when done.
• If you want to check for other mails, you kick start the email app and
list down the INBOX mails from the daemon and you search for the
mail, read and close. The email daemon goes back to connection only
state.
• Notification area for missed new emails.
How will it be done?
No we aren't killing Evolution!!!
0
This is how it is done
• Evolution is a BEAST. Split mail in to small reusable library outside of
Evolution. Libemail-engine which has the core email logic.
• A Daemon that runs accounts created with the libemail-engine and
checks for mails, downloads necessary things and stores them.
• Expose a DBUS interface that gives access to Store/Folder/Summary
/Emails.
• When a client application starts, it uses DBUS to get list of Stores and
Folder information (unread/total count) from the email daemon. When
the user clicks on store get the list of folders and then mails as and
when required. A state less API to keep it light at the deamon side.
• Pass mails via message passing over FD (to avoid any hog)
• Move composer & renderer as separate independent libraries.
1
DBus API
• Core APIs
• EmailDataSession
• EmailDataStore
• EmailDataFolder
• EmailOperation
• Generated from xml using gdbus-codegen
• Needs more iteration and ideas for simple apis
2
Possibly with
• Mails via message passing over fd.
• Optional client side SQL/sqlite direct access for summary read &
fetch.
• Need to figure out any other possible performance hogs &
improvement ideas.
What and all can be done?
4
Like...
• A light weight web app that lists pages of emails that can scale up to
any size without any issue.
• idle download of messages, deeper integration into the desktop.
• Send emails or view emails without launching any app
• Search for attachments, emails outside of email application
• Provide faster experience with pre-downloaded emails
• Nautilus can email without having the mail app opened/running (better
nautilus-sendto)
• Libreoffice integration
Rich Lock screen integration
3 new emails from Matthew Barnes, Michael
Meeks and Robert Bradford
Notification with inline reply support
3 new emails from Matthew Barnes, Michael
Meeks and Robert Bradford
Matthew <mbarnes@redhat.com> Hacking plans?
Hi Srini,
Do you want to join the hackfest on Monday. Reply with interesting bugs.
Reply Inline
Power Nap kind of integration for Email
Stealth Screen notification center ?
Done & Pending?
0
Done
• Evolution broken to reusable email libraries. Libemail-engine
committed in 3.4 cycle.
• E-mail-factory built on top of libemail-engine and runs evolution
accounts (ported upto 3.6)
• A bare DBUS api similar to the camel interface available via gbus-
codegen.
• A regression suite that runs the list of completed api and tests them.
1
Pending?
• A sugar coded libemail library over the DBUS interface
• A improved api with things client side sqlite fetch & search.
• Make Evolution use the e-mail-factory to start with and move libemail-
engine to EDS.
• Move composer & renderer as separate library to EDS
• Lets write a fresh & lite email app on top of GNOME 3 (like Anjal)
2
Sources
• https://github.com/sragavan/e-mail-factory
Are you ready for the huge step? Questions?
Image credit authors

Weitere ähnliche Inhalte

Was ist angesagt?

Cis407 a ilab 7 web application development devry university
Cis407 a ilab 7 web application development devry universityCis407 a ilab 7 web application development devry university
Cis407 a ilab 7 web application development devry universitylhkslkdh89009
 
Lesson 6: Email on the Mac
Lesson 6: Email on the MacLesson 6: Email on the Mac
Lesson 6: Email on the Macbadoir
 
How to use mailbox validator symfony bundle to validate email
How to use mailbox validator symfony bundle to validate emailHow to use mailbox validator symfony bundle to validate email
How to use mailbox validator symfony bundle to validate emailBenHamminton
 
Lotus Notes Error 4005 Access to Data Denied - Fix It
Lotus Notes Error 4005 Access to Data Denied - Fix ItLotus Notes Error 4005 Access to Data Denied - Fix It
Lotus Notes Error 4005 Access to Data Denied - Fix ItBen Tyson
 
How to tactically avoid boring work with Power Automate
How to tactically avoid boring work with Power AutomateHow to tactically avoid boring work with Power Automate
How to tactically avoid boring work with Power AutomateMichael Stephenson
 
Kennect flo - a personalized email service
Kennect flo - a personalized email serviceKennect flo - a personalized email service
Kennect flo - a personalized email serviceOmkar Dusane
 
Computers
ComputersComputers
ComputersPalpat
 
08 e textbook
08   e textbook08   e textbook
08 e textbookjzahrndt
 
Using RSS to Post Jobs to Multiple Channels
Using RSS to Post Jobs to Multiple ChannelsUsing RSS to Post Jobs to Multiple Channels
Using RSS to Post Jobs to Multiple ChannelsJeffrey Levy
 

Was ist angesagt? (17)

Email
EmailEmail
Email
 
Cis407 a ilab 7 web application development devry university
Cis407 a ilab 7 web application development devry universityCis407 a ilab 7 web application development devry university
Cis407 a ilab 7 web application development devry university
 
Lesson 6: Email on the Mac
Lesson 6: Email on the MacLesson 6: Email on the Mac
Lesson 6: Email on the Mac
 
Opas
OpasOpas
Opas
 
Filing Client Email
Filing Client EmailFiling Client Email
Filing Client Email
 
How to use mailbox validator symfony bundle to validate email
How to use mailbox validator symfony bundle to validate emailHow to use mailbox validator symfony bundle to validate email
How to use mailbox validator symfony bundle to validate email
 
Max\ S Slide
Max\ S SlideMax\ S Slide
Max\ S Slide
 
Max\ S Slide
Max\ S SlideMax\ S Slide
Max\ S Slide
 
Lotus Notes Error 4005 Access to Data Denied - Fix It
Lotus Notes Error 4005 Access to Data Denied - Fix ItLotus Notes Error 4005 Access to Data Denied - Fix It
Lotus Notes Error 4005 Access to Data Denied - Fix It
 
Ifttt
IftttIfttt
Ifttt
 
How to tactically avoid boring work with Power Automate
How to tactically avoid boring work with Power AutomateHow to tactically avoid boring work with Power Automate
How to tactically avoid boring work with Power Automate
 
E-Mail Basics
E-Mail BasicsE-Mail Basics
E-Mail Basics
 
Kennect flo - a personalized email service
Kennect flo - a personalized email serviceKennect flo - a personalized email service
Kennect flo - a personalized email service
 
Computers
ComputersComputers
Computers
 
Trigger Emails BigD17
Trigger Emails BigD17Trigger Emails BigD17
Trigger Emails BigD17
 
08 e textbook
08   e textbook08   e textbook
08 e textbook
 
Using RSS to Post Jobs to Multiple Channels
Using RSS to Post Jobs to Multiple ChannelsUsing RSS to Post Jobs to Multiple Channels
Using RSS to Post Jobs to Multiple Channels
 

Andere mochten auch

The Autonomo.us Open Software Services Evolution, featuring Identi.ca
The Autonomo.us Open Software Services Evolution, featuring Identi.ca The Autonomo.us Open Software Services Evolution, featuring Identi.ca
The Autonomo.us Open Software Services Evolution, featuring Identi.ca Jon Phillips
 
Gnome Architecture
Gnome ArchitectureGnome Architecture
Gnome Architecture동수 장
 
Eating: Evolution and food A2
Eating: Evolution and food A2Eating: Evolution and food A2
Eating: Evolution and food A2Jill Jan
 
Evolution of e mail marketing
Evolution of e mail marketingEvolution of e mail marketing
Evolution of e mail marketingadverteaze.com
 
Evolution - Mobile phones
Evolution - Mobile phonesEvolution - Mobile phones
Evolution - Mobile phonesAshish Malhotra
 
3 Tier Architecture
3 Tier Architecture3 Tier Architecture
3 Tier Architectureguestd0cc01
 
Email Marketing 101: Strategy
Email Marketing 101: StrategyEmail Marketing 101: Strategy
Email Marketing 101: StrategySendGrid
 
The Science of Email Marketing
The Science of Email MarketingThe Science of Email Marketing
The Science of Email MarketingHubSpot
 

Andere mochten auch (11)

Evolution of e mail
Evolution of e mailEvolution of e mail
Evolution of e mail
 
The Autonomo.us Open Software Services Evolution, featuring Identi.ca
The Autonomo.us Open Software Services Evolution, featuring Identi.ca The Autonomo.us Open Software Services Evolution, featuring Identi.ca
The Autonomo.us Open Software Services Evolution, featuring Identi.ca
 
Gnome Architecture
Gnome ArchitectureGnome Architecture
Gnome Architecture
 
Eating: Evolution and food A2
Eating: Evolution and food A2Eating: Evolution and food A2
Eating: Evolution and food A2
 
Evolution of e mail marketing
Evolution of e mail marketingEvolution of e mail marketing
Evolution of e mail marketing
 
Electronic mail
Electronic mailElectronic mail
Electronic mail
 
Evolution - Mobile phones
Evolution - Mobile phonesEvolution - Mobile phones
Evolution - Mobile phones
 
3 Tier Architecture
3 Tier Architecture3 Tier Architecture
3 Tier Architecture
 
Electronic mail
Electronic mailElectronic mail
Electronic mail
 
Email Marketing 101: Strategy
Email Marketing 101: StrategyEmail Marketing 101: Strategy
Email Marketing 101: Strategy
 
The Science of Email Marketing
The Science of Email MarketingThe Science of Email Marketing
The Science of Email Marketing
 

Ähnlich wie Evolution as Email service

Conquer Your Inbox: Tips & Tricks for Managing Email
Conquer Your Inbox: Tips & Tricks for Managing EmailConquer Your Inbox: Tips & Tricks for Managing Email
Conquer Your Inbox: Tips & Tricks for Managing Email501 Commons
 
Emails missing from apple mail
Emails missing from apple mailEmails missing from apple mail
Emails missing from apple mailAdwinJohn
 
Email - electronic mail
Email - electronic mailEmail - electronic mail
Email - electronic mailkundana
 
Outlook 2010
Outlook 2010Outlook 2010
Outlook 2010nolanik
 
NCET Biz Bite | Darren McBride, Email Productivity Tips and Tricks | Mar 28
NCET Biz Bite | Darren McBride, Email Productivity Tips and Tricks | Mar 28NCET Biz Bite | Darren McBride, Email Productivity Tips and Tricks | Mar 28
NCET Biz Bite | Darren McBride, Email Productivity Tips and Tricks | Mar 28Dave Archer
 
Copy of final webmailing
Copy of final webmailingCopy of final webmailing
Copy of final webmailingKumar
 
Taming the Email monster
Taming the Email monsterTaming the Email monster
Taming the Email monsterjfa1
 
Face Off Domino vs Exchange On Premises
Face Off Domino vs Exchange On PremisesFace Off Domino vs Exchange On Premises
Face Off Domino vs Exchange On PremisesGabriella Davis
 
Top email services providers to streamline your communication.pdf
Top email services providers to streamline your communication.pdfTop email services providers to streamline your communication.pdf
Top email services providers to streamline your communication.pdfWebMaxy
 
Top email services providers to streamline your communication.pdf
Top email services providers to streamline your communication.pdfTop email services providers to streamline your communication.pdf
Top email services providers to streamline your communication.pdfAmruta Relekar
 
Werksmail pitch
Werksmail pitchWerksmail pitch
Werksmail pitchwerksmail
 
HEY Product manager exercise
HEY Product manager exerciseHEY Product manager exercise
HEY Product manager exerciseBruno Wong
 
10 Email Management Tips
10 Email Management Tips10 Email Management Tips
10 Email Management Tipsjaredcorreia
 
Use basic applications and programs
Use basic applications and programsUse basic applications and programs
Use basic applications and programslynettecallaghan
 
Email as a datasource for applications
Email as a datasource for applicationsEmail as a datasource for applications
Email as a datasource for applicationsContext.IO
 
Office 365 Archiving Comparison to Dropsuite
Office 365 Archiving Comparison to DropsuiteOffice 365 Archiving Comparison to Dropsuite
Office 365 Archiving Comparison to DropsuiteDropsuite
 
Green Hectares Rural Tech Factsheet – Gmail
Green Hectares Rural Tech Factsheet – GmailGreen Hectares Rural Tech Factsheet – Gmail
Green Hectares Rural Tech Factsheet – GmailGreen Hectares
 

Ähnlich wie Evolution as Email service (20)

Conquer Your Inbox: Tips & Tricks for Managing Email
Conquer Your Inbox: Tips & Tricks for Managing EmailConquer Your Inbox: Tips & Tricks for Managing Email
Conquer Your Inbox: Tips & Tricks for Managing Email
 
Emails missing from apple mail
Emails missing from apple mailEmails missing from apple mail
Emails missing from apple mail
 
Optimizing gmail
Optimizing gmailOptimizing gmail
Optimizing gmail
 
Email - electronic mail
Email - electronic mailEmail - electronic mail
Email - electronic mail
 
Outlook 2010
Outlook 2010Outlook 2010
Outlook 2010
 
NCET Biz Bite | Darren McBride, Email Productivity Tips and Tricks | Mar 28
NCET Biz Bite | Darren McBride, Email Productivity Tips and Tricks | Mar 28NCET Biz Bite | Darren McBride, Email Productivity Tips and Tricks | Mar 28
NCET Biz Bite | Darren McBride, Email Productivity Tips and Tricks | Mar 28
 
Copy of final webmailing
Copy of final webmailingCopy of final webmailing
Copy of final webmailing
 
Sanebox
SaneboxSanebox
Sanebox
 
Presentation1
Presentation1Presentation1
Presentation1
 
Taming the Email monster
Taming the Email monsterTaming the Email monster
Taming the Email monster
 
Face Off Domino vs Exchange On Premises
Face Off Domino vs Exchange On PremisesFace Off Domino vs Exchange On Premises
Face Off Domino vs Exchange On Premises
 
Top email services providers to streamline your communication.pdf
Top email services providers to streamline your communication.pdfTop email services providers to streamline your communication.pdf
Top email services providers to streamline your communication.pdf
 
Top email services providers to streamline your communication.pdf
Top email services providers to streamline your communication.pdfTop email services providers to streamline your communication.pdf
Top email services providers to streamline your communication.pdf
 
Werksmail pitch
Werksmail pitchWerksmail pitch
Werksmail pitch
 
HEY Product manager exercise
HEY Product manager exerciseHEY Product manager exercise
HEY Product manager exercise
 
10 Email Management Tips
10 Email Management Tips10 Email Management Tips
10 Email Management Tips
 
Use basic applications and programs
Use basic applications and programsUse basic applications and programs
Use basic applications and programs
 
Email as a datasource for applications
Email as a datasource for applicationsEmail as a datasource for applications
Email as a datasource for applications
 
Office 365 Archiving Comparison to Dropsuite
Office 365 Archiving Comparison to DropsuiteOffice 365 Archiving Comparison to Dropsuite
Office 365 Archiving Comparison to Dropsuite
 
Green Hectares Rural Tech Factsheet – Gmail
Green Hectares Rural Tech Factsheet – GmailGreen Hectares Rural Tech Factsheet – Gmail
Green Hectares Rural Tech Factsheet – Gmail
 

Kürzlich hochgeladen

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 

Kürzlich hochgeladen (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

Evolution as Email service

  • 3. Let me start with the problems...
  • 4. Here they are • Evolution mail is isolated. No interfaces at all. • Since GMail, there is only one big INBOX and that adds problems like memory usage and so can't keep it running it all the time. • Need for (e)lite services like new mail notification, idle download and smart inline reply etc • Applications nautilus-sendto , Libreoffice need Evolution to be started for sending emails.
  • 5. This is how it will be
  • 6. When you boot up • A small background process called e-mail-factory starts up and checks if you have any email accounts, if not it quits. • You go to Control Center->Online Accounts (or somewhere there) create a Gmail account or Yahoo account or your corporate account and say you want Email, Contacts and Calendar. • Once the account is configured and created, it starts up the e-mail- factory process, if it is not running already • It sees the list of account, authenticates with them with the help of stored password, download basic stuffs like list of folders, unread/total email count and at the back ground download summary for INBOX and other folders or just configured folders and filters them, checks for spam etc.
  • 7. When you boot up... • Once everything is downloaded and stored locally, it goes back to rest with a open connection for PUSH email or checks emails at intervals. • When a new email arrives, it downloads them and notifies the desktop • Notification bubble shows the email and the user clicks on the email and a viewer with inline reply opens up (not the email app) and closed when done. • If you want to check for other mails, you kick start the email app and list down the INBOX mails from the daemon and you search for the mail, read and close. The email daemon goes back to connection only state. • Notification area for missed new emails.
  • 8. How will it be done?
  • 9. No we aren't killing Evolution!!!
  • 10. 0 This is how it is done • Evolution is a BEAST. Split mail in to small reusable library outside of Evolution. Libemail-engine which has the core email logic. • A Daemon that runs accounts created with the libemail-engine and checks for mails, downloads necessary things and stores them. • Expose a DBUS interface that gives access to Store/Folder/Summary /Emails. • When a client application starts, it uses DBUS to get list of Stores and Folder information (unread/total count) from the email daemon. When the user clicks on store get the list of folders and then mails as and when required. A state less API to keep it light at the deamon side. • Pass mails via message passing over FD (to avoid any hog) • Move composer & renderer as separate independent libraries.
  • 11. 1 DBus API • Core APIs • EmailDataSession • EmailDataStore • EmailDataFolder • EmailOperation • Generated from xml using gdbus-codegen • Needs more iteration and ideas for simple apis
  • 12. 2 Possibly with • Mails via message passing over fd. • Optional client side SQL/sqlite direct access for summary read & fetch. • Need to figure out any other possible performance hogs & improvement ideas.
  • 13. What and all can be done?
  • 14. 4 Like... • A light weight web app that lists pages of emails that can scale up to any size without any issue. • idle download of messages, deeper integration into the desktop. • Send emails or view emails without launching any app • Search for attachments, emails outside of email application • Provide faster experience with pre-downloaded emails • Nautilus can email without having the mail app opened/running (better nautilus-sendto) • Libreoffice integration
  • 15. Rich Lock screen integration 3 new emails from Matthew Barnes, Michael Meeks and Robert Bradford
  • 16. Notification with inline reply support 3 new emails from Matthew Barnes, Michael Meeks and Robert Bradford Matthew <mbarnes@redhat.com> Hacking plans? Hi Srini, Do you want to join the hackfest on Monday. Reply with interesting bugs. Reply Inline
  • 17. Power Nap kind of integration for Email
  • 20. 0 Done • Evolution broken to reusable email libraries. Libemail-engine committed in 3.4 cycle. • E-mail-factory built on top of libemail-engine and runs evolution accounts (ported upto 3.6) • A bare DBUS api similar to the camel interface available via gbus- codegen. • A regression suite that runs the list of completed api and tests them.
  • 21. 1 Pending? • A sugar coded libemail library over the DBUS interface • A improved api with things client side sqlite fetch & search. • Make Evolution use the e-mail-factory to start with and move libemail- engine to EDS. • Move composer & renderer as separate library to EDS • Lets write a fresh & lite email app on top of GNOME 3 (like Anjal)
  • 23. Are you ready for the huge step? Questions? Image credit authors