CFMX7: SMS Applications Made Easy Damon Cooper Director of Engineering, ColdFusion.

Slides:



Advertisements
Similar presentations
Unified Communications (UC) Quick Reference Guide USING YOUR UC CLIENT This guide is designed to provide you with a quick overview of the Unified Communications.
Advertisements

Copyright © Open Text Corporation. All rights reserved. Slide 1 Automatic Routing With Captaris FaxPress and FaxPress Premier Darin McGinnes Sales Engineer.
M OBILE C OMMUNICATION S OLUTIONS FOR B USINESS. SMS Cellular Services (Pty) Ltd (SCS) was established in 1999 and is one of the leading WASPs in South.
LeadManager™- Internet Marketing Lead Management Solution May, 2009.
iRequestManager for MediMizer X3
Ozeki Informatics Ltd. | | info.ozekiphone.com | Ozeki Informatics Ltd. | | +36.
Introduction to push technology © 2009 Research In Motion Limited.
ManageEngine TM Applications Manager 8 Monitoring Custom Applications.
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
Series DATA MANAGEMENT. 1 Why ? Alarm/Status Notification –Remote unattended sites »Pumping stations –Pharmaceutical/Plant maintenance.
Client/Server Architecture
Contact Everyone send SMS anywhere
1 Generic SMS Gateway for AtLink Enterprise Voice Integration Instructor: Dr. Kwok-Bun Yue, Ph.D Mentor: Mr. Dilhar De Silva Team #6: Dang Nguyen Huy Do.
Introduction to the Secure SMTP Server service. Secure SMTP server is a secure, reliable SMTP mail relay server for your outgoing mail. Secure SMTP service.
SMS Gateway OZEKI NG Document version: v Adding SMS functionality to SysAid.
MiVoice Office v MiVoice Office v6.0 is mainly a service enhancement release, rather than a user feature rich enhancement release.
Integrated Messaging Platform Broadcast Mediawire Multi media Tailored Solutions.
1. 2 LXU800 User’s Manual 1.Installation – Windows XP UI Features Introduction Data Connection & Disconnection.
Take advantage of the SMS technology in your organization today!
Form Handling, Validation and Functions. Form Handling Forms are a graphical user interfaces (GUIs) that enables the interaction between users and servers.
SQL Server Notification Services Andy Potter Senior System Consultant SQL Server Notification Services Intellinet.
NORTEL NETWORKS CONFIDENTIAL CallPilot 150 Modem Access Jan 03, 2005 Version 1.5.
Windows Internet Connection Sharing Dave Eitelbach Program Manager Networking And Communications Microsoft Corporation.
Exploring Real-time apps with ColdFusion and Blaze DS / Live Cycle Data Services ES Dan Blackman
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter Four Configuring Outlook and Outlook Web Access.
LBTO IssueTrak User’s Manual Norm Cushing version 1.3 August 8th, 2007.
Chapter 6: Packet Filtering
Java Mobile Application sms,sim,mms and barcode application Presented by Ayedh(SIM and MMS) Asad(SMS and Barcode Application)
IEEE R lmap 23 Feb 2015.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Application Layer Functionality and Protocols.
Instant Messaging for the Workplace A pure collaborative communication tool that does not distract users from their normal activities.
Network Resource Gateway (NRG) Application DevelopmentDSLD Unit Florin van Slingerland Rev A Slide 1 Application Development Presentation/Course Teaser.
Integration Broker PeopleTools Integration Broker Steps –Introduction & terminologies –Application Server PUB/SUB services (Application Server)
Instant Messaging for the Workplace A pure collaborative communication tool that does not distract users from their normal activities.
Call Control with SIP Brian Elliott, Director of Engineering, NMS.
Utilities, Customers & SMS Rudi Leitner. Who in this room has a mobile phone? Who in this room has ever sent a text (SMS) message?
Using Event Gateways with CFMX7 By Jeff Tapper Tapper.net Consulting.
Hands-On Microsoft Windows Server Introduction to Remote Access Routing and Remote Access Services (RRAS) –Enable routing and remote access through.
Introduction to SMPP version 5.0 Presented by: Team 6 UHCL - Capstone Project 2007.
Mobile Communication The SMS implies of several additional elements in the network architecture There is also another Element called.
Computer Emergency Notification System (CENS)
Introduction to the Adapter Server Rob Mace June, 2008.
Computer Networking From LANs to WANs: Hardware, Software, and Security Chapter 13 FTP and Telnet.
© 2006 Cisco Systems, Inc. All rights reserved.1 Connection 7.0 Serviceability Reports Todd Blaisdell.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Mobile Communication SMSC Access protocols. Mobile Communication SMSC Access protocols SMAP: Access protocols initially developed to allow interactions.
SKYPIAX, how to add Skype capabilities to FreeSWITCH (and Asterisk) CHICAGO, USA, September 2009.
NETWORKING FUNDAMENTALS. Network+ Guide to Networks, 4e2.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
Linux Operations and Administration Chapter Twelve Configuring a Mail Server.
Easy-to-Use RedFlag System Delivers Notifications via Phone, , Text, Social Media, and More to Improve Effectiveness of Your Communications COMPANY.
IPS Infrastructure Technological Overview of Work Done.
30 Copyright © 2009, Oracle. All rights reserved. Using Oracle Business Intelligence Delivers.
ColdFusion MX 7 “Blackstone” Macromedia, Inc. macromedia 2005 Living With Today’s Internet Chronic problems continue to exist for users and developers.
Bulk SMS Gateway
DWAN ALSTON SMS TECHNOLOGY WHAT IS SMS????? SMS stands for Short Message Service. It is a technology that enables the sending and receiving of messages.
1 A Look at the Application Authorized users can access Communicator! NXT from any Internet-capable computer via the Web.
Best SMS Gateway Software Provider Company in India By Aruhat Technologies.
ColdFusion and SMS Kevin Schmidt. June 27 th - 30 th 2007www.cfunited.com What is SMS? Short Message Service (SMS) Secure, reliable, virtually everywhere.
Windows Vista Configuration MCTS : Advanced Networking.
CFUNITED – The premier ColdFusion conference Using Event Gateways with CFMX7 By Jeff Tapper Tapper.net Consulting.
DESKALERTS. INTERNAL COMMUNICATIONS | | DeskAlerts Enterprise Edition Features.
Netscape Application Server
Home Automation System
1603, Sidra Tower, Shaikh Zayed Road Dubai Media City, Dubai UAE PO Box No : Transactional / Promotional.
In the name of God Emergency Information Dissemination Systems
Technical Capabilities
Sending data to EUROSTAT using STATEL and STADIUM web client
Presentation transcript:

