throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2012/0117178A1
`Price et al.
`(43) Pub. Date:
`May 10, 2012
`
`US 201201 17178A1
`
`(54) INTELLIGENT MESSAGING
`(75) Inventors:
`Edward D. Price, Brooklyn, NY
`(US); William Todd Piett,
`Southborough, MA (US)
`Rave Wireless, Inc., Framingham,
`MA (US)
`
`(73) Assignee:
`
`(21) Appl. No.:
`1-1.
`(22) Filed:
`
`13/293,662
`Nov. 10, 2011
`Related U.S. Application Data
`
`(60) Provisional application No. 61/412,148, filed on Nov.
`10, 2010.
`O
`O
`Publication Classification
`
`(51) Int. Cl.
`G06F 5/16
`
`(2006.01)
`
`(52) U.S. Cl. ........................................................ T09/207
`
`ABSTRACT
`(57)
`A method includes sending notification messages to a plural
`ity of subscribers of a notification platform via a plurality of
`communications devices of the subscribers over a plurality of
`communications channels, each communications device
`associated with at least one of the plurality of communica
`tions channels, including sending notification messages to
`devices over first channels associated with the communica
`tions devices. The method also includes monitoring a status of
`the first channels and a status of the notification messages sent
`over the first channels; and adapting the sending of the noti
`fication messages according to the monitored statuses,
`including sending at least Some of the notification messages
`over second channels associated with the communications
`devices.
`
`Initiate Notification
`Event
`
`Enqueue
`messages to
`platform
`
`Determine
`Channels available
`to reach Carrier D
`
`Select SMPP and
`Aggregator
`
`200
`
`2O2
`
`2O3
`
`204
`
`
`
`
`
`
`
`Aggregator
`Send message via
`SMPP to
`H-> acknowledges
`Aggregator
`receipt of message
`
`
`
`Enqueue message
`for retry
`
`Send message via
`SMPP to
`Aggregator ||
`
`2O6
`
`208
`
`210
`
`212
`
`Aggregator ||
`acknowledges
`receipt of message
`
`Aggregator ||
`sends delivery
`receipt
`
`
`
`
`
`
`
`Update status of
`Subscriber
`
`214
`
`216
`
`218
`
`APPL-1015
`APPLE INC. / Page 1 of 13
`
`

`

`Patent Application Publication
`
`May 10, 2012 Sheet 1 of 4
`
`US 2012/0117178A1
`
`TTTTT adosans TTT
`
`| — — — — —
`
`eoeueu ope
`
`O
`
`|----
`
`ZZ ).
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`APPL-1015
`APPLE INC. / Page 2 of 13
`
`

`

`Patent Application Publication
`
`May 10, 2012 Sheet 2 of 4
`
`US 2012/0117178A1
`
`
`
`
`
`Z L. Z0 LZ
`
`
`
`?ôessauu anenbuB
`
`
`
`Ku?ºu Joy
`
`ZOZ
`

`
`
`
`APPL-1015
`APPLE INC. / Page 3 of 13
`
`

`

`Patent Application Publication
`
`May 10, 2012 Sheet 3 of 4
`
`US 2012/0117178A1
`
`
`
`uNWOuXun
`
`
`
`
`
`
`
`
`
`909909
`
`APPL-1015
`APPLE INC. / Page 4 of 13
`
`

`

`Patent Application Publication
`
`May 10, 2012 Sheet 4 of 4
`
`US 2012/0117178A1
`
`
`
`APPL-1015
`APPLE INC. / Page 5 of 13
`
`

`

