EP3114626A1 - Dispositifs, systèmes et procédés de livraison de message - Google Patents

Dispositifs, systèmes et procédés de livraison de message

Info

Publication number
EP3114626A1
EP3114626A1 EP15711559.3A EP15711559A EP3114626A1 EP 3114626 A1 EP3114626 A1 EP 3114626A1 EP 15711559 A EP15711559 A EP 15711559A EP 3114626 A1 EP3114626 A1 EP 3114626A1
Authority
EP
European Patent Office
Prior art keywords
message
electronic device
data
messages
preference data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP15711559.3A
Other languages
German (de)
English (en)
Inventor
Dan Wagner
David Ingram
Mike Johns
Ian Thomas Williamson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Actovate Ltd
Original Assignee
Actovate Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GBGB1403720.4A external-priority patent/GB201403720D0/en
Priority claimed from GBGB1412928.2A external-priority patent/GB201412928D0/en
Application filed by Actovate Ltd filed Critical Actovate Ltd
Publication of EP3114626A1 publication Critical patent/EP3114626A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3224Transactions dependent on location of M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0267Wireless devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0278Product appraisal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information

Definitions

  • This disclosure relates to devices, systems and methods for controlling messages, for example messages which are transmitted to or notified on an electronic device, such as a mobile phone or tablet computer.
  • Electronic devices such as PCs, cellular phones and tablet devices are subject to an increasing number and frequency of external messages provided by third parties, such as, text messages, push messages, website promotions, in-app promotions, including advertising, promotion messages, beacon promotions and more.
  • a method on a server for controlling messages transmitted to an electronic device comprising steps of retrieving message preference data from a first database, determining by the server if a message is authorised for transmission to the electronic device according to the message preference data, and if the message is determined to be authorised, transmitting the message from the server to the electronic device.
  • the message may be transmitted to the electronic device for notification on the electronic device.
  • a method on an electronic device for controlling the notification of messages on the electronic device comprising steps of retrieving message preference data from a first database, determining by the electronic device if a message is authorised for notification on the electronic device according to the message preference data, and if the message is determined to be authorised, providing notification of the message on the electronic device.
  • An electronic device comprising processing circuitry for controlling messages transmitted to a secondary electronic device
  • the processing circuitry is configured to retrieve message preference data from a first database, determine if a message is authorised for transmission to the secondary electronic device according to the message preference data, and if the message is determined to be authorised, transmitting the message from the electronic device.
  • the electronic device may be a server in communication with the secondary electronic device and first database.
  • An electronic device comprising processing circuitry is disclosed, wherein the processing circuitry is configured to retrieve message preference data from a first database, determine if a message is authorised for notification on the electronic device according to the message preference data, and if the message is determined to be authorised, providing notification of the message on the electronic device.
  • the aforementioned methods and devices ensure that users and their devices can accordingly avoid receiving wasteful messages which impacts network and device resources, such as bandwidth, storage and processing resources.
  • users are presented with or alerted to only relevant messaging. In this way, the consumer obtains added benefit from the messaging which is received, and those devices performing the messaging avoid wastage of their resources.
  • Notification of the message on the electronic device may comprise notification of the message presence on the electronic device or server, and may comprise one or more of: displaying an alert of the message presence on the device, generating a tactile alert of the message presence at the electronic device, generating an audible alert at the electronic device, displaying the message or part thereof on a display of the electronic device.
  • Each database mentioned herein may be implemented in conjunction and/or within one or more of the aforementioned electronic devices or server, or in a standalone device, such as a standalone server, which is in communication with the electronic device and/or server. Each database may be distributed across multiple electronic devices and/or servers.
  • the methods may further comprise, prior to the step of retrieving message preference data, the steps of determining that a wireless beacon is in communication with the electronic device, and storing beacon information of the wireless beacon in a second database. This determination can be used as a consideration when deciding what message will be transmitted, if a message is transmitted.
  • the methods may further comprise, prior to the step of retrieving message preference data, the steps of determining that the electronic device has entered a defined geographic location or area, and storing information related to the geographic location or area in a second database. This determination can be used as a consideration when deciding what message will be transmitted, if a message is transmitted.
  • the message itself may comprise one or more of: a push message, an email message, a SMS message, an in-app pop-up message, or a website pop-up message should be transmitted to the electronic device, and storing information related to the one or more of a push message, text message, such as an SMS message, an in-app pop-up message, or a website pop-up message in a second database.
  • a push message an email message, a SMS message, an in-app pop-up message, or a website pop-up message
  • text message such as an SMS message, an in-app pop-up message, or a website pop-up message
  • the methods may further comprise, prior to the step of retrieving message preference data, the steps of: determining that the message should be transmitted to the electronic device; and storing information related to the message in a second database. This enables flexibility in choosing the type of message that is sent to a user of the electronic device. Each message type may be indicative of a respective priority associated with the underlying message.
  • the first database and second database of the methods may be a single combined database to help reduces signaling and networking requirements.
  • the first database and second database may be different databases to permit independent autonomous operation which allows each database to be optimized for its respective function.
  • the methods may comprise, after the step of storing beacon information and prior to the step of retrieving message preference data, the steps of modifying the message preference data in the first database based on the beacon information in the second database.
  • the beacon information thus can be used to dynamically and instantaneously update the preference data.
  • the message preference data of the method may comprise a maximum frequency by which messages can be transmitted to the electronic device. This results in efficient use of bandwidth.
  • the beacon information for each wireless beacon of the methods may comprise one or more of: identification information of the beacon; a time at which the wireless beacon was detected by the electronic device, a geographical location or area at which the wireless beacon was detected; a time at which a last message was transmitted to the electronic device in response to detection of the wireless beacon; and a content type associated with the wireless beacon.
  • This beacon information permits each beacon to be uniquely identified by a number of aspects, all of which can be used to update the preference data or the message that is sent, if one is sent.
  • the step of the method of determining if a message is authorised may comprise determining if a particular wireless beacon has been previously detected within a
  • predetermined period of time This can be used to limit the number of message a user would otherwise have received when a plurality of beacons have been detected.
  • the step of determining if a message is authorised of the method may comprise comparing the message preference data to characteristics of the message. This ensures that only authorized messages are sent.
  • the message preference data of the method may comprise a time of day, month, or year at which messages can be notified on the electronic device. This provides a further degree of control over the sending of messages.
  • the message preference data of the method may comprise one or more of: the amount of money a user spends on goods or services within a given time period, such as per week, month, or year; the amount of money the user spends on particularly categories of goods or services within a given time period, such as per week, month, or year; the locations at which the user purchases or commonly purchases goods or services; whether a user has purchased goods or services in a particular category within a given time period, such as the previous day, week, month, or year; a prediction as to whether the user is interested in a particular category of goods or services. This provides further information from which it can be determined whether a message should be sent.
  • the methods may comprise updating the message preference data according to feedback received from the electronic device, wherein the feedback received from the electronic device is caused by one or more of opening the message, following a link embedded in the message, ignoring the initial message alert, dismissing an initial message alert, snoozing an initial message alert for later review, saving an initial message alert for later review, opening an initial message alert, dismissing the message, snoozing the message for later review, saving the message for later review, reading the message, clicking a link within the message, activating a button within the message, ignoring the message, and taking any other action related to the message.
  • the nature of the feedback can thus be used to determine whether a message should be sent.
  • the beacon of the method may be configured to communicate with the electronic device via a short-range wireless communications protocol, such as Bluetooth or Bluetooth Low Energy, or Bluetooth Smart.
  • a short-range wireless communications protocol such as Bluetooth or Bluetooth Low Energy, or Bluetooth Smart.
  • the electronic device of method may be configured to communicate with the server via a long-range wireless protocol, such as one or more of: LTE, UMTS, 3G, EDGE, GPRS, GSM, and Wi-Fi.
  • a long-range wireless protocol such as one or more of: LTE, UMTS, 3G, EDGE, GPRS, GSM, and Wi-Fi.
  • the message feedback data of the method may comprise a behavioural flag, such as one or more of a like flag, a dislike flag, a type flag, a 'not now' flag.
  • a flag permits authorization to be more easily determined.
  • the message feedback data of the method may comprises data of one or more actions taken in response to a message, said actions comprising one or more of: opening the message, following a link embedded in the message, ignoring the initial message alert, dismissing an initial message alert, snoozing an initial message alert for later review, saving an initial message alert for later review, opening an initial message alert, dismissing the message, snoozing the message for later review, saving the message for later review, reading the message, clicking a link within the message, activating a button within the message, ignoring the message, and taking any other action related to the message.
  • the nature of the behaviour can thus be used to determine whether a message should be sent.
  • the message feedback data may comprise a deferral flag, wherein the deferral flag indicating that the message should be notified on the electronic device at a later time.
  • the message preference data may be updated to indicate that similar messages should not be notified in the originally- attempted timeslot.
  • the method may further comprise providing notification of the message on the electronic device at a later time.
  • the method may further comprise the steps of: receiving the message at the electronic device; and providing notification of the message on the electronic device.
  • the step of providing notification of the message may occur immediately subsequent to the step of receiving the message. Alternatively, the step of providing notification of the message may occur at a delayed time after the step of receiving.
  • the method may further comprise, between the steps of receiving and providing, the steps of: storing the message in a memory associated with the first electronic device; and retrieving the message from the memory associated with the first electronic device.
  • the method may also further comprise, between the steps of storing and retrieving, the step of: receiving a trigger signal, wherein the trigger signal indicates that one or more trigger criteria are met by an operating status of the electronic device;
  • the message preference data of the method may comprise a threshold message value and a message slot for a given message comprises a message slot demand value.
  • the step of determining of the method may comprise determining whether the threshold value has been reached or passed by the message slot demand value of the message slot.
  • the message slot demand value of the method may be set according to demand for transmission of a given message within the message slot.
  • the message slot demand value of the message slot of the method may be set by the frequency of received requests by third party devices for utilising the message slot.
  • the method may further comprise, prior to the step of determining whether the threshold value has been reached or passed, the steps of: receiving an operating status of the electronic device; and setting the number of message slots according to the operating status of the electronic device.
  • the operating status of the electronic device may comprise data indicative of a communications network to which the electronic device is connected.
  • the number of messages slots may be reduced when the device is connected to a public network.
  • the number of message slots may be increased when the device is connected to a private network.
  • the operating status comprises data indicative of a location of the electronic device as provided by a positioning module of the electronic device.
  • the step of setting the number of message slots may comprise determining whether the location of the electronic device falls within a designated area.
  • the method may comprise the step of receiving location data from at least one further electronic device.
  • the step of setting may comprise determining the number of further electronic devices within a designated area.
  • the number of message slots for the electronic device may be reduced when the number of electronic devices within the designated area increases. Alternatively or additionally, the number of message slots for the electronic device may be increased when the number of electronic devices within the designated area decreases.
  • the method may further comprise, prior to the step of determining whether the threshold value has been reached or passed, the steps of: receiving an operating status of the electronic device; and setting the message slot demand value of at least one message slot according to the operating status of the electronic device.
  • the operating status of the electronic device may comprise data indicative of a communications network to which the electronic device is connected.
  • the message slot demand value may be increased when the electronic device connects to a public network. Alternatively or additionally, the message slot demand value may be decreased when the device connects to a private network.
  • the operating status may comprise data indicative of a location of the electronic device as provided by a positioning module of the electronic device.
  • the step of setting the message slot demand value may comprise determining whether the location of the electronic device falls within a designated area.
  • the method may further comprise the step of receiving location data from at least one further electronic device.
  • the step of setting may comprise determining the number of further electronic devices within a designated area.
  • the message slot demand value may be increased when the number of further electronic devices within the designated area increases. Alternatively or additionally, the message slot demand value may be decreased when the number of further electronic devices within the designated area decreases.
  • the designated area may be defined by a fixed radius around the electronic device. Alternatively, the designated area may be defined by a geo-fence.
  • a computer-implemented method for controlling messages transmitted to an electronic device comprises the steps of: receiving context data from at least one context data provider device; receiving preference data associated with the electronic device; determining if the context data and preference data meet one or more trigger criteria; and if the context data and preference data are determined to meet at least one of the one or more trigger criteria: retrieving one or more messages associated with the met trigger criteria; and transmitting the one or more messages to the electronic device.
  • the context data may comprise current situation data, such as one or more of:
  • weather data news data
  • sports data sports data
  • transportation data and traffic data.
  • a computer-implemented method for controlling messages transmitted to an electronic device comprises the steps of: receiving operating status data from the electronic device; receiving preference data associated with the electronic device; determining if the operating status data and
  • preference meet one or more trigger criteria and if the operating status data and preference data are determined to meet at least one of the one or more trigger criteria: retrieving at least one message associated with the at least one met trigger criteria; and transmitting the at least one message to the electronic device.
  • a computer-implemented method for controlling messages transmitted to an electronic device comprising the steps of: receiving context data from at least one context data provider device; receiving operating status data from the electronic device; determining if the context data and operating status data meet one or more trigger criteria; and if the context data and operating status data are determined to meet at least one of the one or more trigger criteria: retrieving at least one message associated with the at least one met trigger criterion; and transmitting the at least one message to the electronic device.
  • the method may further comprise the step of receiving preference data associated with the electronic device, wherein the step of determining further comprises determining if the preference data meet the trigger criteria, and wherein each of the steps of retrieving and transmitting are only performed if the preference data also meet the trigger criteria.
  • the operating status may comprise data indicative of a location of the electronic device provided by a positioning module of the electronic device.
  • the step of determining may comprise analysing the received location of the electronic device to determine whether the electronic device is moving along a vehicle pathway, such as a road or railway track.
  • At least one of the trigger criteria may require that the electronic device is not moving along a vehicle pathway, such as a road or railway track.
  • the operating status may comprise data indicative of the acceleration of the electronic device provided by an accelerometer and/or gyroscope of the electronic device.
  • the step of determining may comprise analysing the acceleration data of the electronic device to predict or determine whether the user of the device is engaged in physical activity.
  • At least one of the trigger criteria may require that the acceleration data does not indicate one or more defined physical activities.
  • the method may further comprise the step of receiving location data from at least one further electronic device.
  • the step of determining may comprise determining the number of further electronic devices within a designated area.
  • the designated area is defined by a fixed radius around the electronic device.
  • the designated area may be defined by a geo-fence.
  • the preference data may indicate that the electronic device and at least one of the further electronic devices are associated with each other such that the at least one message is transmitted to the electronic device and not to the at least one further electronic device.
  • the operating status may comprise data indicative of software installed on the electronic device.
  • the operating status may comprise data indicative of software running on the electronic device.
  • the operating status comprises data indicative of a date and/or time held by a clock of the electronic device.
  • the one or more trigger criteria may comprise a time or a time period, and/or a date or date period.
  • the preference data may comprise a time or a time period, and/or a date or date period. The time period may be defined as one of: morning, afternoon, evening, breakfast, lunch, or dinner.
  • the time, time period, date or date period may be a specific time or date at which messages are to be notified.
  • the method may further comprise the step of determining a predicted future location of the electronic device.
  • the predicted future location may be determined based on a location and movement of the electronic device along a known transport route.
  • the predicted future location is determined based on locations previously received for the electronic device.
  • a computer-implemented method for storing and displaying messages on an electronic device comprises the steps of: receiving one or more messages from a server, wherein the one or more messages are associated with at least one trigger criterion; storing the one or more received messages in a memory associated with the electronic device; receiving a trigger signal, wherein the trigger signal indicates that one or more trigger criteria are met by an operating status of the electronic device; retrieving at least one of the one or more messages stored in the memory, wherein the at least one retrieved message is associated with one or more trigger criteria that correspond with the trigger criteria indicated by the trigger signal; and displaying the at least one retrieved message on a display associated with the electronic device.
  • the step of receiving may only be carried out when the electronic device is connected to a designated communications network.
  • the step of receiving may not be carried out if the electronic device is connected to a communications network other than a designated communications network.
  • the step of receiving may only be carried out when the electronic device is at a designated location.
  • the operating status of the electronic device may comprise data indicative of a location of the electronic device as provided by a positioning module of the electronic device and wherein the one or more trigger criteria comprise defined geographical areas or geo- fences.
  • the operating status of the electronic device may comprise data indicative of a time held by a clock of the electronic device, and wherein the one or more trigger criteria comprise times or time periods.
  • the messages received at the step of receiving may be associated with a location of the electronic device.
  • the method may further comprise the steps of: removing one or more of the received messages from the memory associated with the electronic device.
  • the step of removing may be preceded by the steps of: receiving one or more updated messages, wherein each of the one or more updated messages corresponds to one or more of the messages stored in the memory associated with the electronic device; and storing the one or more updated messages in the memory associated with the electronic device, wherein the message removed from memory at the step of removing are the messages already stored in the memory of the electronic device that correspond to the one or more updated messages.
  • At least one of the messages stored in the memory associated with the electronic device may have an associated time to live, and wherein the step of removing may be performed for a message when its associated time to live expires.
  • At least one of the messages stored in the memory associated with the electronic device may have at least one associated event flag for an event which can occur and which is identifiable by the electronic device.
  • the step of removing may be performed for a message when an event identified by at least one of its associated event flags has occurred.
  • the step of removing may be performed for a message when an event identified by at least one of its associated event flags has not occurred.
  • the step of removing may be performed for a message when a first event identified by at least one of its associated event flags has occurred, and when a second event identified by at least one of its associated event flags has not occurred.
  • the method may further comprise the step of identifying whether the event has occurred by comparing the operating status of the electronic device with the event flag.
  • the event flag may comprise data indicative of one or more of: a start time of the event, an end time of the event, duration of the event, a location of the event.
  • the operating status of the electronic device comprises data indicative of one or more of: a current time and a location of the electronic device.
  • the aforementioned methods may be implemented by the processing circuitry of the aforementioned electronic devices or servers.
  • a computer-readable medium comprising computer executable instructions executable by processing circuitry, which, when executed, cause the processing circuitry to perform the steps of any one of the described methods.
  • FIG. 1 depicts an exemplary electronic device in accordance with the electronic devices of this disclosure
  • FIG. 2 depicts an exemplary wireless beacon in accordance with the wireless beacons of this disclosure
  • FIG. 3 depicts an exemplary server in accordance with the servers of this disclosure
  • FIG. 4 is a flow diagram that depicts a method for controlling messages transmitted to an electronic device.
  • Fig. 5 is a flow diagram that depicts a further method for controlling messages transmitted to an electronic device, taking into account context data and preference data;
  • Fig. 6 is a flow diagram that depicts a further method for controlling messages transmitted to an electronic device, taking into account an operating status of the electronic device and preference data;
  • Fig. 7 is a flow diagram that depicts a further method for controlling messages transmitted to an electronic device, taking into account context data and an operating status of the electronic device;
  • Fig. 8 is a flow diagram that depicts a method for storing and displaying messages on an electronic device
  • FIG. 9 depicts an exemplary system comprising multiple electronic devices.
  • Fig. 10 depicts an arrangement of messages received at and stored on an electronic device. Detailed Description
  • Fig. 1 depicts an exemplary electronic device 101 according to any of the electronic devices of this disclosure.
  • the electronic device comprises processing circuitry 1 10 (such as a microprocessor) and a memory 1 12.
  • Electronic device 101 may also comprise one or more of the following subsystems: a power supply 1 14; a display 1 16; a short-range wireless transceiver 1 18; a long-range wireless transceiver 120; a speaker 122; an image acquisition subsystem 124; a microphone 126; a near-field communication (NFC) subsystem 128; a biometric identification subsystem 130; an electronic nose 132 , and a positioning module 134.
  • the electronic device may be a portable electronic device such as a handheld electronic device, for example a mobile phone, a smartphone, a tablet computer, a laptop computer, a PDA, or a smartwatch.
  • Processing circuitry 1 10 may control the operation of the electronic device 101 and the subsystems 1 12-132.
  • Processor 1 10 is communicatively coupled with subsystems 1 12- 132.
  • Memory 1 12 may comprise one or more of random access memory (RAM), read only memory (ROM), non-volatile random access memory (NVRAM), flash memory, other volatile memory, and other non-volatile memory.
  • Display 1 16 may be communicatively coupled with the processing circuitry 1 10, which may be configured to cause display 1 16 to output images.
  • Display 1 16 may comprise an input interface, such as a touch sensitive interface, for example a touch screen display.
  • Display 1 16 may be used to interact with software that runs on the processor 1 10 of the electronic device 101 , such as to provide confirmation of a transaction and/or to initiate scanning of a machine-identifiable tag.
  • the touch sensitive interface permits a user to provide input to the processing circuitry 1 10 via a discreet touch, touches, or one or more gestures for controlling the operation of the processing circuitry and the functions described herein. It will be appreciated that other forms of input interface may additionally or alternatively be employed built-in or adjacent to the display 1 16 for the same purpose, for example, one or more keys or a key pad, or voice interaction via microphone 126.
  • Short-range wireless transceiver 1 18 may be a short-range radio that is configured to operate according to a short-range wireless protocol.
  • Short-range wireless transceiver 1 18 may be configured to communicate via a short-range wireless protocol.
  • the short-range wireless protocol may be Bluetooth, or Bluetooth Low Energy, or Bluetooth Smart, and the short-range wireless transceiver may be configured to communicate with other devices, such as a wireless beacon, according to such a protocol.
  • the short-range wireless protocol may be a protocol which is capable and designed for communication over less than 1 , 5, 10, 20, 30, 40, 50, or 100m.
  • Long-range wireless transceiver 120 may be one or more long-range RF transceivers that are configured to operate according to communication standard such as LTE, UMTS, 3G, EDGE, GPRS, GSM, and Wi-Fi.
  • electronic device 101 may comprise a first long-range wireless transceiver 121 , such as a cellular transceiver, that is configured to communicate with a cell tower 103 via to a cellular data protocol such as LTE, UMTS, 3G, EDGE, GPRS, or GSM, and a second long-range wireless transceiver 123, such as a Wi-Fi transceiver, that is configured to communicate with a wireless access point 104 via to a Wi- Fi standard such as 802.1 1 ac/n/g/b/a.
  • a first long-range wireless transceiver 121 such as a cellular transceiver
  • a second long-range wireless transceiver 123 such as a Wi-Fi transceiver
  • a long-range wireless protocol may be a protocol which is capable and designed for communication over 5, 10, 20, 30, 40, 50, or 100m. This is in contrast to short-range wireless protocol mentioned above.
  • the long-range wireless protocol may communicate utilizing higher power than the short-range wireless protocol.
  • the range e.g. line of sight distance
  • the long-range wireless protocol may be greater than the range (e.g. line of sight distance) between the short-range end nodes (e.g. electronic device and wireless beacon).
  • Input subsystems 124 to 132 may be used to capture one or more of machine- identifiable tags, biometric data for use in any of the methods hereinbefore described.
  • image acquisition subsystem 122 such as a camera, may be configured to detect light in the visible range of the electromagnetic spectrum, and is capable of acquiring one or more images of machine-identifiable tags, such as QR codes and/or of capturing images of particular goods or products.
  • the processing circuitry 1 1 0 is configured to process such images and identify the data contained therein, for example the data indicative of a transaction in a machine-identifiable transaction tag.
  • Microphone 126 may be configured to detect one or more of machine-identifiable tags, such as an audio watermark, or user input such, such as speech in response to a message with the text "Speak to Buy".
  • NFC subsystem 128 may be configured to detect NFC machine-identifiable tags.
  • Biometric identification subsystem 130 may comprise a fingerprint reader, which may be configured to be used to authenticate a user of the electronic device 101 for one or more of the various functions outlined above.
  • Electronic nose subsystem 132 may comprise one or more devices capable of detecting and/or identifying an odor.
  • Positioning module 134 is capable of determining a location of the electronic device 101 using various known method, for example GPS signals, A-GPS, cellular triangulation, Wi-Fi location systems or any other known position determination means.
  • the positioning module 134 may also be capable of determining a direction in which the electronic device is pointed or moving, for example by using a built in compass or by analyzing location data over time.
  • the positioning module 134 outputs location data corresponding to the determined location to the processing circuitry 1 10.
  • Electronic device 101 may be configured to communicate via the long-range wireless transceiver 120 with a network 140.
  • Network 140 may be a wide area network, such as the Internet, or a local area network.
  • Electronic device 101 may be further configured to communicate via long-range wireless transceiver 120 and network 140 with one or more servers 142, 144.
  • the servers 142, 144 are exemplary and that any numbers of physical or virtual servers may be used in the methods described herein.
  • the servers 142, 144 may be co-located or distributed over network 140, or any other network to which all servers are connected.
  • FIG. 2 shows an exemplary wireless beacon 201 according to any of the wireless beacons of this disclosure.
  • Wireless beacon 201 may be configured to communicate with electronic device 101.
  • Wireless beacon 201 may comprise processing circuitry 210 that is communicatively coupled with a memory 212 and a short-range wireless transceiver 214.
  • Processing circuitry 210 may control the operation of the wireless beacon 201 and the memory 212 and short-range wireless transceiver 214.
  • Memory 212 may comprise one or more of random access memory (RAM), read only memory (ROM), non -volatile random access memory (NVRAM), flash memory, other volatile memory, and other non-volatile memory.
  • RAM random access memory
  • ROM read only memory
  • NVRAM non -volatile random access memory
  • flash memory other volatile memory, and other non-volatile memory.
  • the short-range wireless protocol may be Bluetooth, or Bluetooth Low Energy, or Bluetooth Smart, and the short-range wireless transceiver 214 may be configured to communicate with the electronic device 101 according to such a protocol.
  • the short-range wireless protocol may be a protocol which is capable and designed for communication with the electronic device 101 over less than 1 , 5, 10, 20, 30, 40, 50, or 100m.
  • FIG. 3 shows an electronic device which is an exemplary server 301 according to any of the servers of this disclosure (such as servers 142, 144).
  • Server 301 comprises processing circuitry 310 communicatively coupled with a memory 312 and a network interface 314. Processing circuitry 310 may control the operation of the server 301 and the memory 312 and network interface 314.
  • Memory 312 may comprise one or more of random access memory (RAM), read only memory (ROM), non-volatile random access memory (NVRAM), flash memory, other volatile memory, and other non-volatile memory.
  • Server 301 is connected via network interface 314 with the network 140, such as the Internet. Server 301 may be connected via network interface 314 and network 140 with the electronic device 101 and/or with other servers.
  • Fig. 4 depicts an example process 400 for controlling messages that are transmitted to or notified on an electronic device.
  • the process 400 may be carried out on a server 301 .
  • process 400 is carried out on an electronic device 101 . Controlling messages that are transmitted to or notified on an electronic device in a method according to the embodiments below prevents the
  • a message may be a packet of data comprising one or more of: text, images, video, audio, binary data or any other data that can be interpreted by electronic device 101 and/or displayed on its display 1 16.
  • the message may be displayed on display 1 16 and may be selectable via interaction with the display 1 16 or input interface.
  • the message may be selectable via the display 1 16 or input interface so as to enable interaction with the content of the message, such as displaying message content, e.g.
  • Interaction via the input interface with the message notified on the device 101 may also trigger the processing circuitry 1 10 to access additional information associated with the message, such as additional content located on a remote server accessible via one or both of networks 103, 104, the location (e.g. URL) of such content being identifiable by the message.
  • additional information associated with the message such as additional content located on a remote server accessible via one or both of networks 103, 104, the location (e.g. URL) of such content being identifiable by the message.
  • the content of the message or associated additional content may also be representative of or associated with offers of goods for sale, current situation data, such as for example weather, news or traffic, and/or may be an advertisement for one or more products or services.
  • process 400 is carried out on a sever 301 .
  • the process is triggered.
  • the process trigger may be a positive determination by the server 301 that a wireless beacon 201 is in communication with an electronic device 101 .
  • the process trigger may be a positive determination by the server 301 that the electronic device 101 has entered a geo-fence.
  • the process trigger may be a positive determination by the server 301 that one or more of a push message, a SMS message, an in-app pop-up message, or a website pop-up message should be transmitted to the electronic device. Additional triggers for the process 400 are described with respect to Figures 5 to 7 below.
  • process trigger information is stored.
  • the process trigger information may be stored in a database.
  • the process trigger information may be a flag which is indicative of whether a message should be notified on the electronic device 101 .
  • the process trigger information is beacon information.
  • the beacon information for each wireless beacon can comprise one or more of : identification information of the beacon; a time at which the wireless beacon was detected by the electronic device; a geographical location at which the wireless beacon was detected; a time at which a last message was transmitted to the electronic device in response to detection of the wireless beacon; and a content type or category associated with the beacon.
  • the process trigger information may be geo-fence information.
  • Geo- fence information can comprise one or more of: identification information of the geo-fence; a time at which the electronic device entered the geo-fence; and a time at which a last message was transmitted to the electronic device in response to detection of the electronic device entering the geo-fence.
  • the process trigger is a positive determination that a message, for example one or more of a push message, a SMS message, an in-app pop-up message, or a website pop-up message should be transmitted to the electronic device, the process trigger information is stored for detection in process 410.
  • message preference data which may be stored in a database, is modified based on the process trigger.
  • the database in wh ich message preference data may be stored may be the same as or different to the database in which process trigger information is stored.
  • the message preference data comprises one or more criteria that must be satisfied for a message to be transmitted to or notified on the electronic device.
  • the message preference data may comprise one or more of: a maximum frequency by which messages can be transmitted to the electronic device; maximum frequency with which messages can be notified on the electronic device; a time of day, month, or year at which messages can be transmitted to the electronic device; a time of day, month, or year at which messages can be notified on the electronic device; and one or more of likes, dislikes, topics, and types or messages, and behaviours resultant from the message alert or the message, all of which can be set with a respective flag garnered from feedback.
  • Feedback resultant from the message alert or the message may be a record of the actions a user has previously taken in response to the message, such actions including one or more of opening the message, following a link embedded in the message, ignoring the initial message alert, dismissing an initial message alert, snoozing an initial message alert for later review, saving an initial message alert for later review, opening an initial message alert, dismissing the message, snoozing the message for later review, saving the message for later review, reading the message, clicking a link within the message, activating a button within the message, ignoring the message, or taking any other action related to the message.
  • message preference data may comprise information such pertaining specifically to a user.
  • This user information may comprise one or more of: the amount of money a user spends on goods or services within a given time period, such as per week, month, or year; the amount of money the user spends on particularly categories of goods or services within a given time period, such as per week, month, or year; the locations at which the user purchases or commonly purchases goods or services; whether a user has purchases goods or services in a particular category within a given time period, such as within the previous day, week, month, or year; a prediction as to whether the user is interested in a particular category of goods or services.
  • the user information may be used as part of the message preference data in determining step 410.
  • the message preference data may also comprise the process trigger information described above. It will be appreciated that any other criteria that may be relevant for determining whether a message is of interest to or otherwise appropriate to be transmitted to or notified on the electronic device may additionally or alternatively form part of the message preference data.
  • Steps 404 and 406 are optional steps of the method and only one step or both steps may be performed or not performed. Steps 404 and 406, if carried out, may be carried out synchronously with the other steps of the method, i.e. the steps are begun and completed before moving onto the next step, or asynchronously with the other steps of the method, i.e. the other steps of the method may be carried out before step 404 or 406 has been begun or completed. Furthermore, steps 404 and 406 may be carried out asynchronously with respect to one another provided that step 406 does not depend on the trigger information stored in step 404.
  • message preference data is retrieved. If the message preference data is stored in a database, it is retrieved from the database.
  • step 410 it is determined whether a message is authorised for transmission to the electronic device.
  • the determination may comprise determining if a particular process trigger has occurred within a predetermined period of time.
  • the determination may be carried out by processing circuitry 310. For example, if the process trigger is a positive determination that a wireless beacon 201 is in communication with the electronic device 101 , it may be determined by processing circuitry 310 at step 410 whether the wireless beacon 201 has been in communication with the electronic device within the previous 12 hours.
  • Step 410 may additionally or alternatively comprise comparing the message preference data to characteristics of the message.
  • the processing circuitry 310 may be determined by the processing circuitry 310 that the message is of the correct topic or content type to be transmitted to the electronic device 101 . It will be appreciated that the determination in step 410 may be carried out based on any combination of one or more of the examples of the message preference data described herein. If the determination that the message is authorised for transmission to the electronic device 101 is positive, the method continues to step 412. If the determination is negative, the method terminates at step 410.
  • the message is transmitted to the electronic device 101 .
  • the message may comprise one or more of: a push message, an email message, a SMS message, an in- app pop-up message, or a website pop-up message should be transmitted to the electronic device, and storing information related to the one or more of a push message, text message, such as an SMS message, an in-app pop-up message, or a website pop-up message in a second database.
  • the message can be displayed in the display 1 16 or played on the speaker 1 12 if it is an audible message.
  • the display 1 16 and speaker 1 12 may act in conjunction if the message is a video message for video playback with sound.
  • the message preference data may be updated.
  • the message preference data may be updated based on the characteristics of the message that was transmitted in step 412.
  • the characteristics of the message can comprise one or more of: the time at which the message was sent; the content type of the message; the location of the electronic device 101 at which the message was sent; a wireless beacon 201 that was determined to be in communication with the electronic device 101 which caused the process to be triggered; a geo-fence within which the electronic device 101 was determined to be location which caused the process to be triggered; and the process trigger which caused the message to be sent.
  • the message preference data may also be updated according to feedback received from the electronic device 101 .
  • the feedback received from the electronic device may be caused by user feedback via the input interface of the device 101 , for example one or more of opening the message, following a link embedded in the message, ignoring the initial message alert, dismissing an initial message alert, snoozing an initial message alert for later review, saving an initial message alert for later review, opening an initial message alert, dismissing the message, snoozing the message for later review, saving the message for later review, reading the message, clicking a link within the message, activating a button within the message, ignoring the message, or taking any other action related to the message.
  • the message preference data may be updated to indicate that the user is interested in the content type that is linked to.
  • the feedback may comprise a deferral flag, which indicates that the message should be notified on the electronic device at a later time.
  • the later time may be specified by a user of the electronic device and may be selected from a list of time intervals, a time interval input by the user, a future time selected from a list of future times or a future time input by the user.
  • the message may then be notified on the electronic device after the time interval or at the later time selected or specified by the user.
  • the method may further comprise updating the message preference data to indicate that similar messages should not be notified in the originally-attempted timeslot in future.
  • Step 414 may be carried out simultaneously or asynchronously with step 412 if step 414 does not depend on feedback from the electronic device 101 or on successful transmission of the message at step 412.
  • process 400 is carried out on the electronic device 101 .
  • the process is triggered.
  • the process trigger may be a positive determination by the electronic device 101 that a wireless beacon 201 is in communication with an electronic device 101 .
  • the process trigger may be a positive determination by the electronic device 101 that the electronic device 101 has entered a geo-fence.
  • the process trigger may be a positive determination by the electronic device 101 that an in-app pop-up message should be notified on the electronic device.
  • process trigger information is stored.
  • the process trigger information may be stored in a database.
  • the database may be local to the electronic device 101 and/or stored on a sever 301 in communication with the electronic device via the long- range wireless transceiver 120.
  • the process trigger information is beacon information.
  • the beacon information for each wireless beacon can comprise one or more of: identification information of the beacon; a time at which the wireless beacon was detected by the electronic device; a geographical location at which the wireless beacon was detected; a time at which a last message was transmitted to the electronic device in response to detection of the wireless beacon; and a content type or category associated with the beacon.
  • the process trigger information may be geo-fence information.
  • Geo- fence information can comprise one or more of: identification information of the geo-fence; a time at which the electronic device entered the geo-fence; and a time at which a last message was transmitted to the electronic device in response to detection of the electronic device entering the geo-fence.
  • the process trigger information can comprise an indication that the message should be notified.
  • the notification may comprise the message itself.
  • message preference data which may be stored in a database, is modified based on the process trigger.
  • the database in which message preference data may be stored may be the same as or different to the database in which process trigger information is stored.
  • the database in which message preference data is stored may be local to the electronic device 101 and/or stored on a sever 301 in communication with the electronic device via the long-range wireless transceiver 120.
  • Steps 404 and 406 are optional steps of the method and only one step or both steps may be performed or not performed. Steps 404 and 406, if carried out, may be carried out synchronously with the other steps of the method, i.e. the steps are begun and completed before moving onto the next step, or asynchronously with the other steps of the method, i.e. the other steps of the method may be carried out before step 404 or 406 has been begun or completed. Furthermore, steps 404 and 406 may be carried out asynchronously with respect to one another provided that step 406 does not depend on the trigger information stored in step 404.
  • message preference data is retrieved. If the message preference data is stored in a database, it is retrieved from the database. [141 ] At step 410, it is determined whether a message is authorised for notification on the electronic device 101. The determination may comprise determining if a particular process trigger has occurred within a predetermined period of time. The determination may be carried out by processing circuitry 1 1 0. For example, if the process trigger is a positive determination that a wireless beacon 201 is in communication with the electronic device 101 , it may be determined by processing circuitry 1 10 at step 410 whether the wireless beacon 201 has been in communication with the electronic device within the previous 12 hours. Step 410 may additionally or alternatively comprise comparing the message preference data to characteristics of the message.
  • the processing circuitry 1 10 may be determined by the processing circuitry 1 10 that the message is off the correct topic or content type to be notified on the electronic device 101 . It will be appreciated that the determination in step 410 may be carried out based on any combination of one or more of the examples of the message preference data described herein. If the determination that the message is authorised for notification on the electronic device 101 is positive, the method continues to step 412. If the determination is negative, the method terminates at step 410.
  • the message is notified on the electronic device 101 .
  • the message may be one or more of: a push message, an email message, a SMS message, an in-app pop-up message, or a website pop-up message should be transmitted to the electronic device, and storing information related to the one or more of a push message, text message, such as an SMS message, an in-app pop-up message, or a website pop-up message in a second database.
  • the message can be displayed in the display 1 16 or played on the speaker 1 12 if it is an audible message.
  • the display 1 16 and speaker 1 12 may act in conjunction if the message is a video message for video playback with sound.
  • the message preference data may be updated.
  • the message preference data may be updated based on the characteristics of the message that was transmitted in step 412.
  • the characteristics of the message can comprise one or more of: the time at which the message was sent; the content type of the message; the location of the electronic device 101 at which the message was sent; a wireless beacon 201 that was determined to be in communication with the electronic device 101 which caused the process to be triggered; a geo-fence within which the electronic device 101 was determined to be location which caused the process to be triggered; and the process trigger which caused the message to be sent.
  • the message preference data may also be updated according to the interaction of a user with the message on electronic device 101 .
  • the feedback may be caused by user interaction with the device 101 , for example one or more of opening the message, following a link embedded in the message, ignoring the initial message alert, dismissing an initial message alert, snoozing an initial message alert for later review, saving an initial message alert for later review, opening an initial message alert, dismissing the message, snoozing the message for later review, saving the message for later review, reading the message, clicking a link within the message, activating a button within the message, ignoring the message, or taking any other action related to the message.
  • the message preference data may be updated to indicate that the user is interested in the content type that is linked to.
  • Step 414 may be carried out simultaneously or asynchronously with step 412 if step 414 does not depend on feedback from the electronic device 101 or on successful transmission of the message at step 412.
  • the message preference data may further comprise a threshold message value and a message slot a message slot demand value for a given message.
  • the threshold message value is a minimum value of the message slot demand value that must be reached or passed in order for a message to be transmitted to or notified by the electronic device 101 .
  • the message slot demand value may be set according to demand for transmission of a given message within the message slot.
  • the electronic device 101 may have a pre-determined, finite number of message slots for receiving messages from the server 301 or for notification of messages on the electronic device 101 itself. Each of these message slots may be assigned a message slot demand value.
  • the message slot demand value may be set according to the demand for the message slot. For example, this may be determined according to the frequency with which requests are received from third party devices (i.e. devices that are not the electronic device 101 in the second embodiment, or the server 301 or electronic device 101 in the first embodiment) to utilise said message slot.
  • the method 400 may further comprise the steps of receiving an operating status of the electronic device 101 and subsequently setting the number of message slots and/or the message slot demand value according to the received operating status of the device.
  • the operating status of the electronic device 101 may comprise data indicative of one or more of: a communications network to which the electronic device 101 is connected, and a geographic location of the electronic device 101 as provided by a positioning module of the electronic device 101.
  • the method may determine the type of network that is indicated in the operating status of the device.
  • the electronic device 101 may be connected to a public network or a private network.
  • a public network may be an unsecured wireless network, e.g. a Wi-Fi network that does not employ a security protocol such as WEP or WPA/WPA2 or a cellular data network such as 3G or LTE, or a private network, e.g. a Wi-Fi network that does employ a security protocol.
  • the operating status may also indicate other aspects of the wireless network, such as the type of connection that the electronic device 101 is using, e.g. a GPRS, EDGE, HSPA or other mobile
  • the number of message slots may be decreased and/or the message slot demand value may be increased.
  • the number of messages sent to the electronic device 101 , and other electronic devices connected to the same network is reduced, thus reducing the network traffic on the public network and improving service quality.
  • the number of message slots may be increased and/or the message slot demand value may be decreased when the operating status indicates that the electronic device 101 connects to a private network.
  • the operating status may additionally or alternatively comprise data indicative of a geographic location of the electronic device 101 .
  • the method may further comprise the step of receiving location data from at least one further electronic device, and the step of setting the number of message slots and/or the message slot demand value may take the number of electronic devices in a designated area into account.
  • the designated area may be a geographic area defined by a geo-fence, or may be defined by a fixed radius around the electronic device 101 as depicted in Fig. 9 by the circle 910 with radius R around electronic device 901 , where further electronic devices 91 1 fall within the defined area, and further electronics device 920 do not.
  • the number of electronic devices 91 1 in the designated area increases, the number of available message slots may be decreased and/or the message slot demand value may be increased.
  • the number of messages transmitted to each user in the designated area decreases, reducing the network traffic over cellular data connections in the area.
  • increasing the number of message slots or decreasing the message slot demand value as the number of devices in the designated area decreases more messages may be sent to each electronic device, taking advantage of the increased availability of network resources.
  • Fig. 9 depicts an example arrangement of servers 942, 944 on which method 400 may be carried out and electronic devices 901 , 91 1 , 920 in communication with the server 942, 944.
  • the servers 942, 944 are connected to a network 940, such as the Internet, and are connected via network 940 and via a Wi-Fi access point 904 and/or cell tower 903 with electronic devices 901 , 91 1 , 920.
  • the servers 942, 944 may carry out method 400, 500, 600 and/or 700 for each electronic device 901 , 91 1 , 920 that is connected.
  • Each electronic device 901 , 91 1 , 920 may carry out method 400 and/or method 800.
  • the electronic devices 901 , 91 1 , 920 may be in communication with one another via the Internet, Wi-Fi 904, Bluetooth, cellular connection 903, or any other communication technology.
  • the electronic devices 901 , 91 1 , 920 may be capable of swapping messages from one device to another. When a message is swapped from one electronic device to another, it may be removed from the original electronic device such that the message only exists in the memory of the receiving electronic device. Such a system may be utilised by users of the electronic devices to provide messages which they believe are more relevant to users of other electronic devices.
  • Fig. 5 is a flow diagram depicting a method 500 for controlling messages transmitted to an electronic device 101 .
  • the method 500 may be carried out on a server in
  • context data and preference data are received by the server 301 .
  • the context data may be data indicative of events or conditions which affect the user of the electronic device 101 .
  • the context data and preference data may be received in any order.
  • the context data is received from one or more context data provider devices.
  • the context data may comprise current situation data such as weather data, news data sports data, transport/traffic data, or any other data that may be relevant to the user of the electronic device 101 .
  • the context data may be provided by various third parties via individual context data provider devices such as network- connected servers. Alternatively, the context data may be collected and aggregated by an intermediate context data provider device, which then provides the context data to the server 301 .
  • the preference data is preference data associated with the electronic device 101 and may be the message preference data described above with respect to method 400.
  • the preference data may be stored in memory on the server 301 and retrieved from the memory at step 502, or may be received from another server.
  • the trigger criteria are set according to a desired set of conditions under which messages should be sent to an electronic device 101. For example, the trigger criteria may require that the preference data indicates a particular sports team, and requires that the context data indicates that the sports team has won or lost a match. If the context data and preference data do not meet any of the trigger criteria, then no further action is taken. If the context data and preference data do meet one or more of the trigger criteria, then the method progresses to step 506.
  • messages associated to the trigger criteria are retrieved.
  • the messages may be retrieved from a memory 312 of the server 301 , or from another device.
  • the trigger criteria are that the preference data indicate a particular sports team and that the context data indicate that the sports team has lost
  • the message may include text indicating the result and providing a coupon for a free drink. It will be appreciated that multiple trigger criteria which are associated with multiple messages may be met and thus multiple messages may be retrieved at step 506.
  • the message retrieved at the step 506 may be transmitted to the electronic device 101 for notification on the electronic device 101 .
  • the message may simply be transmitted to the electronic device at step 508 or, processing may continue with method 400, with the steps of method 500 constituting step 402 of method 400.
  • Fig. 6 is a flow diagram depicting a method 600 for controlling messages transmitted to an electronic device 101 , similar to method 500. Again, the method 600 may be carried out on a server in communication with electronic device 101 .
  • an operating status of the electronic device 101 and preference data are received by the server 301 .
  • the operating status and preference data may be received in any order.
  • the operating status is received from the electronic device 101 and may comprise data indicative of an operating status of the electronic device or any of its modules, such as data indicative of: a location and/or direction of movement of the electronic device provided by a positioning module, a communication network to which the electronic device 101 is connected, an acceleration measured by an accelerometer/gyroscope of the electronic device 101 , software installed on the electronic device 1 01 , and/or software currently running on the electronic device 101 .
  • the preference data is preference data associated with the electronic device 101 and may be the message preference data described above with respect to method 400.
  • the preference data may be stored in memory 312 on the server 301 and retrieved from the memory 312 at step 562, or may be received from another server.
  • the trigger criteria are set according to a desired set of conditions under which messages should be sent to an electronic device 101 .
  • the trigger criteria may require that the operating status indicates that the user of the electronic device is within a defined geographic area.
  • the defined geographic area may be one or more defined buildings. For example, the area may be a shopping centre, and that the preference data indicate that the user is interested in menswear. If the trigger criteria are met by the operating status and the preference data, then the method progresses to step 606; if not, the process ends.
  • messages associated with the trigger criteria are retrieved.
  • the messages may be retrieved from a memory 312 of the server 301 , or from another device.
  • the trigger criteria are that the electronic device is located in a shopping centre, and that the user is interested in menswear
  • the message may include text indicating that a sale is on at a menswear retailer with a store in the shopping centre and/or provide a coupon for a discount in the store. It will be appreciated that multiple trigger criteria which are associated with multiple messages may be met and thus multiple messages may be retrieved at step 606.
  • the message retrieved at the step 606 may be transmitted to the electronic device 101 for notification on the electronic device 101 .
  • the message may simply be transmitted to the electronic device at step 608 or, processing may continue with method 400, with the steps of method 600 constituting step 402 of method 400.
  • Fig. 7 is a flow diagram depicting a method 700 for controlling messages transmitted to an electronic device 101 , similar to methods 500 and 600. Again, the method 700 may be carried out on a server in communication with electronic device 101 .
  • an operating status of the electronic device 101 and context data are received by the server 301 .
  • the operating status and context data may be received in any order.
  • the operating status is received from the electronic device 101 and may comprise data indicative of an operating status of the electronic device or any of its modules, such as data indicative of: a location and/or direction of movement of the electronic device provided by a positioning module, a communication network to which the electronic device 101 is connected, an acceleration measured by an accelerometer/gyroscope of the electronic device 101 , a time or date held by a clock of the electronic device 101 , software installed on the electronic device 101 , and/or software currently running on the electronic device 101 .
  • the context data may comprise current situation data such as weather data, news data sports data, transport/traffic data, or any other data that may be relevant to the user of the electronic device 101.
  • the context data may be provided by various third parties via individual context data provider devices such as Internet-connect servers.
  • the context data may be collected and aggregated by an intermediate context data provider device, which then provides the context data to the server 301 .
  • the trigger criteria are set according to a desired set of conditions under which messages should be sent to an electronic device 101 .
  • the trigger criteria may require that the operating status indicates that the user of the electronic device is within a defined geographic area and that the context data indicate that it is raining in that geographic area.
  • the trigger criteria may impose conditions related to any operating status of the electronic device 101 that can be provided to the server.
  • the trigger criteria may require that the operating status indicates that a particular time and/or date is held by the electronic device 101 , or that a time held by the electronic device 101 falls within a defined time period and/or date period. If the trigger criteria are met by the operating status and the context data, then the method progresses to step 606; if not, the process ends.
  • messages associated with the trigger criteria are retrieved.
  • the messages may be retrieved from a memory 312 of the server 301 , or from another device.
  • the trigger criteria are the operating status indicates that the user of the electronic device is within a defined geographic area and that the context data indicate that it is raining in that geographic area
  • the message may include an advertisement for umbrellas and/or provide a coupon for a discount on umbrellas in a store located within the geographic area. It will be appreciated that multiple trigger criteria which are associated with multiple messages may be met and thus multiple messages may be retrieved at step 706.
  • the message retrieved at the step 706 may be transmitted to the electronic device 101 for notification on the electronic device 101 .
  • the message may simply be transmitted to the electronic device at step 708 or, processing may continue with method 400, with the steps of method 700 constituting step 402 of method 400.
  • the method 700 may also include receiving preference data at step 702, similarly to methods 500 and 600.
  • the determination at step 704 may then also take preference data into account when determining whether any trigger criteria are met.
  • the trigger criteria may require that the operating status indicates that the electronic device is located at or near a sports venue, that the preference data indicates a particular sports team, and that the context data indicates that the sports team has won the match that was played at the sports venue. If these criteria are met, a message may be transmitted to the electronic device including a message of congratulations and a coupon for a product that can be bought at the sports stadium.
  • method 700 may include additional processing or analysis of the operating status/context data received.
  • the operating status may be processed to predict a behaviour or an activity of the user of the electronic device, e.g. analysing the location data to determine whether the electronic device, and hence the user of the electronic device, is moving along a road or other vehicle pathway; analysing accelerometer data to determine whether the user of electronic device is engaged in exercise such as running, cycling, or other physical activity, or whether the user is not moving.
  • several different types of operating status data may be analysed in combination to determine or predict the behaviour or an activity of the user of the electronic device, for example, determining whether the user is cycling based on accelerometer data and changing location data.
  • the method may also comprise predicting a future location of the electronic device, based on previously or contemporaneously received location data and/or preference data.
  • Trigger criteria may require that an electronic device is predicted to be travelling to a particular location and/or arriving at a particular location at a particular time.
  • preference data could include special designated locations, such as home and/or work.
  • Method 700 may further comprise the steps of receiving location data from at least one further electronic device. They method may then determine the number of further electronic devices in a designated area.
  • the designated area may be a geographic area defined by a geo-fence, or may be defined by a fixed radius around the electronic device 101 as depicted in Fig. 9 by the circle 910 with radius R around electronic device 901 , where further electronic devices 91 1 fall within the defined area, and further electronics device 920 do not.
  • Trigger criteria may place requirements on the number of further electronic devices in a defined area, for example that there are fewer than an upper limit of further electronic devices in the defined geographic area.
  • method 700 comprises receiving location data from at least one further electronic device, a determination may be made as to whether the electronic device 101 and any further electronics device are associated with each other.
  • the electronic device and further electronic devices may be associated with each in the preference data. For example, a husband and wife may share a family user account that is used in the method 700. If so, the electronic devices of the husband and the wife may be associated with one another in the preference data.
  • the method 700 may only send the message to either the electronic device of the further electronic device. Which electronic device receives the message may be determined based on further aspects of the preference data or trigger criteria.
  • Fig. 8 depicts a method 800 for storing and displaying messages on an electronic device.
  • the method 800 may be carried out on an electronic device such as electronic device 101 .
  • step 802 one or more messages are received at the electronic device 101 , wherein each of the one of more messages is associated with at least one trigger criterion.
  • the received messages are stored in a memory 1 12 of the electronic device 101 .
  • a trigger signal is received.
  • the trigger signal indicates that one or more trigger criteria are met by an operating status of the electronic device 101 .
  • one or more of the messages may be retrieved at step 808 from the one or more messages stored in the memory 1 12. The retrieved messages are associated with the trigger criteria received in the trigger signal.
  • the retrieved message or messages are displayed on a display associated with the electronic device. Following the display of the message, the retrieved message may be deleted from the memory 1 12.
  • the method 800 enables messages to be pre-cached on the electronic device 101 such that they can be triggered and displayed at a later time without requiring using of a communication network. Hence, messages can be displayed on the electronic device 101 when no network connection is available.
  • step 802 may only be carried out when the electronic device is connected to a designated communications network, such as a Wi-Fi network, and/or may only be carried out when the electronic device 101 is located in a defined geographic region.
  • a designated network such as a Wi-Fi network
  • the traffic on other networks such as mobile or cellular data networks is reduced, helping to avoid reaching data allowance caps for cellular devices.
  • step 802 By only carrying out step 802 when the electronic device is located in a defined geographic region, such as a particular country, or by only carrying out the step when connected to a designated network, data roaming charges for using mobile network data for the messages can be avoided.
  • the electronic device 101 may receive and store message according to steps 802 and 804 while connected to a Wi-Fi network, such as Wi-Fi in the hotel, thereby avoiding data roaming charges from the mobile network.
  • a Wi-Fi network such as Wi-Fi in the hotel
  • the user leaves the hotel and passes a particular location for example a landmark such as a museum or a particular shop
  • the operating status of the device meets a trigger criterion for that location, and a trigger signal is generated.
  • the appropriate message for that location e.g. landmark, such as a voucher for entry to the museum, is then retrieved from the memory 1 12 of electronic device 101 and displayed, again without using the data connection of the mobile network and incurring roaming charges for the data in respect of the messages.
  • the trigger criteria may also comprise a specific time or a time period at or during which a trigger signal is generated.
  • the operating status of the electronic device may comprise data indicative of a time held by a clock of the electronic device.
  • the time or time period might be one of: morning, afternoon, evening, night, breakfast, lunch, or dinner.
  • a restaurant may wish to send a message containing details of a lunchtime offer to users of electronic devices, in which case the trigger criteria may be the operating status indicates that the time is lunchtime, which may be defined at 12PM to 2PM. If the operating status indicates that the time falls within this period, the trigger criteria are met. If any other trigger criteria for the message are also met, the message may be retrieved from the memory and presented on the electronic device.
  • the method 800 may further comprise optional steps 812 and/or 814.
  • step 812 one or more update messages are received by the electronic device 101 , wherein each update message corresponds to one or more of the messages stored in the memory 1 12 associated with the electronic device 101 .
  • Each update message may instruct the electronic device to store one or more new messages in the memory 1 12 and delete one or more existing message from the memory 1 12.
  • each update message may correspond to one or more of the messages stored in memory 1 12, and is intended to replace the one or more stored messages. Any messages to be removed from the memory are removed at step 814.
  • each message received at the electronic device and stored in the memory 1 12 may have an associated time to live (TTL), which defines a length of time from the message's creation, from the time it is received by the electronic device, or from the time that it is stored in the memory 1 12, after which it should be deleted if it is unused, i.e. if it has not been displayed on the electronic device.
  • TTL time to live
  • the removal of messages from memory may be based on event flags associated with the messages.
  • Each message may have one or more associated event flags or, alternatively, no event flags associated.
  • the event flag represents an event that can occur and that is identifiable by the electronic device, for example, arriving at a particular location, or a defined time being reached.
  • the message may be deleted.
  • the message may be deleted when the event associated with the message's event flag does not-occur. It will be appreciated that messages with event flag of both types may both be present in the memory of a device.
  • a single message may be associated with flags for both type, e.g.
  • the event flags may relate to one or more of: a start time of the event, an end time of the event, a duration of the event, a location of the event.
  • the electronic device 101 may identify whether the event has occurred by comparing the operating status of the electronic device with the event flag, wherein the operating status comprises data indicative of one or more of: a current time and a location of the electronic device.
  • event flags may, when satisfied, result in the electronic device 101 requesting further messages related the message for which the event flag was satisfied from the server, rather than removing the message.
  • FIG. 10 shows an electronic device 1001 with three messages 1010, A, B and C stored in memory. Each message A, B, and C relates to a particular location such as a shop, bar, or restaurant.
  • the electronic device request further messages 1012 from the server which also relate to location A.
  • messages B and C also have associated event flags for location A, which, when the associated event occurs, removes messages B and C from the memory of the electronic device 101 .
  • Method 800 may follow directly from the first embodiment of the method 400 described above, i.e. when the method 400 is carried out on a remote server.
  • the messages transmitted to the electronic device 101 in the final step of method 400 are received by the electronic device 101 the message and the electronic device 101 provides notification of the message.
  • the electronic device may provide notification of the method immediately subsequent to receiving the message, i.e. without introducing an artificial delay.
  • the message may only be notified at a delayed time after receiving the message, i.e. following an artificial delay.
  • the electronic device 101 may store the message in an associated memory 1 12, to be retrieved at a later time, when notification is to take place.
  • Notification of the message may occur following receipt of a trigger signal by the electronic device 101 .
  • the trigger signal may be generated by the electronic device itself, or by a remote device such a server.
  • the trigger signal may indicate that one or more trigger criteria are met by an operating status of the electronic device. It will be appreciated that any of the features described herein with respect to method 800 can be part of the method carried out by the electronic device 101 subsequent to method 400.
  • the electronic device 101 or server 142, 144 can comprise comprises a memory and the processing circuitry 1 10.
  • the processing circuitry 1 10 in conjunction with computer executable code stored in memory is thereby configured to perform steps of the methods of this disclosure as herein disclosed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Development Economics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