CFMX7: SMS Applications Made Easy Damon Cooper Director of Engineering, ColdFusion

Session Overview Introduction to SMS & ColdFusion (10 min) SMS App Development & Deployment (5 min) ColdFusion Event Gateways (5 min) ColdFusion SMS Gateway (5 min) ColdFusion SMS Development Tools (5 min) Setup, Binding and Message Handling (15 min) Advanced Message Options (5 min) Delivery & “Disposition Status” Receipts Security, Authentication and Encryption Tips & Next Steps (5 min)

Introduction to SMS & ColdFusion  About Short Message Service (SMS): Designed for sending and receiving text messages to/from mobile phones and devices. Part of GSM cellular standard (1991) SMS usage is extensive worldwide and increasing pervasive in US: China: 550 Billion SMS messages in 2004, 1.4 Trillion by (CHINA COMMS Network) UK: Billion SMS messages for 2004 (MDA) Used by over 70% of mobile phone users worldwide Most messages delivered in <10 seconds SMS US and Canadian carriers include: AT&T Wireless, Verizon, Sprint, Cingular, Nextel, T-Mobile, Bell Mobility, Rogers/AT&T, Telus Mobility and Microcell, etc. Secure, reliable, virtually everywhere and basically works the same regardless of handset or carrier.

Introduction to SMS & ColdFusion  Benefits Fully mobile: available anywhere, anytime w/store-and- forward Secure: GSM has built-in authentication and encryption Everywhere: No special hardware or software required for users Push or Pull: excellent for timely alerts, alerts with simple responses, simple textual menus, info lookup, etc  Limitations Limited message length (160 chars) Device keypad interfaces make typing lengthy messages cumbersome Response time can vary and can impact app usability and design