`US 2012/01 17178 A1
`
`May 10, 2012
`
`INTELLIGENT MESSAGING
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`0001. This application claims priority to U.S. Provisional
`Application Ser. No. 61/412,148, entitled “Intelligent Mes
`saging Platform.” filed Nov. 10, 2010, the contents of which
`are incorporated herein by reference.
`
`BACKGROUND
`0002 This application relates to intelligent messaging.
`0003 Reliable and rapid delivery of large numbers of text
`messages is important to enterprises, public safety agencies,
`universities, and others with a need to quickly notify inter
`ested parties.
`0004. There are various protocols for delivering short
`message service (SMS) text messages, primarily SMPP
`(Short Message Peer-to-Peer) and SMTP (Simple Mail
`Transfer Protocol). Each of these protocols presents different
`challenges for effective message delivery.
`0005 SMTP is inherently slow and unreliable. Due to its
`open nature and vulnerability to abuse, SMTP is often
`throttled or otherwise restricted by wireless service providers.
`Furthermore, SMTP is typically unable to provide informa
`tion about the Success or failure of a transmission as a mes
`sage passes through downstream systems to reach a targeted
`mobile subscriber.
`0006 SMPP is a more secure and robust protocol. SMPP
`is not subject to the same wireless service provider throttling
`and restrictions, but is still closely regulated by wireless car
`riers. Unlike SMTP, SMPP is not open to anyone who wishes
`to send an SMS message. Rather, entities that want to gain
`access to an SMPP connection must apply for access and open
`their messaging platform to audit by the wireless carriers.
`0007. Third parties, referred to as aggregators, have
`emerged as mediators between wireless carriers and entities
`wishing to send SMS over SMPP. Aggregators ensure that the
`rules established by the mobile industry and by each wireless
`service provider are adhered to by the entities sending mes
`sages. In addition, aggregators maintain “binds, or connec
`tions, across multiple wireless service providers. Binds allow
`message sending entities to gain access to multiple wireless
`carrier networks while maintaining a connection to only a
`single SMS message aggregator. In general, SMPP aggrega
`tors differ among themselves with respect to the mobile car
`riers they support, the reliability of their systems, and their
`message throughput.
`0008 Binds to service providers, either directly to wire
`less carriers or through third party aggregators, are prone to
`failure and normally to not provide service level agreements
`for message delivery.
`0009 Entities sending messages through aggregators are
`assigned a single 5- or 6-digit "short code, which is used to
`uniquely identify the message sending entity to its subscrib
`ers, regardless of the subscriber's mobile service provider.
`
`SUMMARY
`0010. In a general aspect, a computer-implemented
`method includes sending notification messages to a plurality
`of subscribers of a notification platform via a plurality of
`communications devices of the subscribers over a plurality of
`communications channels, each communications device
`associated with at least one of the plurality of communica
`
`tions channels, including sending notification messages to
`devices over first channels associated with the communica
`tions devices. The method further includes monitoring a sta
`tus of the first channels and a status of the notification mes
`sages sent over the first channels; and adapting the sending of
`the notification messages according to the monitored sta
`tuses, including sending at least some of the notification
`messages over second channels associated with the commu
`nications devices.
`0011 Embodiments may include one or more of the fol
`lowing.
`0012 Sending notification messages includes, for a first
`one of the communications devices: identifying a first com
`munications channel for communication with the first one of
`the communications devices; and sending the notification
`message to the first one of the communications devices via the
`first communications channel.
`0013 Adapting the sending of the notification messages
`includes, for the first one of the communications devices:
`identifying a second communications channel for communi
`cation with the first one of the communications devices; and
`sending the notification message to the first one of the com
`munications devices via the second communications channel.
`0014 Identifying the first communications channel
`includes identifying a mobile communications carrier asso
`ciated with the mobile communications device. Identifying
`the first communications channel includes selecting a com
`munications channel based on at least one of a type of con
`nection associated with the communications channel and a
`status of the communications channel. Identifying the first
`communications channel includes employing a load balanc
`ing mechanism.
`0015. At least one of the first channels includes an aggre
`gator, and a status of at least one of the first channels includes
`a throughput of the aggregator.
`0016. The status of the notification messages includes at
`least one of a transmission status of the notification messages
`through the first communications channels and a delivery
`status of the notification messages to the communications
`devices.
`0017 Monitoring a status of the notification messages
`includes determining the status of a first notification message
`based on an event associated with the first notification mes
`sage. Determining the status of a first notification message
`includes receiving an event status message indicative of the
`event associated with the first notification message from a
`component of the corresponding first communications chan
`nel.
`0018 Monitoring a status of the first communications
`channels includes receiving no response from a component of
`one of the first communications channels within a predeter
`mined amount of time.
`0019 Adapting the sending of the notification messages
`according to the monitored Status includes sending at least
`Some of the notification messages over second channels if the
`results of the monitoring are indicative of a transmission
`failure.
`0020. The second channels are different from the first
`channels.
`0021. The method further includes monitoring a status of
`the second communications channels and a status of the noti
`fication messages sent over the second channels. The method
`further includes updating a status of the subscribers based on
`at least one of the status of the first communications channels,
`
`APPL-1015
`APPLE INC. / Page 6 of 13
`
`