L'invention concerne un procédé mis en œuvre sur un serveur pour commander les messages transmis à un dispositif électronique. Des données de préférence de message sont récupérées à partir d'une première base de données. On détermine ensuite si un message est autorisé en vue d'une transmission vers le dispositif électronique en fonction des données de préférence de message, et si le message est déterminé comme étant autorisé, le message est transmis du serveur au dispositif électronique. L'invention concerne également des dispositifs, des systèmes et des supports lisibles par ordinateur correspondants.
EP15711559.3A 2014-03-03 2015-03-03 Dispositifs, systèmes et procédés de livraison de message Withdrawn EP3114626A1 (fr)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GBGB1403720.4A GB201403720D0 (en) 2013-07-10 2014-03-03 Transaction enablement platform
PCT/GB2014/052119 WO2015004477A1 (fr) 2013-07-10 2014-07-10 Dispositifs, systèmes et procédés de traitement de données
GBGB1412928.2A GB201412928D0 (en) 2014-03-03 2014-07-21 Devices,systems and methods for message delivery
PCT/GB2015/050615 WO2015132581A1 (fr) 2014-03-03 2015-03-03 Dispositifs, systèmes et procédés de livraison de message

Publications (1)

Publication Number Publication Date
EP3114626A1 true EP3114626A1 (fr) 2017-01-11

