[go: up one dir, main page]

WO2009147295A1 - Thread processing in mobile communication apparatus - Google Patents

Thread processing in mobile communication apparatus Download PDF

Info

Publication number
WO2009147295A1
WO2009147295A1 PCT/FI2009/050462 FI2009050462W WO2009147295A1 WO 2009147295 A1 WO2009147295 A1 WO 2009147295A1 FI 2009050462 W FI2009050462 W FI 2009050462W WO 2009147295 A1 WO2009147295 A1 WO 2009147295A1
Authority
WO
WIPO (PCT)
Prior art keywords
mobile communication
communication apparatus
thread
new
old
Prior art date
Application number
PCT/FI2009/050462
Other languages
French (fr)
Inventor
Arttu LÄMSÄ
Jani Mäntyjärvi
Original Assignee
Valtion Teknillinen Tutkimuskeskus
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Valtion Teknillinen Tutkimuskeskus filed Critical Valtion Teknillinen Tutkimuskeskus
Publication of WO2009147295A1 publication Critical patent/WO2009147295A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/216Handling conversation history, e.g. grouping of messages in sessions or threads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Definitions

  • the invention relates to thread processing in a mobile communication apparatus.
  • a thread refers to an electronic discussion.
  • a set of messages may be grouped visually. Such a set may be called a topic thread or simply thread.
  • the messages may be grouped visually in a hierarchy by a topic. Storage of information into threads is known from electronic mail systems or from electronic discussion forums, for example.
  • a person may send a message and another person may reply to it. Threads are processed in a centralized manner, i.e. a server maintains and stores the threads and messages into a database, whereas the clients create them.
  • the present invention seeks to provide an improved mobile communication apparatus, an improved method, and an improved computer program.
  • a mobile communication apparatus as specified in claim 1 .
  • Figure 4 illustrates embodiments of a user interface
  • Figure 5 illustrates a method
  • Figure 6 illustrates a combination of two threads
  • Figure 8 illustrates a further embodiment of the mobile communication apparatus.
  • the mobile communication apparatus may also be a user terminal which is a piece of equipment or a device configured to associate the user terminal and its user with a subscription and allows a user to interact with a communications system.
  • the user terminal presents information to the user and allows the user to input information.
  • the user terminal may be any terminal capable of receiving information from and/or transmitting information to the network, connectable to the network wirelessly.
  • FIG. 1 discloses an embodiment of a mobile communication apparatus (MCA) 100.
  • the mobile communication apparatus 100 may refer to a portable communication device.
  • Such communication devices include wireless mobile communication devices operating with or without a subscriber identification module (SIM), including, but not limited to, the following types of devices: mobile phone, smartphone, personal digital assistant (PDA), other portable communication devices possibly including computer functionalities or functionalities of other data processing devices.
  • SIM subscriber identification module
  • PDA personal digital assistant
  • the mobile communication apparatus 100 comprises a telecommunications interface 106 configured to establish wireless local ad hoc data transfer connections to other mobile communication apparatuses 1 10, 1 12, 1 14, 1 16.
  • the wireless connection may be implemented with a wireless transceiver operating according to the GSM (Global System for Mobile Communications), WCDMA (Wideband Code Division Multiple Access), WLAN (Wireless Local Area Network) or Bluetooth® standard, or any other suitable standard/non-standard wireless communication means.
  • the mobile communication apparatus 100 also comprises a processor 104.
  • the processor 104 may be implemented as an electronic digital computer, which may comprise a working memory (RAM), a central processing unit (CPU), and a system clock.
  • the CPU may comprise a set of registers, an arithmetic logic unit, and a control unit.
  • the control unit is controlled by a sequence of program instructions transferred to the CPU from the RAM.
  • the control unit may contain a number of microinstructions for basic operations. The implementation of such microinstructions may vary, depending on the CPU design.
  • the program instructions may be coded by a programming language, which may be a high-level programming language, such as C, Java, etc., or a low-level programming language, such as a machine language, or an assembler.
  • the electronic digital computer may also have an operating system, which may provide system services to a computer program written with the program instructions.
  • the processor 104 may also be implemented as one or more integrated circuits, such as application-specific integrated circuits ASIC. Other hardware embodiments are also feasible, such as a circuit built of separate logic components. A hybrid of these different implementations is also feasible.
  • a thread comprises messages (old/new), and the (old/new) message may comprise textual data, multimedia data, visual data, audio data, and/or metadata.
  • the thread thus constitutes a multimedia collage of the performance.
  • Metadata may be created automatically. Metadata may be location data created by a GPS (Global Positioning System) receiver, for example. Metadata may also be other context data, and it may be created by various sensors (a temperature sensor, for example) of the mobile communication apparatus 100.
  • GPS Global Positioning System
  • Metadata may also be other context data, and it may be created by various sensors (a temperature sensor, for example) of the mobile communication apparatus 100.
  • Thread processing may be used for other recreational uses as well.
  • People may use it for various types of communication, as it enables storage and presentation of information in the form of threads, even without a network infrastructure.
  • Threads may freely spread among the users. Threads may evolve in an organic fashion, i.e. there may exist numerous different versions of one thread, as they may have spread over a large geographical area or to varying demographic groups of people, for example.
  • thread processing Another use case of thread processing is to use it for information distribution in crisis areas, where no communication network infrastructure may exist or it has been destroyed. Relief action personnel may use the threads in disaster areas for communication, in an earthquake area, for example.
  • the processor 104 is configured to request in a user-initiated fashion through the telecommunications interface 106 an old thread 120 from a first mobile communication apparatus 1 10.
  • the processor 104 is configured to request through the telecommunications interface 106 an old message 122 belonging to the old thread 120 from a second mobile communication apparatus 1 12.
  • the processor 104 is configured to compile a new thread 126 dynamically and cumulatively from the old thread 120, and a new message 124.
  • the processor 104 is configured to transmit through the telecommunications interface 106 the new thread 126 to a third mobile communication apparatus 1 14 on the basis of a request 132 received from the third mobile communication apparatus 1 14.
  • the processor 104 is configured to transmit through the telecommunications interface 106 the new message 124 to a fourth mobile communication apparatus 1 16 on the basis of a request 134 received from the fourth mobile communication apparatus 1 16.
  • the mobile communication apparatus 100 also comprises a generator 102 configured to create the new message 124, and a memory 107 configured to store the new thread 126 and the new message 124.
  • the described thread processing starts with an old thread 120 obtained from the first and second mobile communication apparatus 1 10, 1 12.
  • the new thread 126 is distributed to the third mobile communication apparatus 1 14.
  • the third mobile communication apparatus 1 14 has passed the new thread 126 to the fourth mobile communication apparatus 1 16, which requests the new message 124 belonging to the new thread 126 from the mobile communication apparatus 100 that created the new message 124.
  • the generator 102 further comprises a user interface 200 configured to create the new message 124.
  • a user 202 may use the user interface 200 to view the old thread 120 and the old message 122, and to manipulate the new thread
  • the memory 108 is further configured to store other data 130
  • the generator 102 is further configured to recognize a predetermined feature from the old message 122, and to create the new message 124 from a portion of the other data 130 having a feature similar to the predetermined feature.
  • the predetermined feature may be a feature relating to metadata of the old message 122, and/or a feature relating to the contents of the old message 122, for example.
  • Figure 7 illustrates combination of messages. Two family members, a daughter and a boy, have each prepared a shopping list 700, 702: the daughter wants one kilogram of apples, and the boy wants a new bicycle. Each of these messages 700, 702 also comprises other data, in this case metadata.
  • the metadata relates to a context that these members of the family have defined for the shopping list.
  • the context is defined as "after work” and "when at the mall".
  • the metadata may be defined automatically or by a user operation.
  • a third family member, father arrives at the mall after his work, and his mobile communication apparatus automatically creates a new message/thread 704, from the messages 700, 702 of his children.
  • the mobile communication apparatus of the father may automatically detect that the metadata requirements set by the children for their messages 700, 702 are met before the new message/thread 704 is created.
  • the shopping list of the father 704 is the combination of the shopping lists 700, 702 of his children.
  • Figure 8 illustrates a further embodiment of the mobile communication apparatus.
  • the other data 130 stored in the memory 108 may be data 800 from the user, data 802 from an old message/thread, data 804 from the other mobile communication apparatus(es), or other data already mentioned such as metadata, location data, etc.
  • the generator 102 utilizes the other data 130, inter alia, in order to generate the new message 124 and/or the new thread 126.
  • a feature recognizer 806 may recognize a feature or features from the other data 130.
  • a similarity indicator 808 may evaluate similarity of a feature between two different instances of the other data 130. If the similarity exceeds a similarity threshold 810, a new message 124 or a new thread 126 may be created based on the other data 130 in a creation block 812.
  • An embodiment provides a computer program provided on a carrier and comprising computer executable instructions for causing a mobile communication apparatus 100 to request in a user-initiated fashion through a wireless local ad hoc data transfer connection an old thread from a first mobile communication apparatus; request through a wireless local ad hoc data transfer connection an old message belonging to the old thread from a second mobile communication apparatus; create a new message; compile a new thread dynamically and cumulatively from the old thread and the new message; store the new thread and the new message; transmit through a wireless local ad hoc data transfer connection the new thread to a third mobile communication apparatus on the basis of a request received from the third mobile communication apparatus; and transmit through a wireless local ad hoc data transfer connection the new message to a fourth mobile communication apparatus on the basis of a request received from the fourth mobile communication apparatus.
  • the computer program may be in source code form, object code form, or in some intermediate form, and it may be stored in some sort of carrier, which may be any entity or device capable of carrying the program.
  • carrier include a record medium, computer memory, read-only memory, electrical carrier signal, telecommunications signal, and software distribution package, for example.
  • the computer program may be executed on a single electronic digital computer or it may be distributed amongst a number of computers.
  • the telecommunications interface 106 comprises a short-range wireless transceiver 300 operating without a fixed network infrastructure with the other mobile communication apparatus.
  • the short-range wireless transceiver may operate according to the Bluetooth standard, for example.
  • the short-range wireless transceiver 300 may be used to receive the old thread 120 and the old message 122 from the other mobile communication apparatus, and to transmit the new thread 126 and the new message 124 to the other mobile communication apparatus.
  • the embodiments of the mobile communication apparatus 100 may be implemented on a platform provided by a normal mobile telephone, as it includes all the necessary structural parts, the telecommunications interface 106, the processor 105 and the memory 108.
  • the additional features/parts may easily be implemented on top of the platform with suitable software and hardware components. All modifications and configurations required for implementing a functionality of an embodiment may be performed as routines, which may be implemented as added or updated software routines, application circuits (ASIC) and/or programmable circuits, for example.
  • software routines may be downloaded into an apparatus.
  • the apparatus may be configured as a computer or a microprocessor, such as a single-chip computer element, including at least a memory for providing a storage area to be used for arithmetic operation and an operations processor for executing the arithmetic operation.
  • Figure 6 illustrates how different versions of the thread, each having evolved differently, may be combined.
  • Thread 600 there are two different versions of the thread, 600 and 602.
  • T# ⁇ num> defines the terminal that created the contents. Both threads contain a startup message 610 and a first reply message 612. After that, the threads have evolved differently: thread 600 also contains messages 614, 616, and 618, whereas thread 602 also contains messages 620, 622, and 624.
  • the two branches may be combined into one uniform thread. When a new part (a start-up message or a reply, for example) is added to a thread, a marker containing the contributor's address and the time of contribution is stored into the thread. By using this information, the thread branches are combined so that the replies of the threads are put into order according to the time of contribution. The combined thread is displayed to the user as a single entity and the mobile communication apparatus that performed the combination distributes this combined version of the thread further.
  • the combined thread 604 thus contains the messages 610, 612, 620, 614, 616, 622, 618, and 624, ordered according to their time of contribution.
  • the messages 610, 612, 620, 614, 616, 622, 618, and 624 ordered according to their time of contribution.
  • other rules besides the time of the contribution may be used instead or additionally.
  • Every new thread may be given a unique identifier, UID, which is generated at random.
  • the identifier may be a 32-bit identifier, for example.
  • Threads may be organized based on the identifier by creating a directory c: ⁇ data ⁇ others ⁇ threads ⁇ UID in hexadecimal> where all files belonging to the thread are stored.
  • the possibility that two threads are given the same UID at random is about 0.0000000002 when using the 32-bit identifier, i.e. the possibility that two threads could have the same identifier in any given mobile communication apparatus is minimal.
  • the threads are stored as a straightforward directory structure, managing them does not require any complex functionality.
  • the thread contents may be created by an editor launched from the mobile terminal browser. A thread may be removed using simple file system operations. When a message is contributed into a thread, several pieces of information are stored. Naturally, the contents created by the user constitutes one piece of such information, but, in addition to this, a time stamp and the Bluetooth device address of the message creator may be written into the thread as well. Both of these additional items may be hidden from the user.
  • the contents may also require formatting, and since the contents may be displayed as an XHTML-page, some HTML-tags may be added to the thread as well.
  • the thread processing functionality may be based on client/server requests and replies. The following description gives an example as to how the message flow turns into an XHTML-page that is displayed to the user.
  • the user selects a device from a list of devices shown on the web browser of her/his mobile terminal. This issues a "GET THREADLIST" request to the destination device.
  • the destination device receives the request and generates a list of thread UIDs stored in its memory. It sends the list back to the requesting device. 3.
  • the requesting device receives the reply containing the list of stored thread UIDs.
  • An XHTML-page is generated from the list. After this, a "GET FILELIST" request is performed on each thread and a list of files in a thread is received. This information is used to generate links for the XHTML- page for fetching the files stored in a thread. 4.
  • the XHTML-page containing the list of threads is shown to the user and (s)he selects the one to be examined. The selection issues a "GET ⁇ filename>" request to the destination device, and the destination device sends the file contents as a reply. This request can be issued multiple times, depending on the number of files stored in the thread.
  • the file(s) is received and displayed to the user. These contents are not modified at all, the thread contents are already in XHTML-format upon reception.
  • the thread processing may be implemented as three applications: a server listening for incoming requests (GET THREADLIST, GET FILELIST, GET ⁇ filename>), a client making the requests for the server and receiving responses from the server, and an editor creating new threads and adding messages to the threads.
  • these three applications may be wrapped to a single application to avoid multiple installations.
  • the method relates to thread processing.
  • the method starts in 500 and ends in 516.
  • an old thread is requested in a user-initiated fashion through a wireless local ad hoc data transfer connection from a first mobile communication apparatus.
  • an old message belonging to the old thread is requested through a wireless local ad hoc data transfer connection from a second mobile communication apparatus.
  • a new message is created.
  • a new thread is dynamically and cumulatively compiled from the old thread and the new message.
  • the new thread and the new message are stored.
  • the new thread is transmitted through a wireless local ad hoc data transfer connection to a third mobile communication apparatus on the basis of a request received from the third mobile communication apparatus.
  • the new message is transmitted through a wireless local ad hoc data transfer connection to a fourth mobile communication apparatus on the basis of a request received from the fourth mobile communication apparatus.
  • Figure 4 illustrates the embodiments from the point of view of the user interface.
  • the DTServer application is run in the background.
  • a web browser is started and a web page is opened by using a predetermined bookmark.
  • the web page 402 includes three different items: "New thread”, "Discovery” and "My threads”.
  • the user may create a new thread by entering in a thread title and message contents in a window 404.
  • the thread title is "Free coffee” and the message contents "Downstairs at noon!”.
  • the threads stored in the user's own apparatus may be browsed by selecting the "My threads” link, whereupon a web page 408 is shown with the following threads: “Car for sale”, “Comics”, “Free coffee”, and “Stolen wallet”.
  • Other apparatuses may be browsed by selecting the "Discovery” link, whereupon a web page 406 is shown.
  • there are four other devices “D600”, “DDTEddie”, “DDTGame” and "OULKV1 K738”.
  • a list of threads stored in the selected apparatus is shown on a web page 410: "Winter tyres", “Bridge construction”, and “Fishing spot”.
  • the user may select a thread to view, whereupon that thread 412 is shown.
  • “DDTEddie” started a new thread “Bridge construction” with the start-up message "There's a construction ongoing at highway E4 near Tampere. Traffic jams expected.”.
  • "DDTVincent” has fetched this thread, and adds a reply "Actually it's already done” on a web page 414.
  • the whole thread is shown on a web page 416.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • Computer Hardware Design (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Thread processing in mobile communication apparatus MCA. A telecommunications interface is configured to establish wireless local ad hoc data transfer connections to other MCAs. A processor is configured to request in a user-initiated fashion an old thread from a first MCA, and to request an old message belonging to the old thread from a second MCA. The processor is also configured to compile a new thread dynamically and cumulatively from the old thread and a new message. The processor is also configured to transmit the new thread to a third MCA on the basis of a request received from the third MCA, and to transmit the new message to a fourth MCA on the basis of a request received from the fourth mobile communication apparatus. A generator is configured to create the new message. A memory is configured to store the new thread and the new message.

Description

Thread processing in mobile communication apparatus
Field
The invention relates to thread processing in a mobile communication apparatus.
Background
A thread refers to an electronic discussion. A set of messages may be grouped visually. Such a set may be called a topic thread or simply thread. The messages may be grouped visually in a hierarchy by a topic. Storage of information into threads is known from electronic mail systems or from electronic discussion forums, for example. A person may send a message and another person may reply to it. Threads are processed in a centralized manner, i.e. a server maintains and stores the threads and messages into a database, whereas the clients create them.
Brief description The present invention seeks to provide an improved mobile communication apparatus, an improved method, and an improved computer program.
According to an aspect of the present invention, there is provided a mobile communication apparatus as specified in claim 1 . According to another aspect of the present invention, there is provided a method as specified in claim 7.
According to another aspect of the present invention, there is provided a computer program as specified in claim 8.
According to another aspect of the present invention, there is provided another mobile communication apparatus as specified in claim 9.
List of drawings
Embodiments of the present invention are described below, by way of example only, with reference to the accompanying drawings, in which Figures 1 , 2, and 3 illustrate various embodiments of a mobile communication apparatus;
Figure 4 illustrates embodiments of a user interface;
Figure 5 illustrates a method; Figure 6 illustrates a combination of two threads;
Figure 7 illustrates combination of messages; and
Figure 8 illustrates a further embodiment of the mobile communication apparatus.
Description of embodiments The following embodiments are exemplary. Although the specification may refer to "an" or "one" embodiment(s) in several locations, this does not necessarily mean that each such reference is to the same embodiment(s), or that the feature only applies to a single embodiment. Single features of different embodiments may also be combined to provide other embodiments. The present invention is applicable to any mobile communication apparatus that supports the functionality that will be described in the following. The protocols used, the specifications of communication systems, servers and user terminals, especially in wireless communication, develop rapidly. Such development may require extra changes to an embodiment. Therefore, all words and expressions should be interpreted broadly and they are intended to illustrate, not to restrict, the embodiment.
The figures only show some elements and functional entities, all being logical units whose implementation may differ from what is shown. The connections shown in the figures are logical connections; the actual physical connections may be different. It should be appreciated that the apparatuses may comprise other units. However, they are irrelevant to the actual invention and, therefore, they need not to be discussed in more detail here.
The mobile communication apparatus may also be a user terminal which is a piece of equipment or a device configured to associate the user terminal and its user with a subscription and allows a user to interact with a communications system. The user terminal presents information to the user and allows the user to input information. In other words, the user terminal may be any terminal capable of receiving information from and/or transmitting information to the network, connectable to the network wirelessly.
Figure 1 discloses an embodiment of a mobile communication apparatus (MCA) 100. The mobile communication apparatus 100 may refer to a portable communication device. Such communication devices include wireless mobile communication devices operating with or without a subscriber identification module (SIM), including, but not limited to, the following types of devices: mobile phone, smartphone, personal digital assistant (PDA), other portable communication devices possibly including computer functionalities or functionalities of other data processing devices.
The mobile communication apparatus 100 comprises a telecommunications interface 106 configured to establish wireless local ad hoc data transfer connections to other mobile communication apparatuses 1 10, 1 12, 1 14, 1 16. The wireless connection may be implemented with a wireless transceiver operating according to the GSM (Global System for Mobile Communications), WCDMA (Wideband Code Division Multiple Access), WLAN (Wireless Local Area Network) or Bluetooth® standard, or any other suitable standard/non-standard wireless communication means. The mobile communication apparatus 100 also comprises a processor 104.
The processor 104 may be implemented as an electronic digital computer, which may comprise a working memory (RAM), a central processing unit (CPU), and a system clock. The CPU may comprise a set of registers, an arithmetic logic unit, and a control unit. The control unit is controlled by a sequence of program instructions transferred to the CPU from the RAM. The control unit may contain a number of microinstructions for basic operations. The implementation of such microinstructions may vary, depending on the CPU design. The program instructions may be coded by a programming language, which may be a high-level programming language, such as C, Java, etc., or a low-level programming language, such as a machine language, or an assembler. The electronic digital computer may also have an operating system, which may provide system services to a computer program written with the program instructions.
The processor 104 may also be implemented as one or more integrated circuits, such as application-specific integrated circuits ASIC. Other hardware embodiments are also feasible, such as a circuit built of separate logic components. A hybrid of these different implementations is also feasible. When selecting the method of implementation, a person skilled in the art will consider the requirements set for the size and power consumption of the apparatus 100, necessary processing capacity, production costs, and production volumes, for example.
The processor 104 is configured to perform various stages of a thread processing procedure as described next. A thread comprises messages (old/new), and the (old/new) message may comprise textual data, multimedia data, visual data, audio data, and/or metadata. An example: a group of friends goes to a rock concert. They record video clips with their mobile phones from the performance. They may also shoot photographs, record the audio, write reviews, etc. One person starts a new thread with a start-up message containing his/her video clip. Other people add their video clips, photographs, audio recordings, reviews, etc. as additional messages to the thread. The thread thus constitutes a multimedia collage of the performance.
Metadata may be created automatically. Metadata may be location data created by a GPS (Global Positioning System) receiver, for example. Metadata may also be other context data, and it may be created by various sensors (a temperature sensor, for example) of the mobile communication apparatus 100.
Naturally, such thread processing may be used for other recreational uses as well. People may use it for various types of communication, as it enables storage and presentation of information in the form of threads, even without a network infrastructure. Threads may freely spread among the users. Threads may evolve in an organic fashion, i.e. there may exist numerous different versions of one thread, as they may have spread over a large geographical area or to varying demographic groups of people, for example.
Another use case of thread processing is to use it for information distribution in crisis areas, where no communication network infrastructure may exist or it has been destroyed. Relief action personnel may use the threads in disaster areas for communication, in an earthquake area, for example.
The processor 104 is configured to request in a user-initiated fashion through the telecommunications interface 106 an old thread 120 from a first mobile communication apparatus 1 10. The processor 104 is configured to request through the telecommunications interface 106 an old message 122 belonging to the old thread 120 from a second mobile communication apparatus 1 12.
The processor 104 is configured to compile a new thread 126 dynamically and cumulatively from the old thread 120, and a new message 124.
The processor 104 is configured to transmit through the telecommunications interface 106 the new thread 126 to a third mobile communication apparatus 1 14 on the basis of a request 132 received from the third mobile communication apparatus 1 14. The processor 104 is configured to transmit through the telecommunications interface 106 the new message 124 to a fourth mobile communication apparatus 1 16 on the basis of a request 134 received from the fourth mobile communication apparatus 1 16.
The mobile communication apparatus 100 also comprises a generator 102 configured to create the new message 124, and a memory 107 configured to store the new thread 126 and the new message 124.
In summary, the described thread processing starts with an old thread 120 obtained from the first and second mobile communication apparatus 1 10, 1 12. The new thread 126 is distributed to the third mobile communication apparatus 1 14. The third mobile communication apparatus 1 14 has passed the new thread 126 to the fourth mobile communication apparatus 1 16, which requests the new message 124 belonging to the new thread 126 from the mobile communication apparatus 100 that created the new message 124.
In an embodiment, illustrated in Figure 2, the generator 102 further comprises a user interface 200 configured to create the new message 124. As illustrated in Figure 2, a user 202 may use the user interface 200 to view the old thread 120 and the old message 122, and to manipulate the new thread
126 and the new message 124.
In an embodiment, illustrated partly in Figure 1 , the memory 108 is further configured to store other data 130, and the generator 102 is further configured to recognize a predetermined feature from the old message 122, and to create the new message 124 from a portion of the other data 130 having a feature similar to the predetermined feature. The predetermined feature may be a feature relating to metadata of the old message 122, and/or a feature relating to the contents of the old message 122, for example. Figure 7 illustrates combination of messages. Two family members, a daughter and a boy, have each prepared a shopping list 700, 702: the daughter wants one kilogram of apples, and the boy wants a new bicycle. Each of these messages 700, 702 also comprises other data, in this case metadata. The metadata relates to a context that these members of the family have defined for the shopping list. The context is defined as "after work" and "when at the mall". The metadata may be defined automatically or by a user operation. A third family member, father, arrives at the mall after his work, and his mobile communication apparatus automatically creates a new message/thread 704, from the messages 700, 702 of his children. The mobile communication apparatus of the father may automatically detect that the metadata requirements set by the children for their messages 700, 702 are met before the new message/thread 704 is created. The shopping list of the father 704 is the combination of the shopping lists 700, 702 of his children.
Figure 8 illustrates a further embodiment of the mobile communication apparatus. The other data 130 stored in the memory 108 may be data 800 from the user, data 802 from an old message/thread, data 804 from the other mobile communication apparatus(es), or other data already mentioned such as metadata, location data, etc. The generator 102 utilizes the other data 130, inter alia, in order to generate the new message 124 and/or the new thread 126. A feature recognizer 806 may recognize a feature or features from the other data 130. A similarity indicator 808 may evaluate similarity of a feature between two different instances of the other data 130. If the similarity exceeds a similarity threshold 810, a new message 124 or a new thread 126 may be created based on the other data 130 in a creation block 812.
An embodiment provides a computer program provided on a carrier and comprising computer executable instructions for causing a mobile communication apparatus 100 to request in a user-initiated fashion through a wireless local ad hoc data transfer connection an old thread from a first mobile communication apparatus; request through a wireless local ad hoc data transfer connection an old message belonging to the old thread from a second mobile communication apparatus; create a new message; compile a new thread dynamically and cumulatively from the old thread and the new message; store the new thread and the new message; transmit through a wireless local ad hoc data transfer connection the new thread to a third mobile communication apparatus on the basis of a request received from the third mobile communication apparatus; and transmit through a wireless local ad hoc data transfer connection the new message to a fourth mobile communication apparatus on the basis of a request received from the fourth mobile communication apparatus.
The computer program may be in source code form, object code form, or in some intermediate form, and it may be stored in some sort of carrier, which may be any entity or device capable of carrying the program. Such carriers include a record medium, computer memory, read-only memory, electrical carrier signal, telecommunications signal, and software distribution package, for example. Depending on the processing power needed, the computer program may be executed on a single electronic digital computer or it may be distributed amongst a number of computers.
In an embodiment, illustrated in Figure 3, the telecommunications interface 106 comprises a short-range wireless transceiver 300 operating without a fixed network infrastructure with the other mobile communication apparatus. The short-range wireless transceiver may operate according to the Bluetooth standard, for example. As exemplified in Figure 3, the short-range wireless transceiver 300 may be used to receive the old thread 120 and the old message 122 from the other mobile communication apparatus, and to transmit the new thread 126 and the new message 124 to the other mobile communication apparatus.
The embodiments of the mobile communication apparatus 100 may be implemented on a platform provided by a normal mobile telephone, as it includes all the necessary structural parts, the telecommunications interface 106, the processor 105 and the memory 108. The additional features/parts may easily be implemented on top of the platform with suitable software and hardware components. All modifications and configurations required for implementing a functionality of an embodiment may be performed as routines, which may be implemented as added or updated software routines, application circuits (ASIC) and/or programmable circuits, for example. Furthermore, software routines may be downloaded into an apparatus. The apparatus may be configured as a computer or a microprocessor, such as a single-chip computer element, including at least a memory for providing a storage area to be used for arithmetic operation and an operations processor for executing the arithmetic operation.
Figure 6 illustrates how different versions of the thread, each having evolved differently, may be combined. When such dynamic threads are distributed freely, it is possible that two or more branches of a same thread arrive at the same mobile communication apparatus after circulating in different environments for some time. During this time they receive different replies and the thread has two parallel tails.
In Figure 6, there are two different versions of the thread, 600 and 602. T#<num> defines the terminal that created the contents. Both threads contain a startup message 610 and a first reply message 612. After that, the threads have evolved differently: thread 600 also contains messages 614, 616, and 618, whereas thread 602 also contains messages 620, 622, and 624. The two branches may be combined into one uniform thread. When a new part (a start-up message or a reply, for example) is added to a thread, a marker containing the contributor's address and the time of contribution is stored into the thread. By using this information, the thread branches are combined so that the replies of the threads are put into order according to the time of contribution. The combined thread is displayed to the user as a single entity and the mobile communication apparatus that performed the combination distributes this combined version of the thread further.
In Figure 6, the combined thread 604 thus contains the messages 610, 612, 620, 614, 616, 622, 618, and 624, ordered according to their time of contribution. Naturally, also other rules besides the time of the contribution may be used instead or additionally.
Every new thread may be given a unique identifier, UID, which is generated at random. The identifier may be a 32-bit identifier, for example. Threads may be organized based on the identifier by creating a directory c:\data\others\threads\<UID in hexadecimal> where all files belonging to the thread are stored. The possibility that two threads are given the same UID at random is about 0.0000000002 when using the 32-bit identifier, i.e. the possibility that two threads could have the same identifier in any given mobile communication apparatus is minimal.
Since the threads are stored as a straightforward directory structure, managing them does not require any complex functionality. The thread contents may be created by an editor launched from the mobile terminal browser. A thread may be removed using simple file system operations. When a message is contributed into a thread, several pieces of information are stored. Naturally, the contents created by the user constitutes one piece of such information, but, in addition to this, a time stamp and the Bluetooth device address of the message creator may be written into the thread as well. Both of these additional items may be hidden from the user. The contents may also require formatting, and since the contents may be displayed as an XHTML-page, some HTML-tags may be added to the thread as well. The thread processing functionality may be based on client/server requests and replies. The following description gives an example as to how the message flow turns into an XHTML-page that is displayed to the user.
1. The user selects a device from a list of devices shown on the web browser of her/his mobile terminal. This issues a "GET THREADLIST" request to the destination device.
2. The destination device receives the request and generates a list of thread UIDs stored in its memory. It sends the list back to the requesting device. 3. The requesting device receives the reply containing the list of stored thread UIDs. An XHTML-page is generated from the list. After this, a "GET FILELIST" request is performed on each thread and a list of files in a thread is received. This information is used to generate links for the XHTML- page for fetching the files stored in a thread. 4. The XHTML-page containing the list of threads is shown to the user and (s)he selects the one to be examined. The selection issues a "GET <filename>" request to the destination device, and the destination device sends the file contents as a reply. This request can be issued multiple times, depending on the number of files stored in the thread. The file(s) is received and displayed to the user. These contents are not modified at all, the thread contents are already in XHTML-format upon reception.
The thread processing may be implemented as three applications: a server listening for incoming requests (GET THREADLIST, GET FILELIST, GET <filename>), a client making the requests for the server and receiving responses from the server, and an editor creating new threads and adding messages to the threads. Naturally, these three applications may be wrapped to a single application to avoid multiple installations.
Next, a method will be described with reference to Figure 5. The method relates to thread processing. The method starts in 500 and ends in 516.
The operations described in Figure 5 are in no absolute chronological order, and some of the operations may be performed simultaneously or in an order different from the given one. Other operations may also be executed between the operations or within the operations.
In 502, an old thread is requested in a user-initiated fashion through a wireless local ad hoc data transfer connection from a first mobile communication apparatus.
In 504, an old message belonging to the old thread is requested through a wireless local ad hoc data transfer connection from a second mobile communication apparatus.
In 506, a new message is created. In 508, a new thread is dynamically and cumulatively compiled from the old thread and the new message.
In 510, the new thread and the new message are stored.
In 512, the new thread is transmitted through a wireless local ad hoc data transfer connection to a third mobile communication apparatus on the basis of a request received from the third mobile communication apparatus.
In 514, the new message is transmitted through a wireless local ad hoc data transfer connection to a fourth mobile communication apparatus on the basis of a request received from the fourth mobile communication apparatus. Figure 4 illustrates the embodiments from the point of view of the user interface.
A DTServer (DT = Dynamic Thread) application 400 is started, which enables thread distribution. The DTServer application is run in the background. Next, a web browser is started and a web page is opened by using a predetermined bookmark. The web page 402 includes three different items: "New thread", "Discovery" and "My threads".
By selecting the "New thread", the user may create a new thread by entering in a thread title and message contents in a window 404. In our example, the thread title is "Free coffee" and the message contents "Downstairs at noon!". The threads stored in the user's own apparatus may be browsed by selecting the "My threads" link, whereupon a web page 408 is shown with the following threads: "Car for sale", "Comics", "Free coffee", and "Stolen wallet". Other apparatuses may be browsed by selecting the "Discovery" link, whereupon a web page 406 is shown. As can be seen, there are four other devices "D600", "DDTEddie", "DDTGame" and "OULKV1 K738". A list of threads stored in the selected apparatus is shown on a web page 410: "Winter tyres", "Bridge construction", and "Fishing spot". The user may select a thread to view, whereupon that thread 412 is shown. In our simple example, "DDTEddie" started a new thread "Bridge construction" with the start-up message "There's a construction ongoing at highway E4 near Tampere. Traffic jams expected.". "DDTVincent" has fetched this thread, and adds a reply "Actually it's already done" on a web page 414. The whole thread is shown on a web page 416. It will be obvious to a person skilled in the art that as technology advances, the inventive concept can be implemented in various ways. The invention and its embodiments are not limited to the examples described above but may vary within the scope of the claims.

Claims

Claims
1. A mobile communication apparatus comprising: a telecommunications interface configured to establish wireless local ad hoc data transfer connections to other mobile communication apparatuses; a processor configured to request in a user-initiated fashion through the telecommunications interface an old thread from a first mobile communication apparatus, to request through the telecommunications interface an old message belonging to the old thread from a second mobile communication apparatus, to compile a new thread dynamically and cumulatively from the old thread and a new message, to transmit through the telecommunications interface the new thread to a third mobile communication apparatus on the basis of a request received from the third mobile communication apparatus, and to transmit through the telecommunications interface the new message to a fourth mobile communication apparatus on the basis of a request received from the fourth mobile communication apparatus; a generator configured to create the new message; and a memory configured to store the new thread and the new message.
2. The mobile communication apparatus of claim 1 , wherein the generator further comprises a user interface configured to create the new message.
3. The mobile communication apparatus of any preceding claim, wherein the memory is further configured to store other data, and the generator is further configured to recognize a predetermined feature from the old message, and to create the new message from a portion of the other data having a feature similar to the predetermined feature.
4. The mobile communication apparatus of claim 3, wherein the predetermined feature comprises a feature relating to metadata of the old message, and/or a feature relating to contents of the old message.
5. The mobile communication apparatus of any preceding claim, wherein the message comprises textual data, multimedia data, visual data, audio data, and/or metadata.
6. The mobile communication apparatus of any preceding claim, wherein the telecommunications interface comprises a short-range wireless transceiver operating without a fixed network infrastructure with the other mobile communication apparatus.
7. A method comprising: requesting in a user-initiated fashion through a wireless local ad hoc data transfer connection an old thread from a first mobile communication apparatus; requesting through a wireless local ad hoc data transfer connection an old message belonging to the old thread from a second mobile communication apparatus; creating a new message; compiling a new thread dynamically and cumulatively from the old thread and the new message; storing the new thread and the new message; transmitting through a wireless local ad hoc data transfer connection the new thread to a third mobile communication apparatus on the basis of a request received from the third mobile communication apparatus; and transmitting through a wireless local ad hoc data transfer connection the new message to a fourth mobile communication apparatus on the basis of a request received from the fourth mobile communication apparatus.
8. A computer program provided on a carrier and comprising computer executable instructions for causing a mobile communication apparatus to: request in a user-initiated fashion through a wireless local ad hoc data transfer connection an old thread from a first mobile communication apparatus; request through a wireless local ad hoc data transfer connection an old message belonging to the old thread from a second mobile communication apparatus; create a new message; compile a new thread dynamically and cumulatively from the old thread and the new message; store the new thread and the new message; transmit through a wireless local ad hoc data transfer connection the new thread to a third mobile communication apparatus on the basis of a request received from the third mobile communication apparatus; and transmit through a wireless local ad hoc data transfer connection the new message to a fourth mobile communication apparatus on the basis of a request received from the fourth mobile communication apparatus.
9. A mobile communication apparatus comprising: means for requesting in a user-initiated fashion through a wireless local ad hoc data transfer connection an old thread from a first mobile communication apparatus; means for requesting through a wireless local ad hoc data transfer connection an old message belonging to the old thread from a second mobile communication apparatus; means for creating a new message; means for compiling a new thread dynamically and cumulatively from the old thread and the new message; means for storing the new thread and the new message; means for transmitting through a wireless local ad hoc data transfer connection the new thread to a third mobile communication apparatus on the basis of a request received from the third mobile communication apparatus; and means for transmitting through a wireless local ad hoc data transfer connection the new message to a fourth mobile communication apparatus on the basis of a request received from the fourth mobile communication apparatus.
PCT/FI2009/050462 2008-06-02 2009-06-01 Thread processing in mobile communication apparatus WO2009147295A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20085535 2008-06-02
FI20085535A FI20085535A0 (en) 2008-06-02 2008-06-02 Wire processing in a mobile communication device

Publications (1)

Publication Number Publication Date
WO2009147295A1 true WO2009147295A1 (en) 2009-12-10

Family

ID=39589301

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FI2009/050462 WO2009147295A1 (en) 2008-06-02 2009-06-01 Thread processing in mobile communication apparatus

Country Status (2)

Country Link
FI (1) FI20085535A0 (en)
WO (1) WO2009147295A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2434705A1 (en) * 2010-09-24 2012-03-28 Research In Motion Limited System and method for breaking up a message thread when replying or forwarding a message
US8930468B2 (en) 2010-09-24 2015-01-06 Blackberry Limited System and method for breaking up a message thread when replying or forwarding a message

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050149621A1 (en) * 2004-01-07 2005-07-07 International Business Machines Corporation Method and interface for multi-threaded conversations in instant messaging
JP2006287308A (en) * 2005-03-31 2006-10-19 Railway Technical Res Inst Program and storage medium
US20060239221A1 (en) * 2005-04-25 2006-10-26 Burns Anthony G Storing, sending and receiving text message threads on a wireless communication device
US20060271630A1 (en) * 2005-02-01 2006-11-30 Andrew Bensky Thread identification and classification
US20070150512A1 (en) * 2005-12-15 2007-06-28 Microsoft Corporation Collaborative meeting assistant
WO2008030967A2 (en) * 2006-09-08 2008-03-13 Palm, Inc. Apparatus and methods for providing enhanced mobile messaging services

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050149621A1 (en) * 2004-01-07 2005-07-07 International Business Machines Corporation Method and interface for multi-threaded conversations in instant messaging
US20060271630A1 (en) * 2005-02-01 2006-11-30 Andrew Bensky Thread identification and classification
JP2006287308A (en) * 2005-03-31 2006-10-19 Railway Technical Res Inst Program and storage medium
US20060239221A1 (en) * 2005-04-25 2006-10-26 Burns Anthony G Storing, sending and receiving text message threads on a wireless communication device
US20070150512A1 (en) * 2005-12-15 2007-06-28 Microsoft Corporation Collaborative meeting assistant
WO2008030967A2 (en) * 2006-09-08 2008-03-13 Palm, Inc. Apparatus and methods for providing enhanced mobile messaging services

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2434705A1 (en) * 2010-09-24 2012-03-28 Research In Motion Limited System and method for breaking up a message thread when replying or forwarding a message
US8930468B2 (en) 2010-09-24 2015-01-06 Blackberry Limited System and method for breaking up a message thread when replying or forwarding a message
US9628421B2 (en) 2010-09-24 2017-04-18 Blackberry Limited System and method for breaking up a message thread when replying or forwarding a message

Also Published As

Publication number Publication date
FI20085535A0 (en) 2008-06-02

Similar Documents

Publication Publication Date Title
CN104965848B (en) A kind of front end resource loading method and device
CN102981915B (en) A kind of inter-application communication method and device
US20120096366A1 (en) Technique for handling urls for different mobile devices that use different user interface platforms
WO2006133344A2 (en) Prefetching content based on a mobile user profile
WO2006133345A2 (en) Providing relevant non-requested content to a mobile device
CN102902531A (en) Customization and generation method and device of Android application program
CN105808725A (en) Method and apparatus for processing application information
WO2016000507A1 (en) Traffic-saving mode search service method, server, client and system
CN103034546B (en) The method and device of inter-application communication in iOS system
US9792381B2 (en) Method and apparatus for a paged update protocol
CA2710037C (en) A method and system for authoring mobile content in a slideshow or presentation application for direct delivery to a mobile device
CN101296201B (en) Network information sharing method, system and instant communication device
CN102831250B (en) Contact person information search system and method
CN110086848A (en) Sending method, device, computer equipment and the storage medium of network request
WO2009147295A1 (en) Thread processing in mobile communication apparatus
US20090024664A1 (en) Method and system for generating a content-based file, and content-based data structure
US20060150152A1 (en) System and method for providing mobile publishing and searching directly from terminals
US9521195B1 (en) Wireless content loading
JP4784892B2 (en) Site link system, site management server, and site link method
Liu et al. Realizing an open ubiquitous environment in a restful way
Xia et al. General platform of location based services in ubiquitous environment
US20140324815A1 (en) Search infrastructure representing hosting client devices
EP2103084A1 (en) An intelligent system of unified content posting
EP2089822B1 (en) System and process for identifying addresses in a distributed data network
US20140317235A1 (en) Method, System and Program Product for Transmitting Software and Information Services

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: 09757673

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: 09757673

Country of ref document: EP

Kind code of ref document: A1