Patent Description:
Electronic messaging systems may utilize communication networks, including but not limited to the internet, to connect communication systems and communication devices such as computers, tablet computers, and/or smartphones. Messaging systems may permit communication systems to share text-based messages, files, visual imagery, and audio data with other communication systems. However, messaging systems may not provide customizable chat system interfaces and may prevent messaging system users from incorporating and storing non-chat functionalities in chat interface templates.

<CIT> discloses a system and method for creating virtual areas for realtime communications. Some examples provide for creating a virtual area for a set of communicants and provisioning those communicants for realtime communications in the virtual area. Some examples provide for a user to wrap a realtime communications framework around a network service.

According to a first aspect of the invention, there is provided a system according to appended claim <NUM>. According to a second aspect of the invention, there is provided a method according to appended claim <NUM>. Preferable features of the invention are defined in the appended dependent claims.

The following presents a simplified summary of the disclosure in order to provide a basic understanding to the reader. This summary is not an extensive overview of the disclosure and it does not identify key/critical elements of the invention or delineate the scope of the invention. Its sole purpose is to present some concepts disclosed herein in a simplified form as a prelude to more detailed descriptions presented below.

In embodiments of the disclosed subject matter, the unique systems and methods described herein make use of an exemplary system and method to create and share customizable chat spaces. Embodiments of the disclosed subject matter include two or more communication devices, including but not limited to tablet computers or smartphones, and a computer coupled with a database and comprising a processor and memory. The computer generates a customizable communication space, comprising one or more customized chat spaces, and transmits requests to join the customizable communication space to the two or more communication devices. The computer stores in memory identification information for each of the two or more communication devices.

In embodiments of the disclosed subject matter, the computer configures, in response to instructions transmitted by one of the two or more communication devices, a customized chat space. The computer transmits the customized chat space to the two or more communication devices and stores in the computer memory communications transmitted by the communication devices within the customized chat space.

These and other features of the disclosed subject matter are described in greater detail below.

A more complete understanding of the present invention may be derived by referring to the detailed description when considered in connection with the following illustrative figures. In the figures, like reference numbers refer to like elements or acts throughout the figures.

Aspects and applications of the invention presented herein are described below in the drawings and detailed description of the invention. Unless specifically noted, it is intended that the words and phrases in the specification and the claims be given their plain, ordinary, and accustomed meaning to those of ordinary skill in the applicable arts.

In the following description, and for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the various aspects of the invention. It will be understood, however, by those skilled in the relevant arts, that the present invention may be practiced without these specific details. In other instances, known structures and devices are shown or discussed more generally in order to avoid obscuring the invention. In many cases, a description of the operation is sufficient to enable one to implement the various forms of the invention, particularly when the operation is to be implemented in software. It should be noted that there are many different and alternative configurations, devices and technologies to which the disclosed inventions may be applied. The full scope of the inventions is not limited to the examples that are described below.

As described more fully below, embodiments of the following disclosure relate to creating and sharing chat spaces within chat-based communication networks. Embodiments of the following disclosure generate a communication space that includes a plurality of communication systems, each comprising one or more user communication devices. Embodiments of the communication space allow the communication systems to create one or more chat spaces within the communication space. The chat spaces may feature customizable behavior or functionality, such as calendar or current weather functionality, as described in greater detail below. Embodiments permit one or more communication systems to search for and participate in one or more chat spaces within the communication space.

Embodiments of the following disclosure allow users to create and share customizable chat spaces in one-to-one, many-to-many, and one-to-many/many-to-one communication configurations.

<FIG> illustrates exemplary communication network <NUM>, according to a first embodiment. Communication network <NUM> comprises one or more cloud systems <NUM>, one or more communication systems <NUM>, network <NUM>, communication links <NUM>-<NUM>, and communication space <NUM>. Although one or more cloud systems <NUM>, communication systems 120a-<NUM>, single network <NUM>, communication links <NUM>-<NUM>, and communication space <NUM> are shown and described, embodiments contemplate any number of cloud systems <NUM>, communication systems <NUM>, networks <NUM>, communication links <NUM>-<NUM>, and/or communication space <NUM>, according to particular needs.

In one embodiment, cloud system <NUM> comprises administrator <NUM> and database <NUM>. Administrator <NUM> is programmed to generate communication space <NUM> in which one or more communication systems <NUM> may participate. Administrator <NUM> is also programmed to generate, at the request of one or more participating communication systems <NUM>, one or more customizable chat spaces <NUM> within communication space <NUM>, illustrated in <FIG> as chat spaces 162a-162n. Administrator <NUM> may make one or more chat spaces <NUM> available to other communication systems <NUM> participating in communication space <NUM>. Database <NUM> comprises one or more databases <NUM> or other data storage arrangements at one or more locations local to, or remote from, cloud system <NUM>. In one embodiment, one or more databases <NUM> is coupled with the one or more administrators <NUM> using one or more local area networks (LANs), metropolitan area networks (MANs), wide area networks (WANs), or aforementioned network <NUM>, such as, for example, the Internet, or any other appropriate wire line, wireless link, or any other communication links <NUM>-<NUM>. One or more databases <NUM> store data that is made available to and may be used by one or more administrators <NUM> according to the operation of communication network <NUM> described herein. According to embodiments, administrator <NUM> hosts and runs one or more runtime processes associated with cloud system <NUM>.

