idnits 2.17.1 draft-wilde-sms-uri-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year == The document seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (January 22, 2002) is 8129 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Possible downref: Non-RFC (?) normative reference: ref. 'HTML401' ** Obsolete normative reference: RFC 2234 (Obsoleted by RFC 4234) ** Obsolete normative reference: RFC 2396 (Obsoleted by RFC 3986) -- Possible downref: Non-RFC (?) normative reference: ref. 'SMS' -- Obsolete informational reference (is this intentional?): RFC 2368 (Obsoleted by RFC 6068) -- Obsolete informational reference (is this intentional?): RFC 2629 (Obsoleted by RFC 7749) -- Obsolete informational reference (is this intentional?): RFC 2806 (Obsoleted by RFC 3966) Summary: 4 errors (**), 0 flaws (~~), 3 warnings (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group E. Wilde 3 Internet-Draft Swiss Federal Institute of 4 Expires: July 23, 2002 Technology 5 A. Vaha-Sipila 6 Nokia 7 January 22, 2002 9 URI scheme for GSM Short Message Service 10 draft-wilde-sms-uri-00 12 Status of this Memo 14 This document is an Internet-Draft and is in full conformance with 15 all provisions of Section 10 of RFC2026. 17 Internet-Drafts are working documents of the Internet Engineering 18 Task Force (IETF), its areas, and its working groups. Note that 19 other groups may also distribute working documents as Internet- 20 Drafts. 22 Internet-Drafts are draft documents valid for a maximum of six months 23 and may be updated, replaced, or obsoleted by other documents at any 24 time. It is inappropriate to use Internet-Drafts as reference 25 material or to cite them other than as "work in progress." 27 The list of current Internet-Drafts can be accessed at http:// 28 www.ietf.org/ietf/1id-abstracts.txt. 30 The list of Internet-Draft Shadow Directories can be accessed at 31 http://www.ietf.org/shadow.html. 33 This Internet-Draft will expire on July 23, 2002. 35 Copyright Notice 37 Copyright (C) The Internet Society (2002). All Rights Reserved. 39 Abstract 41 This memo specifies a URI (Universal Resource Identifier) scheme 42 "sms" for specifying a recipient (and optionally a gateway) for an 43 SMS message. SMS messages are two-way paging messages that can be 44 sent from and received by a mobile phone or a suitably equipped 45 computer. 47 Table of Contents 49 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 50 1.1 The Short Message Service . . . . . . . . . . . . . . . . . 3 51 1.2 Universal Resource Identifiers . . . . . . . . . . . . . . . 3 52 1.3 SMS Messages and the Internet . . . . . . . . . . . . . . . 3 53 1.3.1 SMS Messages and the Web . . . . . . . . . . . . . . . . . . 4 54 1.3.2 SMS Messages and Forms . . . . . . . . . . . . . . . . . . . 4 55 2. The "sms" URI Scheme . . . . . . . . . . . . . . . . . . . . 5 56 2.1 Applicability . . . . . . . . . . . . . . . . . . . . . . . 5 57 2.2 Formal Definition . . . . . . . . . . . . . . . . . . . . . 6 58 2.3 Parsing an "sms" URI . . . . . . . . . . . . . . . . . . . . 6 59 2.4 Examples of Use . . . . . . . . . . . . . . . . . . . . . . 7 60 2.5 Using "sms" URIs in HTML Forms . . . . . . . . . . . . . . . 7 61 3. Security Considerations . . . . . . . . . . . . . . . . . . 8 62 4. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . 8 63 Normative References . . . . . . . . . . . . . . . . . . . . 9 64 Non-Normative References . . . . . . . . . . . . . . . . . . 9 65 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 10 66 A. Where to send Comments . . . . . . . . . . . . . . . . . . . 10 67 B. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10 68 Full Copyright Statement . . . . . . . . . . . . . . . . . . 11 70 1. Introduction 72 Compliant software MUST follow this specification. The capitalized 73 key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 74 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 75 document are to be interpreted as described in RFC 2119 [RFC2119]. 77 1.1 The Short Message Service 79 The Short Message Service (SMS) [SMS] is a rather simple service for 80 sending messages between SMS clients or, using so-called "Telematic 81 Interworking", from an SMS client through a gateway to a receiver 82 using a different service, such as fax or email. The SMS service is 83 described in more detail in the SMS service registration memo [draft- 84 wilde-sms-service-01]. 86 1.2 Universal Resource Identifiers 88 One of the core specifications for identifying resources on the 89 Internet is RFC 2396 [RFC2396], specifying the syntax and semantics 90 of a Universal Resource Identifier (URI). The most important notion 91 of URIs are "schemes", which define a framework within which 92 resources can be identified (and possibly accessed). URIs enable 93 users to identify resources, and are used for very diverse schemes 94 such as access protocols (HTTP, FTP), broadcast media (TV channels 95 [RFC2838]), messaging (email [RFC2368]), or even telephone numbers 96 (voice [RFC2806]). 98 URIs often are mentioned together with Universal Resource Names 99 (URNs) and/or Uniform Resource Locators (URLs), and it often is 100 unclear how to separate these concepts. For the purpose of this 101 memo, only the term URI will be used, referring to the most 102 fundamental concept. The World Wide Web Consortium (W3C) has issued 103 a note [uriclarify] discussing the topic of URIs, URNs, and URLs in 104 detail. 106 1.3 SMS Messages and the Internet 108 One of the important reasons for the universal access of the Web is 109 the ability to access all information through a unique interface. 110 This kind of integration makes it easy to provide information as well 111 as to consume it. One aspect of this integration is the support of 112 user agents (in the case of the Web, commonly referred to as 113 browsers) for multiple content formats (such as HTML, GIF, JPEG) and 114 access schemes (such as HTTP, HTTP-S, FTP). 116 The "mailto" scheme has proven to be very useful and popular, because 117 most user agents support it by providing an email composition 118 facility when the user activates (eg, clicks on) the URI. 119 Accordingly, the "sms" scheme could be supported by user agents by 120 providing an SMS message composition facility when the user activates 121 the URI. Alternatively, in cases where the user agent does not 122 provide a built-in SMS message composition facility, the scheme could 123 still be supported by opening a Web page which provides such a 124 service. The specific Web page to be used could be configured by the 125 user, so that each user could use the SMS message composition service 126 of his choice. 128 This goal of this memo is to specify the "sms" URI scheme, so that 129 user agents (such as Web browsers and email clients) could start to 130 support it. 132 1.3.1 SMS Messages and the Web 134 SMS messages can provide an alternative to a "mailto" URIs [RFC2368], 135 or "tel" or "fax" URIs [RFC2806]. When a "sms" URI is activated, the 136 user agent MAY start a program for sending an SMS message, just as 137 "mailto" may open a mail client. Unfortunately, most browsers do not 138 support the external handling of internally unsupported URI schemes 139 in the same generalized way as most of them support external handling 140 of additional MIME type content for types which they do not support 141 internally. Ideally, user agents should implement generic URI 142 parsers and provide a way to associate unsupported schemes with 143 external applications (or Web services). 145 The recipient of an SMS message need not be a mobile phone. It can 146 be a server that can process SMS messages, either by gatewaying them 147 to another messaging system (such as regular electronic mail), or by 148 parsing them for supplementary services. 150 SMS messages can be used to transport almost any kind of data (even 151 though there is a very tight size limit), but the only standardized 152 data formats are character-based messages in different character 153 encodings. SMS messages have a maximum length of 160 characters 154 (when using 7-bit characters from the SMS character set), or 140 155 octets. However, SMS messages can be concatenated to form longer 156 messages. It is up to the user agent to decide whether to limit the 157 length of the message, and how to indicate this limit in its user 158 interface, if necessary. There is one exception to this, see Section 159 2.5. 161 1.3.2 SMS Messages and Forms 163 The Hypertext Markup Language (HTML) [HTML401] provides a way to 164 collect information from a user and pass it to a server for 165 processing. This functionality is known as "HTML forms". A filled- 166 in form is usually sent to the destination using the Hypertext 167 Transfer Protocol (HTTP) or email. However, SMS messages can also be 168 used as the transport mechanism for these forms. As SMS transport is 169 "out-of-band" as far as normal HTTP over TCP/IP is concerned, this 170 provides a way to fill in forms offline, and send the data without 171 making a TCP connection to the server, as the set-up time, cost, and 172 overhead for a TCP connection are large compared to an SMS message. 173 Also, depending on the network configuration, the sender's telephone 174 number may be included in the SMS message, thus providing a weak form 175 of authentication. 177 2. The "sms" URI Scheme 179 Syntax definitions are given using the Augmented BNF for Syntax 180 Specifications [RFC2234]. 182 2.1 Applicability 184 This URI scheme is intended for sending an SMS message to a certain 185 recipient(s). The functionality is quite similar to that of the 186 "mailto" URL, which (as per RFC 2368 [RFC2368]) can also be used with 187 a comma-separated list of email addresses. 189 In some situations, it may be necessary to guide the sender to send 190 the SMS message via a certain SMSC. For this purpose, the URI may 191 specify the number of the SMSC. 193 SMS messages may be sent through gateways to other services. These 194 gateways are operated inside SMS centers. An "SMS" URI may specify 195 that a certain gateway should be used. 197 The notation for phone numbers is taken from [draft-allocchio-gstn- 198 01]. Refer to this document for information on why this particular 199 format was chosen. 201 How the SMS message is sent to the SMSC is outside the scope of this 202 specification. SMS messages can be sent over the GSM air interface, 203 by using a modem and a suitable protocol, or by accessing services 204 over other protocols, such as a Web service for sending SMS messages. 205 Also, SMS message service options like deferred delivery and delivery 206 notification requests are not in the scope of this document. Such 207 services MAY be requested from the network by the user agent if 208 necessary. 210 SMS messages sent as a result of this URI MUST be sent as class 1 SMS 211 messages, if the user agent is able to specify the message class. 213 2.2 Formal Definition 215 The URI is case-insensitive. The syntax of an "sms" URI is formally 216 described as follows, where the base syntax is taken from RFC 2396 217 [RFC2396]: 219 sms-uri = scheme ":" scheme-specific-part 220 scheme = "sms" 221 scheme-specific-part = 1*( sms-recipient ) 222 sms-recipient = gstn-phone sms-qualifier 223 [ "," sms-recipient ] 224 sms-qualifier = *( smsc-qualifier / pid-qualifier ) 225 smsc-qualifier = ";smsc=" SMSC-sub-addr 226 pid-qualifier = ";pid=" PID-sub-addr 228 The syntax definition for "global-phone" is taken from [draft- 229 allocchio-gstn-01], allowing global as well as local telephone 230 numbers. 232 The syntax definition for "SMSC-sub-addr" and "PID-sub-addr" is 233 derived from [draft-wilde-sms-service-01], please refer to that 234 document for the syntax of the qualifier values. 236 It should be noted that both the SMSC as well as the PID qualifier 237 may appear only once per sms-recipient. If multiple qualifiers are 238 present, conforming software MUST interpret the first occurrence and 239 ignore all other occurrences. 241 2.3 Parsing an "sms" URI 243 The following list describes the steps for processing an "sms" URI: 245 1. The "gstn-phone" of the first "sms-recipient" is extracted. It 246 is the phone number of the final recipient and it MUST be written 247 in international form with country code, unless the number only 248 works from inside a certain geographical area or a network. Note 249 that some numbers may work from several networks but not from the 250 whole world - these SHOULD be written in international form. 251 According to [draft-allocchio-gstn-01], all international numbers 252 MUST begin with a "+" character. Hyphens and dots are only to 253 aid readability. They MUST NOT have any other meaning. 255 2. The "smsc-qualifier" of the first "sms-recipient" is extracted, 256 if present. 258 3. The "pid-qualifier" of the first "sms-recipient" is extracted, if 259 present. 261 4. The user agent should provide some means for message composition, 262 either by implementing this itself, or by accessing a service 263 providing it. If the "pid-qualifier" is set to "pid=SMTP:...", 264 then the user agents must make sure that the email address is 265 correctly set (as defined by the SMS specification [SMS]) in the 266 message being composed. 268 5. After message composition, a user agent SHOULD try to send the 269 message first using the SMSC set in the "smsc-qualifier" (if 270 present). If that fails, the user agent MAY try another SMSC. 272 6. If the URI consists of a comma-separated list of recipients (ie, 273 contains multiple "sms-recipient" parts), all of them are 274 processed in this manner. Exactly the same message SHOULD be 275 sent to all of the listed recipients. 277 2.4 Examples of Use 279 sms:+41796431851 281 This indicates an SMS message capable recipient at the given 282 telephone number. The message is sent using the user agent's default 283 SMSC. 285 sms:+41796431851;via=+41794999000 287 This indicates that the SMS message should be sent using the SMSC at 288 the given number. 290 sms:+41796431851,+4116321035;pid=fax 292 This URI should result in two SMS messages being sent, one to the 293 recipient number as shown in the example above, the other one being 294 sent as a fax to the second number. 296 sms:+41796431851;pid=smtp:ietf@dret.net 298 In this case, a message will be sent via SMS using the SMS to email 299 functionality in the SMSC, so that it will eventually result in an 300 email being sent to the specified email address. In this case, the 301 phone number will not be interpreted. 303 2.5 Using "sms" URIs in HTML Forms 305 When using a "sms" type URI as an action URI for HTML form submission 306 [HTML401], the form contents MUST be packaged in the SMS message just 307 as they are packaged when using a "mailto" URL [RFC2368], using the 308 "application/x-www-form-urlencoded" MIME type, effectively packaging 309 all form data into URI compliant syntax [RFC2396]. The SMS message 310 MUST NOT contain any HTTP headers, only the form data. The MIME type 311 is implicit. It MUST NOT be transferred in the SMS message. 313 The user agent SHOULD inform the user about the possible security 314 hazards involved when submitting the form (it is probably being sent 315 as plain text over an air interface). 317 If the form submission is longer than the maximum SMS message size, 318 the user agent MAY either concatenate SMS messages, if it is able to 319 do so, or it MAY refuse to send the message. The user agent MUST NOT 320 send out partial form submissions. 322 3. Security Considerations 324 The "Security Considerations" section of the SMS service registration 325 memo [draft-wilde-sms-service-01] MUST be consulted. 327 A user agent SHOULD NOT send out SMS messages without the knowledge 328 of the user, because of associated risks, which include sending 329 masses of SMS messages to a subscriber without his consent, and the 330 costs involved in sending an SMS message. 332 The user agent SHOULD have some mechanism that the user can use to 333 filter out unwanted destinations for SMS messages. The user agent 334 SHOULD also have some means of restricting the number of SMS messages 335 being sent as the result of activating one "sms" URI. 337 If an "sms" URI contains a "PID" qualifier and the user agent 338 supports the qualifier and its value, then the user agent MUST set 339 the SMS message's PID as specified by the qualifier. User agents MAY 340 inform users about the value and the functional consequences of PID 341 qualifiers (eg, by notifying users that sending the SMS effectively 342 will result in a fax message being delivered, rather than an SMS 343 message). 345 The Telematic Interworking functionality of the SMSC addressed by the 346 "PID" qualifier is not necessarily implemented by the SMSC being 347 used, and SMSC providers are known for not or not correctly 348 supporting some or all "PID" qualifier values. User agents SHOULD 349 take into account that the success rate of SMS messages being sent 350 using "PID" qualifiers is lower than that of "plain" SMS messages. 352 4. Change Log 354 none so far (first draft) 356 Normative References 358 [HTML401] Raggett, D., Le Hors, A. and I. Jacobs, 359 "HTML 4.01 Specification", W3C REC- 360 html401, December 1999, . 363 [RFC2119] Bradner, S., "Key words for use in RFCs 364 to Indicate Requirement Levels", RFC 365 2119, March 1997. 367 [RFC2234] Crocker, D. and P. Overell, "Augmented 368 BNF for Syntax Specifications: ABNF", 369 RFC 2234, November 1997. 371 [RFC2396] Berners-Lee, T., Fielding, R. and L. 372 Masinter, "Uniform Resource Identifiers 373 (URI): Generic Syntax", RFC 2396, 374 August 1998. 376 [SMS] European Telecommunications Standards 377 Institute, "Digital Cellular 378 Telecommunications System (Phase 2+); 379 Technical realization of the Short 380 Message Service (SMS); Point-to-Point 381 (PP)", December 1998, . 384 [draft-allocchio-gstn-01] Allocchio, C., "Text string notation 385 for Dial Sequences and GSTN / E.164 386 addresses", draft-allocchio-gstn-01 387 (work in progress), November 2001. 389 [draft-wilde-sms-service-01] Wilde, E., "Registration of GSTN SMS 390 Service Qualifier", draft-wilde-sms- 391 service-01 (work in progress), January 392 2002. 394 Non-Normative References 396 [RFC2368] Hoffmann, P., Masinter, L. and J. Zawinski, "The mailto 397 URL scheme", RFC 2368, June 1998. 399 [RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, 400 June 1999. 402 [RFC2806] Vaha-Sipila, A., "URLs for Telephone Calls", RFC 2806, 403 April 2000. 405 [RFC2838] Zigmond, D. and M. Vickers, "Uniform Resource 406 Identifiers for Television Broadcasts", RFC 2838, May 407 2000. 409 [uriclarify] World Wide Web Consortium, "URIs, URLs, and URNs: 410 Clarifications and Recommendations 1.0", W3C uri- 411 clarification , September 2001, . 414 Authors' Addresses 416 Erik Wilde 417 Swiss Federal Institute of Technology 418 ETH-Zentrum 419 8092 Zurich 420 Switzerland 422 Phone: +41-1-6325132 423 EMail: ietf@dret.net 424 URI: http://dret.net/netdret/ 426 Antti Vaha-Sipila 427 Nokia 429 EMail: antti.vaha-sipila@nokia.com 431 Appendix A. Where to send Comments 433 Please send all comments about this document to Erik Wilde. 435 Appendix B. Acknowledgements 437 This document has been written using the IETF document DTD described 438 in RFC 2629 [RFC2629]. 440 Thanks to Claudio Allocchio for his comments. 442 Full Copyright Statement 444 Copyright (C) The Internet Society (2002). All Rights Reserved. 446 This document and translations of it may be copied and furnished to 447 others, and derivative works that comment on or otherwise explain it 448 or assist in its implementation may be prepared, copied, published 449 and distributed, in whole or in part, without restriction of any 450 kind, provided that the above copyright notice and this paragraph are 451 included on all such copies and derivative works. However, this 452 document itself may not be modified in any way, such as by removing 453 the copyright notice or references to the Internet Society or other 454 Internet organizations, except as needed for the purpose of 455 developing Internet standards in which case the procedures for 456 copyrights defined in the Internet Standards process must be 457 followed, or as required to translate it into languages other than 458 English. 460 The limited permissions granted above are perpetual and will not be 461 revoked by the Internet Society or its successors or assigns. 463 This document and the information contained herein is provided on an 464 "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING 465 TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 466 BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 467 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 468 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 470 Acknowledgement 472 Funding for the RFC Editor function is currently provided by the 473 Internet Society.