`

`US 2012/01 17178 A1
`
`May 10, 2012
`
`the status of the notification messages sent over the first
`channels, the status of the second communications channels,
`and the status of the notification messages sent over the sec
`ond channels.
`0022. The method further includes accepting an instruc
`tion to send the notification messages to the plurality of Sub
`scribers.
`0023 The notification message is at least one of a short
`message service (SMS) message, a Voice message, and an
`email.
`0024. In another general aspect, a system includes a mes
`sage routing module configured to send notification messages
`to a plurality of subscribers of a notification platform via a
`plurality of communications devices of the subscribers over a
`plurality of communications channels, each communications
`device associated with at least one of the plurality of commu
`nications channels, including sending notification messages
`to devices over first channels associated with the communi
`cations devices; and a message status module configured to
`monitor a status of the first channels and a status of the
`notification messages sent over the first channels. The mes
`sage routing module is further configured to adapt the sending
`of the notification messages according to the monitored sta
`tuses, including sending at least Some of the notification
`messages over second channels associated with the commu
`nications devices.
`0025 Embodiments may include one or more of the fol
`lowing.
`0026. The message routing module comprises a channel
`selection module configured to identify a first channel for
`communication with a first one of the communications
`devices; and an output module configured to send the notifi
`cation message to the first one of the communications devices
`via the first communications channel.
`0027. The channel selection module is configured to iden
`tify a mobile communications carrier associated with the
`communications device. The channel selection module is
`configured to identify the first channel based on at least one of
`a type of connection associated with the first channel and a
`status of the first channel. The channel selection module is
`configured to employ a load balancing mechanism to identify
`the first channel.
`0028. The message status module is configured to deter
`mine the status of a first notification message based on an
`event associated with the first notification message.
`0029. The message routing module is configured to send at
`least some of the notification messages over second channels
`if the results of the monitoring are indicative of a transmission
`failure.
`0030 The message status module is further configured to
`monitor a status of the second channels and a status of the
`notification messages sent over the second channels.
`0031. The system further includes a subscriber data mod
`ule configured to update a status of the Subscribers based on at
`least one of the status of the first communications channels,
`the status of the notification messages sent over the first
`channels, the status of the second communications channels,
`and the status of the notification messages sent over the sec
`ond channels.
`0032. The system further includes an input module con
`figured to accept instructions to send the notification mes
`sages to the plurality of Subscribers.
`0033. The systems and methods described herein have a
`number of advantages. For instance, the intelligent messaging
`
`platform is a high reliability, high performance messaging
`platform that is capable of leveraging the strengths of each
`message delivery alternative to enhance the throughput and
`overall delivery rates for messages. In addition, the platform
`provides a strategy for mitigating system outages, throughput
`limitations, visibility into message delivery status, and mes
`sage delivery latency.
`0034. The intelligent messaging platform described
`herein is able to adaptively deliver messages, including SMS
`messages, Voice messages, and emails, to Subscribers accord
`ing to subscriber preferences and based on real time feedback
`about the status of delivery channels.
`0035. Other features and advantages of the invention are
`apparent from the following description and from the claims.
`
`BRIEF DESCRIPTION OF DRAWINGS
`0036 FIG. 1 is a block diagram of an intelligent messag
`ing platform and associated interfaces.
`0037 FIG. 2 is a flowchart of an exemplary work flow in
`which a notification is sent to a Subscriber via a carrier Sup
`ported by multiple aggregators.
`0038 FIG. 3 is a flowchart of an exemplary work flow in
`which a notification is sent to a subscriber device supported
`by an unknown carrier network.
`0039 FIG. 4 is a flowchart of an exemplary work flow in
`which a notification is sent to a subscriber having multiple
`devices.
`
`DETAILED DESCRIPTION
`
`1 Overview
`0040. Referring to FIG. 1, a notification platform 100
`administers the distribution of short message service (SMS)
`messages or other electronic communications to Subscribers
`to the notification platform. Notification platform 100
`includes an intelligent messaging platform 150 which deter
`mines the appropriate channel for delivery of the message to
`the device(s) used by each Subscriber. Intelligent messaging
`platform 150 routes and reroutes messages to subscribers,
`evaluates and acts upon status updates related to message
`delivery, and keeps administrators apprised of messaging sta
`tus. In particular, intelligent messaging platform 150 enables
`the leveraging of multiple delivery channels by selecting
`which channel to utilize for the delivery of an SMS message
`to each subscriber based on its knowledge of the subscriber's
`phone number and mobile telecommunications carrier, busi
`ness and/or operational preferences (e.g., which one of mul
`tiple devices is to be contacted), and dynamic and/or real-time
`message delivery status data.
`0041. Subscribers to the notification platform receive
`messages from the notification platform. For instance, uni
`versity students may subscribe to a safety alert notification
`platform associated with the university to receive messages
`relevant to public safety at their university. Residents of a city
`and/or commuters to that city may subscribe to a local traffic
`alert notification platform to receive traffic status messages.
`In some cases, enrollment in a notification platform is initi
`ated by an individual 120. For instance, each resident and
`each commuter may decide whether he wishes to join the
`traffic alert group. In other instances, enrollment in a notifi
`cation platform is automatic and/or mandatory. For example,
`any university student who provides his mobile phone num
`ber to the university is automatically enrolled into the public
`safety notification platform for the university, which may be
`
`APPL-1015
`APPLE INC. / Page 7 of 13
`
`

`

