SlideShare a Scribd company logo
SNAIL – quick accesstoSocial Networks in EmAIL Final Presentation
The Problem
TooMany Emails Hard tosearchthrough Hard toprioritize
The Goals
Find Emails faster!
Find Emails faster! Develop Contactoriented Email Sorting
Find Emails faster! Develop Contactoriented Email Sorting
Take Social Networksinto Account
Find Emails Faster DistinguishImportantfromUnimportant Mails
Our Plan Extractrawmetrics ,[object Object],Consolidate Email Messages ,[object Object]
Link threadedEmailsIntegrateintotheContext Framework ,[object Object]
Perform XML RPC Calls on Event,[object Object]
Hook on to EventsProvideConvenient Interface ,[object Object]
Contact List
Thread ViewSoftware Development Steps
Concept 			Design
Tools Of The Trade C#.Net ,[object Object]
Requiresthe .net frameworkVisual Studio Tools for Office (VSTO) ,[object Object]
Datatypes
Events
Methods,[object Object]
Whatwewant
Sidebar Here
But!
How do We achieve This?
VSTO providesform regionsfor Outlook, but no Sidebar feature HowTointegrate a Sidebar? Use Win32 methods ,[object Object]
Windows API,[object Object]
NewMail Event ,[object Object],ItemAdd / ItemRemove / ItemChange ,[object Object],ItemSend ,[object Object],HookingUp     Events
Gettingthe Data GenerateStatisticsfrom Outlook User Data ,[object Object]
Pull Information from Mail Item Object
Sender
Recipient
Subject
Create a Hashtablewhere Messages arestoredwithContactsas Keys,[object Object]
Contain all relevant Information forthe EmailContactItemobjectsrepresentContact Items ,[object Object],[object Object]
Gettingthe Mails In Outlook Mails aresortedcontained in folders Eachconfiguredprofileis a folderandhas subsequent subfolders Iteration over all Folders necessary
The Problem No simple waytoretrieve all MailItemsatonce ,[object Object]
Identify Folders andperformrecursiveiteration
Save all MailItems in a Dictionary,[object Object]
MapsTo Contains Class Relations
Pullinginformation From Mailitem MailItemprovidesuswith Subject Recipient Sender ConversationID Allowsustotrackconversationsandaggregatethreads
Adding Outlook Contacts CorrelationofgeneratedContactswith Outlook Contacts Find existing Outlook Contactsand link themwithgeneratedContacts Create new Outlook ContactsfromgeneratedContacts Development Get all Outlook ContactItemobjects RetrieveEntryID Save EntryID
Connecting With Facebook Contactscan also befound on socialnetworks Development Facebook SDK pullsinformationfromyourfacebookuserprofile
Serialization Outlook Items can not beserialized! But insteadtheEntryIDcanbestored Retrieve Outlook Items fromEntryID InvokeGetItemFromID(stringEntryID) Store onlytheEntryIDofthe Outlook Item .NET Serializationtakescareofautomaticsaving & loadingofdata
SortingTechniques Concept 1: Order By Unreadyes/no Score = 1−Sent+0,00001Received+0,00001+0,1Sent+0,00001 The smallerthebetter Concept 2: Order By Unreadyes/no Last Message received / sent Sent Mails  
Provide Property for Score calculation SortContactlistwith Lambda Expressions Sample Contacts = Contacts.OrderByDescending(x => x.UnreadMails).ThenBy(x => x.RatingsScore).ToList(); Developingit
Score samples

More Related Content

Similar to S N A I L Final Presentation

Managing Emails using MS Office Outlook
Managing Emails using MS Office Outlook Managing Emails using MS Office Outlook
Managing Emails using MS Office Outlook
Jaiveer Singh
 
Building Email Apps
Building Email AppsBuilding Email Apps
Building Email Apps
Andy Denmark
 
Email Is Dead... Long Live Email!
Email Is Dead... Long Live Email!Email Is Dead... Long Live Email!
Email Is Dead... Long Live Email!
Wrike
 
Email and groupware
Email and groupwareEmail and groupware
Email and groupware
Roy Thomas
 
TomDavenportPoster (1)
TomDavenportPoster (1)TomDavenportPoster (1)
TomDavenportPoster (1)
Tom Davenport
 
Web 2.0: Making Email a Useful Web App
Web 2.0: Making Email a Useful Web AppWeb 2.0: Making Email a Useful Web App
Web 2.0: Making Email a Useful Web App
Andy Denmark
 
Gabor Cselle - The Future of Email
Gabor Cselle - The Future of EmailGabor Cselle - The Future of Email
Gabor Cselle - The Future of Email
gaborcselle
 
Webinar Mastery Series: Transform Teamwork Productivity with the new SkyConne...
Webinar Mastery Series: Transform Teamwork Productivity with the new SkyConne...Webinar Mastery Series: Transform Teamwork Productivity with the new SkyConne...
Webinar Mastery Series: Transform Teamwork Productivity with the new SkyConne...
Mithi SkyConnect
 
SAS Text Mining
SAS Text MiningSAS Text Mining
SAS Text Mining
Mitchell Sanregret
 
