API Specifications FP7-ICT-2009-5 257103

Total Page:16

File Type:pdf, Size:1020Kb

API Specifications FP7-ICT-2009-5 257103 Deliverable D3.2 FP7-ICT-2009-5 257103 June 2011 D3.2: webinos phase I device, network, and server-side API specifications FP7-ICT-2009-5 257103 D3.2: webinos phase I device, network, and server-side API specifications page: 2 of 396 Project Number : FP7-ICT-2009-5 257103 Project Title : Secure WebOS Application Delivery Environment (webinos) Deliverable Type : Public Deliverable Number : D 3.2 Contractual Delivery Date : June, 30th, 2011 Actual Date of Delivery : June, 30th, 2011 Title of Deliverable : webinos phase I device, network, and server-side API specifications Contributing Work Package : WP 3 Nature of Deliverable : Report Editor : SonyEricsson Authors : Fraunhofer FOKUS, Deutsche Telekom, ERCIM, Telecom Italia, TNO, BMW F+T, SonyEricsson., ISMB, Document History Version Date Author (Partner) Remarks 0.9 01/07/2011 SonyEricsson Initial version created from Wiki 1.0 α 04/07/2011 Fraunhofer FOKUS Updated, Word-formatted version This work is partially funded by webinos, an EU-funded project under the EU FP7 ICT Programme, No 257103. FP7-ICT-2009-5 257103 page: 3 of 396 D3.2: webinos phase I device, network, and server-side API specifications Abstract This deliverable covers the APIs to be implemented by a webinos device. According to the use cases and requirements defined in WP2 and the common components introduced in task 3.1, task 3.2 has defined a set of application programming interface specifications (APIs) to make the desired functionalities available to webinos applications. Due to earlier or ongoing standardization and implementation activities, e.g. within W3C and WAC, some needed APIs are already specified and available in modern browsers. Other APIs have been specified but implementations have not yet been established in existing browsers.Some APIs needed to fulfill webinos functionality do not yet exist so these APIs have to be specified within the webinos project. A key feature of webinos is the ability to discover services on remote devices and access these services using APIs. For example, an application can use the core webinos Service Discovery API to search for a geolocation service on another device and then access this service through the standard W3C Geolocation API. The webinos APIs can be divided into a number of categories: • Webinos base and generic objects/interfaces: For example the webinos core interface • APIs for service discovery and remote API access: APIs allowing applications to discover other devices and services/applications on other devices and on network servers and access these remote services. • HW Resources APIs: APIs allowing applications to access information and functionality relating to device HW resources such as GPS, camera, microphone, sensors, etc. • Application Data APIs: APIs allowing applications read and write access to application capabilites such as contact items, calender information, messages, media files, etc. • Communication APIs: APIs allowing applications to communicate with other applications in the same or another device. • Application execution APIs: APIs allowing webinos applications to launch other webinos and native applications. • User profile and context APIs: APIs allowing applications access to user profile data and user context. • Security and Privacy APIs: APIs related to the security model for webinos Note: This Word/PDF linear document represents only a snapshot of the specification for the purpose of review as a single document. The actual specification is located on the webinos redmine/Wiki. That version is the one relevant for the work within the project. Due to the close interworking between the specification and the implementation work packages in webinos, experience gained about gaps that need to be filled in the specification will be fed back directly into the online specification. The Word/PDF document has been exported from the online version and represents the status of the specification on June, 30th, 2011. Keyword list: webinos, specification, API, JavaScript, attestation, authentication, context, events, applauncher, messaging, nfc, payment, sensors, discovery, tv, suerprofile, vehicle, webinoscore, widget, calendar, contacts, device (status, interaction, orientation), file (reader, writer, directory), gallery, geolocation, media capture FP7-ICT-2009-5 257103 D3.2: webinos phase I device, network, and server-side API specifications page: 4 of 396 Content 1. INTRODUCTION ............................................................................................................... 8 2. ACKNOWLEDGEMENT .................................................................................................. 9 3. METHODOLOGY .............................................................................................................. 9 4. API LANDSCAPE ............................................................................................................. 10 World Wide Web Consortium (W3C) ............................................................................. 10 Web Hypertext Application Technology Working Group (WHATWG) ..................... 12 Wholesale Application Community (WAC) .................................................................... 12 PhoneGap ........................................................................................................................... 12 Nokia/Symbian Web Runtime environment ................................................................... 12 5. API TYPES ........................................................................................................................ 13 JavaScript APIs ................................................................................................................. 13 Using HTML-elements ...................................................................................................... 13 Using DOM events ............................................................................................................. 14 Using REST ........................................................................................................................ 14 6. API INVESTIGATIONS .................................................................................................. 14 HW Resource APIs ............................................................................................................ 15 This work is partially funded by webinos, an EU-funded project under the EU FP7 ICT Programme, No 257103. FP7-ICT-2009-5 257103 D3.2: webinos phase I device, network, and server-side API specifications page: 5 of 396 APIs for which no existing standards/implementations exist ........................................ 29 Application Data APIs....................................................................................................... 35 Communication APIs ........................................................................................................ 43 Application execution APIs............................................................................................... 48 Discovery APIs ................................................................................................................... 58 Security and Privacy APIs ................................................................................................ 65 User profile and context APIs ........................................................................................... 67 7. TOOLS FOR API SPECIFICATIONS ........................................................................... 71 8. JS API DESIGN PATTERNS AND GUIDELINES ....................................................... 72 9. LIST OF WEBINOS PHASE 1 API SPECIFICATIONS ............................................. 73 10. APIS SPECIFIED BY WEBINOS ................................................................................... 76 API Summary .................................................................................................................... 76 APIs: The attestation module ........................................................................................... 78 APIs: The authentication module .................................................................................... 87 APIs: The context module ................................................................................................. 94 APIs: The events module ................................................................................................ 105 APIs: The AppLauncher module ................................................................................... 128 APIs: The messaging module .......................................................................................... 136 This work is partially funded by webinos, an EU-funded project under the EU FP7 ICT Programme, No 257103. FP7-ICT-2009-5 257103 D3.2: webinos phase I device, network, and server-side API specifications page: 6 of 396 APIs: The nfc module ...................................................................................................... 166 APIs: The payment module ............................................................................................ 187 APIs: The sensors module ............................................................................................... 202 APIs: The discovery module ........................................................................................... 217 APIs: The tv module .......................................................................................................
Recommended publications
  • Real-Time Monitoring of a Mobile Ticketing Solution
    Journal of Traffic and Logistics Engineering Vol. 7, No. 2, December 2019 Real-Time Monitoring of a Mobile Ticketing Solution Marta Campos Ferreira, Teresa Galvão Dias, and João Falcão e Cunha Universidade do Porto – Faculdade de Engenharia, Porto, Portugal Email: {mferreira, tgalvao, jfcunha}@fe.up.pt Abstract—Mobile ticketing in public transportation is problems for the customers that fully utilize the mobile starting to replace the old ticket card. As technology evolves, ticketing solution. It also provides a fast and steady there is the need to reduce the complexity of existing public approach to facilitate flaw and error handling. transportation systems. Usually, it is required that users The paper organized as follows: the next section memorize different areas of the city, know the exchanging presents the related work concerning monitoring systems points and the complete schedule for a specific transportation vehicle. This context, together with the fact and the main approaches to mobile ticketing solutions. that technology is rising as fast as ever and that the users are Section 3 describes current fare system of the increasingly accepting mobile payment solutions, motivated Metropolitan Area of Porto. Section 4 presents the future the development of a new solution for mobile ticketing. This mobile ticketing solution, Anda, which is the system solution is based on existing technologies, such as Near Field being monitored in the present paper. Section 5 expands Communication and Bluetooth Low Energy beacons on the monitoring system, explaining in detail the through a Check-In/Be-Out system and one of its main proposed approach, technologies and main goals of the objectives is to eliminate the need for users to understand monitoring.
    [Show full text]
  • Practical API Design: Confessions Practical API Design of a Java™ Framework Architect
    CYAN YELLOW MAGENTA BLACK PANTONE 123 C BOOKS FOR PROFESSIONALS BY PROFESSIONALS® THE EXPERT’S VOICE® IN JAVA™ TECHNOLOGY Companion eBook Available Practical API Design: Confessions API Design Practical of a Java™ Framework Architect Dear Reader, Maybe you’re standing in a bookstore, holding this book in your hand, and ask- ing yourself, “Should I buy it?” Here is your answer. If you’ve ever written code and handed it to others to let them compile their code against yours, then you’re ready to enter the API design world and this book will help you explore it. Practical However, this book doesn’t attempt to “teach API design in five easy lessons.” It cannot be read in “only three days!” If you’re looking for a quick handbook, this book is probably not for you. On the other hand, if you’re interested in a deeper knowledge of API design, in knowing not only the how, but also the why, let me introduce myself to you before you put this book back on the shelf. My name is Jaroslav Tulach and I am the founder and initial architect of the NetBeans™ project, which is not just a well-known IDE, but also the first modu- lar desktop application framework written in the Java™ language. This book is based on notes that I’ve collected over the last ten years, while designing and API Design maintaining NetBeans APIs and transferring this knowledge to the rest of our developers. It’s a journal from the heart of the NetBeans laboratory, describing our problems, our growing understanding of them, the solutions we’ve chosen, ™ and the conclusions we made after applying them.
    [Show full text]
  • Exploring Mobile Ticketing in Public Transport an Analysis of Enablers for Successful Adoption in the Netherlands
    Exploring Mobile Ticketing in Public Transport An analysis of enablers for successful adoption in The Netherlands April 2017 Expertise Centre for E-ticketing in Public Transport S.K. Cheng Faculty of Faculty Industrial Design Engineering Exploring Mobile Ticketing in Public Transport An analysis of enablers for successful adoption in The Netherlands Analysis report April 2017 Delft University of Technology This report is part of the Expertise Centre for E-ticketing in Public Transport (X-CEPT). March 2017 (version 1.0) Author S.K. Cheng Project coordination Dr.ir. J.I. van Kuijk [email protected] Project execution S.K. Cheng Academic supervisors Dr.ir. G.J. Pasman Dr.ir. J.I. van Kuijk Translink supervisor M. Yntema Project partners GVB I. Keur NS P. Witmer RET J.P. Duurland List of definitions App. An abbreviation for application: a computer program or piece of software designed for a particular purpose that you can download onto a mobile phone or other mobile devices. Fare media. The collection of objects that travellers carry to show that a fare or admission fee has been paid. Paper tickets and the OV-chipkaart are fare media for example. Interaction. Bi-directional information exchange between users and equipment (ISO, 2013). User input and machine response together form an interaction. Journey & Trip. A journey refers to travelling from A to B, while a trip refers to a segment of the journey. A journey can consist of multiple trips. For example, when going from train station Delft to Beurs metro station in Rotterdam, the journey is from Delft to Beurs.
    [Show full text]
  • Amazon Silk Developer Guide Amazon Silk Developer Guide
    Amazon Silk Developer Guide Amazon Silk Developer Guide Amazon Silk: Developer Guide Copyright © 2015 Amazon Web Services, Inc. and/or its affiliates. All rights reserved. The following are trademarks of Amazon Web Services, Inc.: Amazon, Amazon Web Services Design, AWS, Amazon CloudFront, AWS CloudTrail, AWS CodeDeploy, Amazon Cognito, Amazon DevPay, DynamoDB, ElastiCache, Amazon EC2, Amazon Elastic Compute Cloud, Amazon Glacier, Amazon Kinesis, Kindle, Kindle Fire, AWS Marketplace Design, Mechanical Turk, Amazon Redshift, Amazon Route 53, Amazon S3, Amazon VPC, and Amazon WorkDocs. In addition, Amazon.com graphics, logos, page headers, button icons, scripts, and service names are trademarks, or trade dress of Amazon in the U.S. and/or other countries. Amazon©s trademarks and trade dress may not be used in connection with any product or service that is not Amazon©s, in any manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored by Amazon. AWS documentation posted on the Alpha server is for internal testing and review purposes only. It is not intended for external customers. Amazon Silk Developer Guide Table of Contents What Is Amazon Silk? .................................................................................................................... 1 Split Browser Architecture ......................................................................................................
    [Show full text]
  • Introduction to API Documentation Workbook July 28, 2018 Peter Gruenbaum
    Introduction to API Documentation Workbook July 28, 2018 Peter Gruenbaum Table of Contents Exercise 1: Markdown............................................................................................................ 3 Exercise 2: Create a JSON file ................................................................................................. 4 Exercise 3: Document JSON files............................................................................................. 7 Exercise 4: Making REST Requests ........................................................................................ 11 Exercise 5: Documenting Method and URL ........................................................................... 16 Exercise 6: Using Query Parameters ..................................................................................... 17 Exercise 7: Documenting Query Parameters ......................................................................... 19 Discounts for Online Classes ................................................................................................ 21 Schedule for July 28, 2018 8:30 Registration and Introduction 9:00 Markdown 9:30 Data Types and JSON 10:15 Documenting JSON 11:00 Break 11:15 Structured Data for Docs 11:30 REST: Methods 12:15 Lunch 12:45 REST: URLs 1:30 REST: Query parameters 2:15 Break 2:30 Tools and Next Steps 2:45 Q&A © 2018 SDK Bridge, all rights reserved 2 Exercise 1: Markdown Follow these steps: 1. Go to https://stackedit.io/ 2. Click on Start Writing at the top 3. Delete any text that currently
    [Show full text]
  • Gartner Analyst Relations Forum
    Why Enterprise AR Should Care About Consumer IT Martin Reynolds, GTM Gartner Consumer Research 1 We are entering a new era of personal computing. The cloud will replace the PC as the location where users keep their personal content, access their services, and personal preferences and center their digital lives. It will be the glue that connects the web of connected devices they choose to use during the different aspects of their daily life. Technology providers and IT organizations must align to this new reality of consumerization. Our Consumer Research Team • 40 analysts around the globe • Covers devices, services and consumer dynamics • Works across Gartner teams • Resegmenting forecasts to common definitions • Using economic and behavioral models • Integrating social content through the research 3 How Our Consumer Research Can Help AR to Help the Business Grow • Strategy • Product development • Marketing • Market & Competitive Intelligence Key Insights for Enterprise-only Providers: - All applications must face consumers - All tools must be “sticky” - Security must be positive, not negative - Behavior and needs, not features and speeds 4 Consumer Dynamics Market Segments and Buyer Behavior Consumer Infotainment Spending Will Grow Past $2.2 Trillion in 2014 Forces Content Megatrends 10% $200 Billion • A boost will come from CAGR 2010-2015 = 9% Mobile Services 35% mobile subscribers in $700 Billion CAGR 2010-2015 = 5% emerging markets. • Broadband will be Devices 28% available everywhere. $600 Billion Total Services CAGR 2010-2015 = 6%
    [Show full text]
  • Backup Server Archive API Company
    REFERENCE MANUAL | PUBLIC SAP Adaptive Server Enterprise 16.0 SP03 Document Version: 1.0 – 2019-01-15 Reference Manual: Backup Server Archive API company. All rights reserved. All rights company. affiliate THE BEST RUN 2019 SAP SE or an SAP SE or an SAP SAP 2019 © Content 1 Overview.................................................................. 3 1.1 Syntax.....................................................................3 1.2 Byte Stream Archive Command Options.............................................4 2 Application Programming Interface..............................................5 3 API Routines............................................................... 8 3.1 syb_defineapi................................................................8 3.2 syb_queryapi................................................................9 3.3 set_params................................................................ 10 3.4 syb_open..................................................................10 3.5 syb_close..................................................................11 3.6 syb_read.................................................................. 12 3.7 syb_write..................................................................13 4 Error Messages.............................................................15 4.1 Localization................................................................ 15 4.2 Error and Informational Messages................................................ 15 5 Dynamically Loadable Library..................................................17
    [Show full text]
  • Application/Json Headers Content-Type: Application/Json
    Documenting APIs with Swagger TC Camp Peter Gruenbaum Introduction } Covers } What is an API Definition? } YAML } Open API Specification } Writing Documentation } Generating Documentation } Alternatives to Swagger and the Open API Specification } Presentation and workbook at sdkbridge.com/downloads © 2018 SDK Bridge Peter Gruenbaum } PhD in Applied Physics from Stanford } Commercial Software Developer } Boeing, Microsoft, start-ups } C#, C++, Java, JavaScript, Objective-C } API Writer } Brought together writing and technology } Since 2003 } President of SDK Bridge } Teacher: Programming at middle, high school, and college © 2018 SDK Bridge API Definition } Swagger and the Open API Specification are ways to define an API } What is an API? } What can you do with an API definition? © 2018 SDK Bridge What are APIs? } Application Programming Interface } It defines how two pieces of software talk to each other } For this seminar, we are talking about Web APIs © 2018 SDK Bridge Web APIs API request API response Creative Commons Attribution 3.0. webdesignhot.com Creative Commons Attribution 3.0. Not a full web page ─ just the data! openclipart.org The API definition describes: • What requests are available • What the response looks like for each request © 2018 SDK Bridge REST } Swagger and the Open API Specification are designed for RESTful APIs } REST is a type of web API REpresentational State Transfer © 2018 SDK Bridge REST Requests and Responses Please send me the state of my feed API request API response I am transferring to you some data
    [Show full text]
  • Web Tracking: Mechanisms, Implications, and Defenses Tomasz Bujlow, Member, IEEE, Valentín Carela-Español, Josep Solé-Pareta, and Pere Barlet-Ros
    ARXIV.ORG DIGITAL LIBRARY 1 Web Tracking: Mechanisms, Implications, and Defenses Tomasz Bujlow, Member, IEEE, Valentín Carela-Español, Josep Solé-Pareta, and Pere Barlet-Ros Abstract—This articles surveys the existing literature on the of ads [1], [2], price discrimination [3], [4], assessing our methods currently used by web services to track the user online as health and mental condition [5], [6], or assessing financial well as their purposes, implications, and possible user’s defenses. credibility [7]–[9]. Apart from that, the data can be accessed A significant majority of reviewed articles and web resources are from years 2012 – 2014. Privacy seems to be the Achilles’ by government agencies and identity thieves. Some affiliate heel of today’s web. Web services make continuous efforts to programs (e.g., pay-per-sale [10]) require tracking to follow obtain as much information as they can about the things we the user from the website where the advertisement is placed search, the sites we visit, the people with who we contact, to the website where the actual purchase is made [11]. and the products we buy. Tracking is usually performed for Personal information in the web can be voluntarily given commercial purposes. We present 5 main groups of methods used for user tracking, which are based on sessions, client by the user (e.g., by filling web forms) or it can be collected storage, client cache, fingerprinting, or yet other approaches. indirectly without their knowledge through the analysis of the A special focus is placed on mechanisms that use web caches, IP headers, HTTP requests, queries in search engines, or even operational caches, and fingerprinting, as they are usually very by using JavaScript and Flash programs embedded in web rich in terms of using various creative methodologies.
    [Show full text]
  • Technical Writer
    Technical writer A technical writer (also called a technical communicator) is a professional writer who designs, writes, creates, maintains, and updates technical documentation. This documentation includes online help, user guides, white papers, design specifications, system manuals, and other documents. Engineers, scientists, and other professionals may also produce technical writing, usually handing their work to a professional technical writer for proofreading, editing, and formatting. A technical writer produces technical documentation for technical, business, and consumer audiences. Contents 1 Skill set 2 Qualifications 3 Methodology 4 Environment 5 Career growth 6 See also 7 References 8 External links Skill set In addition to solid research, language, and writing skills, a technical writer may have skills in: Information design Information architecture Training material development Illustration Typography Technical writing may be on any subject that requires explanation to a particular audience. A technical writer is not usually a subject matter expert (SME), but possesses and applies expertise to interview SMEs and conduct research necessary to produce accurate, comprehensive documents. Companies, governments, and other institutions typically hire technical writers not for expertise in a particular subject, but for expertise in technical writing, i.e., their ability to gather information, analyze subject and audience and produce clear documentation. A good technical writer creates documentation that is accurate, complete, unambiguous, and as concise as possible. Technical writers create documentation in many forms: printed, web-based or other electronic documentation, training materials, and industrial film scripts. Qualifications Technical writers work under many job titles, including Technical Communicator, Information Developer, Data Development Engineer, and Technical Documentation Specialist. In the United Kingdom and some other countries, a technical writer is often called a technical author or knowledge author.
    [Show full text]
  • Background and Purpose
    ATTACHMENT A Scope of Work RFP No. VRE-020-015 Page 1 VRE Mobile Ticketing System Virginia Railway Express SCOPE OF WORK _______________________________________________________________ 01. TICKET INFORMATION A. The existing VRE fare policy is structured on a distance-based zone system. There are nine (9) fare zones on the Fredericksburg line (with no stations currently in zone 7) and six (6) fare zones on the Manassas line. B. The validation policy for each ticket type made available on the mobile application is as follows: 1. Single-Ride, Day Pass, and Ten-Ride tickets must be validated before boarding trains. 2. 7-Day and 31-Day Passes must be validated at the time of first use. 3. Note: Calendar monthly tickets are currently not available on VRE Mobile. C. VRE’s fare structure is available at https://www.vre.org/service/fares/. D. VRE has a cross-honor agreement with Amtrak that allows the Amtrak Step-Up ticket to be used in conjunction with a multi-ride VRE ticket. Additional information on the Amtrak Step-Up Ticket can be found in Section 07 below and also at https://www.vre.org/service/fares/stepup/. E. VRE also offers 50% discounted tickets termed Reduced Fare Tickets for persons with disabilities, senior citizens and youths between the ages of 11 and 18. Additional information on the eligibility requirements for discounted tickets is found at https://www.vre.org/service/fares/reduced-fare-chart/. F. At the time of writing of this Scope of Work, VRE Mobile has monthly total sales averaging $1,000,000 and a monthly average of 20,000 tickets sold by the current moovel mobile ticketing system.
    [Show full text]
  • Rethinking Security of Web-Based System Applications
    Rethinking Security of Web-Based System Applications Martin Georgiev Suman Jana Vitaly Shmatikov University of Texas at Austin University of Texas at Austin University of Texas at Austin [email protected] [email protected] [email protected] ABSTRACT to support Web-based system applications, eroding the distinction Many modern desktop and mobile platforms, including Ubuntu, between desktop, mobile, and Web-based software. Google Chrome, Windows, and Firefox OS, support so called Web- Web-based system applications offer several attractive features. based system applications that run outside the Web browser and First, they are implemented in platform-independent Web languages enjoy direct access to native objects such as files, camera, and ge- and thus are portable, in contrast to native applications. In the- olocation. We show that the access-control models of these plat- ory, the developer can write the application once and it will run on forms are (a) incompatible and (b) prone to unintended delega- many desktop and mobile platforms. Second, they have access to tion of native-access rights: when applications request native ac- native functionality such as local files, camera, microphone, etc., cess for their own code, they unintentionally enable it for untrusted in contrast to conventional Web applications. Third, after they are third-party code, too. This enables malicious ads and other third- installed by the user, they can work offline, also in contrast to con- party content to steal users’ OAuth authentication credentials, ac- ventional Web applications. Fourth, they are easy to maintain and cess camera on their devices, etc. update by changing the Web code hosted on the developer’s site, in- stead of requiring all users to update their local copies.
    [Show full text]