`US 2012/01 17178 A1
`
`May 10, 2012
`
`administered by the university, without any action on the part
`of the student. In these cases, subscriber data 122 is provided
`to the notification platform via an automated Subscription
`process. Subscriptions are processed via a business function
`ality platform 104. Subscriber information, such as the sub
`scriber's phone number(s), mobile carrier(s), and preferred
`mobile communication device and/or method, are stored in a
`subscriber database 102 on notification platform 100.
`0042. In some embodiments, each notification platform is
`administered by a messaging administrator 106. Messaging
`administrator 106 may be an operator or agent associated
`with notification platform 100. Alternatively, messaging
`administrator may be associated with the institution using the
`notification platform (e.g., with a university), and may admin
`ister the notification platform via a self-service web interface.
`To send an SMS message to Subscribers, the messaging
`administrator generates a Notification Event within notifica
`tion platform 100. The Notification Event contains the text of
`the message (e.g., “Exit 20 of Interstate 90 is closed. Seek
`alternate route”). The Notification Event may also include
`other information, such as a percentage of messages that are
`to be successfully delivered in order for the Notification
`Event to be closed.
`0043. When a Notification Event is generated, intelligent
`messaging platform 150 identifies a communication channel
`for each subscriber. Channels are selected at least in part
`based on preloaded preferences of the subscriber, the plat
`form, or both. For instance, intelligent messaging platform
`150 may prefer an SMPP connection to a mobile carrier rather
`than an SMTP connection, if available. Communication
`channels may also be selected based on dynamic or real-time
`information about the status of various channels. For
`instance, the intelligent messaging platform may possess
`recent data that indicates that the preferred channel to contact
`a particular Subscriber is not responding. The intelligent mes
`saging platform will thus select an alternate, less preferred,
`channel for that Subscriber. In some instances, the intelligent
`messaging platform identifies the carrier that serves each
`subscriber by accessing the subscriber data stored in sub
`scriber database 102. In other cases, the intelligent messaging
`platform performs a carrier lookup to access carrier informa
`tion stored in an external mobile carrier database 107.
`0044. After the messages associated with the Notification
`Event are sent, intelligent messaging platform monitors the
`progress and delivery status of each message. If a message is
`undeliverable, for instance because the channel through
`which the message was sent is not responding, the intelligent
`messaging platform will resend the message via an alternate
`channel. The intelligent messaging platform collects statis
`tics about the progress and delivery status of each individual
`message as well as aggregate statistics pertaining to the entire
`Notification Event. These statistics are stored in a message
`database 124 and may be provided to messaging administra
`tor 106, either automatically or upon request by the messag
`ing administrator.
`0045 Although the notification platform is described
`herein primarily with reference to SMS messages, other types
`of communication are also supported. Such as Voice messag
`ing and emails.
`
`2 System Operation
`0046 Referring still to FIG. 1, several mobile telecommu
`nications carriers Carrier A, Carrier B, ..., Carrier G provide
`mobile telecommunications services to mobile communica
`
`tions devices Device 1, Device 2, Device 3, Device N via a
`radio interface 101. Each device is associated with a sub
`scriber. For instance, in the example depicted, Device 1 is
`associated with Subscriber 1, Devices 2 and 3 are associated
`with Subscriber 2, and DeviceN is associated with Subscriber
`N.
`0047. When a Notification Event is generated for a group,
`notification platform 100 sends SMS messages to subscribers
`of that group via SMPP (Short Message Peer-to-Peer) and
`SMTP (Simple Mail Transfer Protocol) connections to the
`carriers associated with the subscribers devices. In some
`cases, notification platform 100 communicates directly with
`the carrier. For instance, notification platform 100 communi
`cates directly with Carrier Aviaan SMTP connection 108 and
`communicates directly with Carrier G via an SMPP connec
`tion 110. In other cases, notification platform 100 communi
`cates with an aggregator via an SMPP connection; the aggre
`gator then communicates with one or more carriers. For
`instance, Aggregator I is reached via an SMPP connection
`114 and handles messages destined for any of Carriers B, C,
`or D: Aggregator II is reached via an SMPP connection 118
`and handles messages destined for any of Carriers D, E, or F.
`In some cases, a carrier may be reachable via more than one
`channel. For instance, notification platform 100 can commu
`nicate with Carrier Beither directly via an SMTP connection
`112 or via SMPP connection 114 to Aggregator I. Similarly,
`Carrier F can be reached either directly via an SMPP connec
`tion 116 or via SMPP connection 118 to Aggregator II. Car
`rier D is reachable through either Aggregator I or Aggregator
`II.
`0048. The intelligent messaging platform 150 includes
`four functional areas: (1) message routing; (2) message status
`notification; (3) message delivery failover; and (4) message
`delivery reporting. Each of these functional areas is now
`described in more detail.
`
`2.1 Message Routing
`0049. The Message Routing function of intelligent mes
`saging platform 150 determines the best channel for sending
`a message to a particular subscriber. The delivery path taken
`by a message intended for a particular Subscriber device
`depends on the carrier network(s) Supporting the Subscriber
`device, the channel(s) available to deliver the message to the
`carrier network(s), the relative priority of (or preference for)
`each channel, and the status of each channel.
`0050. If the carrier serving a particular subscriber device is
`not known to intelligent messaging platform 150, the Mes
`sage Routing function is able to determine the carrier infor
`mation for the Subscriber device. In some cases, the Message
`Routing function calls a carrier lookup function, which
`accesses mobile carrier database 107 to retrieve the carrier
`information for the subscriber. Alternatively, the Message
`Routing function may identify the appropriate carrier by
`interpreting failure messages returned by selected (e.g.,
`default) delivery channels.
`0051. If a particular subscriber device can be reached via
`more than one delivery channel, the Message Routing func
`tion employs a load balancing mechanism to distribute Vol
`ume Substantially evenly across the multiple available chan
`nels.
`0052. In addition to using information known at the begin
`ning of a Notification Event (e.g., information obtained upon
`registration of a subscriber or subscriber device), the Message
`Routing function can also use information discovered during
`
`APPL-1015
`APPLE INC. / Page 8 of 13
`
`

