This patent application is based on and claims priority pursuant to 35 U.S.C. §119 to Japanese Patent Application No. 2013-153550, filed on Jul. 24, 2013, in the Japan Patent Office, the entire disclosure of which is hereby incorporated by reference herein.
1. Technical Field
The present invention generally relates to managing information regarding one or more candidate counterpart terminals for communication.
2. Description of the Related Art
With the need for reducing costs or times associated with business trips, more companies are moving towards communication systems to have communication among remotely located offices via a communication network such as the Internet or a leased line. To facilitate the process of selecting one or more counterpart communication terminals to start communication with, the user at a request communication terminal may previously generate a list of one or more candidates of counterpart communication terminals. Before starting communication, the user at the request communication terminal may easily select one or more counterpart communication terminals, from the list of candidate counterpart communication terminals being displayed.
In one aspect, a management system receives a request for registering first candidate information for use by a communication terminal, obtains second candidate information available for use by the communication terminal, calculates a duplicate rate of member communication terminals, between the first candidate information and the second candidate information, and determines not to automatically register the first candidate information when the duplicate rate is at least greater than a threshold.
Example embodiments of the present invention include a communication management system including: a receiver that receives a request for registering first candidate information for use by a communication terminal, from the communication terminal, the first candidate information indicating a first group of one or more member communication terminals; a memory that stores second candidate information available for use by the communication terminal, the second candidate information indicating a second group of one or more member communication terminals; and a processor that calculates a duplicate rate of member communication terminals, between the first candidate information and the second candidate information. When the duplicate rate is at least less than a threshold, the processor determines to automatically register the first candidate information. When the duplicate rate is at least greater than the threshold, the processor determines not to automatically register the first candidate information.
Example embodiments of the present invention include a communication terminal including: a transmitter that transmits a request for registering first candidate information for use by the communication terminal, to a communication management system, the first candidate information indicating a first group of one or more member communication terminals; a receiver that receives information regarding second candidate information available for use by the communication terminal, from the communication management system, the second candidate information indicating a second group of one or more member communication terminals, when a duplicate ratio of member communication terminals between the first candidate information and the second candidate information is at least greater than a threshold; and a user interface that receives a user instruction indicating whether to register the first candidate information for use by the communication terminal. The transmitter transmits the user instruction indicating whether to register the first candidate information to the communication management system.
The other example embodiments of the present invention include a method performed by the management system, a method performed by the communication terminal, a communication system including the communication management system and the communication terminal, and a non-transitory recording medium storing a control program that performs any one of the method to be performed by the management system, or by the communication terminal.
A more complete appreciation of the disclosure and many of the attendant advantages and features thereof can be readily obtained and understood from the following detailed description with reference to the accompanying drawings, wherein:
The accompanying drawings are intended to depict example embodiments of the present invention and should not be interpreted to limit the scope thereof. The accompanying drawings are not to be considered as drawn to scale unless explicitly noted.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “includes” and/or “including”, when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
In describing example embodiments shown in the drawings, specific terminology is employed for the sake of clarity. However, the present disclosure is not intended to be limited to the specific terminology so selected and it is to be understood that each specific element includes all technical equivalents that operate in a similar manner.
In the following description, illustrative embodiments will be described with reference to acts and symbolic representations of operations (e.g., in the form of flowcharts) that may be implemented as program modules or functional processes including routines, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types and may be implemented using existing hardware at existing network elements or control nodes. Such existing hardware may include one or more Central Processing Units (CPUs), digital signal processors (DSPs), application-specific-integrated-circuits, field programmable gate arrays (FPGAs) computers or the like. These terms in general may be referred to as processors.
Unless specifically stated otherwise, or as is apparent from the discussion, terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical, electronic quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
Referring to
In the following examples, it is assumed that the communication system 1 of
In particular, in the following examples, it is assumed that the communication system 1 of
The communication system 1 of
The communication terminal 10 transmits or receives contents data, such as image data and/or sound data, to or from another communication terminal 10.
For the descriptive purposes, in this example, any number of the plurality of communication terminals 10aa to 10dc may be collectively or each referred to as the terminal 10. Any number of the plurality of displays 120aa to 120dc may be collectively or each referred to as the display 120. Any one of the plurality of relay devices 30a, 30b, 30c, and 30d may be collectively or each referred to as the relay device 30. The communication management system 50 may be referred to as the “management system” 50.
The relay device 30 relays contents data, such as image data and/or sound data, between or among the plurality of terminals 10. The management system 50, which may be implemented by one or more computers to cooperatively function as a computer system, centrally manages various information such as login information of the terminal 10, the communication state of the terminal 10, candidate list information, and the communication state of the relay device 30.
The communication system 1 further includes a plurality of routers 70a, 70b, 70c, 70d, 70ab, and 70cd, which may be collectively or each referred to as the router 70. The router 70 selects a route that is most suitable for transmitting contents data such as image data and sound data. In this example, a moving image, a still image, or both of the still image and the moving image, may be transmitted as the image data.
The program providing system 90 includes a hard disk device (HD) 204 (
The maintenance system 100 is a computer system, which may be implemented by one or more computers, to maintain, manage, fix, or upgrade at least one of the terminal 10, relay device 30, management system 50, and program providing system 90. Assuming that the maintenance system 100 is provided within a country, and the terminal 10, relay device 30, management system 50, and program providing system 90 are each installed outside the country, the maintenance system 100 maintains, manages, fixes, or upgrades at least one of the terminal 10, relay device 30, management system 50, and program providing system 90, remotely through the communications network 2. The maintenance system 100 may manage maintenance of at least one of the terminal 10, relay device 30, management system 50, and program providing system 90 without using the communications network 2. For example, a machine type number, a manufacturing number, customer information, maintenance and repair information, and failure log information may be maintained at the maintenance system 100 without using the communications network 2.
Still referring to
The terminals 10ca, 10cb, and 10cc, the relay device 30c, and the router 70c are connected to a LAN 2c. The terminals 10da, 10db, and 10dc, the relay device 30d, and the router 70d are connected to a LAN 2d. The LAN 2c and the LAN 2d are connected to a leased line 2cd in which the router 70cd is provided. It is assumed that the LAN 2c, LAN 2d, and leased line 2cd, are within a private network Y other than the private network X. For example, assuming that the private network Y is managed by Company Y, the LAN 2c corresponds to a network managed by a branch office “c”, and the LAN 2d corresponds to a network managed by a branch office “d”. The network X and the network Y are connected through the Internet 2i, via the routers 70ab and 70cd.
The management system 50 and the program providing system 90 are connected through the Internet 2i to the terminal 10 and the relay device 30. The management system 50 is made communicable with the terminal 10 and the relay device 30 through the communications network 2. Any one of the management system 50 and the program providing system 90 may be located at any network location within or outside any one of the network X and the network Y.
In this example, the communications network 2 includes the LAN 2a, LAN 2b, leased line tab, Internet 2i, leased line 2cd, LAN 2c, and LAN 2d. Any one or any portion of these lines or any other lines that may be included in the communications network 2 may be implemented as wired network or wireless network such as Wireless Fidelity (WiFi) network or Bluetooth network.
As illustrated in
Further, in this example, the terminal 10 may be communicated in various ways, other than the example case in which the terminals 10 at different companies or different branch offices communicate with one another. For example, at least two different terminals 10 that are located at different rooms in the same office, or at least two different terminals 10 that are located at different offices that are remotely located from one another, may communicate with one another. In another example, at least two different terminals 10 that are located in the same room may communicate with one another. In another example, one terminal 10 that is located indoor and another terminal 10 that is located outdoor, or at least two different terminals 10 that are both located outdoor, may communicate with one another. When the terminal 10 is located outdoor, the terminal 10 communicates with the other terminal 10 through a wireless network such as a wireless network designed for a mobile phone.
<Hardware Structure of Communication System>
The body 1100 has an operation panel 1150, which is provided at a front surface toward the right side wall 1130. The operation panel 1150 includes a plurality of operation keys 108a to 108e (“the operation key 108”), a power switch 109, an alarm lamp 119, and a plurality of sound output holes 1151. Through the sound output holes 1151, a speaker 115 (
The arm 1200 is attached to the body 1100 via a torque hinge 1210. With the torque hinge 1210, the arm 1200 can be rotated in directions of up and down with respect to the body, while making a tilt angle θ1 of up to 135 degrees.
The camera housing 1300 incorporates therein the camera 112 (
In alternative to the outer appearance of
The relay device 30, the management system 50, the program providing system 90, and the maintenance system 100 are each implemented by any desired number of general-purpose computers such as a personal computer or a server computer. For simplicity, explanation of the outer appearance of the computer is omitted.
The camera 112 takes an image of an object to obtain image data under control of the CPU 101. The imaging element I/F 113 controls operation of the camera 112. The microphone 114 catches sounds such as voice of the user at the terminal 10. The speaker 115 outputs sounds such as sounds generated based on voice of the user at the counterpart terminal 10. The sound I/O I/F 116 controls input or output of sound signals such as voice signals with respect to the microphone 114 and the speaker 115 under control of the CPU 101. The display I/F 117 transmits image data to the display 120 under control of the CPU 101. The outside device connection I/F 118 controls connection of the terminal 10 to various types of outside device.
The display 120 may be implemented by a liquid crystal display (LCD) or an organic light emitting display, which displays various data such as an image of an object or an operation icon. As illustrated in
The camera 112 includes a plurality of devices such as a lens system, and a solid-state image sensing device that photo-electrically converts a light to generate an image of an object. For example, the solid-state image sensing device includes a complementary metal oxide semiconductor (CMOS) or a charge coupled device (CCD).
The outside device connection I/F 118 may be connected to an outside device such as an external camera, external microphone, or external speaker through a universal serial bus (USB) cable that is connected through the port 1132 of the body 1100 (
The recording medium 106, which can be freely attached to or detached from the terminal 10, includes any desired type of recording medium. In alternative to the flash memory 104, any nonvolatile memory that is readable and writable under control of the CPU 101 may be used such as Electrically Erasable and Programmable ROM (EEPROM).
The terminal control program may be written onto a recording medium that is readable by a general-purpose computer such as the recording medium 106 in any format that is installable or executable by a general-purpose computer. Once the terminal control program is written onto the recording medium, the recording medium may be distributed. Further, the terminal control program may be stored in any desired memory other than the flash memory 104, such as the ROM 102.
The CPU 201 controls entire operation of the management system 50. The ROM 202 stores a control program for execution by the CPU 201, such as an IPL. The RAM 203 functions as a work area for the CPU 201. The HD 204 stores therein various data such as the communication management program. The HDD 205 controls reading or writing of various data with respect to the HD 204 under control of the CPU 201. The medium drive 207 controls reading or writing of various data with respect to a removable recording medium 206 such as a flash memory. The display 208 displays various data such as a cursor, menu, window, character, or image. The network I/F 209 allows the management system 50 to transmit data through the communications network 2. The keyboard 211 includes a plurality of keys, each of which is used for inputting a user instruction through a character, a numeral, or a symbol. The mouse 212 allows the user to input a user instruction including, for example, selection or execution of a specific instruction, selection of an area to be processed, and instruction of cursor movement. The CD-ROM drive 214 controls reading or writing of various data with respect to a CD-ROM 213. In alternative to the CD-ROM 213, any removable recording medium may be used.
The communication management program may be written onto a recording medium that is readable by a general-purpose computer such as the recording medium 206 or the CD-ROM 213 in any format that is installable or executable by a general-purpose computer. Once the communication management program is written onto the recording medium, the recording medium may be distributed. Further, the communication management program may be stored in any desired memory other than the HD 204, such as the ROM 202.
The relay device 30 is substantially similar in hardware structure to the management system 50 of
The program providing system 90 is substantially similar in hardware structure to the management system 50 of
The maintenance system 100 is substantially similar in hardware structure to the management system 50 of
Other examples of removable recording medium, which may be used in replace of the CD-ROM 213, include, but not limited to, compact disc recordable (CD-R), digital versatile disk (DVD), and blue ray disc.
<Functional Structure of Communication System>
Next, a functional structure of the communication system 1 of
<Functional Structure of Terminal>
The communication terminal 10 includes a data transmitter/receiver 11, an operation input 12, a login request 13, an imaging device 14, a sound input 15a, a sound output 15b, a display control 16, and a memory control 19. In this example, the operations or functions that are performed by the terminal 10, which include the operations or functions performed by the functional elements shown in
The data transmitter/receiver 11 of the terminal 10, which may be implemented by the network I/F 111 (
The operation input 12 receives a user instruction input by the user through the operation key 108 or the power switch 109 (
The operations or functions of the login request 13 are performed according to an instruction received from the CPU 101 (
The operations or functions of the imaging device 14 of the terminal 10 are performed by the camera 112 and the imaging element I/F 113 according to an instruction received from the CPU 101 (
The operations or functions of the sound input 15a of the terminal 10 are performed by the sound I/O I/F 116 according to an instruction received from the CPU 101, in cooperation with the microphone 114. After the microphone 114 converts sounds of the user at the terminal 10 to a sound signal, the sound input 15a inputs the sound signal in the form of sound data for further processing. The operations or functions of the sound output 15b of the terminal 10 are performed by the sound I/O I/F 116 according to an instruction received from the CPU 101, in cooperation with the speaker 115. The sound output 15b outputs a sound signal of sound data that is received from the counterpart terminal 10 through the speaker 115.
The operations or functions of the display control 16 of the terminal 10 of
The memory control 19 is implemented by the SSD 105 of
In this example, any one of the terminal ID of the terminal 10 and the relay device ID of the relay device 30 includes any type of identification information that can be expressed by any language, character, symbol, mark, or any combination of language, character, symbol, and mark.
<Functional Structure of Management System>
The management system 50 includes a data transmitter/receiver 51, an authenticator 52, a terminal manager 53, an extractor 54, a destination determiner 55, an approval determiner 56, a candidate list manager 57, a share request manager 58, a group data manager 60, a calculator 61, a registration determiner 62, and a memory control 59. These units shown in
(Authentication Management Table)
The memory 5000 includes an authentication management database (DB) 5001, which stores therein an authentication management table of
(Terminal Management Table)
The memory 5000 further includes a terminal management DB 5002, which stores therein a terminal management table of
(Candidate List Management Table)
The memory 5000 further includes a candidate list management DB 5003, which stores therein a candidate list management table of
(Group Data Management Table)
The memory 5000 further includes a group data management DB 5101, which stores therein a group data management table of any one of
As described below, in this example, it is assumed that the memory 5000 stores the group data management table of
Referring to
(Share Request Management Table)
The memory 5000 further includes a share request management DB 5102, which stores therein a share request management table of
(Functional Structure of Management System)
Referring back to
The authenticator 52, which may be implemented by the instructions from the CPU 201 (
The terminal manager 53, which may be implemented by the instructions from the CPU 201 (
The extractor 54, which may be implemented by the instructions received from the CPU 201 (
The destination determiner 55, which may be implemented by the instructions from the CPU 201 (
The approval determiner 56 determines whether to require approval to newly register the unregistered terminal to the candidate list management table (
The candidate list manager 57, which may be implemented by the instructions from the CPU 201 (
The share request manager 58, which may be implemented by the instructions received from the CPU 201 of
The group data manager 60, which may be implemented by the instructions from the CPU 201, manages various information regarding one or more groups using the group data management table (
The calculator 61 calculates the duplicate rate between the member terminals included in the group member list that is requested to share with a specific terminal 10, and the member terminals included in the group member list that is available for use by the specific terminal 10.
The registration determiner 62 determines whether to register the group member list that is requested to share, as the group member list to be used by the specific terminal 10, based on the calculation result of the calculator 61 and a threshold of the duplicate rate that is obtained from the memory 5000.
The memory control 59, which operates according to an instruction received from the CPU 201 (
<Operation>
Referring to
The management system 50 manages group information (one example of candidate information) regarding one or more groups, such as one or more group member lists each of which lists the terminal IDs of the member terminals, using the group data management DB 5101. With the use of group member list, the user at the terminal 10 can select one or more member terminals to have communication with, with improved efficiency. For example, the user may previously store a group member list, which lists one or more member terminals, for a specific group. In this example, it is assumed that the group member list includes the terminal ID 01aa of the member terminal 10aa and the terminal ID 01ca of the member terminal 10ca.
The user may sometimes want to share this group member list with the other user, such as the other member users in that group. However, simply providing the group member list to the other user may result in increase in number of group member lists, thus making difficult for the other user to select a counterpart terminal for communication.
In view of this, as described below, the management system 50 in this example embodiment calculates a duplicate rate between one or more terminals included in the group member list subjected for sharing with a specific terminal, and one or more terminals being managed by the management system 50 for the specific terminal. When the duplicate rate is equal to or greater than a predetermined threshold, or exceeds a predetermined threshold, the management system 50 does not register the group member list that is requested to share with the specific terminal. This suppresses the number of group member lists to be registered.
More specifically, it is assumed that the data transmitter/receiver 51 of the management system 50 receives a request for registering a group member list for use by the terminal 10ac, from the terminal 10ac. The calculator 61 of the management system 50 calculates a duplicate rate between the member terminal IDs of the group member list requested for use, and the member terminal IDs being managed by the group data management DB 5101 for the terminal 10ac. When the calculated duplicate rate is less than, or equal to or less than, the predetermined threshold, the group data manager 60 registers the group member list to the group data management DB 5101 for use by the terminal 10ac. When the calculated duplicate rate is equal to or greater than, or exceeds, the predetermined threshold, the group data manager 60 does not register the group member list to the group data management DB 5101. This suppresses the increase in number of group member lists to be managed using the group data management DB 5101 for use by the terminal 10ac. With this configuration, the user may easily select a candidate counterpart terminal with improved efficiency.
In one example, the data transmitter/receiver 51 of the management system 50 receives information indicating whether to register one or more member terminals included in the group member list, from the terminal 10ac, when the calculated duplicate rate exceeds, or is equal to or greater than, the predetermined threshold. In response to the request for registering the member terminals, which is received at the data transmitter/receiver 51, the group data manager 60 registers the member terminals included in the group member list to the group data management DB 5101. With this configuration, flexibility in managing the group member list increases.
For example, when the duplicate rate exceeds, or is equal to or greater than, the predetermined threshold, the data transmitter/receiver 51 outputs information regarding the group member list being managed by the group data management DB 5101 for the terminal 10ac, for example, for display to the user at the terminal 10ac. The user is able to compare, between the group member list to be registered, and the group member list being managed by the group data management DB 5101. Based on comparison, the user is able to determine whether to register the group member list to the group data management DB 5101, in addition to the group member list being managed for use by the terminal 10ac.
In this example, the duplicate rate is obtained as a ratio of the number of member terminals included in the group member list available for use by a specific terminal, with respect to the number of member terminals included in the group member list requested for use by the specific terminal. The group member list available for use has been registered to the group data management DB 5101, while the group member list requested for use is not registered to the group data management DB 5101.
Further, when the calculated duplicate rate exceeds, or is equal to or greater than, the predetermined threshold, the data transmitter/receiver 51 of the management system 50 accepts a user request for registering the group member list in replace of the corresponding group member list being currently managed by the group data management DB 5101. In response to such request, the group data manager 60 registers the group member list requested for use, while modifying data of the group member list being managed by the group data management DB 5101 for use by the terminal 10ac. This suppresses the increase in number of group member lists to be managed. Modification of data includes, but not limited to, overwriting data in the registered group member list with data in the group member list to be registered, and deleting data from the registered group member list.
For example, the operation input 12 of the terminal 10ac receives a user input that requests for registering a group member list to the group data management DB 5101 such that the group member list can be used by the terminal 10ac. In response to the user input, the data transmitter/receiver 11 of the terminal 10ac transmits request information to the management system 50.
For example, the operation input 12 of the terminal 10ac receives a user input regarding whether to request registration of a group member list to the group data management DB 5101. In response to the user input, the data transmitter/receiver 11 of the terminal 10ac transmits information indicating whether to request for registration of the group member list to the management system 50.
Referring now to
At S21, as the user at the terminal 10aa turns on the power switch 109 (
In response to turning on of the power, at S22, the login request 13 automatically sends login request information to request for logging in, to the management system 50, through the data transmitter/receiver 11 via the communications network 2. The login request information includes the terminal ID that identifies the request terminal 10aa, and the password associated with the terminal ID. The terminal ID and the password may be obtained by the memory control 19 from the memory 1000, and sent to the data transmitter/receiver 11. At the time of sending the login request information from the request terminal 10aa to the management system 50, the request terminal 10aa sends an IP address of the request terminal 10aa such that the management system 50 knows the IP address of the request terminal 10aa.
At S23, the authenticator 52 of the management system 50 searches the authentication management DB 5001 (
At S24, when the authenticator 52 authenticates that the login request information is received from the authenticated terminal 10, the terminal manager 53 of the management system 50 stores the operation state and the IP address of the terminal 10aa, in association with the terminal ID and the terminal name in the terminal management DB 5002 (
At S25, the data transmitter/receiver 51 of the management system 50 sends the authentication result obtained by the authenticator 52 to the request terminal 10aa that has sent the login request information through the communications network 2. As described above, in this example, it is assumed that the authenticator 52 determines that the terminal 10aa is an authenticated terminal.
Referring to
At S31, the operation input 12 of the request terminal 10aa receives a request for displaying group information such as a group name of a group owned by the request terminal 10aa, through operations performed on the operation key 108.
In response to the request, at S32, the data transmitter/receiver 11 of the request terminal 10aa sends group display request information (“group display request”) to the management system 50 through the communications network 2. The group display request information includes the terminal ID “01aa” of the request terminal 10aa. The data transmitter/receiver 51 of the management system 50 receives the group display request information.
At S33, the extractor 54 of the management system 50 searches the group data management table (
At S34, the data transmitter/receiver 51 of the management system 50 sends group data including the group name and the group ID, which are extracted at S33, to the request terminal 10aa through the communications network 2. The request terminal 10aa receives the group data at the data transmitter/receiver 11.
The display control 16 of the terminal 10aa generates a group name display screen, which shows a group name of one or more groups owned by the request terminal 10aa, based on the group data, and instructs the display 120 (
Assuming that the user at the request terminal 10aa selects the “SHARE REQUEST” key for the selected group on the group name display screen using the operation key 108, the operation input 12 accepts a share request for sharing a member list of the selected group with another terminal.
At S35, the data transmitter/receiver 11 of the request terminal 10aa sends a share request destination candidate request (“destination candidate request”), which requests information regarding a candidate to share the group member list, to the management system 50 through the communications network 2. The destination candidate request includes the terminal ID “01aa” of the request terminal 10aa, and the group ID of the selected group. In case only one group is available for the request terminal 10aa, identification information such as the group ID may not be sent.
In response to the destination candidate request that is received at the data transmitter/receiver 51 of the management system 50, at S36, the extractor 54 searches the candidate list management table (
In this example, the extractor 54 extracts the terminal ID “01ab”, “01ac”, . . . , and “01db” of the candidate counterpart terminals 10ab, 10ac, . . . , and 10db, which are associated with the terminal ID “01aa” of the request terminal 10ac, from the candidate list management table of
In this example, it is assumed that a share request destination candidate is one of candidate counterpart terminals of the request terminal 10aa. Alternatively, the share request destination candidate may be any desired one or more of the group member terminals in the group member list. In such case, the extractor 54 searches the group data management DB 5101 of
At S37, the data transmitter/receiver 51 of the management system 50 sends share request destination candidate information (“destination candidate information”), which includes the destination candidate terminal IDs, and the terminal names of the destination candidate terminals, to the terminal 10aa. The data transmitter/receiver 11 of the request terminal 10aa receives the destination candidate information. As described above, the destination candidate terminal may be any one of candidate counterpart terminals associated with the terminal 10aa in the candidate list, and/or the member terminals associated with the terminal 10aa in the group member list.
At S38, the display control 16 of the terminal 10aa generates a screen including the destination candidate terminal ID and the destination candidate terminal name, which are included in the destination candidate information received from the management system 50, and outputs the screen through the display 120 (
Assuming that a check box for the terminal name “Company X, Branch a, Group c” of the terminal 10ac on the selection screen of
At S39, the data transmitter/receiver 11 of the terminal 10aa sends share request information, that is, a share request for requesting to share a group member list with the selected terminal 10ac, to the management system 50 through the communications network 2. The share request includes the terminal ID “01aa” of the request terminal 10aa, the terminal ID “01ac” of the share request destination terminal 10ac, and the group ID “0001” of the group subjected for sharing.
At S40, in response to the share request, which is received at the data transmitter/receiver 51 of the management system 50, the share request manager 58 of the management system 50 stores the terminal ID of the share request sender terminal, the terminal ID of the share request destination terminal, and the group ID, in the share request management table (
As registration to the share request management table completes, at S41, the data transmitter/receiver 51 sends information indicating that the share request is accepted, to the terminal 10aa.
Referring now to
At S51, the data transmitter/receiver 11 of the terminal 10ac sends share request confirmation information, which requests to send information indicating whether there is any share request for the terminal 10ac, to the management system 50 through the communications network 2. The share request confirmation information includes the terminal ID “01ac” assigned to the terminal 10ac. The management system 50 receives the share request confirmation information at the data transmitter/receiver 51.
At S52, the share request manager 58 of the management system 50 searches a share request management table (
At S53, the extractor 54 of the management system 50 searches the group data management table (
At S54, the display control 16 of the terminal 10ac generates a share request confirmation screen based on the share request confirmation result, and outputs the share request confirmation screen through the display 120 (
In response to the user selection that selects the “USE” key on the share request confirmation screen of
At S54, the data transmitter/receiver 11 of the terminal 10ac transmits group use request information (“group use request”) to the management system 50 through the communications network 2. The group use request information, which includes the terminal ID “01ac” of the terminal 10ac and the group ID, requests to use one or more member terminals in the selected group as a candidate counterpart terminal for the terminal 10ac. The management system 50 receives the group use request information at the data transmitter/receiver 51.
At S55, the management system 50 calculates a duplicate rate, between the member terminals in the group member list that is requested for use, and the member terminals being managed by the group data management DB 5101 for the terminal 10ac. Based on the calculation result, the management system 50 determines whether to register the group member list requested for use.
At S55-1, the extractor 54 of the management system 50 searches the group data management table of
At S55-2, the extractor 54 further searches the group data management table of
At S55-3, the calculator 61 calculates a duplicate rate, between the member terminals included in the group member list that the terminal 10ac requests for use, and the member terminals included in the group member list that can be used by the terminal 10ac. In this example, the duplicate rate is calculated as a ratio of the number of member terminals that is included in both of the member list requested for use and the member list that can be used, with respect to the number of member terminals included in the member list requested for use. In this example, the number of member terminals in the group member list requested for use corresponds to the number of member terminal IDs “01aa” “01ab” “01ac” and “01ca” of the group “0001”, which is 4. Of theses terminal IDs, the member terminal IDs of the terminals that can be used by the terminal Mac are “01aa” “01ab” and “01ac”, such that the number of the member terminals that are requested for use and are already registered for use by the terminal 10ac is 3. The calculator 61 thus obtains the duplicate rate of ¾=75%. The duplicate rate may be obtained in various other ways. For example, the duplicate rate may be calculated as a ratio of the number of member terminals included in the group member list, which have been already registered for use by the terminal 10ac, with respect to the number of member terminals that can be used by the terminal 10ac.
At S55-4, the registration determiner 62 compares between the calculated duplicate rate obtained by the calculator 61, and a threshold for duplicate rate. In this example, the duplicate rate threshold is previously stored in the memory 5000, such that the registration determiner 62 may obtain the threshold from the memory 5000 for comparison with the calculated duplicate rate. Alternatively, the threshold may be set according to user preference, for example, by the user at the terminal 10ac. For example, the threshold may be set at 70%.
At S55-4, when it is determined that the duplicate rate calculated by the calculator 61 is less than the threshold (“NO” at S55-4), the operation proceeds to S55-6. At S55-6, the registration determiner 62 determines to register the group member list that the terminal 10ac requests for use, as a group member list that can be used by the terminal 10ac. When it is determined that the duplicate rate calculated by the calculator 61 is equal to or greater than the threshold value (“YES” at S55-4), the operation proceeds to S55-5. At S55-5, the registration determiner 62 determines not to register the group member list that the terminal 10ac requests for use, as a group member list that can be used by the terminal 10ac.
Alternatively, the registration determiner 62 may determine to register the group member list requested for use, as a group member list that can be used by the terminal 10ac, when the duplicate rate calculated by the calculator 61 is equal to or less than the threshold. In such case, the registration determiner 62 determines not to register the group member list requested for use, as a group member list that can be used by the terminal 10ac, when the duplicate rate calculated by the calculator 61 is greater than the threshold.
Referring back to
In response to the duplicate information received at the data transmitter/receiver 11, at S57, the display control 16 of the terminal 10ac outputs, through the display 120, information indicating that the group member list having the member terminals included in the requested group member list has been registered for use by the terminal 10ac, for example, as illustrated in
At S58, the operation input 12 receives a user instruction regarding whether to register the group member list requested for use, as the user at the terminal 10ac selects one of the keys. When the user at the terminal 10ac selects the “REGISTER” key, the operation input 12 receives a user instruction for registering the group member list requested for use, as a group member list that can be used by the terminal 10ac. When the user at the terminal 10ac selects “REPLACE” key, the operation input 12 receives a user instruction for registering the group member list requested for use, in replace of the group member list that can be used by the terminal 10ac, as a group member list that can be used by the terminal Mac. When the user at the terminal Mac selects the “CANCEL” key, the operation input 12 receives a user instruction for not registering the group member list requested for use.
At S59, the data transmitter/receiver 11 of the terminal 10ac transmits information indicating whether to register the group member list requested for use, to the management system 50, based on the user instruction received at the operation input 12.
In case the data transmitter/receiver 51 of the management system 50 receives information indicating that the group member list is not registered, the operation ends without registering the group member list requested for use. In this example, in response to the user selection that selects “CANCEL”, it is determined that the group member list is not to be registered.
In case the data transmitter/receiver 51 of the management system 50 receives information indicating that the group member list is to be registered, the operation proceeds to S60. In this example, in response to the user selection that selects “REGISTER” or “OVERWRITE”, it is determined that the group member list is to be registered. At SS60, the management system 50 determines whether any one of the member terminals included in the group member list requested for use is registered as a candidate counterpart terminal for the terminal Mac.
At S60-1, the extractor 54 of the management system 50 searches the group data management table of
At S60-2, the extractor 54 searches the candidate list management table of
For each of the member terminal IDs “01aa”, “01ab”, and “01ca” that are extracted, except for the terminal ID “01ac”, the destination determiner 55 performs operation of S60-4 to S60-6. More specifically, at S60-4, the destination determiner 55 determines whether the member terminal 1D extracted at S60-1 matches the candidate counterpart terminal ID for the terminal 10ac extracted at S60-2. Based on a match, the destination determiner 55 is able to determine whether the member terminal included in the group member list to be registered, has been managed using the candidate list management table of
When it is determined that the member terminal ID matches the candidate counterpart terminal ID for the terminal 10ac (“YES” at S60-4), the operation proceeds to S60-5. At S60-5, the approval determiner 56 determines that approval to add the member terminal 10 is not needed, as the member terminal has been registered as a candidate counterpart terminal for the terminal 10ac.
When it is determined that the member terminal ID does not match any one of the candidate counterpart terminal IDs for the terminal 10ac (“NO” at S60-4), the operation proceeds to S60-6. At S60-6, the approval determiner 56 determines that approval to add the member terminal 10 is needed.
Assuming that determination of whether approval to add the member terminal is needed is made for each member terminal extracted at S60-1, the operation of
At S62, the data transmitter/receiver 51 of the management system 50 transmits the group member information including, for each member terminal, the terminal ID and the name of the member terminal, and information indicating the determination result of whether to obtain approval to add the member terminal, to the terminal 10ac. The data transmitter/receiver 11 of the terminal 10ac receives the group member information.
At S63, the display control 16 of the terminal 10ac generates a member list screen including a list of member terminals, and the determination result indicating whether to obtain approval to add the member terminal, based on the group member information. The display control 16 outputs, for example, a member list screen of
In response to selection of the approval request key of
At S72, the data transmitter/receiver 11 of the terminal 10ac transmits approval request information (“approval request”) to the management system 50 through the communications network 2. The approval request information includes the terminal ID “01ac” of the approval request sender terminal 10ac, and the terminal ID “01ca” of the approval request destination terminal 10ca. The management system 50 receives the approval request at the data transmitter/receiver 51.
At S73, the data transmitter/receiver 51 of the management system 50 transmits the approval request information to the approval request destination terminal 10ca. The approval request information includes the terminal ID “01ac” of the approval request sender terminal 10ac, and the terminal ID “01ca” of the approval request destination terminal 10ca. As described above, the approval request requests the terminal 10ca to approve addition of the terminal 10ca as a candidate counterpart terminal for the terminal 10ac. The terminal 10ca receives the approval request information at the data transmitter/receiver 11.
The terminal 10ca may request the user to approve or not to approve registration of the approval request destination terminal 10ca as a candidate counterpart terminal for the approval request sender terminal 10ac. In this example, it is assumed that the user approves addition of the terminal 10ca as a candidate counterpart terminal for the terminal 10ac.
In response to a user input through the operation key 108, at S74, the operation input 12 of the terminal 10ca receives approval to add the terminal 10ca as a candidate counterpart terminal for the terminal Mac.
At S75, the data transmitter/receiver 11 of the terminal 10ca transmits approval information, which indicates approval to add the terminal 10ca as a candidate counterpart terminal for the terminal 10ac, to the management system 50. The approval information includes the terminal ID “01ac” of the approval request sender terminal 10ac, and the terminal ID “01ca” of the approval request destination terminal 10ca. The management system 50 receives the approval information at the data transmitter/receiver 51.
At S76, the candidate list manager 57 of the management system 50 stores the terminal ID “01ca” of the terminal 10ca in association with the terminal ID “01ac” of the request terminal 10ac, in the candidate list management table (
At S77, the data transmitter/receiver 51 of the management system 50 transmits approval result information (“approval result”), which indicates approval to add the terminal 10ca as a candidate counterpart terminal for the terminal 10ac, to the terminal 10ac. The approval result includes the terminal ID “01ac” of the approval request sender terminal 10ac, and the terminal ID “01ca” of the approval request destination terminal 10ca.
At S78, the group data manager 60 updates the group data management table of
At S78-1, the group data manager 60 stores the terminal ID “01ac” of the approval request sender terminal 10ac, as a user terminal ID of the group data management table of
At S78-2, the group data manager 60 determines whether the information indicating whether to register the group member list, which is obtained at the data transmitter/receiver 51 at S59, indicates to “register” the group member list. When it is determined that the information indicating to “register” the group member list requested for use is received (“YES” at S78-2), the operation of updating the group data management table ends. In such case, as illustrated in
When it is determined that the information indicating to “overwrite” the group member list available for use with the group member list requested for use is received (“NO” at S78-2), the operation proceeds to S78-3.
At S78-3, the group data manager 60 further deletes the user terminal ID “01ac”, from the group member list having the group ID “0003”, which is previously determined as the group member list available for use, for example, as illustrated in
Referring to
At S91, the data transmitter/receiver 11 of the terminal 10ac transmits candidate list request information (“candidate list request”) to the management system 50 through the communications network 2. In this example, the candidate list request requests for candidate list information indicating one or more member terminals of a specific group that can be requested for communication. For example, the candidate list request includes the group ID that identifies the selected group, and the terminal ID of the terminal 10ac. The user at the terminal 10ac may select any one of the groups that are owned by the terminal 10ac or allowed for use by the terminal 10ac. The management system 50 receives the candidate list request at the data transmitter/receiver 51.
At S92, the extractor 54 of the management system 50 searches the group data management table of
At S93, the extractor 54 of the management system 50 searches the terminal management table of
At S94, the data transmitter/receiver 51 transmits candidate list information (“candidate list”) to the terminal 10ac. The candidate list includes the terminal ID and the terminal name of the member terminal, the group ID, and the group name. The terminal 10ac receives the candidate list at the data transmitter/receiver 11.
At S95, the display control 16 of the terminal 10ac generates a member list screen based on the candidate list information, and outputs the member list screen through the display 120. The member list screen includes the group name of the selected group, and the name of the member terminal belonging to the selected group.
Using the member list screen, the user at the terminal 10ac is able to select one or more of the counterpart terminals 10 to start communication, or all member terminals in the specific group at once. In response to the user input that selects the counterpart terminal through the operation input 12, the data transmitter/receiver 11 of the terminal 10ac transmits a communication start request to the management system 50, which requests to start communication with the selected counterpart terminal. The communication start request includes the terminal ID “01ac” of the terminal 10ac, and the terminal ID of the counterpart terminal.
In response to the communication start request, the management system 50 controls connection at least between the terminal 10ac and the counterpart terminal 10, for example, under control of the CPU 201. The terminal 10ac and the counterpart terminal 10 establish a communication session through the relay device 30 to transmit or receive various data such as image data and sound data, using any desired method, for example, as described in the description related to FIGS. 2 and 3A to 3C of U.S. Patent Application Publication No. 2013-0223292, the contents of which is incorporated herein by reference.
In the above-described example embodiments, the relay device 30, the management system 50, the program providing system 90, and the maintenance system 100 may each be implemented by a single computer. Alternatively, any number of parts, functions, or modules of the relay device 30, the management system 50, the program providing system 90, and the maintenance system 100 may be classified into a desired number of groups to be carried out by a plurality of computers.
For example, the management system 50 may be implemented by a computer functioning as a management apparatus, and a computer functioning as a web application server. In such case, the management apparatus may be provided with a candidate list management DB 5003. The web application server provides web application services to the terminal 10. Based on a request received through the web browser, the web application server may output an instruction for updating the candidate list to the management apparatus. The management apparatus and the web application server may be located within the same country, or located in different countries.
In case the program providing system 90 is implemented by the single computer, the program to be provided by the program providing system 90 may be transmitted, one module by one module, after dividing into a plurality of modules, or may be transmitted at once. In case the program providing system 90 is implemented as a plurality of computers, each computer may transmit each module that is stored in its memory, after the program is divided into a plurality of modules.
In the above-described example embodiments, a share request for sharing group information is requested, using the communication terminal 10 that may be used for videoconference. Alternatively, any desired information processing apparatus such as any type of PC such as a work station or a tablet, or a PDA such as a smart phone, may be used to request a share request. In such case, the information processing apparatus may have a functional structure that is substantially similar to the functional structure illustrated in
In such case, the data transmitter/receiver 11 may be implemented by the network I/F 209 that operates in cooperation with the instructions from the CPU 201. The operation input 12 may be implemented by the keyboard 211 or the mouse 212. The login request 13 may be implemented by the instructions from the CPU 201. The imaging device 14 may be implemented by a camera, which may be incorporated or attached to the information processing apparatus. The sound input 15a may be implemented by a microphone, which may be incorporated or attached to the information processing apparatus. The sound output 15b may be implemented by a speaker, which may be incorporated or attached to the information processing apparatus. The display control 16 may be implemented by the display 208.
In the above-described example embodiments, the terminal ID is used as identification information that identifies any one of the request terminal, counterpart terminal, member terminal, owner terminal, and user terminal. In alternative to or in addition to the terminal ID, user identification (user ID) that identifies a user who operates the terminal 10 may be used. In such case, a user ID of a user who operates a specific terminal, such as the request terminal, counterpart terminal, member terminal, owner terminal, or user terminal, may be used.
In the above-described example embodiments, the candidate list management table (
A recording medium storing any one of the terminal control program, relay control program, and communication management program, or a storage device such as the HDD 204 that stores any one of the terminal control program, relay control program, and communication management program, or the program providing system 90 provided with the HD 204 storing any one of the terminal control program, relay control program, and communication management program, may be distributed within the country or to another country as a computer program product.
In the above-described example embodiments, the communication system is treated as a videoconference system. Alternatively, the communication system may be implemented as a teleconference system such as the IP teleconference system or the Internet teleconference system, or a computer system. Alternatively, the communication system may be implemented as a car navigation system. For example, the request terminal 10 may be implemented as a car navigation system that is installed onto an automobile. The counterpart terminal 10 may be implemented as a management terminal or server at a management center that manages the car navigation system or a car navigation system that is installed onto another automobile. In another example, the communication system may be implemented as a communication system having a portable phone, smart phone, tablet, game machine, etc. In such case, the terminal 10 may be implemented as the portable phone, smart phone, tablet, game machine, etc.
In the above-described examples, the contents data is assumed to include image data and sound data such as voice data. Alternatively, the contents data may include any other type of data that affects human senses of sight in alternative to image data, or any other type of data that affects human senses of hearing in alternative to voice data. Alternatively, the contents data may include any other type of data that affects human senses of sight, smell, taste, touch, and hearing. In case the contents data that affects human senses of touch, the terminal 10 may convey the contents data that reflects senses of touch that is felt by a user at the terminal 10 to another terminal 10 through the communication network 2. In case the contents data that affects human senses of smell, the terminal 10 may convey the contents data that affects senses of smell felt by a user at the terminal 10 to another terminal 10 through the communication network 2. In case the contents data that affects human senses of taste, the terminal 10 may convey the contents data that affects senses of taste felt by a user at the terminal 10 to another terminal 10 through the communication network 2.
Further, the contents data may only include one type of contents data selected from sight data such as image data, hearing data such as voice data, touch data, smell data, and taste data.
Further, in the above-described examples, the communication system is implemented as a videoconference system for use at offices. Other examples of use of the communication system include, but not limited to, meetings, casual conversation among family members or friends, and distribution of information in one direction.
Numerous additional modifications and variations are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the disclosure of the present invention may be practiced otherwise than as specifically described herein. For example, elements and/or features of different illustrative embodiments may be combined with each other and/or substituted for each other within the scope of this disclosure and appended claims.
Further, any of the above-described devices or units can be implemented as a hardware apparatus, such as a special-purpose circuit or device, or as a hardware/software combination, such as a processor executing a software program.
The present invention can be implemented in any convenient form, for example using dedicated hardware, or a mixture of dedicated hardware and software. The present invention may be implemented as computer software implemented by one or more networked processing apparatuses. The network can comprise any conventional terrestrial or wireless communications network, such as the Internet. The processing apparatuses can compromise any suitably programmed apparatuses such as a general purpose computer, personal digital assistant, mobile telephone (such as a WAP or 3G-compliant phone) and so on. Since the present invention can be implemented as software, each and every aspect of the present invention thus encompasses computer software implementable on a programmable device. The computer software can be provided to the programmable device using any storage medium for storing processor readable code such as a floppy disk, hard disk, CD ROM, magnetic tape device or solid state memory device.
The hardware platform includes any desired kind of hardware resources including, for example, a central processing unit (CPU), a random access memory (RAM), and a hard disk drive (HDD). The CPU may be implemented by any desired kind of any desired number of processor. The RAM may be implemented by any desired kind of volatile or non-volatile memory. The HDD may be implemented by any desired kind of non-volatile memory capable of storing a large amount of data. The hardware resources may additionally include an input device, an output device, or a network device, depending on the type of the apparatus. Alternatively, the HDD may be provided outside of the apparatus as long as the HDD is accessible. In this example, the CPU, such as a cashe memory of the CPU, and the RAM may function as a physical memory or a primary memory of the apparatus, while the HDD may function as a secondary memory of the apparatus.
Number | Date | Country | Kind |
---|---|---|---|
2013-153550 | Jul 2013 | JP | national |