According to embodiments, each of one or more communication systems <NUM> comprises one or more users such as, for example, an individual person or customer, one or more employees or teams of employees within a business, or any other individual, person, group of persons, business, or enterprise which communicates or otherwise interacts with one or more separate communication systems <NUM>. Although an exemplary number of communication systems <NUM> are shown and described, embodiments contemplate any number of communication systems <NUM> interacting with network <NUM> and one or more cloud systems <NUM> according to particular needs.

Each of one or more communication systems <NUM> comprises one or more communication devices, such as, for example, cellular phones or smartphones, desktop computers, laptop computers, notebook computers, tablet-type devices, terminals, or any other communication device capable of receiving, transmitting, and displaying visual information through network <NUM>. In an embodiment, each of the one or more communication devices may comprise an audiovisual recording device, such as a camera and microphone, and an audiovisual display device, such as an electronic display screen and one or more speakers. In addition, each of the one or more communication devices may comprise an input device, such as a keyboard, mouse, or touchscreen.

Each of the one or more communication devices may comprise a processor, memory and data storage. The processor may execute an operating system program stored in memory to control the overall operation of the one or more communication devices associated with each of one or more communication systems <NUM>. For example, the processor may control the reception of signals and the transmission of signals within communication network <NUM>. The processor may execute other processes and programs resident in memory, such as, for example, registration, identification or communication over communication links <NUM>-<NUM>, and moving data into or out of the memory, as required by an executing process.

Each of the one or more communication devices that comprise each of one or more communication systems <NUM> may be coupled with other communication devices, as well as one or more cloud systems <NUM>, by network <NUM> via one or more communication links <NUM>-<NUM>. Although communication links <NUM>-<NUM> are shown connecting each of one or more communication systems <NUM>, respectively, to network <NUM>, embodiments contemplate any number of communication links <NUM>-<NUM> connecting any number of communication systems <NUM> with network <NUM>, according to particular needs. In addition, or as an alternative, communication links <NUM>-<NUM> may connect one or more communication systems <NUM> directly to one or more cloud systems <NUM> and/or one or more separate communication systems <NUM> and/or communication devices.

According to embodiments, one or more communication links <NUM>-<NUM> couple one or more cloud systems <NUM>, including administrator <NUM> and database <NUM>, and one or more communication systems <NUM> with network <NUM> and communication space <NUM>. Each communication link <NUM>-<NUM> may comprise any wireline, wireless, or other link suitable to support data communications between one or more cloud systems <NUM> and network <NUM>. Although communication links <NUM>-<NUM> are shown as generally coupling one or more cloud systems <NUM> and one or more communication systems <NUM> with network <NUM>, one or more cloud systems <NUM> and one or more communication systems <NUM> may communicate directly with each other according to particular needs.

According to embodiments, network <NUM> includes the Internet, telephone lines, any appropriate LANs, MANs, or WANs, and any other communication network <NUM> coupling one or more cloud systems <NUM> and one or more communication systems <NUM>. For example, data may be maintained by one or more cloud systems <NUM> at one or more locations external to one or more cloud systems <NUM>, and made available to one or more cloud systems <NUM> or one or more communication systems <NUM> using network <NUM>, or in any other appropriate manner.

According to embodiments, one or more cloud systems <NUM> and/or one or more communication systems <NUM> may each operate on one or more computers that are integral to or separate from the hardware and/or software that supports communication network <NUM>. In addition, or as an alternative, the one or more users may be associated with communication network <NUM> including one or more cloud systems <NUM> and/or one or more communication systems <NUM>. These one or more users may include, for example, one or more computers programmed to generate communication space <NUM> and to generate chat spaces <NUM> within communication space <NUM> autonomously. As used herein, the computer, the term "computer," and "computer system" comprise an input device and an output device. The computer input device includes any suitable input device, such as a keypad, mouse, touch screen, microphone, or other device to input information. The computer output device comprises any suitable output device that may convey information associated with the operation of communication network <NUM>, including digital or analog data, visual information, or audio information. Furthermore, the one or more computers include any suitable fixed or removable non-transitory computer-readable storage media, such as magnetic computer disks, CD-ROMs, or other suitable media to receive output from and provide input to communication network <NUM>. The one or more computers also include one or more processors and associated memory to execute instructions and manipulate information according to the operation of communication network <NUM>.