Family

ID=52589311

Family Applications (1)

Application Number Title Priority Date Filing Date
EP15711559.3A Withdrawn EP3114626A1 (fr) 2014-03-03 2015-03-03 Dispositifs, systèmes et procédés de livraison de message

Country Status (2)

Country Link
EP (1) EP3114626A1 (fr)
WO (1) WO2015132581A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114244897B (zh) * 2022-02-23 2022-08-30 浙江口碑网络技术有限公司 消息推送方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8311513B1 (en) * 2007-06-27 2012-11-13 ENORCOM Corporation Automated mobile system
US8566839B2 (en) * 2008-03-14 2013-10-22 William J. Johnson System and method for automated content presentation objects
US9715693B2 (en) * 2011-11-10 2017-07-25 Mastercard International Incorporated Method and apparatus for distributing advertisements using social networks and financial transaction card networks

Also Published As

Publication number Publication date
WO2015132581A1 (fr) 2015-09-11

Similar Documents

Publication Publication Date Title
US11792613B1 (en) System for location based triggers for mobile devices
US10210542B2 (en) Venue guest device message prioritization
KR101625702B1 (ko) 이동 장치용 맥락정보-기반 상호작용 모델
US20070149214A1 (en) System, apparatus, and methods for location managed message processing
EP2916280A1 (fr) Dispositifs, systèmes et procédés de distribution de message
US9894633B2 (en) Reminders based on device proximity using bluetooth LE
KR101453317B1 (ko) 와이파이를 이용한 위치 기반 서비스 방법 및 시스템
US20130095865A1 (en) Context-based messaging
JP2009100391A (ja) 通信端末装置と通信システムおよび情報利用方法
CN103222319A (zh) 用于移动计算设备的位置跟踪
US10341805B2 (en) Method of displaying contents by using device identifier of wireless communication device
JP6907063B2 (ja) 表示制御装置、表示制御方法及び表示制御プログラム
JP2009105882A (ja) 通信端末装置と通信システムおよび情報利用方法
JP2015184376A (ja) 移動制御装置、移動制御方法及び移動制御システム
KR102400014B1 (ko) 이동 단말의 데이터 브로드캐스팅을 이용한 서비스 제공 방법 및 장치
GB2502395A (en) Sending location-relevant data to a user device for predicted locations of interest
US10243676B2 (en) Information distribution system
US20200110150A1 (en) Asset tracking
CN101313604A (zh) 基于地理的广播过滤
JP6379305B1 (ja) ワイヤレス信号特性に基づくモバイルデバイスを使用したユーザコンテキストの検出
WO2015132581A1 (fr) Dispositifs, systèmes et procédés de livraison de message
KR101431754B1 (ko) 광고 정보 중개 방법 및 그 장치
KR102086458B1 (ko) 단말 장치 및 이에 의한 위치 기반 서비스 제공 방법
JP2016200916A (ja) サーバ装置
KR101418522B1 (ko) 진입 경로를 이용하는 위치 기반 서비스 방법 및 시스템

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20161003

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20171003