Visualizing the Path of InteropNet and Beyond
Visualizing the Path of InteropNet and BeyondVisualizing the Path of InteropNet and Beyond
Visualizing the Path of InteropNet and Beyond
ThousandEyes
 
Move Fast and (Don't) Break Things: How Big Brands Can Do Email Marketing at ...
Move Fast and (Don't) Break Things: How Big Brands Can Do Email Marketing at ...Move Fast and (Don't) Break Things: How Big Brands Can Do Email Marketing at ...
Move Fast and (Don't) Break Things: How Big Brands Can Do Email Marketing at ...
stensul
 
Voice based email system for physically challenged
Voice based email system for physically challengedVoice based email system for physically challenged
Voice based email system for physically challenged
Ibrahim Khalil Shakik
 
miniproject.ppt.pptx
miniproject.ppt.pptxminiproject.ppt.pptx
miniproject.ppt.pptx
Anush90
 
The Detection of Suspicious Email Based on Decision Tree ...
The Detection of Suspicious Email Based on Decision Tree                     ...The Detection of Suspicious Email Based on Decision Tree                     ...
The Detection of Suspicious Email Based on Decision Tree ...
IRJET Journal
 
Put Your Hands in the Mud: What Technique, Why, and How
Put Your Hands in the Mud: What Technique, Why, and HowPut Your Hands in the Mud: What Technique, Why, and How
Put Your Hands in the Mud: What Technique, Why, and How
Massimiliano Di Penta
 
(Icmia 2013) personalized community detection using collaborative similarity ...
(Icmia 2013) personalized community detection using collaborative similarity ...(Icmia 2013) personalized community detection using collaborative similarity ...
(Icmia 2013) personalized community detection using collaborative similarity ...
Waqas Nawaz
 
IRJET - Event Notifier on Scraped Mails using NLP
IRJET - Event Notifier on Scraped Mails using NLPIRJET - Event Notifier on Scraped Mails using NLP
IRJET - Event Notifier on Scraped Mails using NLP
IRJET Journal
 
ppt 2 digital empowerment and about uses
ppt 2 digital empowerment and about usesppt 2 digital empowerment and about uses
ppt 2 digital empowerment and about uses
madhav03yad
 
An analysis on Filter for Spam Mail
An analysis on Filter for Spam MailAn analysis on Filter for Spam Mail
An analysis on Filter for Spam Mail
AM Publications
 
Adapt proposed and developed-Email Management System
Adapt proposed and developed-Email Management System Adapt proposed and developed-Email Management System
Adapt proposed and developed-Email Management System
Adapt Software India Private Limited
 

Similar to S N A I L Final Presentation (20)

Managing Emails using MS Office Outlook
Managing Emails using MS Office Outlook Managing Emails using MS Office Outlook
Managing Emails using MS Office Outlook
 
Building Email Apps
Building Email AppsBuilding Email Apps
Building Email Apps
 
Email Is Dead... Long Live Email!
Email Is Dead... Long Live Email!Email Is Dead... Long Live Email!
Email Is Dead... Long Live Email!
 
Email and groupware
Email and groupwareEmail and groupware
Email and groupware
 
TomDavenportPoster (1)
TomDavenportPoster (1)TomDavenportPoster (1)
TomDavenportPoster (1)
 
Web 2.0: Making Email a Useful Web App
Web 2.0: Making Email a Useful Web AppWeb 2.0: Making Email a Useful Web App
Web 2.0: Making Email a Useful Web App
 
Gabor Cselle - The Future of Email
Gabor Cselle - The Future of EmailGabor Cselle - The Future of Email
Gabor Cselle - The Future of Email
 
Webinar Mastery Series: Transform Teamwork Productivity with the new SkyConne...
Webinar Mastery Series: Transform Teamwork Productivity with the new SkyConne...Webinar Mastery Series: Transform Teamwork Productivity with the new SkyConne...
Webinar Mastery Series: Transform Teamwork Productivity with the new SkyConne...
 
SAS Text Mining
SAS Text MiningSAS Text Mining
SAS Text Mining
 
Visualizing the Path of InteropNet and Beyond
Visualizing the Path of InteropNet and BeyondVisualizing the Path of InteropNet and Beyond
Visualizing the Path of InteropNet and Beyond
 
Move Fast and (Don't) Break Things: How Big Brands Can Do Email Marketing at ...
Move Fast and (Don't) Break Things: How Big Brands Can Do Email Marketing at ...Move Fast and (Don't) Break Things: How Big Brands Can Do Email Marketing at ...
Move Fast and (Don't) Break Things: How Big Brands Can Do Email Marketing at ...
 
Voice based email system for physically challenged
Voice based email system for physically challengedVoice based email system for physically challenged
Voice based email system for physically challenged
 
miniproject.ppt.pptx
miniproject.ppt.pptxminiproject.ppt.pptx
miniproject.ppt.pptx
 
The Detection of Suspicious Email Based on Decision Tree ...
The Detection of Suspicious Email Based on Decision Tree                     ...The Detection of Suspicious Email Based on Decision Tree                     ...
The Detection of Suspicious Email Based on Decision Tree ...
 
Put Your Hands in the Mud: What Technique, Why, and How
Put Your Hands in the Mud: What Technique, Why, and HowPut Your Hands in the Mud: What Technique, Why, and How
Put Your Hands in the Mud: What Technique, Why, and How
 
(Icmia 2013) personalized community detection using collaborative similarity ...
(Icmia 2013) personalized community detection using collaborative similarity ...(Icmia 2013) personalized community detection using collaborative similarity ...
(Icmia 2013) personalized community detection using collaborative similarity ...
 
IRJET - Event Notifier on Scraped Mails using NLP
IRJET - Event Notifier on Scraped Mails using NLPIRJET - Event Notifier on Scraped Mails using NLP
IRJET - Event Notifier on Scraped Mails using NLP
 
ppt 2 digital empowerment and about uses
ppt 2 digital empowerment and about usesppt 2 digital empowerment and about uses
ppt 2 digital empowerment and about uses
 
An analysis on Filter for Spam Mail
An analysis on Filter for Spam MailAn analysis on Filter for Spam Mail
An analysis on Filter for Spam Mail
 
Adapt proposed and developed-Email Management System
Adapt proposed and developed-Email Management System Adapt proposed and developed-Email Management System
Adapt proposed and developed-Email Management System
 

More from Qiong Wu

node.js workshop- node.js databases
node.js workshop- node.js databasesnode.js workshop- node.js databases
node.js workshop- node.js databases
Qiong Wu
 
node.js workshop- node.js unit testing
node.js workshop- node.js unit testingnode.js workshop- node.js unit testing
node.js workshop- node.js unit testing
Qiong Wu
 
node.js workshop- node.js middleware
node.js workshop- node.js middlewarenode.js workshop- node.js middleware
node.js workshop- node.js middleware
Qiong Wu
 
node.js workshop- node.js basics
node.js workshop- node.js basicsnode.js workshop- node.js basics
node.js workshop- node.js basics
Qiong Wu
 
node.js workshop- JavaScript Async
node.js workshop- JavaScript Asyncnode.js workshop- JavaScript Async
node.js workshop- JavaScript Async
Qiong Wu
 
node.js workshop- JavaScript Basics
node.js workshop- JavaScript Basicsnode.js workshop- JavaScript Basics
node.js workshop- JavaScript Basics
Qiong Wu
 
Parallele Softwareentwicklung mit .NET 4.0
Parallele Softwareentwicklung mit .NET 4.0Parallele Softwareentwicklung mit .NET 4.0
Parallele Softwareentwicklung mit .NET 4.0
Qiong Wu
 
3 Interop Part2
3 Interop Part23 Interop Part2
3 Interop Part2Qiong Wu
 
C# Workshop - File Operations
C# Workshop - File OperationsC# Workshop - File Operations
C# Workshop - File Operations
Qiong Wu
 
C# Workshop - Networking
C# Workshop - NetworkingC# Workshop - Networking
C# Workshop - Networking
Qiong Wu
 
C# Workshop - Threading
C# Workshop - ThreadingC# Workshop - Threading
C# Workshop - Threading
Qiong Wu
 
Life In Power Point
Life In Power PointLife In Power Point
Life In Power Point
Qiong Wu
 

More from Qiong Wu (14)

node.js workshop- node.js databases
node.js workshop- node.js databasesnode.js workshop- node.js databases
node.js workshop- node.js databases
 
node.js workshop- node.js unit testing
node.js workshop- node.js unit testingnode.js workshop- node.js unit testing
node.js workshop- node.js unit testing
 
node.js workshop- node.js middleware
node.js workshop- node.js middlewarenode.js workshop- node.js middleware
node.js workshop- node.js middleware
 
node.js workshop- node.js basics
node.js workshop- node.js basicsnode.js workshop- node.js basics
node.js workshop- node.js basics
 
node.js workshop- JavaScript Async
node.js workshop- JavaScript Asyncnode.js workshop- JavaScript Async
node.js workshop- JavaScript Async
 
node.js workshop- JavaScript Basics
node.js workshop- JavaScript Basicsnode.js workshop- JavaScript Basics
node.js workshop- JavaScript Basics
 
Parallele Softwareentwicklung mit .NET 4.0
Parallele Softwareentwicklung mit .NET 4.0Parallele Softwareentwicklung mit .NET 4.0
Parallele Softwareentwicklung mit .NET 4.0
 
3 Interop Part2
3 Interop Part23 Interop Part2
3 Interop Part2
 
Kickoff
KickoffKickoff
Kickoff
 
2 Interop
2 Interop2 Interop
2 Interop
 
C# Workshop - File Operations
C# Workshop - File OperationsC# Workshop - File Operations
C# Workshop - File Operations
 
C# Workshop - Networking
C# Workshop - NetworkingC# Workshop - Networking
C# Workshop - Networking
 
C# Workshop - Threading
C# Workshop - ThreadingC# Workshop - Threading
C# Workshop - Threading
 
Life In Power Point
Life In Power PointLife In Power Point
Life In Power Point
 

S N A I L Final Presentation