Embodiments contemplate one or more cloud systems <NUM> generating communication space <NUM>. Each of the one or more communication devices may connect to one or more cloud systems <NUM> using network <NUM> and communication links <NUM>-<NUM>, and may participate in communication space <NUM>. Each of the one or more communication devices, and the one or more users associated with each of the one or more communication devices, may use communication space <NUM> to locate and join one or more chat spaces <NUM> within communication space. Having joined a particular chat space <NUM>, communication system <NUM> may transmit text-based or image-based chat messages or transfer files to other communication systems <NUM> participating in chat space <NUM>, and may invite other communication devices to join the particular chat space <NUM>. Although <FIG> illustrates communication space <NUM> comprising an exemplary number of chat spaces 162a-162n, embodiments generate cloud system <NUM> generating any number of chat spaces <NUM> within one or more communication spaces <NUM>, according to particular needs.

In an embodiment, communication space <NUM> may include chat space creation interface <NUM>, illustrated by <FIG>. Cloud system <NUM> may generate chat space creation interface <NUM> and may transmit chat space creation interface <NUM> to a communication device. The communication device uses chat space creation interface <NUM> to create and customize the settings of new chat space <NUM>. Cloud system <NUM> stores each created chat space <NUM> in chat space directory <NUM>. Communication devices may customize each of one or more chat spaces <NUM> to incorporate different functionalities, including but not limited to, providing calendar or current weather functionality.

In an embodiment, communication space <NUM> may also comprise chat space selection interface <NUM>, illustrated by <FIG>. Cloud system <NUM> may generate chat space selection interface <NUM> and may transmit chat space selection interface <NUM> to a communication device. The communication device uses chat space selection interface <NUM> to locate a particular chat space <NUM> in which the communication device will participate. Chat space selection interface <NUM> may comprise a search function. The communication device may use the search function to locate chat spaces <NUM> by keywords, subject matter, or other criteria.

Each chat space <NUM> may permit participating communication devices to exchange text-based or image-based chat messages, transfer files, or invite other communication devices to the particular chat space <NUM>. As illustrated and described below, cloud system <NUM> generates chat space participation interface <NUM>, illustrated by <FIG>, and transmits chat space participation interface <NUM> to each of the one or more communication devices participating in chat space <NUM>. Each communication device displays chat space participation interface <NUM> on an associated audiovisual display device. According to embodiments, chat space participation interface <NUM> displays chat messages, transferred files, and a list of the communication devices participating in the particular chat space <NUM>, as well as additional customizable functionality depending on the particular parameters of chat space <NUM>.

<FIG> illustrates cloud system <NUM> of <FIG> in greater detail, according to an embodiment. In an embodiment, cloud system <NUM> may comprise one or more computers at one or more locations including associated input devices, output devices, non-transitory computer-readable storage media, processors, memory, or other components to send and receive information between one or more communication systems <NUM> and/or one or more communication devices according to the operation of communication network <NUM>. In addition, cloud system <NUM> comprises administrator <NUM> and database <NUM>. Although cloud system <NUM> is described as comprising single administrator <NUM> and database <NUM>, embodiments contemplate any suitable number of administrators <NUM> or databases <NUM>, internal to or externally coupled with cloud system <NUM>. In addition, or as an alternative, cloud system <NUM> may be located internal to one or more communication systems <NUM>. For example, in an embodiment in which one of communication systems <NUM> is a computer, the computer may also function as cloud system <NUM> and may generate communication space <NUM> for other participating communication systems <NUM>. In other embodiments, cloud system <NUM> may be located external to one or more communication systems <NUM> and may be located in, for example, a corporate or regional entity of one or more communication systems <NUM>, according to particular needs.

According to embodiments, administrator <NUM> comprises administration module <NUM>, chat space creation module <NUM>, and chat space participation module <NUM>. Although a particular configuration of administrator <NUM> is shown and described, embodiments contemplate any suitable number or combination of administration modules <NUM>, chat space creation modules <NUM>, chat space participation modules <NUM>, and/or other modules, located at one or more locations, local to, or remote from, cloud system <NUM>, according to particular needs. In addition, or as an alternative, administration module <NUM>, chat space creation module <NUM>, and chat space participation module <NUM> may be located on multiple administrators <NUM> or computers at any location in communication network <NUM>.

According to embodiments, database <NUM> comprises communication systems data <NUM>, chat space templates <NUM>, chat space directory <NUM>, and chat space data <NUM>. Although database <NUM> is shown and described as comprising communication systems data <NUM>, chat space templates <NUM>, chat space directory <NUM>, and chat space data <NUM>, embodiments contemplate any suitable number or combination of communication systems data <NUM>, chat space templates <NUM>, chat space <NUM> directories, chat space data <NUM>, and/or other data pertaining to communication network <NUM> located at one or more locations, local to, or remote from, cloud system <NUM>, according to particular needs.

