Upload
brian-flynn
View
215
Download
1
Embed Size (px)
Citation preview
1
Y! Mail Application Development Platform
Open Hack day
14th Feb 2009
2
Agenda
• An Introduction• Application Scope• Becoming a OpenMail hacker• What is a View? • Application Configuration • Building your first OpenMail application• Available APIs• Reference
3
Introduction
• It is a platform for developing applications that can work on top of users Inbox
• Also called Yahoo! Mail Development Platform• Can convert 'Inbox' to a ’More Smarter Inbox' through applications
providing rich functionality• Ability to share applications with others
4
Application Scope
• Accessing Mail Features– Application can get access to user’s e-mail content (on a manual drag-drop basis
only)– Application can trigger a new mail 'Compose' ( but cannot automatically send a
mail)
• Accessing Yahoo! Calender– Application can ’Add a new event’
• Accessing user’s data on Yahoo! Network– Either using YQL or individual Yahoo! Property level webservice (e.g Mail,
Answers etc)
• Application Rendering Options– Tabbed View and Dialog View
• Application Space– Each application gets a storage space of 5 mb for application components ( js,
css, images etc)
• Only available with ’All new Yahoo! Mail’ (not with Yahoo! Mail Classic)
5
Becoming a OpenMail Hacker
• Collect a OpenMail hacker ID(one per team) and test Yahoo! IDs from us
• Login to the test Yahoo! ID• Register all your test Yahoo! ID under the hacker ID by logging into
http://om1.mail.vip.mud.yahoo.com/openmail/dev_activate.php • Start you development at
http://om1.mail.vip.mud.yahoo.com/openmail/devtool.php
6
All About Open Mail Application
What is a View?
• Each page of an open Mail Application is called a view• A view is simply HTML that can be rendered inside the Mail UI• An application can be collection of one/more views
Application Configuration
• XML based application Config– For outlining application launch methods
• E.g clicking on application, drag of a message on application etc
– For configuring which and what type (Tabbed/Dialog) of view to trigger upon application launch
Building your first OpenMail application
• Login to the developer tool and create a new Application• Goto 'Views' tab and create a new view, say 'HelloMail'• Add some HTML to display 'Hello Mail' and save it• Login to mail with the test Yahoo! ID• Click on 'Add' near Applications section and add your application
Available APIs
• Web Services– Request are sent through Adobe Flash
– Requests have a crossdomain.xml file configured to accept '*.yimg.com' domains
– Use openmail.Application.callWebService method to make the call
– More info at http://om0001.mail.mud.yahoo.com/om/docs/OpenapiPublic/Application.html
• For generating Views– openmail.Application.openView()– openmail.Application.closeView()– More info at
http://om0001.mail.mud.yahoo.com/om/docs/OpenapiPublic/Application.html
Available APIs contd...
• Interacting with Mail– openmail.Mail.compose() - used to compose a new mail– openmail.Mail.search() - this method will initiate a keyword search
inside mail– More info at
http://om0001.mail.mud.yahoo.com/om/docs/OpenapiPublic/Mail.html
• Accessing Application Data– openmail.Application.setData() – persistently stores the given key-
value pair object in the application space– Openmail.Application.getData() – retrieve the values of the keys
from the application space– More info at
http://om0001.mail.mud.yahoo.com/om/docs/OpenapiPublic/Application.html
Available APIs contd...
• Miscellaneous APIs– AuthService Class is available for making authorized web service
calls.
– Supports OAuth (2 and 3 legged) and BBAuth
– openmail.Calendar.addEvent() method for adding a new event in Yahoo! Calender
– For detailed information refer http://om0001.mail.mud.yahoo.com/om/docs/OpenapiPublic/
References
• Open Mail Dev Tool - http://om1.mail.vip.mud.yahoo.com/openmail/devtool.php
• API Documentation - http://om0001.mail.mud.yahoo.com/om/docs/OpenapiPublic/
• Complete Open Mail Documentation http://openhack2009.pbwiki.com/f/YMDP-documentation-020409.pdf
• Registering test Yahoo! ID with hacker accounts http://om1.mail.vip.mud.yahoo.com/openmail/dev_activate.php
• Other Yahoo! APIs http://developer.yahoo.com
14
Happy Hacking!!!Thank You!