Email Notifier Template 1.0
1. Introduction
An email notifier service allows a URC client to send email messages through a service exposed on a URC target. The service abstracts away the details of the underlying mail transport, exposing a simple set of variables and commands that controllers can present in any modality — graphical, voice, switch-based, or screen-reader-driven — without needing to understand SMTP, MIME encoding, or authentication against a mail server. The template defined in this specification gives controller authors a stable contract for interacting with any email-capable URC service.
The notifier pattern, of which the email notifier is one instance, is the canonical way to expose simple "fire and forget" actions in the URC framework. The user constructs a message, the controller sends it to the service, and the service confirms whether the action succeeded. The pattern supports the broader goal of the URC framework: letting users with disabilities or with non-standard input devices interact with services that were never designed with accessibility in mind.
2. Conformance
A service conforms to this specification if either of the following is true. First, the service’s user interface socket inherits from the template socket provided in section 3 of this document. Second, the service’s user interface socket description has all of the following characteristics:
- The socket description references the template socket through the Dublin Core
sourceelement<dc:source>. - The socket description contains all sets of the template socket in an unmodified form.
- All mandatory variables and commands defined by the template are present, with the cardinalities and data types specified by the template.
- Optional elements that the service implements are present in the form defined by the template.
3. Master Documents
The master documents for this template comprise the User Interface Socket Description in XML, the Resource Property file describing the template metadata, and the example Atomic Resources used in controller-rendered presentations. The master documents are stored in the openURC Resource Server and may be retrieved using the operations defined in Resource Server HTTP Interface 1.0.
The socket description defines four input variables for composing an email message: to (a list of recipient addresses), cc (a list of optional carbon-copy recipients), subject (a string), and body (a multi-line string). It defines a single command, send, which submits the constructed message to the underlying mail transport. The socket description defines two notifications: sent, which fires when the message is successfully delivered to the local mail transport agent, and error, which fires when the message cannot be sent and carries an error code identifying the failure mode.
4. References
- [ISO/IEC 24752-1] — ISO/IEC 24752-1:2014, Information Technology — User Interfaces — Universal Remote Console — Part 1: Framework.
- [ISO/IEC 24752-2] — ISO/IEC 24752-2:2014, Part 2: User Interface Socket Description.
- [ISO/IEC 24752-4] — ISO/IEC 24752-4:2014, Part 4: Target Description.
- [ISO/IEC 24752-5] — ISO/IEC 24752-5:2014, Part 5: Resource Description.
- [RES-SERV-HTTP] — Resource Server HTTP Interface 1.0, openURC Alliance, March 2014.
- [RFC 5321] — IETF RFC 5321, Simple Mail Transfer Protocol, October 2008.