Administration module <NUM> of administrator <NUM> may configure, update, and/or manage the operation of cloud system <NUM>. That is, administration module <NUM> may configure, update, and/or manage the broader operation of communication network <NUM> and change which data is executed and/or stored on cloud system <NUM> and/or one or more communication devices. Communication network <NUM> may comprise a user-configurable system, such that cloud system <NUM> administrator <NUM> may store communication systems data <NUM>, chat space templates <NUM>, chat space directory <NUM>, and/or chat space data <NUM> either singularly or redundantly in cloud system <NUM> database <NUM> and/or one or more communication devices, according to particular needs. According to other embodiments, administration module <NUM> monitors, processes, updates, creates, and stores communication systems data <NUM>, chat space templates <NUM>, chat space directory <NUM>, and/or chat space data <NUM> in cloud system <NUM> database <NUM>.

According to embodiments, administration module <NUM> may generate communication space <NUM>, which one or more communication devices may join. When a communication device joins communication space <NUM>, administration module <NUM> may record unique identifying information regarding the communication device, such as by assigning the communication device a unique ID or by recording the communication device's IP or MAC address, in communication systems data <NUM>.

Communication systems data <NUM> of database <NUM> comprises the identification information of one or more communication systems <NUM> and the one or more communication devices associated with one or more communication systems <NUM>. Communication systems data <NUM> may include, for example, names and addresses of the one or more users associated with each of one or more communication systems <NUM>, company contact information, telephone numbers, email addresses, IP addresses, and the like. According to embodiments, identification information may also comprise information associated with the operating systems of each of one or more communication systems <NUM>, internet browser information regarding each of the one or more communication devices associated with each of one or more communication systems <NUM>, or system specifications (such as, for example, processor speed, available memory, hard drive space, and the like) for each of the one or more communication devices associated with each of one or more communication systems <NUM>.

Communication systems data <NUM> may also include end user ID information, communication system <NUM> ID information, communication system <NUM> MAC address information, or any other type of information which cloud system <NUM> may use to identify and track each of one or more communication systems <NUM> participating in communication network <NUM>. Communication systems data <NUM> may further comprise identification data which identifies and tracks each of the one or more communication devices which comprise each of one or more communication systems <NUM>. Although particular communication systems data <NUM> are described, embodiments contemplate any type of communication systems data <NUM> associated with one or more communication systems <NUM> or communication devices, according to particular needs. In one embodiment, cloud system <NUM> uses communication systems data <NUM> to identify one or more participating communication systems <NUM> in communication network <NUM> in order to generate particular configurations of communication network <NUM> specific to each communication system <NUM>.

In an embodiment, a communication device may transmit a request to create one or more chat spaces <NUM> to administration module <NUM> of administrator <NUM> using network <NUM> and communication links <NUM>-<NUM>. Administration module <NUM> transmits the communication device's request to chat space creation module <NUM> of administrator <NUM>. Chat space creation module <NUM> is responsible for generating new chat spaces <NUM> and for generating, and transmitting to communication devices, chat space creation interface <NUM> which permits the communication device to choose the settings of one or more new chat spaces <NUM>.

Upon receiving a request from a communication device to generate a new chat space <NUM>, chat space creation module <NUM> may access chat space templates <NUM> of database <NUM>. Chat space templates <NUM> may store information regarding one or more default chat spaces <NUM> (such as, for example, a "Bug Report" chat space <NUM> template that permits a communication device to report a software bug and to transmit this report to one or more preselected separate communication devices). Chat space creation module <NUM> uses information stored in chat space templates <NUM> to generate chat space creation interface <NUM>. Chat space creation module <NUM> transmits chat space creation interface <NUM>, using network <NUM> and communication links <NUM>-<NUM>, to the communication device that requested a new chat space <NUM>. The communication device displays chat space creation interface <NUM> on its audiovisual display device, and chooses settings for the new chat space <NUM>.

According to embodiments, a communication device may configure the settings for one or more new chat spaces <NUM> to create a one-to-any chat space <NUM> (in which the originating communication device can create one or more nested chat spaces <NUM> within new chat space <NUM> but no other participating communication devices may create nested chat spaces <NUM> within new chat space <NUM>); an any-to-any chat space <NUM> (in which all participating communication devices can create one or more nested chat spaces <NUM> within new chat space <NUM> that are visible to all communication devices); an any-to-one chat space <NUM> (in which all communication devices can create one or more private nested chat spaces <NUM> that are visible only to (<NUM>) communication devices invited to participate in the private nested chat spaces <NUM> and (<NUM>) the originating communication device that initially created the new chat space <NUM> in which the private nested chat spaces <NUM> reside); and/or a one-to-one chat space <NUM> (in which all communication devices can create one or more private nested chat spaces <NUM> that are visible only to communication devices invited to participate in the private nested chat spaces <NUM>, potentially excluding the originating communication device that initially created the new chat space <NUM> if the originating communication device is not invited to the private nested chat space <NUM>). The communication device transmits these settings selections to chat space creation module <NUM>. Chat space creation module <NUM> generates new chat space <NUM> according to the settings selections, and stores the new chat space <NUM> in chat space directory <NUM>.