`

`US 2012/01 17178 A1
`
`May 10, 2012
`
`the Notification Event to adjust the logic used to determine
`the best route. For example, intelligent messaging platform
`100 can process delivery status receipts from a specific chan
`nel and dynamically increase or decrease traffic through that
`channel based on the delivery results and an optimization
`algorithm. Delivery status receipts for a given message may
`include, for instance, simple SMTP bounce-backs, aggrega
`tor receipt notifications, carrier receipt notifications, or hand
`set delivery notifications.
`0053. In addition to using carrier information known at the
`beginning of a Notification Event (e.g., information obtained
`upon registration of a Subscriber or device), the Message
`Routing function also makes use of information discovered
`during the Notification Event to adjust the logic used to deter
`mine the best delivery channel. For example, the Message
`Routing function enables the processing of delivery status
`receipts from a specific channel. Based on the delivery
`results, an optimization algorithm may dynamically increase
`or decrease traffic through that channel. Delivery status
`receipts may include, for instance, simple SMTP bounce
`backs, aggregator receipt notifications, carrier receipt notifi
`cations, or handset delivery notifications.
`
`2.2 Message Status Notification
`0054 The Message Status Notification function provides
`the intelligent messaging platform with a mechanism to
`receive, interpret, and respond to message status updates in
`order to increase deliverability and throughput and to provide
`visibility into the end-to-end messaging process.
`0055. In the course of sending a message for delivery to a
`Subscriber device, various events are processed to determine
`the status of the message. Such events may be internal to the
`intelligent messaging platform (e.g., the sending of the mes
`sage to a downstream interface). The events may also be
`externally generated (e.g., a Success or error message gener
`ated by an aggregator, a carrier, or a subscriber device). The
`event status is at least informational (e.g., Successful delivery
`to a handset) and in some cases may also be used to drive an
`action in the intelligent messaging platform (e.g., a delivery
`failure message causes the intelligent messaging platform to
`resend the message via an alternate channel).
`0056 To address variances in the behavior of multiple
`downstream delivery channels, the intelligent messaging
`platform normalizes events returned from the various down
`stream systems such that the events are represented in a stan
`dardized format. In this way, disparate event messages can be
`interpreted and acted upon in a way that presents a common
`user experience for the messaging administrator 106 moni
`toring the system. Failure of the intelligent messaging system
`to normalize disparate event messages could potentially
`result in unintended messaging processing behavior, which
`would make the intelligent messaging platform appear to be
`behaving in an arbitrary or unpredictable manner.
`
`2.3 Message Delivery Failover
`0057 The intelligent messaging platform contains func
`tionality to detect failed message delivery attempts and to
`automatically mitigate failures via intelligent retry logic.
`0058. In some cases, the retry logic initiates subsequent
`delivery attempts through the initial delivery channel. In other
`cases, the retry logic sends Subsequent delivery attempts
`through an alternate delivery channel. Such as a different
`aggregator, a direct SMPP connection to the carrier, or an
`
`SMTP connection to the carrier. The retry logic selects the
`channel for the retry attempt based on factors such as a noti
`fication indicating an out-of-service delivery channel, an
`absence of an expected delivery status message within a pre
`determined time interval, the receipt of a negative status
`update, or another condition.
`0059. In some instances, there are multiple possible chan
`nels through which a message can be sent to a given carrier,
`e.g., one or more SMPP aggregators, one or more SMPP
`direct carrier binds, and/or a carrier SMS-via-SMTP gateway.
`The possible channels for each carrier are rank ordered
`according to preference by the intelligent messaging plat
`form. For instance, a direct SMPP connection to the carrier
`may be the most preferred channel, where available. When
`the most preferred method fails or is not available, a second
`ary delivery method is attempted via a less preferred channel.
`0060. The retry logic may take into account the specific
`service provider (i.e., carrier and/or aggregator) to which the
`message is delivered, the importance of the message, or the
`intended channel delivery route, among other factors. For
`instance, the time period before a retry attempt may vary
`depending on the aggregator or the carrier to which the mes
`Sage Was Sent.
`2.4 Message Delivery Reporting
`0061 The Message Delivery Reporting functionality pro
`vides a way for the intelligent messaging platform to deter
`mine message status updates, such as the state of a given
`message oran indication of whether a specific messaging end
`point (e.g., a Subscriber device) has received at least one
`message. Message Delivery Reporting also allows the intel
`ligent messaging platform to determine whether a Subscriber
`who has registered multiple contact points, possibly spanning
`multiple communications methods (e.g., SMS text, email,
`Voice, and/or instant messaging) has received at least one
`message on at least one of the registered contact points as part
`of a particular Notification Event. Statistics associated with
`message status updates help the messaging administrator to
`gauge the Success of a Notification Event. These statistics can
`also be used by administrators of the intelligent messaging
`platform to tune the logic that controls message processing
`decisions in order to improve reliability and performance of
`the intelligent messaging platform.
`0062. The Message Delivery Reporting functionality is
`capable of providing some or all of four levels of reporting
`associated with the status of a Notification sent to a group of
`subscribers. In order from lowest to highest level of detail,
`these four levels include an Event level, a Message level, a
`User level, and an Overall level.
`
`Event Level Reporting
`0063 Event level reporting captures information about
`each event associated with a send attempt or a status notifi
`cation for a single message. For example, events involved in
`sending a message may include some or all of the following:
`an initial send to an SMPP aggregator, an SMPP response
`acknowledging receipt of the message by the aggregator, an
`SMPP delivery receipt indicating receipt of the message by a
`carrier, a failure notification from the carrier indicating a
`problem with delivery to the subscriber device, a second send
`attempt via SMTP, an SMTP failure, a third send attempt to
`another SMPP aggregator, a delivery receipt indicating deliv
`ery of the message to a Subscriber handset, an implicit or
`
`APPL-1015
`APPLE INC. / Page 9 of 13
`
`

`

`US 2012/01 17178 A1
`
`May 10, 2012
`
`explicit acknowledgement of receipt by the subscriber, and
`other similar events. Event level reporting tracks all such
`activities related to a particular message. The results of Event
`level reporting are used as input into the processing logic
`implemented by the intelligent messaging platform.
`
`Message Level Reporting
`0064 Message level reporting captures information about
`the status of a single message over time. The status of a
`message changes in response to events (e.g., the events listed
`above) associated with the message and is determined by
`processing of the event level details associated with the mes
`sage. The status of a message may include, for instance,
`waiting for an initial send, sent but waiting for a status noti
`fication, delivered, failed, waiting for a retry, and other similar
`states. In some cases, the status of a message may indicate
`only that the message was received by a Subscriber device. In
`other cases, the status of a message may indicate that the
`message was acknowledged by an automatic or manual feed
`back mechanism invoked by the subscriber who received the
`message.
`0065 Message performance may be aggregated across an
`entire Notification Event, providing the message administra
`tor with an overview of the message level delivery (e.g., a
`percentage of messages delivered). For instance, the message
`performance for a particular Notification Event may indicate
`that 80% of the intended messages were delivered within two
`minutes of the initial send.
`
`User Level Reporting
`0066 User level reporting captures information about the
`delivery status of all messages to a single user across all
`contact points registered to the user, including, for instance,
`email addresses, phone numbers for Voice, and/or phone
`numbers for text (SMS). Message level detail for each contact
`point is aggregated to provide user level delivery status infor
`mation. For example, a Subscriber with one Voice phone num
`ber and one SMS

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket