Sms4domino v3.3 product presentation
description
Transcript of Sms4domino v3.3 product presentation
Sms4Domino
Product Presentation
Wim StevensSTN bvba
http://www.sms4domino.eu
Sms4Domino V3.3 - http://www.sms4domino.eu 2
Functional Features
• Sms4Domino offers SMS capabilities to your Lotus Domino infrastructure– Designed on top of Domino• No need for Oracle database• Managed via Lotus Notes client• Cluster aware design for improved reliability and
scalability
– No learning curve for Lotus Notes end users• As easy as sending - receving a mail message
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 3
Send SMS
• Identical to sending standard mail– Address to John@0474112233@sms or
0474112233@sms– @sms corresponds to name of Foreign Domino domain
• Same procedure may be used when sending from iNotes, Blackberry, Traveler
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 4
Send SMS
• From any SMTP client or business application– Address the mail to john
%0474112233%[email protected]
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 5
Send SMS
• Phone number processing– Sms4Domino converts the specified number into an
international format• Example
– 0474112233 is transformed into +32474112233
– Administrator defines• Google phone number tools
– Sms4Domino may use this API to validate and standardise phone numbers
• Number replacement patterns– E.g. Drop all non-digits from the number
• Valid number patterns• Allowed/rejected destination patterns
– E.g. Block 0900 or international destinations
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 6
Send SMS
• Blocking unwanted outbound SMS messages– Whitelisted – blackisted Notes users• Notes users included in the group are may (not) send
SMS messages
– Allowed – rejected destinations• Phone number patterns that may (not) be reached by
Sms
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 7
Send SMS
• Use of personal address book– PAB may contain multiple email addresses
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 8
Send SMS
• Content of SMS message– Configurable by administrator
• Formula language may be used
– Sms is text only• Rich text is converted to text• Non-Ascii chars are allowed
– Automatically converted into UTF-8 SMS
– Large mails are converted to multi-part SMS• Most phones reassemble into single message
– Examples• Subject of the mail• Subject & body of the mail; truncated to 100 chars• **Username** Subject & body
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 9
Send SMS
• Delivery Options– Important messages
sent as Flash SMS• Pop-up on the GSM• Not implemented on all
phones
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 10
Send SMS
• Delivery Options– Delivery report• When delivery report is
received from Mobile operator it is forwarded via mail to the sender of the SMS
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 11
Send SMS
• Delivery Options– Delivery priority• High priority messages are
sent first• Low priority messages are
sent during any of the defined low priority time ranges
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 12
Receive SMS
• SMS messages received by one of the Sms4Domino modems are converted into mail and delivered to intended recipient.
• Reply mails will be routed to the mobile phone.
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 13
Receive SMS
• Problem description– Phone number of the outbound SMS message is defined by
the SIM card. – Return SMS received from GSM user arrives at
Sms4Domino modem. How to determine the intended recipient?
• Solutions– Fixed routing– Content based routing– Auto matching routing– Manual routing
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 14
Receive SMS
• Fixed routing– All Sms messages received
from <number pattern> must be delivered via Domino mail to <mail address>• <mail address> could be
Notes user, group defined in Domino directory, Internet mail address, another Sms4Domino address
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 15
Receive SMS
• Content based routing– All Sms messages received from <number pattern>
and where the content of the Sms contains <text pattern> must be delivered via Domino mail to <mail address>• <number pattern> and <text pattern> are defined as
regular expressions• <mail address> could be Notes user, group defined in
Domino directory, Internet mail address, another Sms4Domino address
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 16
Receive SMS
• Auto matching routing– When Notes user John sends
a SMS to 0474112233 it is very likely that a SMS received from this number should be routed to John
– Auto matching fails when two Notes users send SMS to the same number• One or more conflict handlers
are invoked
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 17
Receive SMS
• Available auto matching conflict handlers– Most recently used– Most frequently used– Send to all
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 18
Receive SMS
• Most recently used conflict handler– Example• 1-feb: Notes user John sends 5 SMS to 1234567• 12-feb: Notes user Jane sends SMS to 1234567• 13-feb: SMS received from 1234567. Sms4Domino routes
it to Jane
– Conflict handler may be left undecisive when John and Jane send their SMS at about the same time
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 19
Receive SMS
• Most frequently used conflict handler– Example• 1-feb...10-feb: Notes user John sends 15 SMS to 1234567• 1-feb...10-feb: Notes user Jane sends 3 SMS to 1234567• 13-feb: SMS received from 1234567. Sms4Domino routes
it to John as she was the most frequent sender to 1234567
– Conflict handler may be left undecisive when John and Jane send about the same number of SMS messages to 1234567
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 20
Receive SMS
• Send to all conflict handler– Example• 1-feb...10-feb: Notes user John sends 15 SMS to 1234567• 1-feb...10-feb: Notes user Jane sends 12 SMS to 1234567• 13-feb: SMS received from 1234567. Sms4Domino routes
it to John and Jane
– Alternatively the conflict handler may send an alarm to the Sms4Domino administrator asking him to take a manual action.
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 21
Receive SMS
• Manual routing– May be used with all routing algorithms– The SMS received from the mobile network that
matches the routing rule is stored in the Sms4Domino database. The Sms4Domino administrator is invited to route the SMS manually.
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 22
Sms4Domino use cases
• Unified messaging– End users have single interface for managing mail,
fax and SMS• Lotus Traveler enhancement– Lotus Traveler may be configured to send hidden
SMS informing the smart phone that mail is available.• Results in lower battery consumption and lower data
volume
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 23
Sms4Domino use cases
• Lotus Traveler enhancement
19/02/2013
Battery consumption on Android mobile.SMS sync disabled.Lotus Traveler is top 1 battery consumer.
Battery consumption on same mobileSMS sync enabled.Lotus Traveler is no longer in the list.
Sms4Domino V3.3 - http://www.sms4domino.eu 24
Sms4Domino use cases
• System monitoring– Monitor your Domino servers and send SMS in
case of problem– Most monitoring tools (Domino DDM, Nagios,
Windows event monitor) may send mail alerts• Business applications– Inform customer by Sms– Receive Sms into business application– Inform salesrep or technician of changes in agenda
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 25
Accounting
• Sms4Domino provides data on volume– Detailed– Aggregated
19/02/2013
Volume by user report
Sms4Domino V3.3 - http://www.sms4domino.eu 26
Least Cost Routing
• Background– For multinational organizations– SMS is sent via the server that is the closest to the
recipient• Implemented by Domino routing and replication
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 27
Load Balancing & Failover
• Background– Lotus Domino clustering offers improved load
balancing and failover for standard mail– Sms4Domino exploits Domino clustering and
offers a similar level of load balancing and failover
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 28
TECHNICAL DETAILS
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu
2919/02/2013
Global Picture
Domino network
Domino Server
Domino Server
Sms4Domino configDatabase(replica1)
To:John@0474112233@Sms
Notes client iNotes client
SMTP enabled
client
PDA client
Notes client+
Sms4Domino
Domino Server+
Sms4Domino
Sms4Domino configDatabase(replica2)
Multi-instance Sms4Domino architecture
Sms4Domino V3.3 - http://www.sms4domino.eu 30
Global Picture
• Configuration database– Holds all settings, messages and logs– May be replicated onto multiple (clustered)
Domino servers• Sms4Domino– Java program running within Domino server or as
stand-alone program– Each program is called Sms4Domino instance– Max one instance per configuration database
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 31
Software Components
• Sms4Domino– Implemented as Java program– Libraries used
• SmsLib: library for sending and receiving SMS messages via GSM modem or bulk SMS operator
• Log4j: java logging framework• Jaddin: Java toolkit for Domino Add-In Server tasks• Libphonenumber: Google's phone number handling library, powering
Android and more• SerialPort: toolkit to access COM ports from Java• Lotus Domino Java API
– All data is stored in .nsf databases• Standard Notes administrative tools may be used
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 32
Execution Environments
• Server add-in– Sms4Domino runs under control of RunJava server
task• Load Runjava Sms
– All logging to Domino console and log.nsf– Commands entered via Domino (remote) console– COM modem physically connected to Domino server
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 33
Execution Environments
• Standalone program– Sms4Domino runs on Windows PC• Lotus Notes must have been installed
– Dedicated Sms4Domino console– COM modem physically connected to the PC
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 34
Components
• Overview– Instance
• Each running Sms4Domino program is defined as an instance
– Gateway• Each modem is defined as a gateway
– Interface• Each source of Sms requests is defined as interface
– Instance routing– Logging configuration
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 35
Instance
• Configuration options– Parameters of SmsLib– Heartbeat settings• Required for least cost routing
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 36
Gateway
• Configuration options– Gateway family
• Modem connected via COM port• Modem connected via LAN• Bulk GSM provider
– Outbound only– No delivery reports
– Direction• Outbound – Inbound – Both
– Every instance may use 0, 1 or more gateways– Recommendation
• Only industrial GSM modems offers a sufficient level of reliability. Do not use a phone in production environments.
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 37
Interface
• Configuration options– Interface family• Mail interface
– How to compute the Sms text from the mail– Pseudo sender for delivering inbound Sms
messages as mail– Phone number transformation and validation– Settings for fixed and auto-matching routing– Every instance may use 0 or 1 interface
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 38
Instance Routing
• Background– Instance Routing documents define what instance should
send the SMS via a gateway– Parameters that may be used
• Transmission cost– It is preferred to send SMS to Belgium via Belgian operator
• Heartbeat of the instance– Do not route the request to a broken instance
• Workload of the instance– Do not route the request to an overloaded instance
• Replication time– Replication takes time. It is preferred sending the Sms by the instance that
receives the request from the Domino router
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 39
Instance Routing
• Algorithm– Instance routing document defines the cost for
sending a Sms to <number> when received by <Instance X> and sent by <Instance Y>
– Cost is composed of• Fixed cost• Optional replication cost
– Only applied when <Instance X> is different from <Instance Y>
• Queueing cost– Depends on the estimated queue size at <Instance Y>– Read from the hearthbeat documents
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 40
Instance Routing
• Algorithm– Each time a mail message is stored by Domino router in the
configuration database, Sms4Domino evaluates the cost of all defined routes.
– There could be 0, 1 or more least cost routes• 0: send a “no route available” error to the originator.• 1: use that route. • More than 1: round-robin over the available routes but give
priority to the route that does not require replication.
– Routing to another instance is based on Domino replication. A Domino server command may be issued to speed this up.
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 41
Instance Routing• Caveats
– Sms4Domino does not try to reroute a request• This is similar to Domino mail routing
– When <Instance X> goes down the administrator has the possibility to perform a manual reroute• Any resulting replication conflicts will be solved automatically by Sms4Domino
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 42
Logging Configuration• Configuration options
– Logging is based on Apache log4J project• Fully documented on their web site• Logging to Domino console and/or to text files• Each Sms4Domino component may have specific settings
– All settings are stored in Notes documents
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 43
Licensing
• Background– Sms4Domino cannot run
without a valid signed license file
– Evaluation licenses are available• Sms4Domino appends
**Sms4Domino evaluation** to every Sms message
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 44
HW/SW Requirements
• Software– Domino or Notes 8.X running on Windows– 32 or 64 bit
• Hardware– SmsLib has been tested with many modems– In production environments Sms4Domino
recommends and supports• Cinterion MC55iT modem connected to local COM port
or to ATOP SE5000 Serial server
19/02/2013
Sms4Domino V3.3 - http://www.sms4domino.eu 45
Need more info
• Mail to [email protected]• Consult web site http://www.sms4domino.eu• Ask for an evaluation license
19/02/2013