Chat space directory <NUM> of database <NUM> stores information regarding current chat spaces <NUM> available within communication space <NUM>. Embodiments contemplate chat space directory <NUM> storing information regarding any number of stored and/or currently-operating chat spaces <NUM>, wherein each chat space <NUM> comprises a unique selection of participating communication devices.

Chat space participation module <NUM> of administrator <NUM> mediates the transmission of chat messages, files, and other information between communication devices participating in one or more chat spaces <NUM>, as well as communication devices searching for and joining one or more chat spaces <NUM>. According to embodiments, a communication device may transmit to administration module <NUM>, using network <NUM> and communication links <NUM>-<NUM>, a request to view chat spaces <NUM> stored in chat space directory <NUM>. Administration module <NUM> may transmit the communication device's request to chat space participation module <NUM>. Chat space participation module <NUM> may access information stored in chat space directory <NUM>, and may generate chat space selection interface <NUM>, which chat space participation module <NUM> transmits to the communication device using network <NUM> and communication links <NUM>-<NUM>. According to embodiments, chat space selection interface <NUM> may display current chat spaces <NUM> which exist within communication space <NUM>, and may also display a search function, allowing the communication device to search for chat spaces <NUM> by keywords, subject matter, or other criteria. The communication device may display chat space selection interface <NUM> using its audiovisual display device.

The communication device may use chat space selection interface <NUM> to select a particular chat space <NUM> to join. The communication device transmits a request to join the particular chat space <NUM> to chat space participation module <NUM> using network <NUM> and communication links <NUM>-<NUM>. Chat space participation module <NUM> generates chat space participation interface <NUM> and transmits chat space participation interface <NUM> to the communication device. The communication device displays chat space participation interface <NUM> to communication system <NUM> device.

Communication devices participating in chat space <NUM> may exchange text-based or image-based chat messages with one another, transfer files, and/or invite other communication devices to the particular chat space <NUM>. Each communication device participating in a particular chat space <NUM> may transmit chat messages or files to chat space participation module <NUM> using network <NUM> and communication links <NUM>-<NUM>. Chat space participation module <NUM> may store each chat message or file in chat space data <NUM> of database <NUM>.

Chat space data <NUM> of database <NUM> may comprise information, including text messages, images, files, links, emojis, and the like (collectively, a "chat message"), transmitted between communication devices participating in a particular chat space <NUM>. Chat space data <NUM> may associate chat messages, files, and other information shared within each of one or more chat spaces <NUM> with that particular chat space <NUM>, and may store chat messages, files, and other information associated with each particular chat space <NUM> in chat space data <NUM>. Cloud system <NUM> may store a transcript of the chat messages transmitted between communication devices within each particular chat space <NUM> in one or more databases <NUM> associated with communication network <NUM>. One or more cloud systems <NUM> and/or one or more communication devices may access the one or more transcripts at a later time.

<FIG> illustrates exemplary method <NUM> of generating one or more chat spaces <NUM>, according to an embodiment. Method <NUM> of generating one or more chat spaces <NUM> proceeds by one or more actions, which although described in a particular order may be performed in one or more permutations or alternative orders, according to particular needs.

In an embodiment, at action <NUM> of method <NUM>, administration module generates communication space <NUM>, and one or more communication devices join communication space <NUM>. At action <NUM>, one or more communication devices in communication space <NUM> access chat space creation interface <NUM> to generate one or more new chat spaces <NUM>. At action <NUM>, the one or more communication devices use chat space creation interface <NUM> to choose the settings of one or more new chat spaces <NUM>. At action <NUM>, chat space creation module <NUM> generates one or more new chat spaces according to the settings selected by the one or more communication devices. Communication network <NUM> terminates method <NUM>.

In order to illustrate the operation of communication network <NUM> executing the actions of method <NUM> to generate one or more chat spaces <NUM>, the following example is provided. In this example, communication network <NUM> comprises cloud system <NUM>, communication system <NUM> communication device comprising a computer with an audiovisual display device, network <NUM>, and communication links <NUM>-<NUM> connecting cloud system <NUM> and the computer to network <NUM> and to communication space <NUM>. Although a particular number of cloud systems <NUM>, communication devices, networks <NUM>, communication links <NUM>-<NUM>, and communication spaces <NUM> are described herein, embodiments contemplate any number of cloud systems <NUM>, communication devices, networks <NUM>, communication links <NUM>-<NUM>, and/or communication spaces, according to particular needs.

At action <NUM> of method <NUM>, administration module <NUM> generates communication space <NUM> and transmits, using network <NUM>, a request to join communication space <NUM> to the computer. The computer accepts the request and transmits its acceptance of the request to administration module <NUM> using network <NUM> and communication links <NUM>-<NUM>. Administration module <NUM> records unique identifying information regarding the computer, such as by assigning the computer a unique ID and by recording the computer's IP or MAC address, in communication systems data <NUM>.

Continuing the example of method <NUM>, at action <NUM>, the computer accesses chat space creation interface <NUM>. The computer initiates this action by transmitting a request to create chat space <NUM> to administration module <NUM> using network <NUM> and communication links <NUM>-<NUM>. Administration module <NUM> transmits the computer's request to chat space creation module <NUM>. Chat space creation module <NUM> accesses chat space templates <NUM> of database <NUM>, and uses information pertaining to one or more available chat space templates <NUM> to generate chat space creation interface <NUM>. Chat space creation module <NUM> transmits chat space creation interface <NUM> to the computer. The computer displays chat space creation interface <NUM> on its audiovisual display device.

<FIG> illustrates exemplary chat space creation interface <NUM>, according to an embodiment. Chat space creation interface <NUM> displays chat space creation settings <NUM> which determine the parameters by which new chat space <NUM> will operate. Communication devices may use chat space creation interface <NUM> to create chat spaces <NUM> accessible to specific communication devices, or which pertain to specific topics or keywords (such as a "bug report"), according to selected chat space creation settings <NUM>. Although particular examples of chat space creation interface <NUM> and chat space creation settings <NUM> are illustrated in <FIG>, embodiments contemplate communication devices choosing any manner of settings for a new chat space <NUM> using chat space creation interface <NUM> and chat space creation settings <NUM>, according to particular needs.

According to embodiments, a communication device may use chat space creation interface <NUM> to configure chat space creation settings <NUM> for a variety of unique chat spaces <NUM>. Possible chat spaces <NUM> configured by particular chat space creation interface <NUM> chat space creation settings <NUM> may include, for example, an announcement chat space <NUM>, wherein a communication device can post a message but no other communication devices can respond to the message; or an idea box chat space <NUM>, wherein any communication device can submit an anonymous message and only a specified communication device, functioning as an idea box administrator <NUM>, can view each message. Embodiments also contemplate a support center chat space <NUM>, wherein communication devices can transmit separate chat messages regarding a plurality of topics, and one or more administrator <NUM> communication devices can reply to the chat messages and create ongoing chat message dialogues with the originating communication devices. To provide an additional non-limiting example, a communication device may create knowledge base chat space <NUM>, to which communication devices can upload documents. In an embodiment, communication devices may access knowledge base chat space <NUM>, download the documents hosted therein, and post visible or anonymous chat message comments regarding the documents. Although particular examples of chat spaces <NUM> and chat space creation settings <NUM> are described herein, embodiments contemplate communication devices utilizing chat space creation interface <NUM> to specify any chat space creation settings <NUM> for any configuration of chat spaces <NUM>, according to particular needs.

Continuing the example of method <NUM>, at action <NUM>, the computer uses chat space creation interface <NUM> to configure chat space creation settings <NUM> of new chat space <NUM>. In this example, the computer uses chat space creation interface <NUM> to title the new chat space <NUM> "Bug Report," and configures "Bug Report" chat space <NUM> not to have any additional functionalities, such as calendar or real-time weather functionality. The computer transmits the selected chat space creation settings <NUM> to chat space creation module <NUM>.

Concluding the example of method <NUM>, at action <NUM>, chat space creation module <NUM> generates new "Bug Report" chat space <NUM> according to the computer's chosen chat space creation settings <NUM>. Chat space creation module <NUM> generates a new chat space <NUM> titled "Bug Report," and stores "Bug Report" chat space <NUM> and associated settings in chat space directory <NUM>. Communication network <NUM> terminates method <NUM>.

<FIG> illustrates exemplary method <NUM> of participating in chat space <NUM>, according to an embodiment. Method <NUM> of participating in chat space <NUM> proceeds by one or more actions, which although described in a particular order may be performed in one or more permutations or alternative orders, according to particular needs.

In an embodiment, action <NUM> comprises one or more communication devices joining communication space <NUM>. Action <NUM> comprises one or more communication devices accessing chat space selection interface <NUM> to view one or more chat spaces <NUM> to join. Action <NUM> comprises one or more communication devices selecting one or more chat spaces <NUM> to join. Action <NUM> comprises one or more communication devices participating in one or more selected chat spaces <NUM>. Communication network <NUM> then terminates method <NUM>.

In order to illustrate communication network <NUM> executing the actions of method <NUM> to participate in one or more chat spaces <NUM>, the following example is provided. In this example, communication network <NUM> comprises cloud system <NUM>, a communication device comprising a smartphone with an audiovisual display device, network <NUM>, communication space <NUM> comprising a plurality of chat spaces <NUM>, and communication links <NUM>-<NUM> connecting cloud system <NUM> and the smartphone to network <NUM> and communication space <NUM>. Although a particular configuration of cloud systems <NUM>, communication devices, networks <NUM>, communication spaces <NUM>, and communication links <NUM>-<NUM> are described herein, embodiments contemplate any number of cloud systems <NUM>, communication devices, networks <NUM>, communication spaces <NUM>, and/or communication links <NUM>-<NUM>, according to particular needs.

Continuing the example of method <NUM>, at action <NUM>, administration module <NUM> generates communication space <NUM> and transmits, using network <NUM>, a requests to join communication space <NUM> to the smartphone. The smartphone accepts the request and transmits its acceptance of the request to administration module <NUM> using network <NUM> and communication links <NUM>-<NUM>. As discussed above, administration module <NUM> records unique identifying information regarding the smartphone, such as by assigning the smartphone a unique ID and by recording the smartphone's IP or MAC address, in communication systems data <NUM>.

Continuing the example of method <NUM>, at action <NUM>, the smartphone accesses chat space selection interface <NUM>. The smartphone initiates this action by transmitting a request to view chat spaces <NUM> which currently comprise communication space <NUM> to administration module <NUM> using network <NUM> and communication links <NUM>-<NUM>. Administration module <NUM> transmits the smartphone's request to chat space <NUM> selection module. Chat space <NUM> selection module accesses chat space directory <NUM>, and uses information pertaining to one or more chat spaces <NUM> stored in chat space directory <NUM> to generate chat space selection interface <NUM>. Chat space <NUM> selection module transmits chat space selection interface <NUM> to the smartphone. The smartphone displays chat space selection interface <NUM> on its audiovisual display device. <FIG> illustrates exemplary chat space selection interface <NUM>, according to an embodiment. Chat space selection interface <NUM> displays a list of chat spaces <NUM> (in this example, "Any Space" chat space 162a, "Bug Generator" chat space 162b, and "Bug Report" chat space 162c") that comprise communication space <NUM>, and which a particular communication device may choose to join. According to embodiments, chat space selection interface <NUM> displays additional information about each available chat space <NUM>, such as, for example, the identity of the communication device or user who created each chat space <NUM>, the number of communication devices which have participated in each chat space <NUM> by transmitting chat messages, or any other information. Although not illustrated in <FIG>, chat space selection interface <NUM> may also comprise a search function. A communication device may use the search function to search for particular chat spaces <NUM> by title, associated keywords, or other criteria.

Continuing the example of method <NUM>, at action <NUM>, the smartphone selects "Bug Report" chat space 162b. The smartphone transmits this selection to chat space participation module <NUM> using network <NUM> and communication links <NUM>-<NUM>. Chat space participation module <NUM> generates chat space participation interface <NUM> for "Bug Report" chat space 162b, and transmits "Bug Report" chat space 162b participation interface <NUM> to the smartphone. The smartphone displays "Bug Report" chat space 162b participation interface <NUM> using its audiovisual display device.

<FIG> illustrates exemplary chat space participation interface <NUM>, according to an embodiment. According to embodiments, chat space participation interface <NUM> displays chat column <NUM> displaying chat messages exchanged between the communication devices participating in chat space <NUM>, participant panel <NUM> listing the communication devices participating in chat space <NUM>, and "Invite Participants" button <NUM>. Although <FIG> illustrates chat column <NUM> and participant panel <NUM> in a particular configuration, embodiments contemplate chat space participation interfaces <NUM> of various configurations, including and excluding chat columns <NUM>, participant panels <NUM>, "Invite Participants" buttons <NUM>, and/or other features, according to particular needs.

According to embodiments, chat column <NUM> occupies the majority of the center of chat space participation interface <NUM>. Although chat column <NUM> is shown and described as occupying the center portion of chat space participation interface <NUM>, embodiments contemplate chat space participation interface <NUM> displaying chat column <NUM> in any configuration, according to embodiments. Chat column <NUM> displays chat messages which the communication devices participating in chat space <NUM> have transmitted to chat space participation module <NUM> using network <NUM>. According to embodiments, the communication devices may choose to send chat messages to every other communication device displayed in chat space participation interface <NUM>; alternatively, communication devices may pre-select one or more specific communication device recipients before sending chat messages. Chat space participation module <NUM> may store each chat message in chat space data <NUM> of database <NUM>.

According to embodiments, participant panel <NUM> on the left side of chat space participation interface <NUM> of <FIG> displays a visual representation of the communication devices currently participating in chat space <NUM>. Although participant panel <NUM> is shown and described as occupying the left side of chat space participation interface <NUM>, embodiments contemplate chat space participation interface <NUM> displaying participant panel <NUM> in any configuration, according to particular needs. Chat space participation interface <NUM> may identify participating communication devices by the names of the users associated with the communication devices (such as "Jane Doe"), or by identifying the communication devices themselves (such as "Tablet Computer," "Smartphone," and the like). In an embodiment, administration module <NUM> may assign names to the separate communication devices displayed in participant panel <NUM> using information contained in communication systems data <NUM>. Chat space participation interface <NUM> may display the names of the communication devices participating in chat space <NUM> under, or in association with, each individual chat message displayed in chat space participation interface <NUM>.

In an embodiment, participant panel <NUM> may include "Invite Participants" button <NUM>. A communication device may use "Invite Participants" button <NUM> to transmit a request, using network <NUM> and communication links <NUM>-<NUM>, to chat space participation module <NUM> to invite one or more separate communication devices to the particular chat space <NUM>. Chat space participation module <NUM> may receive this request, and may transmit an invitation to join the particular chat space <NUM> to the one or more separate communication devices using network <NUM> and communication links <NUM>-<NUM>. The one or more separate communication devices may accept this invitation and join chat space <NUM> according to the actions previously described above.

Continuing the example of method <NUM>, at action <NUM>, the smartphone participates in "Bug Report" chat space 162b. The smartphone transmits a chat message to chat space participation module <NUM>. Chat space participation module <NUM> stores the chat message in chat space data <NUM> of database <NUM>, and then generates updated chat space participation interface <NUM> displaying the most-recently-transmitted chat message in chat column <NUM>. Chat space participation module <NUM> transmits updated chat space participation interface <NUM> to the smartphone. The smartphone displays the updated chat space participation interface using its audiovisual display device. Concluding the example, communication network <NUM> subsequently terminates method <NUM>.

Embodiments contemplate chat spaces <NUM> incorporating additional customizable functionalities. For example, in an embodiment, a particular chat space <NUM> (in this example, titled "Weather Space") may comprise a real-time weather functionality. The real-time weather functionality may enable communication devices participating in Weather Space to view a report of current local weather conditions on the Weather Space chat space participation interface (not illustrated).

Continuing with the Weather Space example, a communication device, at action <NUM> of method <NUM>, may select real-time weather functionality as a customizable setting. Chat space creation module <NUM>, at action <NUM> of method <NUM>, may generate the Weather Space chat space <NUM> and store the Weather Space chat space <NUM> and associated settings in chat space directory <NUM>. One or more communication devices may then select the Weather Space chat space <NUM> in which to participate, according to the actions of method <NUM>. At action <NUM> of method <NUM>, chat space participation module <NUM> generates Weather Space chat space participation interface that displays a real-time report of current local weather conditions in addition to a chat column and participant panel.

Embodiments contemplate chat spaces <NUM> featuring any customizable function, according to particular needs. By way of non-limiting example, chat spaces <NUM> may comprise a calendar function (which displays the current day of the week and any upcoming appointments for a particular communication system <NUM>), a calculator function (which allows communication devices to perform mathematical operations), and a stock market function (which displays current market information regarding the Dow Jones Industrial Average index, the S&P <NUM> index, or any other financial information). Embodiments contemplate chat spaces <NUM> incorporating any form of rich site summary (RSS) information feeds from any information source, or any form of internal company data, such as, for example, lists of employees, corporate metrics, sales metrics, ongoing customer satisfaction metrics, customer satisfaction surveys, or employee gamification objectives. Although particular chat space <NUM> examples are illustrated and described herein, embodiments contemplate chat spaces <NUM> comprising any information and content, according to particular needs.

Claim 1:
A system (<NUM>), comprising:
two or more communication devices (120a-n) configured to participate in one or more chat spaces (162a-n) within a communication space (<NUM>); and
a computer (<NUM>) coupled with a database (<NUM>) and comprising a processor and memory, the computer configured to:
generate a customizable communication space (<NUM>) comprising one or more customized chat spaces (162a-n);:
transmit requests to join the customizable communication space (<NUM>) to the two or more communication devices (120a-n);
store in the computer memory identification information for each of the two or more communication devices;
configure, in response to instructions transmitted by one of the two or more communication devices accessing a chat space creation interface (<NUM>) from the communication space, a customized chat space within the communication space using one or more chat space creation templates, wherein configuring a customised chat space comprises configuring one or more nested chat spaces within a chat space in a one-to-one, many-to-many, one-to-many and/or many-to-one configuration;
transmit the customized chat space to the two or more communication devices (120a-n);
store in the computer memory communications transmitted by the communication devices within the customized chat space; and
transmit, in response to a request from one of the two or more communication devices to view chat spaces, a chat space selection interface (<NUM>) to enable selection, by the communication device, of one or more customized chat spaces in which to transmit text-based or image-based chat messages.