WO2005036802A2

Group intercom, delayed playback, and ad-hoc based communications system and method

Abstract

An ad hoc wireless communications system and method permits a group of wireless portable communications devices to communicate with each other. The ad hoc network has security systems. A server for the ad hoc network is selected from among the portable communications devices associated with the ad hoc network.

WO2005036802A2, drawing sheet 1
Sheet 1 of 8

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Published
  4. Today

5 claims: 1 independent, 4 dependent

  1. 1
    CLAIMS:1. An ad hoc wireless communications system, comprising: one or more personal communications devices that form an ad hoc wireless communications network;each personal communications device further comprising: a processor;a plurality of modules, each module having a plurality of computer instructions executed by the processor to implement the ad hoc wireless communications network, wherein the plurality of modules further comprise a graphical user interface module that generate a user interface and a library that generates a globally unique identifier for the personal communications device;and a server for the ad hoc wireless communication network that is selected from the one or more personal communications devices based on the personal communications device with the largest globally unique identifier.
  2. 2
    The system of Claim 1 , wherein the plurality of modules further comprises , a . session manager that controls the overall functions of the personal communications device, a location manager, controlled by the session manager, that tracks the location of each other personal communications device that communicates with the personal communications device, a. sound manager, controlled by the session manager, that generates the audio/sound data associated with the personal communications device and includes a sound codec, and a communications manager, controlled by the session manager, that controls the IP traffic and protocols.
  3. 3
    The system of Claim 2, wherein the plurality of modules further comprise a group manager that permits each personal communications device to create at least one group of one or more other personal communications devices having a group globally unique identifier generated by the library wherein a message may be broadcast to the one or more personal communications devices that are part of a particular group.
  4. 4
    The system of Claim 3, wherein the group manager creates a hierarchically arranged set of groups wherein each group has a precedence with respect to another group in order to determine which group broadcast message takes precedence over another group broadcast message.
  5. 5
    Tlie system of Claim 1, wherein the session manager further comprises a security module to respond to a denial of service attack from another personal communications device. 6. A method for ad hoc wireless communications between one or more personal communications devices that form an ad hoc wireless communications network, the method comprising:providing at least two personal communications device, each device further comprising a processor and a plurality of modules, each module having a plurality of computer instructions executed by the processor to implement the ad hoc wireless communications network, wherein the plurality of modules further comprise a graphical user interface module that generate a user interface;generating a globally unique identifier for each personal communications device;and selecting a personal communications device to act as a server for the ad hoc wireless communications network wherein the personal communications device with a largest globally unique identifier is selected as the server. 7. The method of Claim 6 further comprising creating, at each personal communications device, a group of one or more other personal communications devices having a group globally unique identifier generated by the library;and broadcasting a message to the group of one or more other personal communications devices. 8. The method of Claim 7 further comprising creating at least two groups of one or more other personal communications devices and establishing a precedence between the at least two groups in order to determine which group broadcast message takes precedence over another group broadcast message. 9. The method of Claim 8, wherein the establishing the precedence further comprises retrieving a user defined precedence relationship of the group of devices, the user defined precedence relationship establishing that a communication session of a first group has priority over a communications session of a second group and that the communication session of the second group has priority over a communications session of a third group, and automatically determining an implied precedence relationship of the group of devices, the implied precedence relationship establishing that the communications session of the first group has priority over a communications session of a third group based on the previous priority of the communications session of the first group over the communications session of the second group and the previous priority of the communication session of the second group over the communications session of the third group. 10. The method of Claim 9, wherein the determining step further comprising utilizing a transitive closure process to determine the implied precedence relationship. 11. The method of Claim 9, wherein retrieving the user defined precedence relationships further comprise identifying a precedence loop in the user defined precedence, the precedence loop occurs when a precedence of a group relative to another group is not clearly defined by the user defined preferences and disabling the precedence relationships forming the precedence loop. 12. The method of Claim 11, wherein the retrieving further comprises reactivating the precedence relationships in the precedence loop at a later time when the precedence loop is no longer present in the user defined precedences. . 13. The method of Claim 6, wherein selecting the server further comprises generating a new server identifier for the selected personal communications device that is communicated to the other personal communications devices in the wireless communications network. 14. The method of Claim 13, wherein the identifier further comprises a globally unique random number identifier. 15. The method of Claim 6 further comprising selecting a new server when the currently selected server is no longer part of the wireless communications network. 16. The method of Claim 6 further comprising periodically selecting a new server for the wireless communications network. 17. The method of Claim 16, wherein the periodically selecting a new server further comprises generating a new identifier for each personal communications device prior to selecting a new server. 18. The method of Claim 6 further comprising providing security for the ad hoc wireless communications network to a denial of service attack, the security providing further comprising identifying a problem with a particular communication session associated with a particular personal communications device;excluding the particular communications session from the wireless communications network;determining if the problem associated with the particular communications sessions has exceeded a problem threshold;and escalating, if the problem associated with the particular communications sessions has exceeded a problem threshold, the exclusion of the particular communications session. 19. The method of Claim 18, wherein the problem threshold further comprises one of a greater than two minute problem duration and the particular communications session has been reinstated more than three times for the same problem. 20. The method of Claim 18, wherein the escalation step further comprises excluding a symphone process identification associated with the particular communication session. 21. The method of Claim 20, wherein the escalation step further comprises excluding, if the exclusion of the symphone process identification exceeds the problem threshold, an ff address identifier associated with the symphone process identification and the particular communication session. 22. The method of Claim 21 , wherein the escalation step further comprises excluding, if the exclusion of the ff address identifier exceeds the problem threshold, a personal communications device identifier associated with the ff address identifier, the symphone process identification and the particular communication session. 23. A method for escalating a problem with a personal communications device in a wireless communications network, each personal communications device having at least one communications session associated therewith, at least one process associated therewith, at least one ff address associated therewith and at least one personal communications device identification associated therewith, the method comprising: identifying a problem with a particular communication session associated with a particular personal communications device;excluding the particular communications session from the wireless communications network;deteπnining if the problem associated with the particular communications sessions has exceeded a problem threshold;and escalating, if the problem associated with the particular communications. sessions has exceeded a problem threshold, the exclusion of the particular communications session. 24. The method of Claim 23, wherein the problem threshold further comprises one of a greater than two minute problem duration and the particular communications session has been reinstated more than three times for the same problem. 25. The method of Claim 23, wherein the escalation step further comprises excluding a symphone process identification associated with the particular communication session. 26. The method of Claim 25, wherein the escalation step further comprises excluding, if the exclusion of the symphone process identification exceeds the problem threshold, an ff address identifier associated with the symphone process identification and the particular communication session. 27. The method of Claim 26, wherein the escalation step further comprises excluding, if the exclusion of the ff address identifier exceeds the problem threshold, a personal communications device identifier associated with the ff address identifier, the symphone process identification and the particular communication session. 28. A method for excluding a personal communications device from the wireless communications network, the method comprising: gathering problem escalation information from each personal communications device in the wireless communications network, the problem escalation information indicating a personal communications device that is disruptive towards the wireless communications network;and determining to exclude a personal communications device from the wireless communications network based on the gathered problem escalation information wherein the excluded personal communications device is unable to participate in the communications between the other personal communications devices. 29. The method of Claim 28, wherein the gathering step further comprises gathering user feedback regarding the exclusion of a particular personal communications device. 30. A method for determining a server within a wireless communications network, the method comprising: determining an identifier for each personal communications device that is part of the wireless communications network;selecting a largest value identifier from the identifiers for the personal communications devices;selecting the personal communications device with the largest identifier as the new server for the wireless communications network;and generating a new server identifier for the selected personal communications device that is communicated to the other personal communications devices in the wireless communications network. 31. The method of Claim' 30, wherein the identifier further comprises a globally unique random number identifier. 32. , The method of Claim 30 further comprising repeating the steps when the selected server is no longer part of the wireless communications network. 33. The method of Claim 30 further comprising periodically selecting a new server for the wireless communications network. 34. The method of Claim 33, wherein the periodically selecting a new server further comprises generating a new identifier for each personal communications device prior to selecting a new server. 35. The method of Claim 30 further comprising generating a new identifier for each personal communications device prior to selecting a new server. 36. The method of Claim 35, wherein the identifier further comprises a globally unique random number identifier. 37. A method for determining the precedence for a device in an wireless communications system having one or more groups of devices that communicate with each other, the method comprising: retrieving a user defined precedence relationship of the group of devices, the user defined precedence relationship establishing that a communication session of a first group has priority over a communications session of a second group and that the communication session of the second group has priority over a communications session of a third group;and automatically determining an implied precedence relationship of the group of devices, the implied precedence relationship establishing that the communications session of the first group has priority over a communications session of a third group based on the previous priority of the communications session of the first group over the communications session of the second group and the previous priority of the communication session of the second group over the communications session of the third group. 38. The method of Claim 37, wherein the determining step further comprising utilizing a transitive closure process to determine the implied precedence relationship. 39. The method of Claim 37, wherein retrieving the user defined precedence relationships further comprise identifying a precedence loop in the user defined precedence, the precedence loop occurs when a precedence of a group relative to another group is not clearly defined by the user defined preferences and disabling the precedence relationships forming the precedence loop. 40. The method of Claim 39, wherein the retrieving further comprises reactivating the precedence relationships in the precedence loop at a later time when the precedence loop is no longer present in the user defined precedences.