11.07.2015 Views

Sending SMS using the Application Programming Interface - MCTel

Sending SMS using the Application Programming Interface - MCTel

Sending SMS using the Application Programming Interface - MCTel

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2IntroductionIntroductionMost people in developed countries own a mobile phone and <strong>the</strong> recreational and professionaluse of mobile applications and services is growing at a very fast rate. The mobile phonemarket has now reached maturity regarding <strong>the</strong> usage of voice calls, but <strong>the</strong> mobile andconsumers data applications are only beginning <strong>the</strong>ir expansion.With VIDEO<strong>SMS</strong> software set, Monaco Telematique MCTEL offers a complete solution toeasily integrate this new technology to offer to your customers and users advancedapplications that could be reached from any mobile phone, anywhere, anytime.Monaco Telematique MCTEL <strong>SMS</strong> solutions include a complete service and software packallowing to easily send and process <strong>SMS</strong> from your computer applications and Web services.Amongst those functions, <strong>the</strong> HTTP/HTML Web interface, described in this manual, allowsany computer application or Web service to send <strong>SMS</strong> messages by simply sending a HTTPGET or POST request.How <strong>SMS</strong> works ?<strong>SMS</strong> stands for Short Message Service, a mobile facility allowing to send and receive text oreven binary messages to and from a mobile phone.<strong>SMS</strong> are very easy to use even if <strong>the</strong> mobile phone keyboard is usually not very well suited toalphabetic data collection. More than 160 billion <strong>SMS</strong> are exchanged each month in Europeancountries.<strong>SMS</strong> use <strong>the</strong> GSM special signaling channel instead of <strong>the</strong> voice channel and is <strong>the</strong>refore avery reliable media channel. <strong>SMS</strong> may often be transmitted even when <strong>the</strong> mobile network isoverloaded 1According to <strong>the</strong> origin of <strong>the</strong> message, <strong>SMS</strong> could be named:• Mobile Originated (MO): <strong>SMS</strong>-MO are sent from a mobile phone and could be sentei<strong>the</strong>r to ano<strong>the</strong>r mobile phone (such when a mobile subscriber sends a personalmessage to ano<strong>the</strong>r subscriber) or to a computer application that will process <strong>the</strong>message.• Mobile Terminated (MT): <strong>SMS</strong>-MT are transmitted to a mobile phone. They alsocould be sent by ano<strong>the</strong>r mobile phone or generated by a computer application.The <strong>SMS</strong> processing computer applications usually runs on corporate servers that areconnected to <strong>the</strong> <strong>SMS</strong> network through specialized connectors and gateways connected to <strong>the</strong><strong>SMS</strong> Centers of mobile operators. As <strong>the</strong>y are processing huge number of <strong>SMS</strong> and in order1 The only exception beeing <strong>the</strong> new year event where even <strong>the</strong> GSM signalling channel is congested byhundreds of millions of <strong>SMS</strong> exchanged by users.Monaco Telematique MCTEL 5 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2to make <strong>the</strong>m easier to remember, <strong>the</strong>se servers are assigned short numbers instead of <strong>the</strong>traditional 10-digits mobile numbers. These short numbers are called short codes and containsonly 4 to 6 digits.Each short number is usually specific to a given country and shared by all operators of <strong>the</strong>country.Glossary• Alias : in several countries, on Premium <strong>SMS</strong> services, <strong>the</strong> user mobile number(MSISDN) is masked by <strong>the</strong> operator and replaced by an unique alias number, in orderto avoid <strong>the</strong> creation of unauthorized mobile numbers databases for marketingpurposes byh <strong>the</strong> information provider.• Short code : abbreviated number (usually from 4 to 6 digits) allocated to a <strong>SMS</strong>server running Premium <strong>SMS</strong> applications and allowing <strong>the</strong> user to send his/hermessage to a short code easy to remember instead of a 10 digits full mobile number.• OTA (Over <strong>the</strong> Air) : this technology is used to download binary data to a mobilephone, for example : logos, ringtones, email or Wap configuration download by <strong>the</strong>mobile operator, SIM card customization by mobile network operator.• Push-<strong>SMS</strong> : sending an unsolicited <strong>SMS</strong>-MT to a mobile user.• <strong>SMS</strong> = Short Message Service : short text or binary message exchanged between twomobile phones 2 or a mobile phone and a computer application.• <strong>SMS</strong>-C : <strong>SMS</strong> Service Center : is <strong>the</strong> <strong>SMS</strong> transmission platform run by <strong>the</strong> mobileoperator. It uses a specific protocol to exchange <strong>SMS</strong> messages between mobilephones and <strong>the</strong> VIDEO<strong>SMS</strong> software (ei<strong>the</strong>r installed on a customer system or run by<strong>the</strong> Monaco Telematique shared host center). The <strong>SMS</strong>-C use a store and forwardtechnology allowing it to store a message until a given mobile phone becomesreachable. Monaco Telematique VIDEO<strong>SMS</strong> software is able to interwork with any<strong>SMS</strong>-C worldwide.• <strong>SMS</strong>-MO (Mobile Originated) : <strong>SMS</strong> sent from a mobile phone.• <strong>SMS</strong>-MT (Mobile Terminated) : <strong>SMS</strong> sent to a mobile phone.2 In numerous countries, it is also possible to send and receive <strong>SMS</strong> message from ordinary or advanced phonesconnected to <strong>the</strong> switched telephonic network.Monaco Telematique MCTEL 6 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2What could be done with <strong>SMS</strong> services ?The applications of <strong>SMS</strong> are nearly endless : this channel could be used to offer a wide rangeof services to mobile users.Bulk <strong>SMS</strong> : sending personalized messages to recipients<strong>SMS</strong> is a very effective way to send immediately a customized message to one or thousandsof users.Figure 1: A computer system or application sends automatically personalized <strong>SMS</strong>-MT to mobilerecipientsThey could be used to:• Improve communication between employees by integrating <strong>SMS</strong> within <strong>the</strong>enterprise messaging system and o<strong>the</strong>r integrated software (ERP) :o It is possible to send a message through <strong>SMS</strong> from <strong>the</strong> enterprise messagingsystem.o Any company application could automatically dispatch information through<strong>SMS</strong> to its intended recipient.o The company ERP or a secretary could automatically forward to <strong>the</strong> user:• His new appointments: <strong>using</strong> vCalendar format, <strong>the</strong>y will be displayedand automatically entered in <strong>the</strong> phone calendar application.• His new customers data: <strong>the</strong>y will be displayed and automaticallyentered in <strong>the</strong> mobile directory thanks to <strong>the</strong> vCard format.o <strong>SMS</strong> is a very reliable network : all messages will be acknowledged by <strong>the</strong>network when received by mobile recipient. In case of transmission problem(e.g. mobile unreachable), an alarm could be generated and <strong>the</strong> message couldbe automatically routed through ano<strong>the</strong>r network (e.g. fax).• Send informational or promotional messages, customized or not. For example :o Banks could send account balances at regular intervals.o A company could perform direct marketing operations to its customers.• Automatically send time-sensitive personalized information at predefined timesor when a given event occurs : <strong>the</strong> user could subscribe in advance to <strong>the</strong> service<strong>using</strong> <strong>SMS</strong>, Web, or any o<strong>the</strong>r method and he select which kind of information he willMonaco Telematique MCTEL 7 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2receive. The <strong>SMS</strong> application will <strong>the</strong>n send him at predefined times or when a giveneven occurs:o Updated informations :• Wea<strong>the</strong>r of <strong>the</strong> day• Account balance• Daily news alerts• Sports updateso Alarm messages :• Account balance debtor.• Delay or cancellation of a flight.• Postponement of an appointmento Specific message on a given event:• When a stock value reach a given amount.• When an ad matching <strong>the</strong> criteria specified in advance is passed.• When a given news event occur (e.g. sporting match result).• When a pre-sold item becomes available.• And so on.Device customizationThe market of phone set customization is currently a very lucrative service in Europe: usersare choosing and downloading ringtones, logos or images on <strong>the</strong>ir handset.Although simple in principle, <strong>the</strong>se services are complicated by <strong>the</strong> wide variety of handsetsand supported standards. The added value of <strong>the</strong>se services remains quite low: <strong>the</strong> user ask fora ringtone or a logo and get it, ei<strong>the</strong>r through <strong>SMS</strong> or Wap push.More added value applications may be built where <strong>the</strong> user download a Java game to be runon <strong>the</strong>ir phone. Advanced game or applications may be downloaded this way, and are selectedei<strong>the</strong>r by <strong>SMS</strong> or more often via mobile Wap browsing.Interactive processing : answering user requestThose applications may offer very high added value as <strong>the</strong>y may allow any mobile user toperform any kind of request thru <strong>the</strong>ir mobile phone.From <strong>the</strong> text content of <strong>the</strong> request <strong>SMS</strong> transmitted by <strong>the</strong> user, <strong>the</strong> server will be able toperform any kind of data processing: relational database search,The exclusive Monaco Telematique <strong>SMS</strong> Grabber and Formatter technology allows toautomatically perform search on existing Web sites, FTP files, videotex or computerapplications according to user requests to immediately create a high value added <strong>SMS</strong> servicetaking advantage of <strong>the</strong> existing applications without any new development.Monaco Telematique MCTEL 8 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2Figure 2: Example of interactive <strong>SMS</strong> service : <strong>the</strong> user sends a <strong>SMS</strong>-MO request that will be forwardedby his mobile network operator to <strong>the</strong> host server of <strong>the</strong> information provider. After processing, <strong>the</strong>information provider will send back one (or several) <strong>SMS</strong>-MT in answer with <strong>the</strong> requested information.Amongst possible examples :• Real-time request by sale forces of available stock of a given item with current price.• <strong>SMS</strong> online banking operations: get account balance, get an alarm <strong>SMS</strong> message if <strong>the</strong>balance is negative,• Taxi request: <strong>the</strong> system may even in some countries find <strong>the</strong> user geographicalposition in order to forward him <strong>the</strong> nearest taxi.• Get <strong>the</strong> status of a plane flight.• Interworking between <strong>SMS</strong> network and o<strong>the</strong>r networks: fax, email, telex, and so on.• Meteorological information retrieval ei<strong>the</strong>r for <strong>the</strong> general public or for special uses(aeronautical, nautical, mountain…).• Games.The Premium model allows <strong>the</strong> <strong>SMS</strong> information provider to get paid for each userrequest: depending on <strong>the</strong> short number used, charging rate selected and his contract with <strong>the</strong>network operator, <strong>the</strong> information provider will earn a given amount at each <strong>SMS</strong>-MO requestsent by a mobile user. The mobile user will be invoiced directly on his phone bill by hisnetwork operator, and <strong>the</strong> network operator will pay back his share to <strong>the</strong> informationprovider.Monaco Telematique MCTEL 9 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2<strong>SMS</strong> characteristics<strong>SMS</strong> featuresSize and type of messagesShort messages may contain:• Text data : <strong>the</strong> size of a single text <strong>SMS</strong> may not exceed 160 characters.• Binary data, such ringtones and pictures : <strong>the</strong> size of a single binary <strong>SMS</strong> is limitedto 140 bytes. Binary <strong>SMS</strong> may be used:o to send a ringtone or logo to <strong>the</strong> mobile.o to push a Wap URL (Wap Push command) to <strong>the</strong> mobile, allowing <strong>the</strong> user toconnect to <strong>the</strong> pushed URL in order to access a Wap service or to downloadany kind of content: ringtone, picture, executable content.o to send OTA (Over The Air) commands to configure <strong>the</strong> mobile remotely.It is never<strong>the</strong>less possible to transmit longer messages : a longer message can be split and sentas several <strong>SMS</strong> messages that will be ‘concatenated’ upon reception by <strong>the</strong> mobile in order toreconstitute <strong>the</strong> complete original message.Transmission mechanism, error processing, time to live<strong>SMS</strong> are transmitted by <strong>the</strong> mobile network operator to <strong>the</strong> <strong>the</strong> recipient mobile phone of <strong>the</strong>susbcriber. When <strong>the</strong> recipient is unreachable (mobile offline or outside network coverage forexample), <strong>the</strong> message will be stored in <strong>the</strong> <strong>SMS</strong> Center of <strong>the</strong> mobile operator to betransmitted again should <strong>the</strong> mobile becomes available.After a given time delay (<strong>the</strong> <strong>SMS</strong> time to live), <strong>the</strong> <strong>SMS</strong> will be destroyed if not successfullytransmitted and a non-delivery acknowledgment will be returned to <strong>the</strong> sender.The application generating <strong>the</strong> <strong>SMS</strong> may define :• The maximal <strong>SMS</strong> time to live that could not exceed a limit depending on <strong>the</strong> network(often 3 days).• The transmission date and time for delayed <strong>SMS</strong> : <strong>the</strong>y will be stored and transmittedonly after specified time.Display and storage modesThe processing of <strong>the</strong> received <strong>SMS</strong> may vary depending on <strong>the</strong> <strong>SMS</strong> message class:• Message stored in <strong>the</strong> phone memory.• Message stored on SIM. If <strong>the</strong> SIM is full, <strong>the</strong> <strong>SMS</strong> may be lost.Monaco Telematique MCTEL 10 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2• Flash message displayed immediately on <strong>the</strong> screen. The advantage is <strong>the</strong> display doesnot need any user action. The drawback is <strong>the</strong> message will not be stored and will bedestroyed after reading.AcknowledgementsThe sending computer application may get an acknowledgement when <strong>the</strong> <strong>SMS</strong> has beensuccessfully transmitted to its recipient or an error status with detailed error cause in case ofproblem.The computer application may at all time retrieve <strong>the</strong> current message status:• <strong>SMS</strong>-MT submitted to <strong>the</strong> gateway.• <strong>SMS</strong>-MT transmitted to mobile operator <strong>SMS</strong>-C.• <strong>SMS</strong>-MT delivered to <strong>the</strong> mobile phone.• <strong>SMS</strong>-MT could not be delivered to <strong>the</strong> mobile phone, with error cause. Depending on<strong>the</strong> error cause, retries may be performed or not.Interworking with <strong>SMS</strong> networksThe link between your computer applications or Web service and <strong>the</strong> mobile networkoperators <strong>SMS</strong>-Centers is provided by <strong>the</strong> MCTEL worldwide Video<strong>SMS</strong> Gateway.With this solution, your could run on your own computer systems your value-addedapplications <strong>using</strong> <strong>the</strong> client/server VIDEO<strong>SMS</strong> interfaces to use <strong>the</strong> Monaco Telematiqueworldwide <strong>SMS</strong> shared hosting center for network connectivity. In this case, you will get <strong>the</strong>same flexibility and advanced processing features than if you would have purchased acomplete <strong>SMS</strong> server, without <strong>the</strong> associated costs and without <strong>the</strong> need to connect andmanage all <strong>SMS</strong> mobile networks connectivity.However this solution is completely flexible and your could anytime purchase a Video<strong>SMS</strong>gateway from MCTEL, in order to operate yourself your own <strong>SMS</strong> gateway, running on asystem in your premises where Video<strong>SMS</strong> Gateway has been installed. Your system must beconnected and interwork with all mobile networks operators or international gateways neededfor your application. That means that networking and infrastructure costs are to be taken inaccount.Monaco Telematique MCTEL 11 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2How to send <strong>SMS</strong> automatically (push-<strong>SMS</strong>)The automated sending of personalized <strong>SMS</strong> from computer applications, Web sites,enterprise messaging system or emailing tools could be set up very quickly, at a very lowcost, and without setup fee. The only requirement is to have an Internet access available(X.25 also supported).<strong>Sending</strong> <strong>SMS</strong> from computer applications or Web sitesFrom any PC, computing application or Web site, it is very easy to send <strong>SMS</strong> :• No specific equipment is needed, as <strong>the</strong> Monaco Telematique gateway will take incharge <strong>the</strong> interworking with <strong>the</strong> mobile operators. Of course, if <strong>the</strong> customer wish, acomplete <strong>SMS</strong> gateway may also be supplied and installed on <strong>the</strong> customer computercenter: in this case <strong>the</strong> customer will be directly connected to <strong>the</strong> mobile operators.• Push <strong>SMS</strong> sending tools are supplied free of charge: PC program, HTTP/HTMLand FTP/XML tools, API.• No subscription is necessary, <strong>the</strong> only cost incurred are <strong>the</strong> transmission costs of <strong>the</strong><strong>SMS</strong> successfully sent.From <strong>the</strong> IT manager point of view, <strong>the</strong> integration of push <strong>SMS</strong> functions in <strong>the</strong> companycomputing applications, ERP and messaging system is very quick and easy. The push <strong>SMS</strong>could be sent:• Calling a Web cgi on <strong>the</strong> MCTEL Web/<strong>SMS</strong> gateway.• Creating a XML text file describing <strong>the</strong> <strong>SMS</strong> to send and transmit it to MonacoTelematique <strong>SMS</strong> gateway through FTP or <strong>using</strong> a XML sender.• Integrating <strong>the</strong> VIDEO<strong>SMS</strong>/Client functions within <strong>the</strong> computer applications : forexample sms_send function request <strong>the</strong> transmission of a push <strong>SMS</strong>, <strong>the</strong>sms_read_status get back <strong>the</strong> <strong>SMS</strong> transmission status.Integrating Push-<strong>SMS</strong> send to any computer application or Web service is very easy andcould be setup almost immediately. Several methods could be used to send <strong>the</strong> <strong>SMS</strong> (alldocuments could be downloaded from http://www.smsfax.com ):• HTTP/HTML Web interface, described in this document.• FTP/XML file interface, documented in <strong>the</strong> "Video<strong>SMS</strong> FTP/XML <strong>Interface</strong>Manual".• SMTP email interface.• The Video<strong>SMS</strong> <strong>Application</strong> <strong>Programming</strong> <strong>Interface</strong> (API), described in <strong>the</strong>"Video<strong>SMS</strong> <strong>Application</strong> <strong>Programming</strong> <strong>Interface</strong> Functions Manual".PrerequisitesUsing <strong>the</strong> HTTP/HTML Web interface, you only need to send a HTTP GET or POST requestto a Web URL to integrate <strong>SMS</strong> functions in your applications and Web services.Monaco Telematique MCTEL 12 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2If your network is secured by a firewall, it must be configured to allow outgoing calls to <strong>the</strong><strong>SMS</strong> Web gateway of Monaco Telematique, on <strong>the</strong> port 80 (as this is <strong>the</strong> standard port forWeb, this is usually already configured in <strong>the</strong> company firewall).User <strong>Interface</strong> ErgonomicsWhen sending push-<strong>SMS</strong>, try to design <strong>the</strong> content of <strong>the</strong> <strong>SMS</strong> in order to keep in mindergonomics recommendations to offer <strong>the</strong> best possible service for <strong>the</strong> <strong>SMS</strong> recipient.Message sizeSend <strong>SMS</strong> of reasonable size, as a single text <strong>SMS</strong> message could not exceed 160 characters.It is never<strong>the</strong>less possible to send bigger <strong>SMS</strong> messages: <strong>the</strong>y will be automatically split intoseveral smaller messages and concatenated by <strong>the</strong> recipient mobile phone.Regarding <strong>SMS</strong> message size :• A single <strong>SMS</strong> message may contain up to 160 alphanumeric characters encoded toGSM format 3 . If <strong>the</strong> message size is greater, <strong>the</strong> message will be split in several partstransmitted as separated <strong>SMS</strong>. The recipient mobile phone will automaticallyconcatenate <strong>the</strong> received parts in order to reconstitute <strong>the</strong> original complete message.On most phones, up to 3 parts are supported, allowing a maximum message size of469 characters (less than 160 x 4, because for concatenated messages, 7 header bytesare used to store concatenation information).• A binary <strong>SMS</strong> could contain up to 140 bytes. It is also to split a greater message totransmit up to 384 bytes in 3 <strong>SMS</strong> messages.Number of <strong>SMS</strong> Alphanumeric characters size Binary data sizemessages1 1 to 160 1 to 1332 161 to 206 134 to 2563 207 to 469 257 to 3844 4 470 to 623 385 to 512In order for an application to be able to send a large message, <strong>the</strong> easier way is to send to <strong>the</strong>mobile a Wap Push <strong>SMS</strong> message enabling <strong>the</strong> recipient to automatically connect and displaya Wap page containing <strong>the</strong> data (provided <strong>the</strong> recipient subscription and phone are Wapenabled).Presentation of most relevant data3 If <strong>the</strong> <strong>SMS</strong> alphabet encoding used is Unicode, usually used for non-latin alphabets (arabic, japanese,chineese), <strong>the</strong> size of a single <strong>SMS</strong> message could not exceed 70 Unicode characters.4 Numerous phones does not support <strong>the</strong> sending of more than 3 concatenated messages. Except if <strong>the</strong> recipientphone is known to support <strong>the</strong>m, it is <strong>the</strong>refore not recommended to send messages of more than 469alphanumeric characters 384 binary bytes.Monaco Telematique MCTEL 13 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2Most phones are not able to display <strong>the</strong> complete length of a big <strong>SMS</strong> message because of <strong>the</strong>small size of <strong>the</strong> display. The user will have to browse on <strong>the</strong> display to read all <strong>the</strong> message.It is usually recommended to try to present <strong>the</strong> most relevant data in <strong>the</strong> most compact formpossible at <strong>the</strong> beginning of <strong>the</strong> message in order to allow <strong>the</strong> user to read immediately <strong>the</strong>important part of <strong>the</strong> message.Character Set• Try to use Ascii ISO 8859-1 (IsoLatin 1) characters also present in <strong>the</strong> GSM characterset. If you use ISO 8859-1 characters not existing in <strong>the</strong> GSM character set (forexample sparsely used accented characters), <strong>the</strong>y will be replaced by <strong>the</strong>ir nearestequivalent (e.g.: â by a) or if no equivalent cound be found by a '?'. The Appendix 2shows <strong>the</strong> GSM character set along with <strong>the</strong> ISO 8859-1 to GSM translation.• If needed, you could use Unicode alphabet to transmit non-latin characters (arabic,russian, greek 5 , japanese, chineese, etc.). Using <strong>the</strong> Unicode alphabet will limit <strong>the</strong>number of characters for a single <strong>SMS</strong> to 70 instead of 160.Sender identificationDepending on <strong>the</strong> country and mobile network operator of <strong>the</strong> recipient and your accountprofile, <strong>the</strong> <strong>SMS</strong> you will send may bear your mobile phone identification number, yourcompany alphanumeric identifier, or may be sent from a generic <strong>SMS</strong> short id.When <strong>the</strong> <strong>SMS</strong> is sent from a generic short id, you must include within <strong>the</strong> <strong>SMS</strong> text <strong>the</strong>needed information allowing <strong>the</strong> recipient to understand whom has sent him a message.Usually, this information is presented ei<strong>the</strong>r at <strong>the</strong> beginning of <strong>the</strong> message (e.g.: MCTEL:message body) or at <strong>the</strong> end of <strong>the</strong> message (e.g. send from MCTEL).Conforming to deontological rules and applicable lawsNeedless to say, all <strong>the</strong> messages sent must be conformant to:• all domestic and international laws applicable. It is of course prohibited to sendoffensive, illegal, prohibited content.• most mobile operators and countries prohibit <strong>the</strong> sending of advertising messages torecipient who have not accepted to receive such messages (said "opt-in"). An easyway must be available to allow an user to ask to be removed from <strong>the</strong> distribution list"opt-out".• most mobile operators prohibit advertising messages or sponsored messages fromcompeting mobile network operators.5 Instead of <strong>using</strong> Unicode character set for Greek messages, <strong>the</strong> best solution is usually to take advantage of <strong>the</strong>Greek characters included in <strong>the</strong> GSM character set, however only uppercase characters will be available.Monaco Telematique MCTEL 14 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2SMTP email <strong>Interface</strong>You could also send <strong>SMS</strong> directly by email <strong>using</strong> <strong>the</strong> Video<strong>SMS</strong> STMP Gateway, from anymail sender.VIDEO<strong>SMS</strong>/PC SoftwareIf you do not want to integrate <strong>SMS</strong> features in your computer application or Web service, butsimply use an easy to use PC application with Outlook integration to send <strong>SMS</strong>, you coulddownload and install <strong>the</strong> free Video<strong>SMS</strong>/PC <strong>SMS</strong> Desktop sender from www.smsfax.com.Monaco Telematique MCTEL 16 July 2004


VAX 6240VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2Accessing <strong>SMS</strong> features <strong>using</strong> MCTEL HTTP GatewayIntroductionHTTP/1.1 POST or GETIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIHTTP/1.1 ReplyCustomer serverMCTEL VIDEO<strong>SMS</strong>HTTP GatewayFigure 3: MCTEL Video<strong>SMS</strong> gateway communication <strong>using</strong> Web HTTP/HTML protocolWhen <strong>using</strong> <strong>the</strong> HTTP/HTML interface, <strong>the</strong> customer Web application service or computerapplication will communicate with MCTEL <strong>SMS</strong> Gateway <strong>using</strong> HTTP GET or POSTrequests.Requests are available to perform various kind of operations:• sending <strong>SMS</strong> messages.• retrieving detailed status of a <strong>SMS</strong> message previously submitted.• sending Wap Push commands by <strong>SMS</strong>.Connecting to <strong>the</strong> MCTEL <strong>SMS</strong> HTTP GatewayThe client should send a HTTP POST or GET request to <strong>the</strong> VIDEO<strong>SMS</strong> HTTP Gateway andwait for <strong>the</strong> gateway response.The following URLs are used to connect to <strong>the</strong> gateway:• http://www.smsfax.com/cgi-bin/sendsms.cgi?command=sendsms&... to send amessage• http://www.smsfax.com/cgi-bin/sendsms.cgi?command=readstatus&... to check if agiven message has successfully been transmitted.The calls should be made to <strong>the</strong> symbolic DNS name of <strong>the</strong> HTTP gateway(www.smsfax.com) instead of its IP address because several systems offering load balancingand fault tolerant configuration and used and because fur<strong>the</strong>rmore <strong>the</strong> IP address of <strong>the</strong>gateways are subject to change without prior notice.sont susceptibles d’être modifiées à tout moment.Monaco Telematique MCTEL 17 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2Perform <strong>the</strong> HTTP requests in NoCache mode if a HTTP proxy is installed on your enterprisenetwork.When connecting it is necessary to specifiy your username and password (and in some casea company name and optionnaly a company password). You could get <strong>the</strong>se parameters byseveral ways:• your company has opened an account: your parameters has been given to you byMCTEL.• your are a MCTEL partner: same• you could also immediately (if not already done) open your own prepaid <strong>SMS</strong> accounton http://www.smsfax.com by specifying your mobile number and email address andalso <strong>the</strong> username you wish to use. If this username is not already in use, you willreceive immediately your account password by <strong>SMS</strong> on your mobile along with somefree <strong>SMS</strong> units to test your new account. You could purchase <strong>SMS</strong> units on youraccount by credit card, check and in some countries by sending a Premium <strong>SMS</strong> orconnecting to <strong>the</strong> videotex network.You could also open your account by downloading and installing <strong>the</strong> Video<strong>SMS</strong>/PCDesktop <strong>SMS</strong> sender from http://www.smsfax.com.In all cases, whatever <strong>the</strong> method used to open your account, you could use yourusername and password to send <strong>SMS</strong> from all <strong>the</strong> methods supplied by <strong>SMS</strong>: PCDesktop sender, Web, <strong>SMS</strong> Gateway API, <strong>SMS</strong> FTP/XML <strong>Interface</strong> and <strong>the</strong> <strong>SMS</strong>HTTP/HTML interface described in this document.Submitting requests to <strong>the</strong> gatewayThe client should transmit requests <strong>using</strong> ei<strong>the</strong>r HTTP GET or HTTP POST requests to <strong>the</strong>gateway. Submissions sent to <strong>the</strong> gateway should conform to <strong>the</strong> syntax described below.Using HTTP GET requestsFollow <strong>the</strong> following procedure :• connect to <strong>the</strong> www.smsfax.com gateway on port 8080 (see above).• transmit <strong>the</strong> GET request to <strong>the</strong> /cgi-bin/sendsms.cgi URI• send <strong>the</strong> GET request containing <strong>the</strong> needed parameters, transmitted after <strong>the</strong> URI and<strong>the</strong> ? character, each parameter beeing encoded and separated by & (parametersencoding and formating are usually automatically performed by HTTP functions).• Do not close <strong>the</strong> connection after <strong>the</strong> request in order to be able to receive <strong>the</strong> replyfrom <strong>the</strong> gateway.Using HTTP POST requestsFollow <strong>the</strong> following procedure :• connect to <strong>the</strong> www.smsfax.com gateway on port 8080 (see above).• transmit <strong>the</strong> POST request to <strong>the</strong> /cgi-bin/sendsms.cgi URI.• The POST request must contain <strong>the</strong> following mandatory HTTP headers, separatedfrom <strong>the</strong> message content by :Monaco Telematique MCTEL 18 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2o Content-type : application/x-www-form-urlencodedo Accept-charset : utf-8o Content-length : nnn (where nnn is <strong>the</strong> length of <strong>the</strong> body).• Do not close <strong>the</strong> connection after <strong>the</strong> request in order to be able to receive <strong>the</strong> replyfrom <strong>the</strong> gateway.Request format and attributesThe HTTP requests sent to <strong>the</strong> URI must contains mandatory parameters, optional parametersmay be added. The required parameters may vary according to <strong>the</strong> type of HTTP request(<strong>SMS</strong> send, <strong>SMS</strong> check status, <strong>SMS</strong> Wap Push, and so on.). The attributes values may notcontain leading spaces, linefeed characters or quotation marks.Common parameters for all requestsAttribute name Meaning ExampleMandatory Attributes‘Command’ Specify <strong>the</strong> type of command to be performed : sendsms• ‘sendsms': sending a <strong>SMS</strong> or o<strong>the</strong>rmessage types (fax, telex, email...).• ‘readstatus’: check <strong>the</strong> status of apreviously transmitted message.• 'wappush': send a Wap Push commandby <strong>SMS</strong>‘UserId’‘UserPwd’‘Version’NB : according to <strong>the</strong> command specified, seebelow <strong>the</strong> mandatory and optional attributesto be specified.Registered username for au<strong>the</strong>ntication.If you have created yourself your own accounton www.smsfax.com or <strong>using</strong> <strong>the</strong>Video<strong>SMS</strong>/PC Desktop sender program, specifyyour username. In this case, all <strong>SMS</strong> sent from<strong>using</strong> <strong>the</strong> HTTP/HTML interface will becharged to your www.smsfax.com account.Username is not case sensitive.Password securing <strong>the</strong> username, forau<strong>the</strong>ntication.If you have created yourself your own accounton www.smsfax.com or <strong>using</strong> <strong>the</strong>Video<strong>SMS</strong>/PC Destop sender program, specifyyour password that has been transmitted by <strong>the</strong>gateway to your mobile phone.Password are case sensitive.Protocol version number. The current protocolversion is 1.0Optional AttributesmctelX7u2Hzq7w11.0Monaco Telematique MCTEL 19 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2‘TestMode’ Test mode :2• 0 (default): inactive, normal <strong>SMS</strong>processing• 1 : test mode activated: au<strong>the</strong>nticationand valid syntax parsing is checked by<strong>the</strong> gateway, but <strong>the</strong> message is nottransmitted to <strong>the</strong> mobile and <strong>the</strong> useraccount is not charged.• 2 : same as mode 1, but <strong>the</strong> receivedparameters are displayed in <strong>the</strong> returnpage in order to allow easier applicationdebugging.‘CompanyId’ Master account name of <strong>the</strong> company whom <strong>the</strong> ACOMPANYuser account is associated from. By default,when this parameter is not specified, <strong>the</strong>username specified by ‘UserId’ is considered asdepending of « MCTELWEB<strong>SMS</strong> » masteraccount.If no CompanyId has been specified to you, donot specify this parameter.‘CompanyPwd’ Company password. X7u2Hzq7w1Additional parameters when « command=sendsms »Attribute name Meaning ExampleMandatory Attributes‘DestNum’Phone number (MSISDN) of <strong>the</strong> recipient, at %2B33607080910international format, prefixed by a + (encoded%2B on HTTP)‘MsgContent’ Content of <strong>the</strong> message to be transmitted to <strong>the</strong> ‘hello world’recipient :• Text message (by default), encodedaccording selected character set (ASCIIor ISO 8859-1 as default) that will beautomatically converted to <strong>SMS</strong> format.• Message with binary payloadOptional Attributes‘ContentType’ <strong>SMS</strong> content type :TEXT• TEXT : default• HEXA : binary data hex-encodedNB : to activate HEX mode on your account,please contact MCTEL‘Encoding’ Encoding character set :ISO8859-1• ISO8859-1 : default, will beautomatically converted to GSMcharacter set according to Annex 2.• O<strong>the</strong>r supported character set (ex:Unicode)Monaco Telematique MCTEL 20 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2‘NetworkType’ Recipient terminal equipment type :• sms: defaut: mobile with <strong>SMS</strong> support• fax• telex• email‘OptDeferred’ Defferred delivery request :• 0 (default) : none (immediate)• 1 : <strong>the</strong> attributes ‘OptDefDate’ and‘OptDefTime’ specify <strong>the</strong> date and timeof message transmission.‘OptDefDate’ Deffered delivery date, encoded dd/mm/yyyy.Skipped if ‘OptDeferred’ = 0 or unspecified‘OptDefTime’ Deffered delivery time,encoded hh:mm.Skipped if ‘OptDeferred’ = 0 or unspecified‘OptExpire’ Message expiration date : <strong>the</strong> message will bediscarded if <strong>the</strong> delivery could not succeedbefore <strong>the</strong> expiration date• 0 (default) : not specified (GSM networkexpiration settings apply)• 1 : <strong>the</strong> attributes ‘OptExpiryDate’ and‘OptExpiryTime’ specify <strong>the</strong> date andtime of message transmission.‘OptExpiryDate’ Expiration date (format dd/mm/yyyy).Ignored if ‘OptExpire’ = 0.‘OptExpiryTime’ Expiration time (format hh:mm).Ignored if ‘OptExpire’ = 0.‘OptEmailOnSuccess’ Request for email confirmation on <strong>SMS</strong>successful delivery :• 0 (default) : inactive• 1 : active, <strong>the</strong> attribute‘OptEmailAddress’ must specify <strong>the</strong>email address to which <strong>the</strong> deliveryreport must be sent.‘OptEmailOnError’ Request for email alert on <strong>SMS</strong> transmissionerror :• 0 (défaut) : inactive• 1 : active, <strong>the</strong> attribute‘OptEmailAddress’ must specify <strong>the</strong>email address to which <strong>the</strong> non-delivery‘OptEmailAddress’‘PrivateData’report must be sent.Email address for delivery or non-deliveryreports.Ignored if ‘OptEmailOnSuccess’ = 0 AND‘OptEmailOnError’ = 0.Private text field available to store user-specificinformation, maximum length 50 characters.The content of this field is ignored and returnedas is on <strong>the</strong> result page.sms025/07/200415:30031/08/200415:3000mybox@mydomain.commy private infoMonaco Telematique MCTEL 21 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2‘PrivateReference’ Text field available to store a program-specificinternal reference entry, maximum length 15characters. This private reference will bereturned with <strong>the</strong> <strong>SMS</strong> reference number,allowing <strong>the</strong> sending program to easily retrieve<strong>the</strong> match between its internal reference and <strong>the</strong><strong>SMS</strong> reference number in case of multiple sendoperations.‘OptFlash’ Flash message option :• 0 (défaut) : inactive (normal <strong>SMS</strong>)• 1 : active: immediate display on mobilescreen, without storage amongstreceived <strong>SMS</strong>.‘originator’ Allows to specify <strong>the</strong> numeric or alphanumericsender identification. This feature is onlysupported on some networks and depends onuser account profile.Number fields must be between 6 and 14 digits,inclusive.‘udhi’Allow to specify an User Data Header forbinary <strong>SMS</strong>. The UDH must be hex-encoded.Refer to additional documentation for UDH use."ABC123456"0mctelAdditional parameters when « command=readstatus »Attribute name Meaning ExampleMandatory Attributes‘MsgRef’Internal reference number of <strong>the</strong> <strong>SMS</strong> whose5817state is requested.This value is those returned by <strong>the</strong> 'sendsms'request status in <strong>the</strong> tag.Optional AttributesNoneAdditional parameters when « command=wappush »AttributeMeaningExamplenameMandatory Attributes‘WapURL’ Wap URL to be pushed by <strong>SMS</strong> http://wap.smsfax.com/AddamsFamily.midOptional Attributes'WapText' Text to be displayed on mobile terminal Addams Family ringtone'WapContent' Wap data content in binary format'OptSingleShot' When OptSingleShot=1, <strong>the</strong> binary content of<strong>the</strong> Wap URL could only be downloaded once(eg Premium content)Monaco Telematique MCTEL 22 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2Return statusWhen receiving a HTTP command, <strong>the</strong> HTTP <strong>SMS</strong> gateway will perform <strong>the</strong> followingoperations:• parsing attributes and syntax checking.• user au<strong>the</strong>ntication, access rights check.• user account credit check when send operation for a prepaid account.• execute <strong>the</strong> required operation (send <strong>SMS</strong>, check <strong>SMS</strong> status, send Wap Pushmessage, and so on).The request result status will be immediately returned by <strong>the</strong> gateway in HTML format.The application having performed <strong>the</strong> POST or GET operation must check <strong>the</strong> return status asfollow:• If <strong>the</strong> gateway times out, no response is returned to <strong>the</strong> client, no <strong>SMS</strong> message will besent to <strong>the</strong> mobile, and <strong>the</strong> customer account will not be charged.• When <strong>the</strong> request has been processed (even if an error has occured), <strong>the</strong> gateway willreturn <strong>the</strong> '200 OK' HTTP code, <strong>the</strong>n a HTML page with XML tags, encoded asfollow:ValueMonaco Telematique MCTEL 23 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2Tags returned for all <strong>the</strong> requestsTag Meaning Example Numeric result status (success or error) of <strong>the</strong>1request. Success is 1, all o<strong>the</strong>r values are errorcodes listed in appendix 1. Text result status of <strong>the</strong> request. Success isOK'OK'.Additional tags returned when « command=sendsms »The following tags are only returned when <strong>SMS</strong>RESULT=1 (<strong>SMS</strong> submitted successfully):Tag Meaning ExempleUnique internal reference number assigned 35817to <strong>the</strong> <strong>SMS</strong>. This reference number must bepassed to <strong>the</strong> ‘command=readstatus’ requestto get <strong>the</strong> status of a submitted <strong>SMS</strong>. If <strong>the</strong> ‘PrivateData’ attribute was included My private infoin <strong>the</strong> submit operation, its content isreturned as is. If <strong>the</strong> ‘PrivateReference’ attribute was ABC123456specified during <strong>the</strong> submit operation, itscontent is returned.Additional tags returned when « command=readstatus »The following tags are only returned when <strong>SMS</strong>RESULT=1 (<strong>SMS</strong> successfully retrieved):Tag Meaning Example Numeric state of <strong>the</strong> message. The possible1values are:• 1 : successfully delivered to recipient(reception date stored in attribute)• 2 : fatal error, could not transmit• 3 : forwarded to recipient (no deliveryacknowledgement notification )• 12 : en route/pending• 13 : transient error (will be retried atregular intervals)• 18 : processed by mobile operator• 19 : waiting for transmission (priority)• 21 : delayed delivery <strong>SMS</strong>, waiting forspecified deffered delivery date/time• 99 : unknown error Message state described in text format Received byrecipient at xxxxMonaco Telematique MCTEL 24 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2 Numeric detailed error cause. A messagesuccessfully transmitted to recipient return 1.Please refer to appendex 1 for <strong>the</strong> list of errorcodes.< MSGTEXTERROR> Detailed error cause in text format explaining<strong>the</strong> error code. When known, specify <strong>the</strong> date/time of <strong>the</strong>successful reception by recipient mobile, or incase of an error of <strong>the</strong> last transmission retry.51Invalid or unknownmobile number27/07/2004 - 15:33Note : when <strong>the</strong> TestMode has been selected and set to 2 (TestMode=2), <strong>the</strong> HTML page will<strong>the</strong>n list all <strong>the</strong> request attributes received in order to help debugging <strong>the</strong> applications. In thiscase, <strong>the</strong> <strong>SMS</strong> will not be transmitted to <strong>the</strong> recipient and <strong>the</strong> user account will not beencharged.ExamplesExample of simple GET requestFrom any Web browser, you could test <strong>the</strong> sending of a <strong>SMS</strong> message by calling <strong>the</strong> URLbelow (modify your account userid and userpwd and <strong>the</strong> mobile number to use) :http://www.smsfax.com/cgibin/sendsms.cgi?command=sendsms&version=1.0&userid=mctel&userpwd=123456&msgcontent='This is a test'&destnum=%2B33607998877You will receive a return status Web page formatted as below (use <strong>the</strong> 'View source'command of your browser to see all <strong>the</strong> HTML source code) :sendsms1 Ok 138184 Warning: if <strong>the</strong> IP address check has been enabled (recommended), only GET or POSTrequests originating for <strong>the</strong> enabled authorized address will be accepted.To request <strong>the</strong> status of a <strong>SMS</strong> previously sent (specify <strong>the</strong> <strong>SMS</strong> reference returned in <strong>the</strong> field):Monaco Telematique MCTEL 25 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2http://www.smsfax.com/cgibin/sendsms.cgi?command=readstatus&version=1.0&userid=mctel&userpwd=123456&msgref=138184You will receive a return status Web page formatted as below :sendsms1 Ok 138184 ABC123456 1 Received by recipient 0 Ok 27/07/2004 - 15:33 The field will only be present if <strong>the</strong> sending program has specified aprivate reference number.Visual Basic exampleIt is very easy to send a <strong>SMS</strong> from any Visual Basic program, use <strong>the</strong> example below as atemplate.'Uses Component - Microsoft Internet Transfer Control 6.0'Place Inet Control on FormDim strUrl As StringDim strCommand As StringDim strUserId As StringDim strUserPwd As StringDim strMsgContent As StringDim strDestNum As StringDim strVersion As StringDim pageresponse As StringstrUrl = "http://www.smsfax.com/cgi-bin/sendsms.cgi?"strCommand = "Command=Send<strong>SMS</strong>"strUserId = "&UserId=mctel"strUserPwd = "&UserPwd=3gap9es3"strMsgContent = "&MsgContent=hello world"strDestNum = "&DestNum=+33607998877"StrVersion = "&version=1.0"strSend = strUrl + strCommand + strUsername + strPassword + strContent + strNumberMonaco Telematique MCTEL 26 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2+ strVersion'Send message and get return resultsInet1.RequestTimeout = 120 'xx addedpageresponse = Inet1.OpenURL(strUrl)C++ example//Uses MFC library#include CString strUrl = " http://www.smsfax.com/cgi-bin/sendsms.cgi?";CString strCommand = "Command=Send<strong>SMS</strong>";CString strUserId = "&Username=mctel";CString strUserPwd= "&password=3gap9es3";CString strMsgContent = "&content=hello world";CString strDestNum = "&number=+33607998877";Cstring StrVersion = "&version=1.0";CString strSend = strUrl + strCommand + strUserId + strUserPwd + strMsgContent +strDestNum + StrVersion;//Open internet connection and send messageCInternetSession* ptrInternetSession = new CInternetSession;CHttpFile* ptrFile = (CHttpFile*) ptrInternetSession->OpenURL(strSend);//Get return results from ptrFiledelete ptrInternetSession;delete ptrFile;Data securityFirewalls pour l'accès au site www.smsfax.comThe protocol used is <strong>the</strong> standard HTTP/HTML protocol on <strong>the</strong> Web port 80. It will <strong>the</strong>n notbe blocked by all firewalls configured to allow outgoing access to Web services, and must notbe blocked if a proxy is used to access <strong>the</strong> Web (in this case, always make <strong>the</strong> requests withNoCache mode enabled).If needed, configure your company firewall in order to allow outgoing TCP/IP calls to <strong>the</strong>www.smsfax.com address on port 80.User Au<strong>the</strong>nticationThe standard user au<strong>the</strong>ntication use username/password mechanism:• By default (see below), those identifiers are not encrypted.Monaco Telematique MCTEL 27 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2• The customer may be protected from <strong>the</strong> masquerading of his username/password ifhis account configuration includes mandatory sender IP address checking. In this case,only <strong>the</strong> IP address(es) specified by <strong>the</strong> customer will be able to send <strong>SMS</strong>.• If needed and for large corporate accounts, additional security mechanisms (HTTPSencryption, Virtual Private Network (VPN) between customer computer and MCTELgateway) may be setup if needed.Data EncryptionHTTPS encryption may be setup for corporate accounts having suscribed to <strong>the</strong> dataencryption option.Monaco Telematique MCTEL 28 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2<strong>Sending</strong> bulk <strong>SMS</strong> <strong>using</strong> FTP/XML file programminginterfaceIf you application needs to send large number of messages (bulk <strong>SMS</strong>), it is simpler and moreefficient, instead of performing numerous HTTP/HTML requests, to build a simple XML textfile describing all <strong>the</strong> <strong>SMS</strong> to be transmitted and to send <strong>the</strong> single file by FTP to <strong>the</strong> MCTEL<strong>SMS</strong> FTP Gateway.Please refer to <strong>the</strong> "Video<strong>SMS</strong> FTP/XML <strong>Interface</strong> Manual" for a detailed description of thisfeature. The manual could be downloaded from http://www.smsfax.com.Monaco Telematique MCTEL 29 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2<strong>Sending</strong> <strong>SMS</strong> <strong>using</strong> <strong>the</strong> <strong>Application</strong> <strong>Programming</strong> <strong>Interface</strong>(API)To use <strong>SMS</strong> features, Yyou could also link your computer applications with <strong>the</strong> Video<strong>SMS</strong>Client API functions , available on most computer platforms:• Windows• PC Linux.• HP/Compaq/Digital True 64 Unix.• HP-UX.• IBM Aix.• Sun Solaris• PC Unix-SCO.• HP/Compaq/Digital OpenVMS (VAX, Alpha, Itanium).• Etc…Those API functions of course offer <strong>the</strong> same features (send <strong>SMS</strong>, send Wap Push <strong>SMS</strong>,check status of <strong>SMS</strong> sent) than <strong>the</strong> HTTP/HTML <strong>Interface</strong> or <strong>the</strong> FTP/XML interface, but<strong>the</strong>y also allow to access more advanced features, for example:• management of incoming <strong>SMS</strong> and Premium <strong>SMS</strong>, allowing to build high value added<strong>SMS</strong> applications.• management of a <strong>SMS</strong> session context for multiple <strong>SMS</strong> transactional applications.• user location (geographical positioning).• accounting and management features.• and so on.Those functions are easy to use and to integrate in existing computer applications, to be linkedwith <strong>the</strong> Video<strong>SMS</strong> libraries or DLL.Please refer to <strong>the</strong> "Video<strong>SMS</strong> <strong>Application</strong> <strong>Programming</strong> <strong>Interface</strong> Functions Manual" andguide "How to develop with Video<strong>SMS</strong> <strong>Interface</strong>s and API" guide for a complete descriptionof <strong>the</strong>se functions. These manuals could be downloaded from http://www.smsfax.com.Monaco Telematique MCTEL 30 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2Appendix 1 – Error status listingOnly <strong>the</strong> error codes in bold may be returned by <strong>the</strong> HTTP/HTML interface, o<strong>the</strong>r codes areused by o<strong>the</strong>r Video<strong>SMS</strong> facilities.Code Signification0 No error signalled1 Success2 Generic error code when a more specific error code is not available3 Client update is available (not an error, informational message)4 Video<strong>SMS</strong> not installed on this system6 One or several parameters are invalid.8 No network available to access remote gateway10 Could not connect to remote gateway12 No answer from remote gateway (timeout)14 IP calling address not allowed to access <strong>the</strong> Video<strong>SMS</strong> gateway for <strong>the</strong> specifiedaccount16 Invalid company username and/or password18 Invalid message number format20 No pending message available22 Link to remote <strong>SMS</strong> gateway lost24 No route available to transmit this message to <strong>the</strong> specified country/operator26 Mandatory parameter or field missing28 User access rights does not allow this operation30 Invalid or unknown UserID32 Company account locked34 User account locked36 User does not have enough unit balance on his account38 Obsolete client software, update required40 This user account already exists42 Au<strong>the</strong>ntication required before calling this feature/function44 Account does not exists46 Invalid date48 File not found50 Mandatory update of configuration files required51 Invalid or unknown mobile number52 Mobile number already allocated to ano<strong>the</strong>r account54 Mobile offline or outside coverage area58 Number ported by ano<strong>the</strong>r operator1000 Invalid address1002 Throttle error, user has exceeded <strong>the</strong> authorized number of messages for agiven time period1004 Unsupported network1006 Send quota exceededMonaco Telematique MCTEL 31 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.21007 Too many password resend retries6000 Memory allocation error -> contact MCTEL support deskMonaco Telematique MCTEL 32 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2Appendix 2 – GSM default alphabetThe 7 bits default GSM alphabetThe GSM 7 bits default character table is specified below: <strong>the</strong>re is a base table (where eachcharacters is encoded on 1 byte) and an extension table where each character is encoded on 2bytes (<strong>the</strong> escape code from base table and <strong>the</strong> extension table character, for example €symbol). The ISO 8859-1 without GSM equivalent will be translated on <strong>the</strong> nearest equivalentcharacter or o<strong>the</strong>rwise to a "?" character.b7 0 0 0 0 1 1 1 1b6 0 0 1 1 0 0 1 1b5 0 1 0 1 0 1 0 1b4 b3 b2 b1 0 1 2 3 4 5 6 70 0 0 0 0 @ ∆ SP 0 ¡ P ¿ p0 0 0 1 1 £ _ ! 1 A Q a q0 0 1 0 2 $ Φ " 2 B R b r0 0 1 1 3 ¥ Γ # 3 C S c s0 1 0 0 4 è Λ ¤ 4 D T d t0 1 0 1 5 é Ω % 5 E U e u0 1 1 0 6 ù Π & 6 F V f v0 1 1 1 7 ì Ψ ' 7 G W g w1 0 0 0 8 ò Σ ( 8 H X h x1 0 0 1 9 Ç Θ ) 9 I Y i y1 0 1 0 10 LF Ξ * : J Z j z1 0 1 1 11 Ø 1) + ; K Ä k ä1 1 0 0 12 ø Æ , < L Ö l ö1 1 0 1 13 CR æ - = M Ñ m ñ1 1 1 0 14 Å ß . > N Ü n ü1 1 1 1 15 å É / ? O § o àNOTE 1): This code is an escape code to <strong>the</strong> extension table specified next page.Monaco Telematique MCTEL 33 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2GSM 7 bit default alphabet extension tableb7 0 0 0 0 1 1 1 1b6 0 0 1 1 0 0 1 1b5 0 1 0 1 0 1 0 1b4 b3 b2 b1 0 1 2 3 4 5 6 70 0 0 0 0 |0 0 0 1 10 0 1 0 20 0 1 1 30 1 0 0 4 ^0 1 0 1 5 €0 1 1 0 60 1 1 1 71 0 0 0 8 {1 0 0 1 9 }1 0 1 0 10 3)1 0 1 1 11 1)1 1 0 0 12 [1 1 0 1 13 ~1 1 1 0 14 ]1 1 1 1 15 \In <strong>the</strong> event that a mobile receives a code where a symbol is not represented in <strong>the</strong> above table <strong>the</strong>n <strong>the</strong> mobileshall display <strong>the</strong> character shown in <strong>the</strong> main GSM 7 bit default alphabet table in clause 6.2.1.Converting ISO 8859-1 (International Reference Alphabet IRA) toGSMThe HTTP/HTML Web interface allows to specify any text <strong>using</strong> <strong>the</strong> ISO 8859-1 (Iso Latin 1,International Reference Alphabet) if ano<strong>the</strong>r encoding alphabet has not been specified. In thiscase, <strong>the</strong> Video<strong>SMS</strong> gateway will perform <strong>the</strong> conversions described below if some charactersnot included in <strong>the</strong> GSM alphabet are present in <strong>the</strong> <strong>SMS</strong> text string.Monaco Telematique MCTEL 34 July 2004


VIDEO<strong>SMS</strong> HTTP/HTML <strong>Interface</strong> Manual v. 1.2Converting IRA (ISO 8859-1) to GSM00 10 20 30 40 50 60 70 80 90 A0 B0 C0 D0 E0 F000 - - 20 30 00 50 - 70 - - - - 411 - 7F -01 - - 21 31 41 51 61 71 - - 40 - 412 5D 6120 7D02 - - 22 32 42 52 62 72 - - - - 413 4F12 6121 0803 - - 23 33 43 53 63 73 - - 01 - 414 4F13 6122 6F2904 - - 02 34 44 54 64 74 - - 24 - 5B 4F14 7B 6F3005 - - 25 35 45 55 65 75 - - 03 - 0E 4F15 0F 6F3106 - - 26 36 46 56 66 76 - - - - 1C 5C 1D 7C07 - - 27 37 47 57 67 77 - - 5F - 09 - 0923 -08 - - 28 38 48 58 68 78 - - - - 455 0B 04 0C09 - - 29 39 49 59 69 79 - - - - 1F 5516 05 060A LF - 2A 3A 4A 5A 6A 7A - - - - 456 5517 6524 75320B - - 2B 3B 4B - 6B - - - - - 457 5518 6525 75330C - - 2C 3C 4C - 6C - - - - - 498 5E 07 7E0D CR - 2D 3D 4D - 6D - - - - - 499 5919 6926 79340E - - 2E 3E 4E - 6E - - - - - 4910 - 6927 -0F - - 2F 3F 4F 11 6F - - - - 60 4911 1E 6928 79351 :À A 2 :Á A 3 :Â A 4 :Ã A 5 :È E6 :Ê E 7 :Ë E 8 :Ì I 9 :Í I 10 :Î I11 :Ï I 12 :Ò O 13 :Ó O 14 :Ô O 15 :Õ O16 :Ù U 17 :Ú U 18 :Û U 19 :Ý Y 20 :á a21 :â a 22 :ã a 23 :ç Ç 24 :ê e 25 :ë e26 :í i 27 :î i 28 :ï i 29 :ó o 30 :ô o31 :õ _ o 32 :ú u 33 :û u 34 :ý y 35 :ÿ yMonaco Telematique MCTEL 35 July 2004

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!