Introduction to SMS & ColdFusion  Key SMS Terminology SMSC: Short Message Service Center (carrier or aggregator). These provision SMPP accounts and interface with mobile network. SMPP: “Short Message Peer to Peer” protocol. ColdFusion uses this to talk to SMSC’s. Industry standard protocol simplifies integration of custom applications with wireless mobile networks. Widely deployed in mobile telecom industry. v3.4 is most widely in use currently but next version, v5.0 is in draft. MO: Mobile Originated. Messages sent from a device. MT: Mobile Terminated. Messages sent to a device. ESME: External Short Message Entity (your application) Aggregator: Company providing a single interface (ie SMPP account) to access multiple cellular provider networks.

Introduction to SMS & ColdFusion  Technical Use Case Scenarios Person  Person (2-way chat) App  Person (1-way Push) App  Person (2-way interactive, Push) Person  App (2-way interactive, Pull) App  App (2-way interactive, Push or Pull)  SMS Application Examples Airline 2-way flight change notification and rebooking SMS Banking, ABC News, UPS Tracking, American Idol Mass media & mobile apps (voting, contests, 411 lookups, customer feedback, etc) Stock & Weather Alerts (1- or 2-way Push or Pull) Any mobile GSM device (transmit GPS & telemetry, remote device monitoring, vending machines, gas pumps, even Coke cans (Coca Cola US summer contest), etc. YOUR ENTERPRISE APPS (PO approvals, critical notifications, phone directory lookup, CEO dashboard & alerts, meeting reminders, cancellations, SMS- bridging, etc)

Introduction to SMS & ColdFusion

 SMS Basic Operation: Messages can be 160 chars (Latin) or 70 chars (non-Latin, such as Arabic and Chinese) Messages are sent from device to an SMSC SMSC interacts with mobile network to figure out user availability and location SMS uses the GSM control channel (rather than the voice channel) End user can receive an SMS whether or not a voice call is in progress - the phone need only be turned on

Introduction to SMS & ColdFusion  SMS Basic Operation (Cont’d): If device is off, the SMSC holds message for “Validity Period” (usually default of 72 hours) and delivers message to device when turned on If desired, message status receipts (“delivered”, “undeliverable for validity period”, etc) are sent to originator With SMS the sender generally pays some per- message fee (bulk packages usually available) Big difference between SMS and (SPAM)

Introduction to SMS & ColdFusion  Building Mobile SMS-Enabled Applications SMS is compelling as a pervasive platform for many types of mobile applications, BUT Building & deploying SMS mobile-enabled apps today can be complex and costly Menu-based or simple responses Need session management Need scalable, failsafe, throttling, metering, monitoring, logging and auto-rebind capabilities

Introduction to SMS & ColdFusion  Building Mobile SMS-Enabled Applications ColdFusion MX 7 and SMS: Create new mobile applications or mobile- enable existing apps Build and test with integrated SMS development & testing tools Deploy on standard Java J2EE servers quickly and simply Do all this in as little as 5 minutes with ColdFusion MX 7 Enterprise-Ready: (ie AT&T Wireless Certified)

Introduction to SMS & ColdFusion

SMS App Development & Deployment Overview  Development Process: 1.Design your application 2.Develop your ColdFusion CFCs, CFM pages, and any other application elements 3.Test your application using built-in SMSC Test Server, pre- configured Test SMS Gateway instance and mobile device client simulator  Deployment Process: 1.Establish an SMPP account with SMSC provider / aggregator 2.Configure a new SMS Gateway instance to use your SMSC’s SMPP Server. Configure the gateway using the information provided by your provider 3.Test your application using the telecommunication provider’s SMSC and target mobile devices and when ready, go live!

ColdFusion Event Gateway Overview  ColdFusion Event Gateways: Pluggable protocol-specific elements which allow ColdFusion applications to respond and interact with the outside world Generate external events or messages from ColdFusion applications Pass along external events or messages to ColdFusion applications Some of the Gateways provided with ColdFusion MX 7: SMS Gateway XMPP/Jabber IM Gateway IBM/Lotus Sametime IM Gateway JMS Gateway Asynchronous CFML Gateway TCP/IP Socket Gateway Directory Watcher Gateway Example Gateway (with source)

ColdFusion Event Gateway Overview  Event Gateway Architecture Features: Published Gateway API for 3 rd parties who wish to create new ColdFusion MX 7 Gateways Multithreaded, asynchronous message and event handling and logging Gateway Type and Instance Administrative interface & API Allow Coldfusion MX 7 Gateway applications to be written using just CFCs to listen for and respond directly to external events Can be used to Gateway-enable.NET, J2EE or legacy apps Require NO Java or threading knowledge to create Gateway applications Full Gateway apps can be packaged and deployed as pure J2EE EAR/WAR files on standard J2EE servers Provides automatic “Session” and persistent “Client” variable scope management and logging facilities Highly tuned, scalable and lightweight for maximum performance Full textual menu-driven app framework included

ColdFusion Event Gateway Overview

The ColdFusion SMS Gateway  SMS Gateway Overview Establishes a two-way SMPP-over-TCP/IP connection to SMSC provider SMPP provider provides an address (telephone number or Short Code), TCP/IP connection and SMPP configuration setting information for account Must associate SMS Gateway “instances” with configuration files. Default starting CFG files in {cfusion}\gateway\config\*.cfg SMS Gateway conforms to SMPP 3.4 (most commonly deployed currently), available from SMS Forum at

The ColdFusion SMS Gateway  SMS Gateway Overview (Cont’d) ColdFusion applications can initiate and send messages (“push”) to SMS-enabled devices with the “sendGatewayMessage()” function To use sendGatewayMessage(), specifiy: Destination mobile device telephone number SMS Gateway instance ID Message and advanced message options Mobile devices send messages to a ColdFusion listener CFC by using SMS Gateway instance’s telephone number or Short Code Incoming messages include the originating device’s phone number, so listener CFCs can respond to messages sent by mobile devices

ColdFusion SMS Development Tools  Built-in tools SMSC Test Server Simulates the phone company or 3 rd part aggregator’s SMSC Server Started in the Administrtor Off by default on start Pre-configured SMSC Test Gateway Instance Pre-configured to talk to SMSC Test Server Not running by default Pre-configured to point to sample gateway menuing application in {cfroot}\gateway\cfc\examples\menu.cfc SMSC Test Client Device Simulates basic cell phone with SMS “chat” mode Run from Windows Start Menu or batch file Pre-configured to talk to the SMSC Test Server

ColdFusion SMS Development Tools  Demo

Setup, Binding and Message Handling  SMS Gateway Setup: Create a new SMS Gateway instance and set Config and CFC files SMS Gateway must bind to SMSC before handling messages CFG file specifies all params and other key configurables

Setup, Binding and Message Handling  SMS Gateway Setup: CFG file params include: CFC method to be called on incoming SMSC message. Default=“onIncomingMessage”. Outbound message throttle rate (def=100, 0=unlimited) Mode (synchronous/asynchronous) –Synchronous: wait for SMSC response. SendGatewayMessage returns messageID or empty string if error. –Asynchronous: don’t wait for SMSC response. Empty string returned. Retry behavior after specific types of errors. Bind connection EnquireLink check interval (checks if connection is OK) Number of bind attempts before giving up (def -1 = try forever) Bind retry interval. How long to wait between rebind attempts. Def=10 seconds

Setup, Binding and Message Handling  Logged events and exceptions go to {cfusion}\log\eventgateway.log  Inbound Message Handling Specially-handled messages: Unbind directive: SMS Gateway unbinds and restarts and attempts to rebind EnquireLink or status request: SMS Gateway responds with appropriate response Messages forwarded to your CFC can be new incoming text messages or status notifications about previously-sent messages A CFEvent structure is created & loaded with short messages text, originator, recipient, etc and passed to listener CFC method

Setup, Binding and Message Handling  SMS Gateway CFEvent Structure:  Example:

Simple “Echo” Pull SMS App /* Create a return structure that contains the message. */ retValue = structNew(); retValue.command = "submit"; retValue.destAddress = arguments.CFEVENT.originatorid; retValue.shortMessage = "Echo: " & CFEvent.Data.MESSAGE;

Setup, Binding and Message Handling  Sending Outbound Messages Put the command, destination and data in a structure and then either: “Return” it in response to an incoming message, OR Use the SendGatewayMessage(gatewyID, data) function Typical outbound data structure:

Setup, Binding and Message Handling  Slightly more evolved SMS Demo (temperature converter):

Sending SMS from a Web App /* Create a structure that contains the message. */ msg = structNew(); msg.command = "submit"; msg.destAddress = " "; msg.shortMessage = form.SMSMessage; ret = sendGatewayMessage("SMS Menu App ", msg);

Setup, Binding and Message Handling  Sending SMS from a Web Page Demo:

Advanced Message Options  Requesting Message Disposition Status Include a RegisteredDelivery field in Data parameter of sendGatewayMessage() function or return variable of CFC listener method: 0 = (Default) Do not return delivery information 1 = Return a receipt if the message is not delivered before the time out (Validity Period) 2 = Return a receipt if the message is delivered or fails. Some providers support intermediate delivery notifications (see provider’s docs) Must use synchronous mode to get a messageID

Advanced Message Options  Handling Message Disposition Status Incoming message routine must handle these special messages: need to parse and unload MessageID and Status fields from “Data.Message” Format (from Appendix B of SMPP 3.4 Spec): “id:IIIIIIIIII sub:SSS dlvrd:DDD submit date:YYMMDDhhmm done date:YYMMDDhhmm stat:DDDDDDD err:E Text:...”

Advanced Message Options  Handling Message Disposition Status Can match up status MessageID with any sent MessageID and act accordingly. –If a message expired before it was delivered, you might send a new message to another person (ie emergency personnel) or take some other action. For details of the SMSC delivery receipt message structure, see Appendix B of the SMPP 3.4 specification.

Advanced Message Options  Requesting Message Disposition Status Sample CFEvent with SMSC Disposition Status:

Advanced Message Options  Security, Authentication and Encryption Voice and data (including SMS message traffic) between SMSC and mobile device is encrypted as part of the GSM standard. The mobile user's identity is authenticated first, before encrypted communication session begins. AT&T Wireless has a page that describes the various security aspects of GSM and SMS: ols_station.htm The connection between CF and SMSC: The SMPP standard provides for login/bind authentication and authorization, but No inherent SMPP support encryption of message traffic. Most SMSC providers require a secure hardware or software VPN connection around the SMPP connection. The pervasiveness, mobility and security of the SMS platform paves the way for development of some very exciting business and m-commerce applications!

Tips & Next Steps  Get ColdFusion MX 7 and get started now!  Deployment considerations: 5-digit cross-carrier US Short-Code (like the American Idol TV show), needs to obtained via and setup SMPP aggregator/provider account (ie m-Qube, Mobileway, etc). Easy to setup, but takes 4-9 weeks, so allow lead time Short Codes come in a number of varieties: Carrier-specific (ie 4-digit AT&T Wireless Short Code) 5-digit US Short Code ( $1k/monthhttp:// Universal Short Code (tougher to get)

Tips & Next Steps  Cont’d If audience on only one carrier, going carrier-specific is probably a good choice and provides lightening fast response times If audience is US mixed-carrier, US Short Code and 3rd party aggregator SMPP provider is good choice with very good response times Can have a "SIM" modem setup at an aggregator or carrier, but response times VERY slow, capacity very limited, but for very small applications and audiences, this may suffice. Also much cheaper. SMPP accounts range from $40/month for development accounts to many thousands, based on volume. US AT&T Wireless SMPP account can be had for about $500/month:

CFMX7: SMS Applications Made Easy Damon Cooper Director of Engineering, ColdFusion