WO2016067042A1 - Communication system, user interface system and method - Google Patents
Communication system, user interface system and method Download PDFInfo
- Publication number
- WO2016067042A1 WO2016067042A1 PCT/GB2015/053271 GB2015053271W WO2016067042A1 WO 2016067042 A1 WO2016067042 A1 WO 2016067042A1 GB 2015053271 W GB2015053271 W GB 2015053271W WO 2016067042 A1 WO2016067042 A1 WO 2016067042A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- message
- recipient
- dynamic content
- user interface
- communication
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/18—Commands or executable codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/107—Computer-aided management of electronic mailing [e-mailing]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/10—Multimedia information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/52—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
- H04L65/1089—In-session procedures by adding media; by removing media
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/046—Interoperability with other network applications or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/08—Annexed information, e.g. attachments
Definitions
- the present invention relates to a communication system, user interface system and method that are applicable for use in devices such as computing devices and is particularly applicable to use in mobile computing devices for applications including an extensible communication system.
- Communication is a central use of computing devices. Over recent years, messaging systems such as text messaging, instant messaging and the like have seen development and evolution. Communication systems typically provide delivery to a recipient of content that has been created or otherwise obtained or selected by a sender.
- Communication systems tend to have a fixed feature set and intended field of use. While developers do typically work to extend and refine the feature set, it is done according to their schedule and work plan and according to their vision on how their product should work and/or be used. It is not uncommon for a user to find that a particular communication system does not work well in a particular situation - for example trying to schedule a meeting between multiple possible attendees over email is time consuming and inefficient. However, users typically do not want to switch between systems and remember usernames, passwords and how to use them all. Some users will pick the communication system that suits them best and deal with its shortcomings. Others will switch between systems as needed but risk not being able to use a particular system if their intended recipient/contact does not also use it.
- User interfaces of communication systems are central to user experience and system functionality. A system having an attractive and intuitive user interface will generally be preferred over one that does not. Similarly, many manufacturers have found that you cannot make up for having a poor user interface by providing more features. Users will typically choose a feature restricted device or system with a good user interface over a feature rich device or system with a poor user interface.
- a user interface of a system is user-controllable, it is not uncommon for the user to spend time and effort getting the user interface configured to suit his or her preferences and requirements.
- a computing device such as a smartphone, tablet, laptop or PC, certain icons may be removed and others added or moved.
- optimisation of the user interface is desirable in order to make best use of the display area.
- user interfaces are also often updateable. It often depends on the functionality involved as to the party that can do the update. Core user interface features that reflect the operation of the device are generally updated only by the developer/manufacturer.
- API application programming interface
- developers tend (rightly) to be guarded about the extensibility of their system in order to avoid exploits and also avoid the possibility of users using the resources of the communication system for unintended purposes, potentially to the detriment of other users due to unavailability of those resources for the intended purpose.
- updates may be provided as a download or pushed out to update the programs or extensions and cause updates to the user interface.
- a communication system arranged to communicate a message to a recipient device, the message including one or more content types selectable by a creator of the message from a set including static content and dynamic content, the communication system being arranged to maintain a link associated with dynamic content in the message for communication, with the recipient device after receipt of the message at the recipient device, of further data associated with the dynamic content.
- dynamic content in the form of components are included in messages.
- a link preferably in the form of a socket server session, is established with every device where a message with such a component has been sent and is in focus.
- the component in the message on any of the devices can then use the link, for example to allow a user interaction (or programmatic event) on that device and/or to trigger and control an effect on the other devices in the group, in real time.
- socket communication is abstracted in this way, any component capable of interpreting a user interaction or programmatic event, can potentially trigger and control any aspect of the user experience under software control on the other devices in the group.
- Hardware items - whether part of the phone or connected to it may be controlled or otherwise interacted with.
- the system is extensible in hardware, in the same way as it is for the software components.
- smartphone accessories that range from surveillance cameras to robots to radar detectors to heart monitors - all can be controlled directly through dynamic content in messages. They could be controlled by a sender or recipient of a message, enabling changing of a ringtone, control of a robot etc.
- the communication system may be arranged to communicate the message to a plurality of recipient devices and maintain a link with dynamic content in each message of each recipient.
- the communication system may be arranged to receive the message from a sender device for communication to the or each recipient device, the communication system being arranged to treat the sender device as a recipient and to communicate the message to the sender device as a recipient device and maintain a link associated with dynamic content in the message of the sender device.
- the communication system may further comprise a dynamic content server, the dynamic content server being arranged to maintain the or each link associated with the dynamic content.
- the dynamic content server is preferably arranged to provide further data to a recipient device using its respective link.
- the dynamic content server is preferably arranged to receive further data from a recipient device using its respective link.
- the communication system is preferably arranged to communicate the message to a plurality of recipient devices, the dynamic content server maintaining a respective link associated with the dynamic content in a message at each recipient device, the dynamic content server being arranged to receive further data associated with the dynamic content from one of the plurality of recipient devices via its respective link and update the dynamic content at others of the plurality of recipient devices via their respective links in dependence on the received further data.
- the communication system may further comprise a recipient interface executable at a recipient system to receive and output a received message, the recipient interface being arranged to communicate said further data via the link.
- the recipient interface may be arranged to monitor for loss of focus of the message at the recipient system and, upon detecting a loss of focus, communicate data on the loss of focus as further data to cause disposal of the link.
- the dynamic content may be arranged to cause a recipient device to provide further data via its respective link, the further data being on one or more of detection of a data or a state associated with the recipient device, generated in response to interaction with the dynamic content at the recipient device, data obtained from a hardware component or software system of or accessible from the recipient device.
- the message may be communicated in a mark-up language, the communication system further comprising an interface executable at the recipient device to render a message for output from the received mark-up language.
- the message may be composed of a plurality of components, the components including said content types, wherein the number, type, behaviour and/or position of the components are customisable during creation of the message.
- the number, type, behaviour and/or position of the components may be any suitable number, type, behaviour and/or position of the components.
- the method may further comprise communicating the message to a plurality of recipient devices and maintaining a link with dynamic content in each message of each recipient.
- the step of defining may be performed at a sender device, the method further comprising receiving the message from the sender device for communication to the or each recipient device, communicating the message to the sender device as a recipient device and maintaining a link associated with dynamic content in the message of the sender device.
- the method may further comprise providing further data to a recipient device using its respective link.
- the method may further comprise receiving further data from a recipient device using its respective link.
- the communication method may further comprise communicating the message to a plurality of recipient devices, maintaining a respective link associated with the dynamic content in a message at each recipient device, receiving further data associated with the dynamic content from one of the plurality of recipient devices via its respective link and updating the dynamic content at others of the plurality of recipient devices via their respective links in dependence on the received further data.
- the communication method may further comprise executing a recipient interface at a recipient system to receive and output a received message and communicating the further data via the link by the recipient interface.
- the communication method may further comprise monitoring at the recipient interface for loss of focus of the message at the recipient system and, upon detecting a loss of focus, communicating data on the loss of focus as further data to cause disposal of the link.
- the communication method may further comprise causing a recipient device to provide further data via its respective link using said dynamic content, the further data being on one or more of detection of a data or a state associated with the recipient device, generated in response to interaction with the dynamic content at the recipient device, data obtained from a hardware component or software system of or accessible from the recipient device.
- the communication method may further comprise composing the message of a plurality of components, the components including said content types, the step of composing including customising the number, type, behaviour and/or position of the components during creation of the message.
- the communication method may further comprise customising the number, type, behaviour and/or position of the components after receipt of the message by a recipient device.
- a user interface system arranged to display a user interface in a display area on a client device, at least aspects of the user interface being defined by one or more user interface components, said user interface components being manipulate in the user interface by one or more predetermined user gestures to thereby change the user interface, wherein the changed user interface is communicable by the user interface system to be displayed in a display area on a remote recipient device, the user interface system being arranged to maintain a link between the client device and the recipient device for communication of data associated with at least selected ones of said user interface components.
- a user interface system arranged to display a user interface in a display area on a client device, at least aspects of the user interface being defined by one or more user interface components, said user interface components being manipulate in the user interface by one or more predetermined user gestures to thereby change the user interface, wherein the changed user interface is communicable by the user interface system to be displayed in a display area on a remote client device.
- a communication channel may be maintained (or permit refreshing so as to maintain appearance of a maintained connection) such that changes to one user interface can be communicated to that displayed at the remote client device.
- the user gestures may be touch based gestures, 3D gestures or other forms of user inputs.
- the user inputs are accessible to the lay user and require no software coding or the like to effect changes to the user interface.
- Components can be added, changed or removed by dragging, dropping and other similar actions.
- Components may include controls such a buttons, counters, text boxes, representations of sensors or other features of the client device, they may include presentation environments enabling content to be selected and output, they may also be a holder for content such as audio, video or images or data such as links, contact calling cards and the like.
- Embodiments of the present invention seek to provide a system and method in which a user interface may be manipulated by a user. While the user interface need not be communicated anywhere, preferred embodiments lend themselves to user interfaces that may be manipulated either prior to or after transmittal or receipt (or both). For example, a user interface may be generated by a server associated with a store or similar and communicated to a user's device where it may be manipulated. In another example, a user interface may be created by one user, communicated to another and manipulated before being communicated onwards or back to the originator as a form of communication.
- Embodiments may be envisaged where a minimal or blank user interface (termed a
- “canvas" is shared between two or more client devices and user interface components being able to be added, removed or otherwise manipulated by users. For example, a user may place two or more labelled counters side by side and this would then allow others (note that communication need not be one-to-one and could be one-to-many) to vote on a particular issue (deciding on a restaurant or best day to meet by actuating the counter for the selected option, for example).
- the user interface is displayed in the form of an events feed with multiple user interfaces being displayable within the feed and the most recently updated user interface being displayed in a position selected to obtain user visual focus.
- User interfaces are preferably communicated in a declarative type script or language and compiled, interpreted or otherwise produced at a receiving remote client device.
- Example script/language types include XML, Javascript and JSON, although it will be appreciated that other could be used.
- user interfaces may be locked to prevent manipulation by a receiving user. For example, this may prevent branding or other functionality being removed or changed.
- the user interface may be configured to prevent onward communication to other client devices.
- User interface components may be provided via one or more libraries to a client device. Selected user interface components may be made available via an online store or other repository in return for a one-off payment or for users holding a premium subscription plan.
- a composite user interface component type may exist which is formed of a number of more primitive user interface components and optionally content and optionally behavioural actions or triggers.
- a user may be able to save a received composite user interface component for future use.
- an extensible communication system for sharing a communication session between two or more terminals, each terminal including a display area, a network communication module, a user input module and a processing module, each processing module being arranged to compile an interactive user interface for the respective terminal, at least one of the terminals receiving trigger data via its network communication module, the trigger data including a definition of elements to be compiled for the respective terminal's interactive user interface,
- each terminal is arranged to receive user inputs on the interactive user interface and communicate data on said user inputs to one or more other terminals in the communication session for storage, processing and/or output.
- an extensible communication system client including a display area, a network communication module, a user input module and a processing module, the processing module being responsive to receipt of trigger data for a communication session to compile an interactive user interface, the trigger data including at least a definition of elements of the interactive user interface, communication system client being arranged to output at least visual parts of the interactive user interface via the display area, the processing module being arranged to execute the interactive user interface in dependence on user inputs received via the user input module and in dependence on data received via the network communication module from a remote system.
- Embodiments of the present invention seek to provide a system and method in which a communication system can be extended beyond the boundaries of a traditional phone call, text, email or the like.
- a display area is provided at a device of at least one participant of a communication session.
- a communication session is triggered by a participant to the communication session and includes trigger data being communicated to the device of the at least one participant of the communication session.
- the trigger may be one or more of a number of events such as a phone call, receipt of an SMS, email or other message, detection of an event by the device such as arriving at a particular location that had previously been registered by a session participant to cause triggering of the event at the location, a change in status of an associated device (such as a Bluetooth connected device), etc.
- trigger data need not necessarily be communicated to the originator of the trigger in the situation where the originator is another participant to the session.
- a server may be used to communicate the trigger, in which case the trigger data may be communicated to all participants.
- Triggering of the communication session causes user interface elements to be output via the device and associated with the display area.
- the user interface elements are defined, at least in part, by data associated with the event and may optionally be delivered with the trigger for the event, caused to be downloaded by the trigger and/or be locally stored.
- the user interface elements are compiled at the receiving devices and executed so as to be output as required.
- the display area is reserved and dedicated to the communication system. In one embodiment, the display area is substantially the entirety of the display area of the device (it may optionally not include an area for network and battery status display, for example).
- Figure 1 is a schematic diagram of a communication system according to an embodiment of the present invention.
- Figures 2 and 3 are schematic diagrams illustrating aspects of the embodiment of Figure 1 in more detail;
- Figure 4 is a schematic diagram illustrating aspects of a system suitable for implementing the communication system of Figure 1 ;
- Figure 5 is a schematic diagram of a user interface system suitable for use in embodiments of the present invention.
- Figure 6 is a schematic diagram of a recipient interface for receiving messages from the communication system of Figure 1 according to an embodiment.
- Figure 1 is a schematic diagram of a communication system according to an embodiment of the present invention.
- the communication system 10 is arranged to communicate a message 20 to a recipient device 30, the message 20 including one or more content types selectable by a creator of the message 20 from a set including static content 21 and dynamic content 22.
- the communication system 10 is arranged to maintain a link 40 associated with dynamic content 22 in the message 20.
- the link 40 enables communication of further data associated with the dynamic content after receipt of the message 20 at the recipient device 30.
- the recipient device may be a mobile device such as a smartphone, tablet or smart watch, a wearable smart device or some other connected device, it may be a PC or other computing device such as a smart TV, games console, in-car system or the like. It will also be appreciated that the recipient device may be a virtual system or online platform that allows users to access and interact with messages.
- the communication system may communicate over a data communications network such as a mobile telephone network, the internet or some other network. It may also communicate over other communication media such as Bluetooth networks. There may be a client-server type arrangement in which the communication system acts as a server and recipient devices act as clients or there may be a peer-to-peer type network in which a recipient acts as the communication system and communicates the message to one or more other peers.
- a data communications network such as a mobile telephone network, the internet or some other network. It may also communicate over other communication media such as Bluetooth networks.
- Figures 2 and 3 are schematic diagrams illustrating aspects of the embodiment of Figure 1 in more detail.
- the communication system 10 is preferably arranged to communicate the message
- Each link 40a-40c enables communication of further data associated with the dynamic content 22.
- the state of the dynamic content may be consistent between each recipient device 30a-30c or it may differ.
- the dynamic content 22 is a triggerable animation.
- a user triggering the animation (for example by pressing a touch screen corresponding to a position of the animation; clicking on it, meeting triggering condition such as orienting the recipient device a particular way to be detected by a gyroscope or accelerometer of the recipient device, being at a predetermined location detected by the respective recipient device, etc) causes their respective recipient device 30a to output the animation.
- Triggering of the animation in this example is communicated as further data via the link 40a to the
- the links may enable communication in a single direction or they may be bi-directional.
- multiple dynamic content 22a, 22b, 22c is included in the message 20 as well as static content 21 .
- the message is created by a sender and submitted to the communication system 10 for sending to the devices of designated recipients.
- the sender's device 30a and recipient's devices 30b, 30c are all treated as "recipients" and are not, in this example, treated differently.
- the static content 21 in this example is a textual message inviting the recipients to choose a bar to meet that evening.
- the dynamic content 22a, 22b, 22c are vote counters identifying a candidate bar suggested by the sender.
- the message in this example also includes a defined behaviour - allowing triggering of only one vote counter by each recipient.
- the dynamic content in the message received by each recipient each includes a respective link 40a1 , 40a2, 40a3; 40b1 , 40b2, 40b3 and 40c1 , 40c2, 40c3.
- the vote counter's link is used to communicate the triggering further data to the communication system 10 which in turn communicates further data to the corresponding vote counter in the message at the other recipient devices causing it to be incremented and displayed accordingly.
- a recipient changes their mind or there is deadlock and one recipient must change his or her mind to break the deadlock, they can again trigger their selected vote counter, causing further data to be communicated to the communication system 10 and the vote to be decremented at the recipient devices.
- the recipient can then cast their vote for a different bar by triggering the respective vote counter.
- each individual dynamic content item is illustrated in this embodiment as having its own link, it will be appreciated that links may be per message rather than per dynamic content item. It will also be appreciated that the complexity of a dynamic content item may also vary. It may be a simple button or animation, it may be a vote counter as suggested above, it may be more complex and include pre-programmed behaviours or trigger conditions, it may be automated or require manual triggering, it may be composed of a number of more basic dynamic content components that are grouped together and treated as a single item.
- Examples of dynamic content include:
- interactable user interface features such as buttons, counters, sliders, option selectors, multiple choice, radio boxes, check-boxes, date or time entry or toggles; maps or other static or interactive imagery which could optionally be panned or zoomed and on which something could be marked or selected (such as a preferred meeting location or the location of a recommended shop, restaurant etc); interface components to access and retrieve or provide data or control from other applications or data sources on or accessible from the recipient device - applications could range from address books, photo albums, a user's calendar or other stored data such as account information, medical information, social media posts through to applications or services accessible from the recipient device such as home automation, music streaming systems or set-top box or games console controls;
- a triggerable action for example by a button, voice command etc to join a live stream, or to start an on-demand stream, retrieve a file or URL of a file to download or play via progressive download;
- a control for a device to be used during a messaging session such as a camera, microphone or speaker;
- Specific types of dynamic content may be invoked based on accessibility criteria, for example for the young, old, illiterate, blind, deaf or in a situation where voice only would assist.
- Dynamic content can be scripted to do anything, but interfaces benefit from the familiarity of treating common functions in a similar way wherever they occur.
- Dynamic content may have specific uses - for example a display and input may be linked to an ongoing auction, the display showing current price and input allowing bids to be made, likewise dynamic content may vary by time and/or location - an airline ticket may change to show gate and boarding information after the user has checked in, an order may change to display delivery information and
- Dynamic content may enable secure provision of data. For example, passwords can be shared without the recipient actually needing to know the password (it could be embedded in a button and entered upon the button being pressed). Use of content can also be controlled. For example, it may be single use, time or location restricted etc.
- Criteria that can be used as triggers may include:
- Actions that may be invoked by a trigger may include:
- control some other interface or device for example call someone using telephony components, use home automation controls to switch on the oven, control lights, gates or an alarm system, interact with a system such as a payment system, cash machine or entertainment system, interact with wearable device or more sophisticated device such as those used in healthcare
- a security model preferably enables messages to include content that cannot be shared by the recipient.
- Dynamic content may be responsive to context such as location, preferences, permission, personal Information, time, who else is present. This is an under-utilised possibility when a peer-to-peer or server-based system has access to location details of multiple users. This could range from blocking flirtatious texts when a user is with his or her partner to tailoring an emergency response to fit with the available resources.
- Dynamic content may, for example: be updated remotely due to timing or action elsewhere or detection of a data or a state associated with the recipient device; be interacted with remotely to cause action at the recipient device; be interacted with locally at a recipient device to cause action at a remote system (such as other recipients of the message);
- further data will vary depending on use and on dynamic content.
- further data may be one way for example with an advert or similar changing based on a schedule of a remote system and pushing changes down the link to the message.
- the link may be bi-directional, communicating further data on, for example, trigger conditions or retrieved or sensed data from the recipient device while either in parallel or in response (or independently), a remote system (which may or may not be the one receiving further data from the recipient device) communicates further data to the recipient device to cause a desired act.
- a remote system which may or may not be the one receiving further data from the recipient device
- One example of further data was the voting discussed above - further data was communicated bi-directionally such that votes were communicated from each voting recipient device and used to update displays at the recipient devices.
- Figure 4 is a schematic diagram illustrating aspects of a system suitable for implementing the communication system of Figure 1 .
- the communication system 10 includes a messaging system 100, a media system 1 10, a dynamic content system120 and a conferencing system 130.
- the messaging system 100 manages message composition, recipient participants for a message session, communication of messages and notifications.
- the media system 1 10 in this example provides media to be consumed by messages.
- the dynamic content system 120 in this example maintains links to dynamic content in messages and manages communication of, and any action arising from, further data.
- the conferencing system 130 provides optional additional functionality in the form of voice and/or video communication as discussed below.
- a message is preferably defined in mark-up language or similar, such as XML.
- the message is created at or provided to the messaging system 100 along with identification of recipients for the message session.
- the messaging system creates a record for the message session.
- the record identifies participants (illustrated by connection 101 ) and includes an identifier for the message session. It may optionally include a copy of the message definition and other data such as time and date.
- Media to be included when the message is rendered or otherwise output at a recipient system is stored or otherwise defined or linked in the media system 1 10 and is referenced in the mark-up language.
- the media system is a REST (representational state transfer) system.
- Dynamic content to be included when the message is rendered or otherwise output at a recipient system is stored or otherwise defined in the dynamic content system 120 and is referenced in the mark-up language. Links are also defined with reference to the dynamic content system 120.
- the dynamic content system 120 is a socket server that establishes a socket for each link.
- the communication system need not include a conferencing system 130. However, where a conferencing system is present, participants may elect to jump from messaging to voice or video communication. Upon participants electing to jump, a session is established (for example using VOIP or similar technologies) and participants can join as desired.
- Election to jump to a voice or video communication may, for example, be via dynamic content in the message itself (and the session established via further data) or it may be via an option in an interface provided by the recipient devices.
- the communication system need not be configured as discussed with reference to
- media may be hosted elsewhere and a link provided to recipient systems to retrieve when forming the message for output - in such a case the media system may not be needed or may be part of one of the other systems.
- the various systems could be implemented as separate servers, distributed server farms or systems or could be implemented on a common server, distributed server farm or system.
- each recipient device includes a recipient interface executable by a processor of the recipient device to receive and output a received message.
- the recipient interface is preferably arranged to interact with the recipient device's systems to obtain and communicate further data via the link.
- each recipient interface is arranged to monitor for loss of focus of the message at the recipient system and, upon detecting a loss of focus, communicate data on the loss of focus as further data to cause disposal of the link and enable recycling of the socket at the dynamic content system.
- Loss of focus may, for example, be loss of visual focus of the message (such that it is moved off-screen), deletion of the message, closure of the recipient interface etc.
- each recipient interface also is arranged to monitor for messages gaining focus that have previously lost focus. In such an arrangement, newly assigned sockets would be requested from the dynamic content system in order to return the message at the recipient device to a functional state.
- messages may be created in many ways. They may be pre-designed, for example by professional designers, and subsequently sent as part of a campaign or in response to an event such as a visit to a website, signing up to a mailing list etc.
- a user interface may be provided for creating messages. This may be part of the recipient interface, a stand-alone system or part of the communication system 10.
- Figure 5 is a schematic diagram of a user interface system suitable for use in embodiments of the present invention.
- the user interface system 210 includes a client 220 having a processing module 230, a network communication module 240, a display area 250 and a user input module 260.
- the user interface system 210 is arranged to display a user interface in the display area 250 on the recipient device 30. At least aspects of the user interface are defined by dynamic content and are preferably in the form of one or more user interface components which are manipulate in the user interface by one or more predetermined user gestures detected by the user input module 260. The manipulations (which may for example be touch gestures on a touch screen) cause changes to the user interface.
- the user interface system 210 is arranged to communicate on demand, via the network communication module, to cause the user interface to be communicated as a trigger data defining a message via the communication system 10 in order to be output at a recipient device 30.
- the user gestures may be touch based gestures, 3D gestures or other forms of user inputs.
- the user inputs are accessible to the lay user and require no software coding or the like to effect changes to the user interface.
- Components can be added, changed or removed by dragging, dropping and other similar actions.
- Components may include controls such a buttons, counters, text boxes, representations of sensors or other features of the client device, they may include presentation environments enabling content to be selected and output, they may also be a holder for content such as audio, video or images or data such as links, contact calling cards and the like.
- Components may have (or have assignable to them) behaviours such as the ability to lock a component in a particular place on-screen; dock components together; make a component non-saveable or require one or more of the components to always be included when a communication is passed to another remote client device (so for example to preserve branding or DRM of content if a user interface is forwarded onwards - each user may have the opportunity to customise the user interface before forwarding it subject to any behaviour constraints).
- behaviours such as the ability to lock a component in a particular place on-screen; dock components together; make a component non-saveable or require one or more of the components to always be included when a communication is passed to another remote client device (so for example to preserve branding or DRM of content if a user interface is forwarded onwards - each user may have the opportunity to customise the user interface before forwarding it subject to any behaviour constraints).
- the user interface system may offer a user interface that is tailored to the situation. For example, it may be:
- Themed or branded templates may be offered.
- a user interface may be created by peers or crown sourced
- each peer may add suggestions to a blank display area ii. peers may build on what last person added
- Dynamic or static content may be obtained from any number of sources such as:
- the message may be modifiable after communication to a recipient device 30.
- a communication channel may be maintained (or permit refreshing so as to maintain appearance of a maintained connection) such that changes to the message by the creator or recipient can be shared between parties to the message and reflected in the output messages via their respective recipient devices.
- trigger data defining aspects of a message of a communication session is received at a recipient device 30, for example from another recipient device 30a via a peer-to-peer communication or from a server or other centralised communication system 10 which facilitates connection of participants to the communication session.
- the trigger data may take many forms and is discussed in more detail below.
- the recipient device 30 is responsive to receipt of trigger data for a communication session to compile the message including the interactive user interface.
- the trigger data includes at least a definition of elements of the interactive user interface.
- the recipient device 30 is arranged to output at least visual parts of the interactive user interface via a display area 31 .
- a processor 32 of the recipient device 30 executes the interactive user interface in dependence on user inputs received via a user input module 33 and in dependence on further data received via a network communication module 34 from a remote system (for example the other participant 30a or the server 10).
- the trigger data may be linked to one or more of a number of events such as a phone call to the recipient device 30, receipt of an SMS, email or other message, detection of an event by the recipient device 30 such as arriving at a particular location (detected by GPS, presence of a particular WiFi network, etc.) that had previously been registered by a session participant to cause triggering of the event at the location, a change in status of an associated device (such as a connection or change in status of a Bluetooth connected device such as a vehicle paired to the device, earphones, health band, heart rate monitor), etc.
- a number of events such as a phone call to the recipient device 30, receipt of an SMS, email or other message, detection of an event by the recipient device 30 such as arriving at a particular location (detected by GPS, presence of a particular WiFi network, etc.) that had previously been registered by a session participant to cause triggering of the event at the location, a change in status of an associated device (such as a connection or change in status of a Bluetooth connected device such as
- trigger data need not necessarily be communicated to the originator of the trigger in the situation where the originator is another participant to the session.
- a server may be used to communicate the trigger as discussed in connection with Figure 1 , in which case the trigger data may be communicated to all participants.
- Triggering of the communication session causes user interface elements to be compiled and output via the recipient devices 30 and associated with the display area 31 .
- the user interface elements are defined, at least in part, by data associated with the event. For example, these may be delivered with the trigger data for the event. Some may be caused to be downloaded by the trigger data whilst others may be locally stored.
- the user interface elements are compiled at the receiving devices and executed so as to be output as required.
- the display area is preferably a configurable, sharable area of the recipient device's screen. It is preferably a large, clearly delimited portion of the recipient device's screen. In some embodiments, the area may be substantially an entire display of a device (for example a touch-operated smart-phone screen). However, this could be any clearly delimited region of any graphical user interface, including but not limited to smart-phones, computers, tablets, sat-navs or TVs.
- the user interface module 33 could interface to, or be, a touch screen, a mouse or keyboard, a voice recognition system or some other user input means.
- the elements of the interactive user interface are each a configurable component capable of being displayed (or otherwise output) by the client.
- Components may include static, active or interactive widgets. These might be used to display data, messages, content or user experience (UX) components.
- the components may come from one or a combination of sources including but not limited to the user, other individuals, external content providers or output from local or remote software/data-feeds.
- elements may be button-like, icon-like, widgets, Windows 8 style panels or may take over the whole display area.
- the purpose of the display area is to share information, or enable interactions between users.
- the possibilities are extremely diverse including but not limited to real-time or asynchronous messaging, content sharing, screen sharing, alerting, structured data-entry or user interactions.
- the recipient devices may execute a recipient interface arranged to communicate with the communication system 10 and handle messages at the recipient device 30.
- the recipient interface may be provided to a host device in the form or an app or other installable software client.
- the app itself, or specific events within it, may, in one embodiment be launched by a phone call.
- the app may automatically initiate or control a phone call in parallel with other communications.
- the app or functionality within the definition of a communication session (for example a feature or side-effect of using a user interface component) can be configured such that phone calls can be charged by the originator or the recipient.
- the app may in some embodiments work in a peer-to-peer mode between instances.
- a server system may be implemented which would enable the sending of communication sessions and their interactive user interfaces to users. This could be used to create services including but not limited to marketing messages, surveys and polls, centralised storage, voucher distribution or phone-call invitations.
- Figure 6 is a schematic diagram of a recipient interface for receiving messages from the communication system of Figure 1 according to an embodiment.
- Each recipient device 30 includes a display area 31 , a network communication module 34, a user input module 33 and a processor 32.
- the processor 32 is arranged to compile the recipient interface for the respective recipient device 30 from a combination of locally stored program code (defining the display routines, communication protocols etc) and received data defining a message for participation in a communication session. How the interactive user interface may be defined and communicated to the terminal is explained in the embodiment above.
- the recipient device 30 is arranged to receive user inputs on the interactive user interface and communicate data on said user inputs to one or more other recipient devices and/or a central system, for storage, processing and/or output.
- the display of the interactive user interface and communication of data to other terminals in the session enables sharing of information and interaction.
- an originator device may have different software or hardware components (such as components allowing monitoring activity of the interactive user interface at recipients).
- the communication system may be utilised by a retail shop, coffee shop or other commercial operation.
- a customer having the recipient interface running on his or her smartphone may receive a message in the form of trigger data upon entering the shop that causes an interactive user interface including components customised for the shop to be displayed on the recipient interface.
- the customer's device may allow ordering of a coffee without queuing.
- the shop's terminal receives the order, displays it to the barista and handles payment processing against the customer's credit card (which may be read by NFC by his or her terminal device if it had that functionality).
- a single user interface on the shop terminal communicates potentially in parallel with different instantiations of user interfaces on customer terminals.
- each recipient device may have the same functionality to allow voice or video communications, share documents, whiteboards etc. It may be that a designated chairman may have extra components to end the conference, control muting etc.
- sharing of content is many to many - content a user adds to his or he terminal would be communicated to all participants to the communication session.
- a user may create an interactive user interface via the app (or in some other way such as online at a server, via a platform API etc.).
- the interactive user interface may then be shared with one or more other users such that they can view and interact with the instance of the user interface and its originator (and optionally all parties receiving the user interface in selected embodiments) at their leisure.
- This could be used in place of e-mail, messaging or micro-blogging, with the advantage that the recipient action, e.g. viewing, interacting or forwarding, can be monitored in real-time via the originator's app, or via the platform API.
- an instance of an interactive user interface may be remotely controlled in real-time by a user or via the platform API. If the app or platform detects that remote user has the canvas open, it could be used to send content items, stream live content in adhoc or scheduled webcasts or provide interactive UX components.
- An instance of an interactive user interface can optionally be shared by two or more users such that there is no distinction between the originator and recipients. This could be used for multiplayer games, collaborative decision-making apps, watching a movie together or a chat-room.
- the features ad principles described could have wider applicability.
- the features could be used to provide an application creation environment in which applications are defined from a user interface and associated behaviour and stored for local use, stored for download by other devices, or otherwise provided or communicated for consumption.
- Example components/content that are available to be compiled into the interactive user interface include: Static Content: This could be a text field, image, URL, attachment (to be launched by other app) etc.
- Static Content This could be a text field, image, URL, attachment (to be launched by other app) etc.
- the advantage over twitter or messaging platforms is that mixed items of content can be arranged on a single display area, and static items can be mixed with non- static component types. Text and URLs could be integrated powered by, or feed into, Twitter Embedded Media: Videos, songs, mini-games to be played within a component.
- Live Broadcast / Narrowcast This could be like a little loudspeaker or video-screen - perfect to set up all sorts of live, and gamified social activities, e.g. combine live audio webcast with some feedback buttons to host your own wide area pub quiz. Celebrities could talk to fans from backstage without a huge PR machine to manage it.
- Live Feedback This is a dynamic content type that enables a request for input from one or more recipients and receive feedback in real time. This could be used for group decision-making, games, asking for help or advice.
- the feedback (further data) could be freeform text or results of clicking on simple options. It could be visible exclusively to just the sender, shared with all recipients or be completely public.
- the responders could be identified, or remain anonymous.
- Asynchronous Feedback This is also a dynamic content type. All the live responses could be used in a non-live context. In many situations, staring at a display area to see who has responded is impractical because of bad timing, excessive numbers of responses or the size of response, e.g. "everyone send me a picture now!. Instead, the responses could be collated and summarised.
- Call-me A dynamic content type that allows sending someone a component (optionally including a sound/image/video notification defining how to announce arrival of the component at the person's client device) that can be actuated to instigate a call at your own expense.
- a component optionally including a sound/image/video notification defining how to announce arrival of the component at the person's client device
- Such an arrangement could be a replacement for ringtone + Calling line identifiers as it is context-specific: "nothing important, just want a chat" or “answer now, I'm in trouble”.
- being part of a display area has the advantage of being combined with other components.
- a bespoke user interface can be created and sent to a recipient that gives them the ability to decline with a single click on a feedback button giving the reason: "can't talk today" or "will call in 5".
- Dynamic content in the form of exchangeable, unique components may be offered for use in a wide variety of applications. This could even include virtual currency, which could have both graphical and hidden/encrypted components.
- Payment Dynamic content in the form of a one-click payment button may be provided, displaying payment price. In one embodiment, if the user has recently entered password, it could work immediately. If not, re-authentication is required.
- Dynamic content types that could be given to denote a rank achieved for consistent social behaviour, a prize for a quiz, paid-for status upgrades. These could be linked to rewards, e.g. if you have gold status, clicking the gold badge unlocks the new game level.
- Embodiments of the present invention have numerous uses and fields of application. Examples include:
- One to One communications - chat, phone calls, media sharing, link-curation, screen- sharing and anything else the participants desire may be collectively hosted in parallel in a single simple interface (that may have been pre-defined or may have been configured by one of the participants at the outset).
- Group communications Ad-hoc or predefined communications can be hosted.
- Context specific buddy-lists can be used as passive recipients or to set up instant many-to- many activities. These could be asymmetric like Google+.
- Subscribers Users may opt-in to scheduled and ad hoc alerts that are delivered to their display area. These could be anything from traffic data to interactive content for fan club members, or serious surveys. This could get very creative, compared to a Twitter feed. "Survey of the week" could be useful for serious pollsters or soap-star-obsessed gossip blogs.
- Support Requests Messages may be send out to many, but first responder hijacks the communication session, e.g. find me a cab. This could be used for product support or the mentoring/sponsorship of vulnerable people and addicts: "someone meet me for a coffee and a chat or I'm going to buy a bottle of vodka”.
- code e.g., a software algorithm or program
- firmware e.g., a software algorithm or program
- computer useable medium having control logic for enabling execution on a computer system having a computer processor.
- Such a computer system typically includes memory storage configured to provide output from execution of the code which configures a processor in accordance with the execution.
- the code can be arranged as firmware or software, and can be organized as a set of modules such as discrete code modules, function calls, procedure calls or objects in an object-oriented programming environment. If implemented using modules, the code can comprise a single module or a plurality of modules that operate in cooperation with one another.
- the intention is that the platform is completely configurable and extensible. In its most abstract form it could be considered as a system for instantly creating and sharing messages and apps from prebuilt and blank components.
- the display area and components are both container types for the following items:
- room number / ID e.g. lobby, room 12, mum and dad's bedroom
- seat e.g. back seat of the car, seat kl2 on plane, theatre seat
- Components can be scripted to do anything, but interfaces benefit from the familiarity of treating common functions in a similar way wherever they occur. i. multiple choice
- Component store / display area store - marketplaces for fixed or customisable items. d. Download
- the device APIs are very varied but can all provide a lot of context.
- a. Use display are to organise components, e.g.
- the generic display area can be tailored to the situation.
- Profile-based e.g.
- buttons/canvases ii. specific buttons/canvases
- emergency services broadcast instructional buttons to direct public ii. touch button to get more help
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Multimedia (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
A communication system, method and user interface system are described. The communication system (10) is arranged to communicate a message (20) to a recipient device (30), the message (20) including one or more content types selectable by a creator of the message from a set including static content (21) and dynamic content (22), the communication system (10) being arranged to maintain a link (40) associated with dynamic content (22) in the message (20) for communication, with the recipient device (30) after receipt of the message (20) at the recipient device (30), of further data associated with the dynamic content (22).
Description
Communication System, User Interface System and Method Field of the Invention
The present invention relates to a communication system, user interface system and method that are applicable for use in devices such as computing devices and is particularly applicable to use in mobile computing devices for applications including an extensible communication system.
Background to the Invention
Communication is a central use of computing devices. Over recent years, messaging systems such as text messaging, instant messaging and the like have seen development and evolution. Communication systems typically provide delivery to a recipient of content that has been created or otherwise obtained or selected by a sender.
Communication systems tend to have a fixed feature set and intended field of use. While developers do typically work to extend and refine the feature set, it is done according to their schedule and work plan and according to their vision on how their product should work and/or be used. It is not uncommon for a user to find that a particular communication system does not work well in a particular situation - for example trying to schedule a meeting between multiple possible attendees over email is time consuming and inefficient. However, users typically do not want to switch between systems and remember usernames, passwords and how to use them all. Some users will pick the communication system that suits them best and deal with its shortcomings. Others will switch between systems as needed but risk not being able to use a particular system if their intended recipient/contact does not also use it.
User interfaces of communication systems are central to user experience and system functionality. A system having an attractive and intuitive user interface will generally be preferred over one that does not. Similarly, many manufacturers have found that you cannot make up for having a poor user interface by providing more features. Users will typically choose a feature restricted device or system with a good user interface over a feature rich device or system with a poor user interface.
Where a user interface of a system is user-controllable, it is not uncommon for the user to spend time and effort getting the user interface configured to suit his or her preferences and requirements. For example, in the case of a computing device such as a smartphone, tablet, laptop or PC, certain icons may be removed and others added or moved.
Particularly where the device has a limited display area, optimisation of the user interface is desirable in order to make best use of the display area.
As in the case of the general features of a communication system, user interfaces are also often updateable. It often depends on the functionality involved as to the party that can do the update. Core user interface features that reflect the operation of the device are generally updated only by the developer/manufacturer.
Where programs can be installed on the device, these may have a superficial effect on the user interface (even to the extent of providing a layer that sits on top of, and hides, the existing user interface). Sometimes, an application programming interface (API) is exposed by the manufacturer that allows others to hook into the operating system or other system of the device and extend or otherwise control aspects of the user interface or device. However, particularly in the case of communication systems, developers tend (rightly) to be guarded about the extensibility of their system in order to avoid exploits and also avoid the possibility of users using the resources of the communication system for unintended purposes, potentially to the detriment of other users due to unavailability of those resources for the intended purpose. In some cases, updates may be provided as a download or pushed out to update the programs or extensions and cause updates to the user interface.
Statement of Invention
According to an aspect of the present invention, there is provided a communication system arranged to communicate a message to a recipient device, the message including one or more content types selectable by a creator of the message from a set including static content and dynamic content, the communication system being arranged to maintain a link associated with dynamic content in the message for communication, with the recipient device after receipt of the message at the recipient device, of further data associated with the dynamic content.
In preferred embodiments, dynamic content in the form of components are included in messages. A link, preferably in the form of a socket server session, is established with every device where a message with such a component has been sent and is in focus. The component in the message on any of the devices can then use the link, for example to allow a user interaction (or programmatic event) on that device and/or to trigger and control an effect on the other devices in the group, in real time.
Because the socket communication is abstracted in this way, any component capable of interpreting a user interaction or programmatic event, can potentially trigger and control any aspect of the user experience under software control on the other devices in the group.
There are many example implementations discussed. Hardware items - whether part of the phone or connected to it may be controlled or otherwise interacted with. The system is extensible in hardware, in the same way as it is for the software components. For example,
there is a bewildering assortment of smartphone accessories that range from surveillance cameras to robots to radar detectors to heart monitors - all can be controlled directly through dynamic content in messages. They could be controlled by a sender or recipient of a message, enabling changing of a ringtone, control of a robot etc.
The communication system may be arranged to communicate the message to a plurality of recipient devices and maintain a link with dynamic content in each message of each recipient.
The communication system may be arranged to receive the message from a sender device for communication to the or each recipient device, the communication system being arranged to treat the sender device as a recipient and to communicate the message to the sender device as a recipient device and maintain a link associated with dynamic content in the message of the sender device.
The communication system may further comprise a dynamic content server, the dynamic content server being arranged to maintain the or each link associated with the dynamic content.
The dynamic content server is preferably arranged to provide further data to a recipient device using its respective link.
The dynamic content server is preferably arranged to receive further data from a recipient device using its respective link.
The communication system is preferably arranged to communicate the message to a plurality of recipient devices, the dynamic content server maintaining a respective link associated with the dynamic content in a message at each recipient device, the dynamic content server being arranged to receive further data associated with the dynamic content from one of the plurality of recipient devices via its respective link and update the dynamic content at others of the plurality of recipient devices via their respective links in dependence on the received further data.
The communication system may further comprise a recipient interface executable at a recipient system to receive and output a received message, the recipient interface being arranged to communicate said further data via the link.
The recipient interface may be arranged to monitor for loss of focus of the message at the recipient system and, upon detecting a loss of focus, communicate data on the loss of focus as further data to cause disposal of the link.
The dynamic content may be arranged to cause a recipient device to provide further data via its respective link, the further data being on one or more of detection of a data or a state associated with the recipient device, generated in response to interaction with the
dynamic content at the recipient device, data obtained from a hardware component or software system of or accessible from the recipient device.
The message may be communicated in a mark-up language, the communication system further comprising an interface executable at the recipient device to render a message for output from the received mark-up language.
The message may be composed of a plurality of components, the components including said content types, wherein the number, type, behaviour and/or position of the components are customisable during creation of the message.
The number, type, behaviour and/or position of the components may be
customisable after receipt of the message by a recipient device.
According to another aspect of the present invention, there is provided a
communication method for communication of a message to a recipient device, the method comprising:
defining a message from content types selectable from a set including static content and dynamic content; and,
maintaining, after delivery of the message at a recipient device, a link associated with dynamic content in the message for communication of further data associated with the dynamic content. The method may further comprise communicating the message to a plurality of recipient devices and maintaining a link with dynamic content in each message of each recipient.
The step of defining may be performed at a sender device, the method further comprising receiving the message from the sender device for communication to the or each recipient device, communicating the message to the sender device as a recipient device and maintaining a link associated with dynamic content in the message of the sender device.
The method may further comprise providing further data to a recipient device using its respective link.
The method may further comprise receiving further data from a recipient device using its respective link.
The communication method may further comprise communicating the message to a plurality of recipient devices, maintaining a respective link associated with the dynamic content in a message at each recipient device, receiving further data associated with the dynamic content from one of the plurality of recipient devices via its respective link and updating the dynamic content at others of the plurality of recipient devices via their respective links in dependence on the received further data.
The communication method may further comprise executing a recipient interface at a recipient system to receive and output a received message and communicating the further data via the link by the recipient interface.
The communication method may further comprise monitoring at the recipient interface for loss of focus of the message at the recipient system and, upon detecting a loss of focus, communicating data on the loss of focus as further data to cause disposal of the link.
The communication method may further comprise causing a recipient device to provide further data via its respective link using said dynamic content, the further data being on one or more of detection of a data or a state associated with the recipient device, generated in response to interaction with the dynamic content at the recipient device, data obtained from a hardware component or software system of or accessible from the recipient device.
The communication method may further comprise composing the message of a plurality of components, the components including said content types, the step of composing including customising the number, type, behaviour and/or position of the components during creation of the message.
The communication method may further comprise customising the number, type, behaviour and/or position of the components after receipt of the message by a recipient device.
According to another aspect of the present invention, there is provided a user interface system arranged to display a user interface in a display area on a client device, at least aspects of the user interface being defined by one or more user interface components, said user interface components being manipulate in the user interface by one or more predetermined user gestures to thereby change the user interface, wherein the changed user interface is communicable by the user interface system to be displayed in a display area on a remote recipient device, the user interface system being arranged to maintain a link between the client device and the recipient device for communication of data associated with at least selected ones of said user interface components.
According to another aspect of the present invention, there is provided a user interface system arranged to display a user interface in a display area on a client device, at least aspects of the user interface being defined by one or more user interface components, said user interface components being manipulate in the user interface by one or more predetermined user gestures to thereby change the user interface, wherein the changed user interface is communicable by the user interface system to be displayed in a display area on a remote client device.
A communication channel may be maintained (or permit refreshing so as to maintain appearance of a maintained connection) such that changes to one user interface can be communicated to that displayed at the remote client device.
The user gestures may be touch based gestures, 3D gestures or other forms of user inputs. Advantageously, the user inputs are accessible to the lay user and require no software coding or the like to effect changes to the user interface. Components can be added, changed or removed by dragging, dropping and other similar actions. Components may include controls such a buttons, counters, text boxes, representations of sensors or other features of the client device, they may include presentation environments enabling content to be selected and output, they may also be a holder for content such as audio, video or images or data such as links, contact calling cards and the like.
Embodiments of the present invention seek to provide a system and method in which a user interface may be manipulated by a user. While the user interface need not be communicated anywhere, preferred embodiments lend themselves to user interfaces that may be manipulated either prior to or after transmittal or receipt (or both). For example, a user interface may be generated by a server associated with a store or similar and communicated to a user's device where it may be manipulated. In another example, a user interface may be created by one user, communicated to another and manipulated before being communicated onwards or back to the originator as a form of communication.
Embodiments may be envisaged where a minimal or blank user interface (termed a
"canvas") is shared between two or more client devices and user interface components being able to be added, removed or otherwise manipulated by users. For example, a user may place two or more labelled counters side by side and this would then allow others (note that communication need not be one-to-one and could be one-to-many) to vote on a particular issue (deciding on a restaurant or best day to meet by actuating the counter for the selected option, for example).
In one embodiment, the user interface is displayed in the form of an events feed with multiple user interfaces being displayable within the feed and the most recently updated user interface being displayed in a position selected to obtain user visual focus.
User interfaces are preferably communicated in a declarative type script or language and compiled, interpreted or otherwise produced at a receiving remote client device.
Example script/language types include XML, Javascript and JSON, although it will be appreciated that other could be used.
In some circumstances, at least aspects of user interfaces may be locked to prevent manipulation by a receiving user. For example, this may prevent branding or other functionality being removed or changed. In selected embodiments, the user interface may be configured to prevent onward communication to other client devices.
User interface components may be provided via one or more libraries to a client device. Selected user interface components may be made available via an online store or other repository in return for a one-off payment or for users holding a premium subscription plan. It will be appreciated that a composite user interface component type may exist which is formed of a number of more primitive user interface components and optionally content and optionally behavioural actions or triggers. In selected embodiments, a user may be able to save a received composite user interface component for future use.
According to another aspect of the present invention, there is provided an extensible communication system for sharing a communication session between two or more terminals, each terminal including a display area, a network communication module, a user input module and a processing module, each processing module being arranged to compile an interactive user interface for the respective terminal, at least one of the terminals receiving trigger data via its network communication module, the trigger data including a definition of elements to be compiled for the respective terminal's interactive user interface,
wherein each terminal is arranged to receive user inputs on the interactive user interface and communicate data on said user inputs to one or more other terminals in the communication session for storage, processing and/or output.
According to another aspect of the present invention, there is provided an extensible communication system client including a display area, a network communication module, a user input module and a processing module, the processing module being responsive to receipt of trigger data for a communication session to compile an interactive user interface, the trigger data including at least a definition of elements of the interactive user interface, communication system client being arranged to output at least visual parts of the interactive user interface via the display area, the processing module being arranged to execute the interactive user interface in dependence on user inputs received via the user input module and in dependence on data received via the network communication module from a remote system.
Embodiments of the present invention seek to provide a system and method in which a communication system can be extended beyond the boundaries of a traditional phone call, text, email or the like. In embodiments, a display area is provided at a device of at least one participant of a communication session. A communication session is triggered by a participant to the communication session and includes trigger data being communicated to the device of the at least one participant of the communication session. For example, the trigger may be one or more of a number of events such as a phone call, receipt of an SMS, email or other message, detection of an event by the device such as arriving at a particular location that had previously been registered by a session participant to cause triggering of
the event at the location, a change in status of an associated device (such as a Bluetooth connected device), etc.
It will be appreciated that trigger data need not necessarily be communicated to the originator of the trigger in the situation where the originator is another participant to the session. Where the system is not peer-to-peer, a server may be used to communicate the trigger, in which case the trigger data may be communicated to all participants.
Triggering of the communication session causes user interface elements to be output via the device and associated with the display area. The user interface elements are defined, at least in part, by data associated with the event and may optionally be delivered with the trigger for the event, caused to be downloaded by the trigger and/or be locally stored. The user interface elements are compiled at the receiving devices and executed so as to be output as required.
In one embodiment, the display area is reserved and dedicated to the communication system. In one embodiment, the display area is substantially the entirety of the display area of the device (it may optionally not include an area for network and battery status display, for example).
Brief Description of the Drawings
Embodiments of the present invention will now be described by way of example only with reference to the accompanying drawings, in which:
Figure 1 is a schematic diagram of a communication system according to an embodiment of the present invention;
Figures 2 and 3 are schematic diagrams illustrating aspects of the embodiment of Figure 1 in more detail;
Figure 4 is a schematic diagram illustrating aspects of a system suitable for implementing the communication system of Figure 1 ;
Figure 5 is a schematic diagram of a user interface system suitable for use in embodiments of the present invention; and,
Figure 6 is a schematic diagram of a recipient interface for receiving messages from the communication system of Figure 1 according to an embodiment.
Detailed Description
Figure 1 is a schematic diagram of a communication system according to an embodiment of the present invention.
The communication system 10 is arranged to communicate a message 20 to a recipient device 30, the message 20 including one or more content types selectable by a creator of the message 20 from a set including static content 21 and dynamic content 22.
The communication system 10 is arranged to maintain a link 40 associated with dynamic content 22 in the message 20. The link 40 enables communication of further data associated with the dynamic content after receipt of the message 20 at the recipient device 30.
Examples of the further data and the use of the link are set out below.
The recipient device may be a mobile device such as a smartphone, tablet or smart watch, a wearable smart device or some other connected device, it may be a PC or other computing device such as a smart TV, games console, in-car system or the like. It will also be appreciated that the recipient device may be a virtual system or online platform that allows users to access and interact with messages.
The communication system may communicate over a data communications network such as a mobile telephone network, the internet or some other network. It may also communicate over other communication media such as Bluetooth networks. There may be a client-server type arrangement in which the communication system acts as a server and recipient devices act as clients or there may be a peer-to-peer type network in which a recipient acts as the communication system and communicates the message to one or more other peers.
Figures 2 and 3 are schematic diagrams illustrating aspects of the embodiment of Figure 1 in more detail.
The communication system 10 is preferably arranged to communicate the message
20 to a plurality of recipient devices 30a-30c as shown in Figure 2 and maintain a link 40a- 40c with dynamic content 22 in the message 20 of each recipient 30a-30c.
Each link 40a-40c enables communication of further data associated with the dynamic content 22. The state of the dynamic content may be consistent between each recipient device 30a-30c or it may differ.
In the example of Figure 2, the dynamic content 22 is a triggerable animation. A user triggering the animation (for example by pressing a touch screen corresponding to a position of the animation; clicking on it, meeting triggering condition such as orienting the recipient device a particular way to be detected by a gyroscope or accelerometer of the recipient device, being at a predetermined location detected by the respective recipient device, etc) causes their respective recipient device 30a to output the animation. Triggering of the animation in this example is communicated as further data via the link 40a to the
communication system 10 which in turn communicates further data to each of the other recipient devices 30b, 30c via their respective links 40b, 40c which causes triggering of the animation at the other recipient devices 30b, 30c.
As will be appreciated, the links may enable communication in a single direction or they may be bi-directional.
In the example of Figure 3, multiple dynamic content 22a, 22b, 22c is included in the message 20 as well as static content 21 . In this particular example, the message is created by a sender and submitted to the communication system 10 for sending to the devices of designated recipients. The sender's device 30a and recipient's devices 30b, 30c are all treated as "recipients" and are not, in this example, treated differently. The static content 21 in this example is a textual message inviting the recipients to choose a bar to meet that evening. The dynamic content 22a, 22b, 22c are vote counters identifying a candidate bar suggested by the sender. The message in this example also includes a defined behaviour - allowing triggering of only one vote counter by each recipient.
The dynamic content in the message received by each recipient each includes a respective link 40a1 , 40a2, 40a3; 40b1 , 40b2, 40b3 and 40c1 , 40c2, 40c3. Upon a recipient triggering a vote counter, the vote counter's link is used to communicate the triggering further data to the communication system 10 which in turn communicates further data to the corresponding vote counter in the message at the other recipient devices causing it to be incremented and displayed accordingly. If a recipient changes their mind or there is deadlock and one recipient must change his or her mind to break the deadlock, they can again trigger their selected vote counter, causing further data to be communicated to the communication system 10 and the vote to be decremented at the recipient devices. The recipient can then cast their vote for a different bar by triggering the respective vote counter. Once agreement has been reached, further messages that include static and/or dynamic content can be exchanged as needed.
Although each individual dynamic content item is illustrated in this embodiment as having its own link, it will be appreciated that links may be per message rather than per dynamic content item. It will also be appreciated that the complexity of a dynamic content item may also vary. It may be a simple button or animation, it may be a vote counter as suggested above, it may be more complex and include pre-programmed behaviours or trigger conditions, it may be automated or require manual triggering, it may be composed of a number of more basic dynamic content components that are grouped together and treated as a single item.
Examples of dynamic content include:
interactable user interface features such as buttons, counters, sliders, option selectors, multiple choice, radio boxes, check-boxes, date or time entry or toggles; maps or other static or interactive imagery which could optionally be panned or zoomed and on which something could be marked or selected (such as a preferred meeting location or the location of a recommended shop, restaurant etc); interface components to access and retrieve or provide data or control from other applications or data sources on or accessible from the recipient device -
applications could range from address books, photo albums, a user's calendar or other stored data such as account information, medical information, social media posts through to applications or services accessible from the recipient device such as home automation, music streaming systems or set-top box or games console controls;
scripts or other behaviour controls associated with a message and/or dynamic content;
sensors for detecting user activity, activity associated with the recipient device, a state of a recipient device (or one of its components - for example the state of an accelerometer, gyroscope, the location of the device detected by GPS, nfc, geolocation, relative distance to other location features or use of similar technologies, the presence of a particular Bluetooth or WiFi network, signal strength, battery life remaining, whether the device is on, off, has a call in progress, is on vibrate or in a do-not disturb mode etc);
a triggerable action (for example by a button, voice command etc) to join a live stream, or to start an on-demand stream, retrieve a file or URL of a file to download or play via progressive download;
an animated icon or avatar;
an instruction or criteria to change size of the message or message content dynamically for example for feedback, importance or entertainment;
a control for a device to be used during a messaging session such as a camera, microphone or speaker;
Specific types of dynamic content may be invoked based on accessibility criteria, for example for the young, old, illiterate, blind, deaf or in a situation where voice only would assist.
Dynamic content can be scripted to do anything, but interfaces benefit from the familiarity of treating common functions in a similar way wherever they occur.
Dynamic content may have specific uses - for example a display and input may be linked to an ongoing auction, the display showing current price and input allowing bids to be made, likewise dynamic content may vary by time and/or location - an airline ticket may change to show gate and boarding information after the user has checked in, an order may change to display delivery information and
subsequently seek feedback or a rating of ordered goods following delivery.
Dynamic content may enable secure provision of data. For example, passwords can be shared without the recipient actually needing to know the password (it could be embedded in a button and entered upon the button being
pressed). Use of content can also be controlled. For example, it may be single use, time or location restricted etc.
Since all behaviour is automatable, it can be triggered by any attribute to which the recipient device has access, whether part of the device itself or accessible from the device, operating system or another app. Criteria that can be used as triggers may include:
content
ii. user action
iii. schedule
iv. identity of other user
v. location
vi. failed authentication
Actions that may be invoked by a trigger may include:
i. display of display area/component
ii. send display area/component
iii. control some other interface or device, for example call someone using telephony components, use home automation controls to switch on the oven, control lights, gates or an alarm system, interact with a system such as a payment system, cash machine or entertainment system, interact with wearable device or more sophisticated device such as those used in healthcare
iv. block something or take similar action such as switch off the recipient device or log out of accounts
All content items (static or dynamic) within the control of a user can be shared. However, a security model preferably enables messages to include content that cannot be shared by the recipient.
Dynamic content may be responsive to context such as location, preferences, permission, personal Information, time, who else is present. This is an under-utilised possibility when a peer-to-peer or server-based system has access to location details of multiple users. This could range from blocking flirtatious texts when a user is with his or her partner to tailoring an emergency response to fit with the available resources.
Dynamic content may, for example: be updated remotely due to timing or action elsewhere or detection of a data or a state associated with the recipient device; be interacted with remotely to cause action at the recipient device; be interacted with locally at a recipient device to cause action at a remote system (such as other recipients of the message);
interact with the recipient device for obtaining the further data etc.
It will be appreciated that the further data will vary depending on use and on dynamic content. In some instances, further data may be one way for example with an advert or similar changing based on a schedule of a remote system and pushing changes down the link to the message. In many cases, the link may be bi-directional, communicating further data on, for example, trigger conditions or retrieved or sensed data from the recipient device while either in parallel or in response (or independently), a remote system (which may or may not be the one receiving further data from the recipient device) communicates further data to the recipient device to cause a desired act. One example of further data was the voting discussed above - further data was communicated bi-directionally such that votes were communicated from each voting recipient device and used to update displays at the recipient devices.
Note that although embodiments discussed above concern messages that are customisable at creation time and then sent for consumption, it will be appreciated that in messages may be forwarded on (assuming there is no associated control prohibiting this). Additionally, in selected embodiments, messages may be subsequently customised or changed and those changes and customisation shared with other recipients as discussed below.
Figure 4 is a schematic diagram illustrating aspects of a system suitable for implementing the communication system of Figure 1 .
In this example, the communication system 10 includes a messaging system 100, a media system 1 10, a dynamic content system120 and a conferencing system 130.
In this example, the messaging system 100 manages message composition, recipient participants for a message session, communication of messages and notifications.
The media system 1 10 in this example provides media to be consumed by messages. The dynamic content system 120 in this example maintains links to dynamic content in messages and manages communication of, and any action arising from, further data. The conferencing system 130 provides optional additional functionality in the form of voice and/or video communication as discussed below.
A message is preferably defined in mark-up language or similar, such as XML. The message is created at or provided to the messaging system 100 along with identification of recipients for the message session. The messaging system creates a record for the message session. The record identifies participants (illustrated by connection 101 ) and includes an identifier for the message session. It may optionally include a copy of the message definition and other data such as time and date.
Media to be included when the message is rendered or otherwise output at a recipient system is stored or otherwise defined or linked in the media system 1 10 and is
referenced in the mark-up language. Preferably, the media system is a REST (representational state transfer) system.
Dynamic content to be included when the message is rendered or otherwise output at a recipient system is stored or otherwise defined in the dynamic content system 120 and is referenced in the mark-up language. Links are also defined with reference to the dynamic content system 120. Preferably, the dynamic content system 120 is a socket server that establishes a socket for each link.
The communication system need not include a conferencing system 130. However, where a conferencing system is present, participants may elect to jump from messaging to voice or video communication. Upon participants electing to jump, a session is established (for example using VOIP or similar technologies) and participants can join as desired.
Election to jump to a voice or video communication may, for example, be via dynamic content in the message itself (and the session established via further data) or it may be via an option in an interface provided by the recipient devices.
The communication system need not be configured as discussed with reference to
Figure 4. For example, media may be hosted elsewhere and a link provided to recipient systems to retrieve when forming the message for output - in such a case the media system may not be needed or may be part of one of the other systems. Likewise, the various systems could be implemented as separate servers, distributed server farms or systems or could be implemented on a common server, distributed server farm or system.
Preferably, each recipient device includes a recipient interface executable by a processor of the recipient device to receive and output a received message. The recipient interface is preferably arranged to interact with the recipient device's systems to obtain and communicate further data via the link.
Preferably, each recipient interface is arranged to monitor for loss of focus of the message at the recipient system and, upon detecting a loss of focus, communicate data on the loss of focus as further data to cause disposal of the link and enable recycling of the socket at the dynamic content system. Loss of focus may, for example, be loss of visual focus of the message (such that it is moved off-screen), deletion of the message, closure of the recipient interface etc. Preferably, each recipient interface also is arranged to monitor for messages gaining focus that have previously lost focus. In such an arrangement, newly assigned sockets would be requested from the dynamic content system in order to return the message at the recipient device to a functional state.
It will be appreciated that messages may be created in many ways. They may be pre-designed, for example by professional designers, and subsequently sent as part of a campaign or in response to an event such as a visit to a website, signing up to a mailing list etc.
In one embodiment, a user interface may be provided for creating messages. This may be part of the recipient interface, a stand-alone system or part of the communication system 10.
Figure 5 is a schematic diagram of a user interface system suitable for use in embodiments of the present invention.
The user interface system 210 includes a client 220 having a processing module 230, a network communication module 240, a display area 250 and a user input module 260.
The user interface system 210 is arranged to display a user interface in the display area 250 on the recipient device 30. At least aspects of the user interface are defined by dynamic content and are preferably in the form of one or more user interface components which are manipulate in the user interface by one or more predetermined user gestures detected by the user input module 260. The manipulations (which may for example be touch gestures on a touch screen) cause changes to the user interface. The user interface system 210 is arranged to communicate on demand, via the network communication module, to cause the user interface to be communicated as a trigger data defining a message via the communication system 10 in order to be output at a recipient device 30.
The user gestures may be touch based gestures, 3D gestures or other forms of user inputs. Advantageously, the user inputs are accessible to the lay user and require no software coding or the like to effect changes to the user interface. Components can be added, changed or removed by dragging, dropping and other similar actions. Components may include controls such a buttons, counters, text boxes, representations of sensors or other features of the client device, they may include presentation environments enabling content to be selected and output, they may also be a holder for content such as audio, video or images or data such as links, contact calling cards and the like.
Components may have (or have assignable to them) behaviours such as the ability to lock a component in a particular place on-screen; dock components together; make a component non-saveable or require one or more of the components to always be included when a communication is passed to another remote client device (so for example to preserve branding or DRM of content if a user interface is forwarded onwards - each user may have the opportunity to customise the user interface before forwarding it subject to any behaviour constraints).
The user interface system may offer a user interface that is tailored to the situation. For example, it may be:
Auto-select by context, e.g.
i. If recipient known, start from last communication with them ii. If using maps, start with creator's location
iii. If consuming media, start with a shareable display area
Profile-based, e.g.
i. If primary use is micro-blogging, default to a blogging user interface ii. if primary use is sharing music, start from a recent playlist
Themed or branded templates may be offered.
A user interface may be created by peers or crown sourced
i. each peer may add suggestions to a blank display area ii. peers may build on what last person added
Dynamic or static content may be obtained from any number of sources such as:
Obtained by sampling received dynamic or static content - for example selecting part of an image, sound or video and turning it into content;
Creation of content by use of authoring tools;
Purchase of content through a marketplace for fixed or customisable content; Downloading, copying, extending or modifying content.
Optionally, the message may be modifiable after communication to a recipient device 30. For example, a communication channel may be maintained (or permit refreshing so as to maintain appearance of a maintained connection) such that changes to the message by the creator or recipient can be shared between parties to the message and reflected in the output messages via their respective recipient devices.
In one embodiment, trigger data defining aspects of a message of a communication session is received at a recipient device 30, for example from another recipient device 30a via a peer-to-peer communication or from a server or other centralised communication system 10 which facilitates connection of participants to the communication session. The trigger data may take many forms and is discussed in more detail below.
The recipient device 30 is responsive to receipt of trigger data for a communication session to compile the message including the interactive user interface. The trigger data includes at least a definition of elements of the interactive user interface.
The recipient device 30 is arranged to output at least visual parts of the interactive user interface via a display area 31 . A processor 32 of the recipient device 30 executes the interactive user interface in dependence on user inputs received via a user input module 33 and in dependence on further data received via a network communication module 34 from a remote system (for example the other participant 30a or the server 10).
The trigger data may be linked to one or more of a number of events such as a phone call to the recipient device 30, receipt of an SMS, email or other message, detection of an event by the recipient device 30 such as arriving at a particular location (detected by GPS, presence of a particular WiFi network, etc.) that had previously been registered by a
session participant to cause triggering of the event at the location, a change in status of an associated device (such as a connection or change in status of a Bluetooth connected device such as a vehicle paired to the device, earphones, health band, heart rate monitor), etc.
It will be appreciated that trigger data need not necessarily be communicated to the originator of the trigger in the situation where the originator is another participant to the session. In some embodiments, where the system is not peer-to-peer and the trigger originated by a participant, a server may be used to communicate the trigger as discussed in connection with Figure 1 , in which case the trigger data may be communicated to all participants.
Triggering of the communication session causes user interface elements to be compiled and output via the recipient devices 30 and associated with the display area 31 . The user interface elements are defined, at least in part, by data associated with the event. For example, these may be delivered with the trigger data for the event. Some may be caused to be downloaded by the trigger data whilst others may be locally stored. The user interface elements are compiled at the receiving devices and executed so as to be output as required.
The display area is preferably a configurable, sharable area of the recipient device's screen. It is preferably a large, clearly delimited portion of the recipient device's screen. In some embodiments, the area may be substantially an entire display of a device (for example a touch-operated smart-phone screen). However, this could be any clearly delimited region of any graphical user interface, including but not limited to smart-phones, computers, tablets, sat-navs or TVs. The user interface module 33 could interface to, or be, a touch screen, a mouse or keyboard, a voice recognition system or some other user input means.
Preferably, the elements of the interactive user interface are each a configurable component capable of being displayed (or otherwise output) by the client. Components may include static, active or interactive widgets. These might be used to display data, messages, content or user experience (UX) components. The components may come from one or a combination of sources including but not limited to the user, other individuals, external content providers or output from local or remote software/data-feeds.
In one embodiment, elements may be button-like, icon-like, widgets, Windows 8 style panels or may take over the whole display area.
The purpose of the display area is to share information, or enable interactions between users. The possibilities are extremely diverse including but not limited to real-time or asynchronous messaging, content sharing, screen sharing, alerting, structured data-entry or user interactions.
The recipient devices may execute a recipient interface arranged to communicate with the communication system 10 and handle messages at the recipient device 30. The recipient interface may be provided to a host device in the form or an app or other installable software client. The app itself, or specific events within it, may, in one embodiment be launched by a phone call. The app may automatically initiate or control a phone call in parallel with other communications. The app or functionality within the definition of a communication session (for example a feature or side-effect of using a user interface component) can be configured such that phone calls can be charged by the originator or the recipient.
The app may in some embodiments work in a peer-to-peer mode between instances.
Alternatively, a server system may be implemented which would enable the sending of communication sessions and their interactive user interfaces to users. This could be used to create services including but not limited to marketing messages, surveys and polls, centralised storage, voucher distribution or phone-call invitations.
Figure 6 is a schematic diagram of a recipient interface for receiving messages from the communication system of Figure 1 according to an embodiment.
Each recipient device 30 includes a display area 31 , a network communication module 34, a user input module 33 and a processor 32.
The processor 32 is arranged to compile the recipient interface for the respective recipient device 30 from a combination of locally stored program code (defining the display routines, communication protocols etc) and received data defining a message for participation in a communication session. How the interactive user interface may be defined and communicated to the terminal is explained in the embodiment above.
The recipient device 30 is arranged to receive user inputs on the interactive user interface and communicate data on said user inputs to one or more other recipient devices and/or a central system, for storage, processing and/or output. The display of the interactive user interface and communication of data to other terminals in the session enables sharing of information and interaction.
Note that it is not necessary for the same interactive user interface to be displayed at all terminals. For example, an originator device may have different software or hardware components (such as components allowing monitoring activity of the interactive user interface at recipients).
In one example, the communication system may be utilised by a retail shop, coffee shop or other commercial operation. A customer having the recipient interface running on his or her smartphone (recipient device) may receive a message in the form of trigger data upon entering the shop that causes an interactive user interface including components customised for the shop to be displayed on the recipient interface. In the case of a coffee
shop for example, the customer's device may allow ordering of a coffee without queuing. The shop's terminal (recipient device) on the other hand receives the order, displays it to the barista and handles payment processing against the customer's credit card (which may be read by NFC by his or her terminal device if it had that functionality). This is an example where a one (the shop terminal) to many (customer terminals) communication sessions may take place. A single user interface on the shop terminal communicates potentially in parallel with different instantiations of user interfaces on customer terminals.
In the case of a conference call type application, each recipient device may have the same functionality to allow voice or video communications, share documents, whiteboards etc. It may be that a designated chairman may have extra components to end the conference, control muting etc. In this example, sharing of content is many to many - content a user adds to his or he terminal would be communicated to all participants to the communication session.
A user may create an interactive user interface via the app (or in some other way such as online at a server, via a platform API etc.). The interactive user interface may then be shared with one or more other users such that they can view and interact with the instance of the user interface and its originator (and optionally all parties receiving the user interface in selected embodiments) at their leisure. This could be used in place of e-mail, messaging or micro-blogging, with the advantage that the recipient action, e.g. viewing, interacting or forwarding, can be monitored in real-time via the originator's app, or via the platform API.
In selected embodiments, an instance of an interactive user interface may be remotely controlled in real-time by a user or via the platform API. If the app or platform detects that remote user has the canvas open, it could be used to send content items, stream live content in adhoc or scheduled webcasts or provide interactive UX components.
An instance of an interactive user interface can optionally be shared by two or more users such that there is no distinction between the originator and recipients. This could be used for multiplayer games, collaborative decision-making apps, watching a movie together or a chat-room.
Although the above embodiments have focussed on communication and in some cases messaging, it will be appreciated that the features ad principles described could have wider applicability. For example, the features could be used to provide an application creation environment in which applications are defined from a user interface and associated behaviour and stored for local use, stored for download by other devices, or otherwise provided or communicated for consumption.
Example components/content that are available to be compiled into the interactive user interface include:
Static Content: This could be a text field, image, URL, attachment (to be launched by other app) etc. The advantage over twitter or messaging platforms is that mixed items of content can be arranged on a single display area, and static items can be mixed with non- static component types. Text and URLs could be integrated powered by, or feed into, Twitter Embedded Media: Videos, songs, mini-games to be played within a component.
Again the advantage over Twitter, YouTube, Facebook is that the items could be combined with context-specific feedback components. Rather than a generic public "like" or comment, the components could have specific novel functions, or be shared only with the sender, or with a closed group. This is possible on other platforms but difficult to setup for an ad hoc instance.
Live Broadcast / Narrowcast: This could be like a little loudspeaker or video-screen - perfect to set up all sorts of live, and gamified social activities, e.g. combine live audio webcast with some feedback buttons to host your own wide area pub quiz. Celebrities could talk to fans from backstage without a huge PR machine to manage it.
Live Feedback: This is a dynamic content type that enables a request for input from one or more recipients and receive feedback in real time. This could be used for group decision-making, games, asking for help or advice. The feedback (further data) could be freeform text or results of clicking on simple options. It could be visible exclusively to just the sender, shared with all recipients or be completely public. The responders could be identified, or remain anonymous.
Asynchronous Feedback: This is also a dynamic content type. All the live responses could be used in a non-live context. In many situations, staring at a display area to see who has responded is impractical because of bad timing, excessive numbers of responses or the size of response, e.g. "everyone send me a picture now!". Instead, the responses could be collated and summarised.
Call-me: A dynamic content type that allows sending someone a component (optionally including a sound/image/video notification defining how to announce arrival of the component at the person's client device) that can be actuated to instigate a call at your own expense. Such an arrangement could be a replacement for ringtone + Calling line identifiers as it is context-specific: "nothing important, just want a chat" or "answer now, I'm in trouble". Again, being part of a display area has the advantage of being combined with other components. For example, a bespoke user interface can be created and sent to a recipient that gives them the ability to decline with a single click on a feedback button giving the reason: "can't talk today" or "will call in 5".
Tokens, Vouchers, Tickets: Dynamic content in the form of exchangeable, unique components may be offered for use in a wide variety of applications. This could even include virtual currency, which could have both graphical and hidden/encrypted components.
Payment: Dynamic content in the form of a one-click payment button may be provided, displaying payment price. In one embodiment, if the user has recently entered password, it could work immediately. If not, re-authentication is required.
Badges of Achievement: Dynamic content types that could be given to denote a rank achieved for consistent social behaviour, a prize for a quiz, paid-for status upgrades. These could be linked to rewards, e.g. if you have gold status, clicking the gold badge unlocks the new game level.
Embodiments of the present invention have numerous uses and fields of application. Examples include:
One to One communications - chat, phone calls, media sharing, link-curation, screen- sharing and anything else the participants desire may be collectively hosted in parallel in a single simple interface (that may have been pre-defined or may have been configured by one of the participants at the outset).
Group communications: Ad-hoc or predefined communications can be hosted.
Context specific buddy-lists can be used as passive recipients or to set up instant many-to- many activities. These could be asymmetric like Google+.
Subscribers: Users may opt-in to scheduled and ad hoc alerts that are delivered to their display area. These could be anything from traffic data to interactive content for fan club members, or serious surveys. This could get very creative, compared to a Twitter feed. "Survey of the week" could be useful for serious pollsters or soap-star-obsessed gossip blogs.
Support Requests: Messages may be send out to many, but first responder hijacks the communication session, e.g. find me a cab. This could be used for product support or the mentoring/sponsorship of vulnerable people and addicts: "someone meet me for a coffee and a chat or I'm going to buy a bottle of vodka".
Marketing / Advertising: Similar to subscribers, but with the ability to target based on aggregated platform data or external CRM systems. This could be paid for by the marketeer, and have a consistent separate look and feel, or be branded with a unique background.
The various embodiments described above disclose features that can optionally be combined in a variety of ways depending on the desired implementation.
Since the features described are modular, other embodiments based on different
combinations of features are also possible.
None of the described features are mutually exclusive, and any combination of may be deployed to achieve the functions described above.
It is to be appreciated that certain embodiments of the invention as discussed below may be incorporated as code (e.g., a software algorithm or program) residing in firmware
and/or on computer useable medium having control logic for enabling execution on a computer system having a computer processor. Such a computer system typically includes memory storage configured to provide output from execution of the code which configures a processor in accordance with the execution. The code can be arranged as firmware or software, and can be organized as a set of modules such as discrete code modules, function calls, procedure calls or objects in an object-oriented programming environment. If implemented using modules, the code can comprise a single module or a plurality of modules that operate in cooperation with one another.
Optional embodiments of the invention can be understood as including the parts, elements and features referred to or indicated herein, individually or collectively, in any or all combinations of two or more of the parts, elements or features, and wherein specific integers are mentioned herein which have known equivalents in the art to which the invention relates, such known equivalents are deemed to be incorporated herein as if individually set forth.
Although illustrated embodiments of the present invention have been described, it should be understood that various changes, substitutions, and alterations can be made by one of ordinary skill in the art without departing from the present invention which is defined by the recitations in the claims below and equivalents thereof.
It will be appreciated that the potential uses of this platform are extremely wide and varied. Because the platform is designed to be extensible, new ones will be added all the time.
The content of the abstract accompanying this application and the priority application No. GB1419337.9 are herein incorporated by reference.
CONTENT
What can be contained in a display area or static or dynamic content component? The intention is that the platform is completely configurable and extensible. In its most abstract form it could be considered as a system for instantly creating and sharing messages and apps from prebuilt and blank components. The display area and components are both container types for the following items:
a. Video
i. Music Video
ii. TV show / film
iii. Video message
iv. Live TV, webcast
v. Stream
1. From sender's device camera and/or microphone
2. URL of server-based stream
3. Could be to join live stream, or to start an on-demand stream
VI. Whole file sent with button
vii. URL of file to download or play via progressive download b. Image
Photograph
II Clipping from other source
iii Drawing created
iv. Texture to enhance interface
v. Special effects to modify other image or interface
c. Sound
i. Music
ii. Ringtones
iii. Voice message
iv. Live radio, webcast
v. Effects
vi. Stream
1. From sender's device microphone
2. URL of server-based stream
3. Could be to join live stream, or to start an on-demand stream
VII. Whole file sent with button
viii. URL of file to download or play via progressive download d. Other visual features
i. animated icon or avatar
ii. instruction or criteria to change size dynamically for
1. feedback
2. importance
3. entertainment
e. Location
i. Relative to personal details
1. home
2. office
3. abroad
4. school
5. car
6. derived from travel schedule
7. derived from calendar
8. derived from ticket (theatre seat)
Absolute
1. address
2. geographical coordinates
3. link to mapping API (Google, Apple, MS etc.)
4. business name
a. cinema
b. restaurant
c. shop
5. GPS data from phone now
6. historical GPS data
7. GPS location of other device
8. geolocated wifi hotspot
9. beacon
10. nfc
Relative to other location attributes
1. room number / ID (e.g. lobby, room 12, mum and dad's bedroom)
2. which floor (e.g. upstairs, 14th floor)
3. where in room (e.g. on the sofa, by the check-out desk)
4. seat (e.g. back seat of the car, seat kl2 on plane, theatre seat)
5. proximity to / distance from location
f. state or change of state
i. silent
ii. do not disturb
iii. away
iv. off
v. on
vi. call end
vii. call in progress
g- Control for device in use during session
i. camera
ii. voice
iii. sound
h. Time
Current
From app, e.g. calend
Freeform selection
share
II. insert
Internet: any URL
II. TV: EPG item
iii. SatNav: location
k. Feedback
i. polling
ii. sampling
iii. voting
iv. freeform input
v. freeform selection / clipping
I. Common/shared data from other systems or apps
i. account information
ii. medical record
iii. meeting information
iv. social media
1. posts
2. feeds
m. Personal info
i. location
1. current
2. auto-share
3. other (see location section below)
ii. address book
iii. social media
iv. diary
v. preferences
n. Call / device data
i. cost of call
ii. balance
iii. battery life
iv. time
v. location
o. Scripts / code
create new behaviour from scratch
extend behaviour of open-source components
p. triggers (see section 3 below)
i. dynamic
ii. pre-set
iii. scheduled
q. Accessible versions
Where available, specific flavours of interface are invoked based on accessibility criteria.
Young
Old
Mi. Illiterate
iv. Blind
v. Deaf
vi. Voice only - limited dexterity
Generic Component Types
Components can be scripted to do anything, but interfaces benefit from the familiarity of treating common functions in a similar way wherever they occur. i. multiple choice
1. radio
2. check-box
ii. slider
iii. toggle
iv. built in counter
v. Gaming
1. instant lottery
2. bingo
3. horse racing
vi. Buttons with intrinsic value
1. tokens
2. cash
3. tickets
vii. Auction
1. bid
2. buy now
viii. Ordering
1. goods
2. services
a. taxi
s. Secure data sent in button (see 15 for other security features of system) i. wifi password
ii. hidden embedded
iii. use once
iv. phone number / e-mail address
v. transaction
vi. authorise
1. single user
2. multi-user
a. N-way auth
b. >=N auth
t. Data sharing
i. files
ii. folders
iii. information
u. Generic actions
i. dial a number
1. normal
2. reverse
ii. SOS text
iii. mark as "done" Component/display area CREATION - How is a component or display area created? a. By sender on device, to be sent to other devices
b. Modified, if allowed by creator/administrator
c. Programmatically
Commercial use of the system may involve sending to multiple subscribers or devices meeting certain criteria, e.g. location. This would be performed via an API into a server which sends the display area by communicating with an app which generates a display area or component on the device on which it resides.
i. by server system
ii. by app TRIGGERING
Since all behaviour is automatable, it can be triggered by any attribute to which the system has access, whether part of the system itself or accessible from the host device, operating system or another app.
a. all criteria can be used as triggers including
i- content
ii. user action
iii. schedule
iv. identity of other user
v. location
vi. failed authentication
all actions can be invoked by a trigger including
i. display of display area/component
ii. send display area/component
iii. control some other interface or device
1. call someone
2. switch on the oven
iv. block something
1. switch off phone
2. log out of accounts
SHARING AND MERGING ACTIONS - What can I share with others?
All items within the control of a user can be shared. However, the security model permits the sending of items which cannot be shared by the recipient.
a. Share a created component or display area with others
b. 2 or more devices share component on single display area
c. SWIPE or BUMP to nearby device
d. real-time multiplex sharing
e. share via external system Facebook, Twitter
f. share any item on device by dragging onto a canvas component SOURCES - Where do I get components from for my display area?
a. Sample
Select an existing component or select part of an image, sound or video and turn it into a component.
b. Create
Authoring tools will exist within the app or via computer software or websites. c. Buy
Component store / display area store - marketplaces for fixed or customisable items. d. Download
e. Copy
f. Extend
g. Modify
CONTEXT - How can the system respond to context?
The device APIs are very varied but can all provide a lot of context.
a. Location (see le)
b. Preferences
c. Permission (see 15)
d. Personal Information
e. Time (see 16)
f. Who else is there
This is an under-utilised possibility when a peer-to-peer or server-based system has access to location details of multiple users. This could range from blocking flirtatious texts when I'm with my partner to tailoring an emergency response to fit with the available resources.
g. Phone state
i. silent
ii. do not disturb
iii. away
iv. engaged
v. off
vi. on APPLICATIONS - How can the system be adapted to specific application?
a. API allows all features to be used
Corporate use of the system to provide branded interactive communication without having to commission a new app, every time there is a new idea about how to engage customers.
b. White labelling allows seamless UX within organisation
Using the system across an organisation to manage complex activities, e.g. for support engineers out in the field. This could involve switching off most of the user features, while still retaining the flexibility to create new workflows and interactions and roll them out instantly.
CONSUMER PRODUCTS - What specific enterprise apps can use it?
a. Media Distribution
Type
1. Movies
2. TV
3. Music
4. Text
Action
1. Buy
2. Rent
3. Lend
4. Sample
5. Share
6. Comment
7. Like
8. Search
9. Browse
10. Recommend
AGGREGATION - How can display areas and components be organised
a. Use display are to organise components, e.g.
i. my newspapers
ii. my holiday shortlist
b. Use FOLDER to organise display areas, e.g.
i. save interesting stuff
ii. postpone viewing stuff until time is available
c. group by
i. sender
ii. subject
iii. type
Media / vote / token ...
iv. form factor
TV / phone / computer
time received / created / last viewed
location when received / sent Generic display area authoring starting points
Far from making every user start from scratch, the generic display area can be tailored to the situation.
a. Auto-select by context, e.g.
i. If recipient known, start from last communication with them
ii. If using maps, start with location
iii. If consuming media, start with sharing canvas
b. Profile-based, e.g.
i. If primary use is micro-blogging, default to blogging canvas
ii. if primary use is sharing music, start from recent playlist
c. Channel-based
i. themed templates
ii. branded
d. Created by peers
i. each peer adds suggestions to blank canvas
ii. each peer builds on what last person added
e. Created by crowd
i. open chat discussions
ii. entries to a creative competition DEVICE TYPES - what devices might display a display area/component
a. Smartphone
b. Tablet
c. Computer
d. Telephone
e. Satnav
f. wearable smart device
g. Other connected device CONTAINER PLATFORMS - display area/components within another application
a. Web browser - display area hosted in a website
b. Web browser - embedded widget in 3rd party website
c. VOIP app - canvas within Skype-like application USER ROLES - what different roles do users have relative to display areas/components a. originator - creates canvas
b. sender - shares canvas
i. to one other
ii. to listed others
iii. publish
c. recipient - receives canvas
d. participant - engaged with peers on single real-time shared canvas ICE ROLES
a. author/edit
b. send
i. to one other device
ii. to listed other devices
iii. publish to any device
c. receive
d. peer RITY
a. Encryption
i. entire session
ii. specific buttons/canvases
b. passwords
c. hide specific details
i. global preference
ii. specific canvas
d. locks / keys, e.g. intuitive graphical encryption handl
e. multiple identities
f. authentication
i. require reauthentication for specific action
ii. authentication by platform
g. time bomb
i. content
ii. user information
h. filter by location
i. only receive from specific location
ii. only send to specific location
iii. only share within same location
i. lists
i. team
ii. family
iii. friends E
a. event
i. canvas triggered by event
ii. canvas used to
b. content dependent on time
c. scheduled send
d. embargo
e. calendar / diary integration
i. add item to calendar
ii. alert before appointment
iii. alert when not at appointed place
iv. sharing
1. find convenient meeting time
2. alert when near
f. reminder
i. take pills
ii. tell elderly relative to take pills
GRATION WITH OTHER DEVICES
a. remote/scheduled control of
i. tablet
ii. computer
iii. lights
iv. electric gate
v. alarm system
vi. payment system
vii. cash machine
viii. entertainment system
interact with wearable device
healthcare
i. control device
ii. receive info from device RGENCY APPLICATIONS
a. contact info
b. next of kin
c. social network
d. diary
e. show emergency exit route (adapted in real-time)
f. find shelters
g. crowd management
i. emergency services broadcast instructional buttons to direct public ii. touch button to get more help
Claims
1 . A communication system arranged to communicate a message to a recipient device, the message including one or more content types selectable by a creator of the message from a set including static content and dynamic content, the communication system being arranged to maintain a link associated with dynamic content in the message for
communication, with the recipient device after receipt of the message at the recipient device, of further data associated with the dynamic content.
2. A communication system as claimed in claim 1 , wherein the communication system is arranged to communicate the message to a plurality of recipient devices and maintain a link with dynamic content in each message of each recipient.
3. A communication system as claimed in claim 1 or 2, wherein the communication system is arranged to receive the message from a sender device for communication to the or each recipient device, the communication system being arranged to treat the sender device as a recipient and to communicate the message to the sender device as a recipient device and maintain a link associated with dynamic content in the message of the sender device.
4. A communication system as claimed in any preceding claim, further comprising a dynamic content server, the dynamic content server being arranged to maintain the or each link associated with the dynamic content.
5. A communication system as claimed in claim 4, wherein the dynamic content server is arranged to provide further data to a recipient device using its respective link.
6. A communication system as claimed in claim 4, the dynamic content server being arranged to receive further data from a recipient device using its respective link.
7. A communication system as claimed in claim 6, wherein the communication system is arranged to communicate the message to a plurality of recipient devices, the dynamic content server maintaining a respective link associated with the dynamic content in a message at each recipient device, the dynamic content server being arranged to receive further data associated with the dynamic content from one of the plurality of recipient devices via its respective link and update the dynamic content at others of the plurality of recipient devices via their respective links in dependence on the received further data.
8. A communication system as claimed in any preceding claim, further comprising a recipient interface executable at a recipient system to receive and output a received message, the recipient interface being arranged to communicate said further data via the link.
9. A communication system as claimed in claim 8, wherein the recipient interface is arranged to monitor for loss of focus of the message at the recipient system and, upon detecting a loss of focus, communicate data on the loss of focus as further data to cause disposal of the link.
10. A communication system as claimed in any preceding claim, wherein the dynamic content is arranged to cause a recipient device to provide further data via its respective link, the further data being on one or more of detection of a data or a state associated with the recipient device, generated in response to interaction with the dynamic content at the recipient device, data obtained from a hardware component or software system of or accessible from the recipient device.
1 1 . A communication system as claimed in any preceding claim, wherein the message is communicated in a mark-up language, the communication system further comprising an interface executable at the recipient device to render a message for output from the received mark-up language.
12. A communication system as claimed in any preceding claim, wherein the message is composed of a plurality of components, the components including said content types, wherein the number, type, behaviour and/or position of the components are customisable during creation of the message.
13. A communication system as claimed in any preceding claim, wherein the number, type, behaviour and/or position of the components are customisable after receipt of the message by a recipient device.
14. A communication method for communication of a message to a recipient device, the method comprising:
defining a message from content types selectable from a set including static content and dynamic content; and,
maintaining, after delivery of the message at a recipient device, a link associated with dynamic content in the message for communication of further data associated with the dynamic content.
15. A communication method as claimed in claim 14, further comprising communicating the message to a plurality of recipient devices and maintaining a link with dynamic content in each message of each recipient.
16. A communication method as claimed in claim 14 or 15, wherein the step of defining is performed at a sender device, the method further comprising receiving the message from the sender device for communication to the or each recipient device, communicating the message to the sender device as a recipient device and maintaining a link associated with dynamic content in the message of the sender device.
17. A communication method as claimed in claim 14 or 15, further comprising providing further data to a recipient device using its respective link.
18. A communication method as claimed in claim 14, 15 or 16, further comprising receiving further data from a recipient device using its respective link.
19. A communication method as claimed in claim 18, further comprising communicating the message to a plurality of recipient devices, maintaining a respective link associated with the dynamic content in a message at each recipient device, receiving further data associated with the dynamic content from one of the plurality of recipient devices via its respective link and updating the dynamic content at others of the plurality of recipient devices via their respective links in dependence on the received further data.
20. A communication method as claimed in any of claims 14 to 19, further comprising executing a recipient interface at a recipient system to receive and output a received message and communicating the further data via the link by the recipient interface.
21 . A communication method as claimed in claim 20, further comprising monitoring at the recipient interface for loss of focus of the message at the recipient system and, upon detecting a loss of focus, communicating data on the loss of focus as further data to cause disposal of the link.
22. A communication method as claimed in any of claims 14 to 21 , further comprising causing a recipient device to provide further data via its respective link using said dynamic content, the further data being on one or more of detection of a data or a state associated with the recipient device, generated in response to interaction with the dynamic content at the recipient device, data obtained from a hardware component or software system of or accessible from the recipient device.
23. A communication method as claimed in any of claims 14 to 22, further comprising composing the message of a plurality of components, the components including said content types, the step of composing including customising the number, type, behaviour and/or position of the components during creation of the message.
24. A communication method as claimed in any of claims 14 to 23, further comprising customising the number, type, behaviour and/or position of the components after receipt of the message by a recipient device.
25. A user interface system arranged to display a user interface in a display area on a client device, at least aspects of the user interface being defined by one or more user interface components, said user interface components being manipulate in the user interface by one or more predetermined user gestures to thereby change the user interface, wherein the changed user interface is communicable by the user interface system to be displayed in a display area on a remote recipient device, the user interface system being arranged to maintain a link between the client device and the recipient device for
communication of data associated with at least selected ones of said user interface components.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1419337.9 | 2014-10-30 | ||
GBGB1419337.9A GB201419337D0 (en) | 2014-10-30 | 2014-10-30 | User interface system and method |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016067042A1 true WO2016067042A1 (en) | 2016-05-06 |
Family
ID=52118444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/GB2015/053271 WO2016067042A1 (en) | 2014-10-30 | 2015-10-30 | Communication system, user interface system and method |
Country Status (2)
Country | Link |
---|---|
GB (2) | GB201419337D0 (en) |
WO (1) | WO2016067042A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108173729A (en) * | 2018-03-08 | 2018-06-15 | 广东美的制冷设备有限公司 | The processing method and household electrical appliance of instant communication message |
CN108521513A (en) * | 2018-03-30 | 2018-09-11 | 上海爱优威软件开发有限公司 | A kind of setting method and terminal of ring of alarm clock |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110196933A1 (en) * | 2010-02-08 | 2011-08-11 | Todd Jackson | Active e-mails |
US20120084133A1 (en) * | 2010-09-30 | 2012-04-05 | Scott Ross | Methods and apparatus to distinguish between parent and child webpage accesses and/or browser tabs in focus |
US20140106799A1 (en) * | 2011-06-23 | 2014-04-17 | Geert Michel Maria Audenaert | Communication Platform for Iterative Multiparty Convergence Towards a Microdecision |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7478132B2 (en) * | 2005-01-24 | 2009-01-13 | International Business Machines Corporation | Dynamic email content update process |
US20090248806A1 (en) * | 2006-07-19 | 2009-10-01 | Ari Teman | System and method for dynamically changing item status in static email messages |
ES2656612T3 (en) * | 2011-11-09 | 2018-02-27 | Movable Ink | Dynamic email content management |
US9319473B2 (en) * | 2012-12-18 | 2016-04-19 | Facebook, Inc. | Mobile push notification |
-
2014
- 2014-10-30 GB GBGB1419337.9A patent/GB201419337D0/en not_active Ceased
-
2015
- 2015-10-30 WO PCT/GB2015/053271 patent/WO2016067042A1/en active Application Filing
- 2015-10-30 GB GB1519197.6A patent/GB2535571A/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110196933A1 (en) * | 2010-02-08 | 2011-08-11 | Todd Jackson | Active e-mails |
US20120084133A1 (en) * | 2010-09-30 | 2012-04-05 | Scott Ross | Methods and apparatus to distinguish between parent and child webpage accesses and/or browser tabs in focus |
US20140106799A1 (en) * | 2011-06-23 | 2014-04-17 | Geert Michel Maria Audenaert | Communication Platform for Iterative Multiparty Convergence Towards a Microdecision |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108173729A (en) * | 2018-03-08 | 2018-06-15 | 广东美的制冷设备有限公司 | The processing method and household electrical appliance of instant communication message |
CN108521513A (en) * | 2018-03-30 | 2018-09-11 | 上海爱优威软件开发有限公司 | A kind of setting method and terminal of ring of alarm clock |
Also Published As
Publication number | Publication date |
---|---|
GB201419337D0 (en) | 2014-12-17 |
GB2535571A (en) | 2016-08-24 |
GB201519197D0 (en) | 2015-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110709869B (en) | Suggested items for use with embedded applications in chat conversations | |
CN110945840B (en) | Method and system for providing embedded application associated with messaging application | |
US9680888B2 (en) | Private interaction hubs | |
EP2795939B1 (en) | Method, apparatus and computer readable storage medium for parental control of a device | |
US10249119B2 (en) | Hub key service | |
US7702728B2 (en) | Mobile shared group interaction | |
RU2527199C2 (en) | Avatar integrated shared media selection | |
US8606872B1 (en) | Method and apparatus for organizing, packaging, and sharing social content and social affiliations | |
US9246917B2 (en) | Live representation of users within online systems | |
KR101642550B1 (en) | Network system and method of operation thereof | |
JP2017523520A (en) | Chat-based support for communication and related functions | |
US20160216947A1 (en) | Unifying Cloud Platform for Interconnected Applications | |
KR102590492B1 (en) | Method, system, and computer program for providing ruputation badge for video chat | |
US9866505B2 (en) | Configuring presence and notifications in persistent conversations | |
CN112534837B (en) | System and method for providing a flexible and integrated communication, scheduling and commerce platform | |
KR20200104287A (en) | Commercial data platform focused on simultaneous voice and data content | |
KR101633901B1 (en) | Live broadcasting service method by using social network | |
US20130117704A1 (en) | Browser-Accessible 3D Immersive Virtual Events | |
TWI589337B (en) | Method for providing messenger service, messenger system and computer readable recording medium | |
WO2016067042A1 (en) | Communication system, user interface system and method | |
WO2015142292A1 (en) | Methods and systems for determining similarity between network user profile data and facilitating co-location of network users | |
Hubbard et al. | Meetings in teams | |
Downs et al. | A small space for playful messaging in the workplace: designing and deploying Picco | |
CN107003881A (en) | Social networking system and the method for showing user profile wherein |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15805241 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 15805241 Country of ref document: EP Kind code of ref document: A1 |