The present disclosure relates to a communication terminal, a communication system, a display control method, and a program.
In recent years, in accordance with demand for reducing travel cost and time, a communication system that provides calling and conferencing over a communication network such as the Internet, a dedicated line, or the like has become popular. In order to cause a calling source to determine whether a destination candidate is ready to contact, some of such communication systems implement presence indication functions, for example, by using protocols such as SIMPLE (Session initiation protocol for Instant Messaging and Presence Leveraging Extensions).
Japanese Patent No. 4649977 discloses an integrated presence management system that includes multiple application servers; a terminal that includes a memory storing multiple application client programs that correspond to the application servers, respectively; and a presence server that includes a memory storing presence information of the terminal.
According to Japanese Patent No. 4649977, in the case of receiving from the terminal a registration of presence information of the terminal related to one of the applications, the presence server causes the presence information of the terminal related to at least one of the other applications that belongs to the same group as the one of the applications, to synchronize with the one of the applications.
In the case of starting communication with one of the destination candidates having a specific attribute among destination candidates, even if a communication terminal displays respective states of the destination candidates, it is difficult to cause a user to determine which one of the destination candidates having the specific attribute is ready to start communication. For this reason, a problem arises in the usability of the communication terminal.
According to an embodiment, a communication terminal includes an obtainer configured to obtain attribute information that represents, for each destination candidate, one or more attributes of the destination candidate, and state information that represents, for each of the destination candidates, whether the destination candidate is in a state of being ready to start communication; a determiner configured, based on the attribute information and the state information obtained by the obtainer, to determine, for each of the attributes, which destination candidate among the one or more destination candidates associated with the attribute is in the state of being ready to start the communication; a display controller configured to display, for each of the attributes determined by the determiner with which at least one of the destination candidates is in the state of being ready to start the communication, information that represents the attribute in association with information that represents that said at least one of the destination candidates is in the state of being ready to start the communication, and to display, for each of the attributes determined by the determiner with which none of the destination candidates is in the state of being ready to start the communication, information that represents the attribute in association with information that represents that said none of the destination candidates is in the state of being ready to start the communication; and a selector configured to select the attribute, wherein the attribute is an available language, medical treatment, name of a place, or type of goods, and wherein the communication terminal transmits a start request for the communication to a plurality of destination terminals as the destination candidates in the state of being ready to start the communication that are identified based on the state information obtained by the obtainer, among the destination candidates associated with the selected attribute, and in a case where a plurality of responses to the start request are transmitted from the plurality of destination terminals among the destination candidates to the communication terminal, establishes the communication with one of the plurality of destination terminals among the destination candidates that is a transmission source from which the response was received first.
In the following, by using the drawings, embodiment of the present disclosure will be described in detail. According to an embodiment, in the case of starting communication with one of the destination candidates having a specific attribute among the destination candidates, an effect is brought such that the usability of the communication terminal is improved.
<<Overall Configuration of Communication System 1>
Although
The management system 50 is a computer equipped with a server function. The terminals 10 and 70 are computers equipped with corresponding client functions. The terminals 10 and 70, the relay device 30, and the management system 50 can communicate with each other through a communication network 2, which may be constituted with the Internet, a cellular phone network, a LAN (Local Area Network), a WiFi (Wireless Fidelity) network, a Bluetooth (registered trademark) network, and the like. The communication network 2 also includes a base station 2a at an end of a cellular phone network. It should be noted that although only one base station 2a is illustrated in
The relay device 30 relays content data including sound data, video (image) data, text data, and the like between the terminals 10 and 70.
The terminal 10 is placed in a call center, which is an example of a site, and the terminal 70 is placed at the front of a hotel, which is an example of a site. The management system 50, the relay device 30, and the terminals 10 and 70 are placed in the same country or area, or may be placed in different countries or areas. The user of the terminal 10 is, for example, an operator, and the user of the terminal 70 is, for example, a customer. It should be noted that the terminal 10 is an example of a destination terminal as a destination candidate.
<Hardware Configuration in Embodiment>>
Next, a hardware configuration of the present embodiment will be described.
On the right wall 1130 side of the housing 1100, an operation panel 1150 is formed. In the operation panel 1150, there are a plurality of operation buttons (108a through 108e), a power supply switch 109, and an alarm lamp 119, which will be described later. Further, a sound output surface 1151 is formed in the operation panel 1150, which is formed by a plurality of sound output holes used for passing output sound from a built-in speaker 115, which will be described later. Further, on a part of the housing 1100 close to the left wall 1140, a housing unit 1160 is formed as a concave portion for housing the arm 1200 and the camera housing 1300. On the right wall 1130 of the housing 1100, a plurality of connection ports (1132a through 1132c) are formed for electrically connecting cables for an external device connection I/F 118, which will be described later. On the other hand, on the left wall 1140 of the housing 1100, a connection port is formed for electrically connecting a cable 120c of a display 120 for a display I/F 117.
It should be noted that in the following, an arbitrary operation button of the operation buttons (108a through 108e) will be described as an “operation button 108”, and an arbitrary connection port of the connection ports (1132a through 1132c) will be described as a “connection port 1132”.
Next, the arm 1200 is attached to the housing 1100 via a torque hinge 1210, and is capable of rotating in an up-and-down direction within a range of tilt angle θ1 of 135 degrees with respect to the housing 1100.
It should be noted that the external view in
Further, the terminal 10 includes the built-in camera 112 that captures image data by taking an image of a subject according to the control of the CPU 101; an imaging element I/F 113 that controls driving the camera 112; the built-in microphone 114 for inputting sound; the built-in speaker 115 for outputting sound; a sound input/output I/F 116 for processing input/output of an audio signal between the microphone 114 and the speaker 115 according to the control of the CPU 101; the display I/F 117 for transmitting image data to the external display 120 according to the control of the CPU 101; the external device connection I/F 118 for connecting various external devices; the alarm lamp 119 for indicating an error of various functions of the terminal 10; and a bus line 110 such as an address bus, a data bus, and the like, for electrically connecting the above elements as illustrated in
The display 120 is a display unit used for displaying a subject image or the like. Examples of the display 120 include a liquid crystal and an organic electroluminescence (EL) panel. Further, the display 120 is connected to the display I/F 117 via the cable 120c. The cable 120c may be a cable for an analog RGB (VGA) signal, a cable for a component video, or a cable for a signal of High-Definition Multimedia Interface (HDMI) (registered trademark) or Digital Video Interactive (DVI).
The camera 112 includes a lens and a solid-state image sensing device to convert light into electric charge for computerizing the subject image, and as the solid-state image sensing device, a Complementary Metal Oxide Semiconductor (CMOS), a Charge Coupled Device (CCD), or the like, is used.
To the external device connection I/F 118, via a Universal Serial Bus (USB) cable or the like, which is inserted into the connection port 1132 of the housing 1100, external devices such as an external camera, an external microphone, and an external speaker can be electrically connected. In the case where the external camera is connected, according to the control of the CPU 101, the external camera is driven. Similarly, in the case where an external microphone is connected or an external speaker is connected, according to the control of the CPU 101, the external microphone or the external speaker is driven.
It should be noted that the recording medium 106 can be easily attached or detached with the terminal 10. Further, as a non-volatile memory to/from that data are written/read according to the control of the CPU 101, an Electrically Erasable and Programmable ROM (EEPROM) may be used, not limited to the flash memory 104.
It should be noted that the EEPROM 704 stores various data items including an operating system (OS) executed by the CPU 701 and other programs. Also, the CMOS sensor 712 is a charge-coupled device that converts light into electric charge to computerize an image of a photographic subject. The CMOS sensor may be replaced with a CCD (Charge Coupled Device) sensor as long as a photographic subject can be captured.
The terminal 70 further includes a microphone 714 to convert a sound into a sound signal; a speaker 715 to convert a sound signal into a sound; an antenna 711a; a communicator 711 to communicate with a nearby base station 2a by a wireless communication signal by using the antenna 711a; a display 720 of liquid crystal, organic EL, or the like to display images of photographic subjects, various icons, and the like; a touch panel 721 that is installed on this display 720, and constituted with a pressure-sensitive or electrostatic panel, to detect a touch position on the display 720 touched with a finger, a touch pen, or the like; and a bus line 710 such as an address bus, a data bus, etc., for electrically connecting the above elements.
The relay apparatus 30 has a similar hardware configuration as the above management system 50, and thus, the descriptions will be omitted.
In the following, an application may be referred to as an “appli”.
It should be noted that as the communication protocol of the communication applications A1 and A7, the following protocols may be listed: (1) SIP (Session Initiation Protocol); (2) H.323; (3) a protocol that enhances SIP; (4) a protocol of Instant Messenger; (5) a protocol using MESSAGE method of SIP; (6) a protocol of Internet Relay Chat (IRC); and (7) a protocol that enhances the protocol of Instant Messenger. Among these, (4) a protocol of Instant Messenger is a protocol used in, for example, (4-1) XMPP (Extensible Messaging and Presence Protocol); or (4-2) ICQ (registered trademark), AIM (registered trademark), Skype (registered trademark), and the like. Also, (7) a protocol that enhances the protocol of Instant Messenger is, for example, Jingle.
<<Functional Configuration of Embodiment>>
Next, a functional configuration of the present embodiment will be described.
<Functional Configuration of Terminal>
The terminals 10 and 70 include the sending and receiving units 11 and 71, the operation input receiving units 12 and 72, the activation units 13 and 73, the output control units 14 and 74, and the storing and reading units 19 and 79, respectively. The terminal 70 also includes the state management unit 75. These units are functions realized by the elements illustrated in
(Destination Management Table)
It should be noted that the communication ID is information for identifying a communication destination (communication counterpart) in the communication system 1. The communication ID is not limited specifically, and may be identification information of a terminal 10, identification information or an account of a user of the terminal 10, or the like. It should be noted that “presence” will be described in detail later.
(Presence Management Table)
Next, a functional configuration in the terminal 10 will be described in detail. It should be noted that in the following, when the functional configuration in the terminal 10 is described, relations between functions and main elements among the elements illustrated in
The sending and receiving unit 11 is implemented by instructions from the CPU 101, and the network I/F 111. The sending and receiving unit 71 is implemented by instructions from the CPU 701, and the communicator 711. The sending and receiving units 11 and 71 execute sending and receiving various data (or information) items to and from a terminal, an apparatus, a system, and the like, as communication counterparts, via the communication network 2.
The operation input receiving unit 12 is implemented by instructions from the CPU 101, the operation buttons (108a, 108b, 108c, 108d, and 108e), and the power supply switch 109. The operation input receiving unit 72 is implemented by instructions from the CPU 701, and the touch panel 721. The operation input receiving units 12 and 72 receive various inputs or various selections performed by the user.
The activation units 13 and 73 are implemented by instructions from the CPUs 101 and 701, to activate operations of the communication applications A1 and A7, respectively.
The output control units 14 and 74 are implemented by instructions from the CPUs 101 and 701, respectively, along with the display I/F 117 and the sound input and output I/F 116, to control outputting image data and sound data.
The state management unit 75 of the terminal 70 is implemented by instructions from the CPU 701, to manage a state of a destination candidate based on presence information transmitted from the terminal 10 to the terminal 70.
The storing and reading units 19 and 79 are implemented by instructions from the CPUs 101 and 701, to execute storing various data items in the memory units 1000 and 7000 and reading various data items stored in the memory units 1000 and 7000, respectively.
<Functional Configuration of Management System>
The management system 50 includes a sending and receiving unit 51, an authentication unit 52, a management unit 53, a session control unit 58, and a storing and reading unit 59. These units are functions realized by the elements illustrated in
(Authentication Management Table)
(Terminal Management Table)
<Functional Configuration of Management System>
Next, a functional configuration of the management system 50 will be described in detail. It should be noted that in the following, when the functional configuration of the management system 50 is described, relations between functions and main elements among the elements illustrated in
The sending and receiving unit 51 is implemented by instructions from the CPU 201, and the network I/F 209, and performs sending and receiving various data (or information) items to and from a terminal, an apparatus, and/or a system via the communication network 2.
The authentication unit 52 is implemented by instructions from the CPU 201, searches in the authentication management table by using a communication ID and a password received by the sending and receiving unit 51 as the search key, and determines whether the same communication ID and password are managed in the authentication management table, to authenticate a terminal.
The management unit 53 is implemented by instructions from the CPU 201, and in the terminal management table (see
The session control unit 58 controls a session for sending and receiving content data between the terminals 10 and 70, by instructions from the CPU 201. The control includes establishing a session, controlling the terminal 10 or 70 to participate in an established session and to exit from the session, and the like.
The storing and reading unit 59 is implemented by instructions from the CPU 201 and the HDD 205, or implemented by instructions from the CPU 201. The storing and reading unit 59 stores various data items in the memory unit 5000, and extracts various data items stored in the memory unit 5000.
<<Processes and Operations of Communication System 1>>
Next, processes and operations in the communication system 1 will be described.
First, by using
When the user of the terminal 70 turns on the power source switch, the operation input receiving unit 72 receives the power-on operation, and activates the terminal 70 (Step S1). Once the terminal 70 has been activated, the activation unit 73 activates the communication application A7 installed in the terminal 70 (Step S2). Thereafter, a process in the terminal 70 is executed by instructions of the communication application A7.
The sending and receiving unit 71 of the terminal 70 transmits a login request to the management system 50 through the communication network 2 (Step S3). This login request includes the communication ID and a password for identifying the terminal itself (terminal 70), which is the login requestor. In the present embodiment, a communication ID of a terminal 70 starts with a character “C” so that it can be distinguished as a terminal 70 on the customer side. In the following, assume that communication IDs of the terminals 70x and 70y are “C01, C02”.
The sending and receiving unit 51 of the management system 50 receives a login request. By having the login request transmitted from the terminal 70 to the management system 50, the management system 50 on the receiving side can obtain the IP address of the terminal 70 on the sending side.
Next, the authentication unit 52 of the management system 50 searches in the authentication management table (see
If the login request is authenticated by the authentication unit 52 as a request from a terminal 70 having valid use permission, the session management unit 53 associates the communication ID with the IP address of the terminal 70, and stores it in the terminal management table (see
The sending and receiving unit 51 of the management system 50 transmits authentication result information that represents an authentication result obtained by the authentication unit 52, to the terminal 70 as the login requestor via the communication network 2 (Step S6). Thus, the sending and receiving unit 71 of the terminal 70 receives the authentication result information. In the following, a case will be described in which authentication of the terminals 70x and 70y as login requestors has succeeded, and the terminals 70x and 70y have logged in to the management system 50.
Meanwhile, when the user of the terminal 10 on the operator side turns on the power source switch 109, the operation input receiving unit 12 receives the power-on operation, and activates the terminal 10 (Step S11). Once the terminal 10 has been activated, the activation unit 13 activates the communication application A1 installed in the terminal 10 (Step S12). Thereafter, a process in the terminal 10 is executed by instructions of the communication application A1.
The output control unit 14 of the terminal 10 outputs a reception screen that receives input (designation) of one or more attributes of the operator as the user of the terminal 10 to the display 120.
The terminal 10 transmits a login request to the management system 50, and logs in to the management system 50 (Steps S13-2, S14, S15, and S16). Since this process is the same as the process of Steps S3, S4, S5, and S6 between the terminal 70 and the management system 50, description is omitted. However, a communication ID of a terminal 10 transmitted from a terminal 10 to the management system 50 starts with a character “0” so that it can be distinguished as a terminal 10 on the operator side. In the following, assume that communication IDs of the terminals 10a, 10h, and 10c are “O01, O02, and O03”, respectively. Once authentication of the terminals 10a, 10b, and 10c as login requestors has succeeded, the terminals 10a, 10b, and 10c log in to the management system 50.
Next, a process of transmitting presence information, which represents the state on the operator side, from the terminal 10 to the terminal 70 will be described by using
The communication application A1 manages, in the storage unit 1000, an event that causes a state transition, and a presence after the transition caused by the event. The presence is used for identifying whether the operator as the user of the terminal 10 is in a state of being ready for a call. A presence that represents a state of being ready for a call includes “Online” that represents a state where the terminal 10 has logged in to the management system 50, and does not communicate with the terminal 70 on the customer side. A presence that represents a state of being not ready for a call includes “Offline” that represents a state where the terminal 10 does not log in to the management system 50, and “chat” that represents a state where the terminal 10 has logged in to the management system 50, but has already communicated with the terminal 70 on the customer side, and hence, cannot newly start communication. It should be noted that as the presence in the present embodiment, any information usable for identifying whether it is a state of being ready for a call may be used, which is not limited to the one described above. Also, the presence may also include something based on input from the user. Among the presence based on input from the user, as an example of a presence that represents a state of being not ready for a call, “away from the seat” may be considered.
As an example of an event that causes a transition to the presence of “Online”, reception of authentication result information by the terminal 10 at Step S16, a reception of input of an end request for a call from the user, or the like may be considered. As an example of an event that causes a transition to the presence of “Offline”, a logout from the management system 50 by the terminal 10 may be considered. As an example of an event that causes a transition to the presence of “chat”, establishment of communication between the terminal 70 and the terminal 10 (at Step S90, as will be described later) may be considered. It should be noted that these events and presences are merely examples and the embodiment is not limited as such. It should be noted that the event that causes a transition of the presence is not limited in particular as long as it is detectable, and can be set discretionarily depending on content of a process executed by a communication protocol or the communication application A1.
If one of the above events occurs in the terminal 10a (Step S21), the storing and reading unit 19 reads attribute information, for example, “en, zh, es” from the storage unit 1000. The attribute information to be read corresponds to the attributes of “English, Chinese, and Spanish” or the like that has been input by the operator as the user of the terminal 10a when logging in (see Step S13-1). The sending and receiving unit 11 of the terminal 10a transmits the presence that represents a state after the transition caused by the event at Step S21, the attribute information read from the storage unit 1000, and the presence information that includes the communication ID of “O01” of the terminal 10a as the transmission source to the management system 50 (Step S22). For example, in response to receiving the authentication result information at Step S16, the terminal 10a transmits presence information including the presence of “Online” to the management system. Also, upon acceptance of a logout request, the terminal 10a transmits presence information including the presence of “Offline” to the management system 50. Also, in response to establishment of communication with the terminals 70, the terminal 10a transmits presence information including the presence of “chat” to the management system 50. It should be noted that if the attribute information has not been updated since the attribute information was registered in the storage unit 1000 at Step S13-1, the terminal 10a transmits presence information including the same attribute information to the management system 50 every time an event occurs.
In response to receiving the presence information transmitted by the terminal 10a, the sending and receiving unit 51 of the management system 50 transmits the received presence information to the terminals 70x and 70y on the customer side that have logged in to the management system 50 (Steps S23 and S24). A method of identifying a terminal 70 on the customer side that has logged in to the management system 50 is not limited in particular. As an example, a method may be considered that reads a communication ID starting with the character “C” from the terminal management table (see
The sending and receiving unit 71 of each of the terminals 70x and 70y receives the presence information transmitted from the terminal 10a on the operator side through the management system 50. The storing and reading unit 79 of each of the terminals 70x and 70y records the communication ID, the presence, and the attribute information included in the received presence information in the destination management table (see
When the above event occurs in the terminal 10b on the operator side, among the terminal 10b, the management system 50, and the terminals 70x and 70y, substantially the same process as Steps S21, S22, S23, S24, S25, and S26 executed among the terminal 10a, the management system 50, the terminal 70x and 70y, is executed (Steps S31, S32, S33, S34, S35, and S36). When the above event occurs in the terminal 10c on the operator side, among the terminal 10c, the management system 50, and the terminal 70x and 70y, substantially the same process as Steps S21, S22, S23, S24, S25, and S26 executed among the terminal 10a, the management system 50, the terminal 70x and 70y, is executed (Steps S41, S42, S43, S44, S45, and S46). Thereby, the terminals 70x and 70y can manage the latest presence on the sides of the terminals 10b and 10c.
Next, a process of managing the group presence for each attribute will be described by using
Every time the presence in the destination management table (see
The state management unit 75 of the terminal 70x updates each record that includes the attribute information obtained at Step S51 in the presence management table. In other words, in the case where the obtained attribute information is “en, zh, es”, the state management unit 75 updates each record that includes the attribute information of “en, zh, es”.
In the following, as an example, a process will be described in which presence information of “Online, (en, zh, es), O01” is transmitted from the terminal 10a to the terminal 70x, and the information is obtained at Step S51 (Online at Step S52).
First, in a loop process, a process will be described in the case of updating a record in which the attribute information of “en” is recorded in the presence management table. The state management unit 75 of the terminal 70x refers to the ready-for-call field in the record in which the attribute information of “en” is recorded in the presence management table (see
In the case where Step S54 has been completed or in the case of YES at Step S53, the state management unit 75 of the terminal 70x refers to the in-call field in the record in which the attribute information of “en” is recorded in the presence management table (see
In the case where Step S56 has been completed or in the case of NO at Step S55, the state management unit 75 of the terminal 70x refers to the group presence in the record in which the attribute information of “en” is recorded in the presence management table (see
In the case of having determined that the group presence in the record in which the attribute information of “en” is recorded is not “Online” (NO at Step S57), the state management unit 75 updates this presence to “Online”. In the case of having determined that the group presence in the record in which the attribute information of “en” is recorded is “Online” (YES at Step S57), the state management unit 75 does not update the group presence in the record in which the attribute information of “en” is recorded. The process executed up to here causes the group presence in the record in which the attribute information of “en” is recorded in the presence management table to transition to “Online”.
Since the attribute information of “en, zh, es” has been obtained at Step S51, the state management unit 75 applies the loop process to each record in which the attribute information of “zh, es” is recorded in the presence management table, to update the records similarly. Once the loop process is completed, the presence management table in
Next, a process will be described in which presence information of “Chat, (en, zh, es), O01” is transmitted from the terminal 10a to the terminal 70x, and the information is obtained at Step S51 (Chat at Step S52).
First, in the loop process, a process will be described in the case of updating a record in which the attribute information of “en” is recorded in the presence management table. The state management unit 75 of the terminal 70x refers to the ready-for-call field in the record in which the attribute information of “en” is recorded in the presence management table (see Table 1). Thereby, the state management unit 75 determines whether the communication ID of “O01” obtained at Step S51 is included in the ready-for-call field (Step S63). In the case of having determined that the communication ID of “O01” obtained at Step S51 is included in the ready-for-call field in the presence management table (YES at Step S63), the state management unit 75 deletes the obtained communication ID from the ready-for-call field (Step S64).
In the case where Step S64 is completed or in the case of NO at Step S63, the state management unit 75 of the terminal 70x refers to the ready-for-call field in the record in which the attribute information of “en” is recorded in the presence management table (see Table 1). Thereby, the state management unit 75 determines whether the communication ID of “O01” obtained at Step S51 is included in the in-call field (Step S65). In the case of having determined that the communication ID of “O01” obtained at Step S51 is not included in the in-call field in the presence management table (NO at Step S65), the state management unit 75 adds the obtained communication ID of “O01” to the in-call field (Step S66). The process executed up to here enables to record the communication ID of the terminal 10a only in the in-call field in the record in which the attribute information of “en” is recorded in the presence management table.
In the case where Step S66 is completed or in the case of YES at Step S65, the state management unit 75 of the terminal 70x refers to the ready-for-call field in the record in which the attribute information of “en” is recorded in the presence management table (see Table 1). Thereby, the state management unit 75 determines whether the number of communication IDs currently recorded in the ready-for-call field in the record in which the attribute information of “en” is recorded is 0 (Step S67).
In the case where the number of communication IDs currently recorded in the ready-for-call field in the record in which the attribute information of “en” is recorded is 0 (YES at Step S67), the state management unit 75 updates the group presence in the record in which the attribute information of “en” is recorded to “Chat” (Step S68). In the case where the number of communication IDs currently recorded in the ready-for-call field in the record in which the attribute information of “en” is recorded is not 0 (NO at Step S67), the state management unit 75 does not update the group presence in the record in which the attribute information of “en” is recorded. In other words, in the case where a communication ID is recorded in the ready-for-call field in the record in which the attribute information of “en” is recorded, the corresponding presence is not updated so as to be maintained as “Online”.
Since the attribute information of “en, zh, es” has been obtained at Step S51, the state management unit 75 applies the loop process to each record in which the attribute information of “zh, es” is recorded in the presence management table, to update the records similarly. Thereby, the presence management table of Table 1 becomes as illustrated in Table 2. As described above, when the status of the terminal 10a changes to “Chat”, the presence management table of each terminal 70 is updated such that the communication ID of “O01” is added to the in-call field corresponding to the attribute of “en, zh, es” associated with the communication ID of “O01” of the terminal 10a.
Next, a process will be described in which presence information of “Offline, (ko, pt), O03” is transmitted from the terminal 10c to the terminal 70x, and the information is obtained at Step S51 (Offline at Step S52).
First, in the loop process, a process will be described in the case of updating a record in which the attribute information of “ko” is recorded in the presence management table. The state management unit 75 of the terminal 70x refers to the ready-for-call field in the record in which the attribute information of “ko” is recorded in the presence management table (see Table 2). Thereby, the state management unit 75 determines whether the communication ID of “O03” obtained at Step S51 is included in the ready-for-call field (Step S73). In the case of having determined that the communication ID of “O03” obtained at Step S51 is included in the ready-for-call field in the presence management table (YES at Step S63), the state management unit 75 deletes the obtained communication ID of “O03” from the ready-for-call field (Step S74).
In the case where Step S74 is completed or in the case of NO at Step S73, the state management unit 75 of the terminal 70x refers to the in-call field in the record in which the attribute information of “ko” is recorded in the presence management table (see Table 2). Thereby, the state management unit 75 determines whether the communication ID of “O03” obtained at Step S51 is included in the in-call field (Step S75). In the case of having determined that the communication ID of “O03” obtained at Step S51 is included in the in-call field in the presence management table (YES at Step S75), the state management unit 75 deletes the obtained communication ID of “O03” from the in-call field (Step S76). The process executed up to here causes the communication ID of the terminal 10c to be deleted from the record in which the attribute information of “ko” is recorded in the presence management table.
In the case where Step S76 is completed or in the case of NO at Step S75, the state management unit 75 of the terminal 70x refers to the ready-for-call and in-call fields in the record in which the attribute information of “ko” is recorded in the presence management table (see Table 2). Thereby, the state management unit 75 determines whether a condition IF1 or IF2 is satisfied (Step S77). The condition IF1 represents a case where the number of communication IDs currently recorded in the ready-for-call field is 0, and the number of communication IDs currently recorded in the in-call field is not 0, in the record in which the attribute information of “ko” is recorded. The condition IF2 represents a case where the number of communication IDs currently recorded in the ready-for-call field is 0, and the number of communication IDs currently recorded in the in-call field is 0, in the record in which the attribute information of “ko” is recorded.
In the case where the number of communication IDs currently recorded in the ready-for-call field is 0, and the number of communication IDs currently recorded in the in-call field is not 0 in the record, in which the attribute information of “ko” is recorded (IF1 at Step S77), the state management unit 75 updates the group presence to “Chat” in the record in which the attribute information of “ko” is recorded in the presence management table (Step S78). In the case where the number of communication IDs currently recorded in the ready-for-call field is 0, and the number of communication IDs currently recorded in the in-call field is 0 in the record, in which the attribute information of “ko” is recorded (IF2 at Step S77), the state management unit 75 updates the group presence to “Offline” in the record in which the attribute information of “ko” is recorded in the presence management table (Step S79). In the case where neither IF1 nor IF2 is satisfied at Step S77 (NO at Step S77), the state management unit 75 does not update the group presence so as to maintain “Online” in the record in which the attribute information of “ko” is recorded.
Since the attribute information of “ko, pt” has been obtained at Step S51, the state management unit 75 applies the loop process to the record in which the attribute information of “pt” is recorded in the presence management table, to update the record similarly. Thereby, the presence management table of Table 2 becomes as illustrated in Table 3. As described above, when the status of the terminal 10c changes to “Offline”, the presence management table of each terminal 70 is updated such that the communication ID of “O03” is deleted from the ready-for-call field corresponding to the attribute of “ko, pt” associated with the communication ID of “O03” of the terminal 10c.
Next, a process of starting communication will be described by using
The operation input receiving unit 12 of the terminal 70x receives a display request of an attribute list of destination candidates in response to an input operation by the user. In response to the display request, the output control unit 74 obtains attribute information items currently recorded in the presence management table (see Table 3), and the group presence corresponding to the attribute information items. In other words, the output control unit 74 obtains information that represents, for each attribute, which terminal (destination candidate) is in a state of “Online” or ready to start communication among one or more terminals (destination candidates) 10 associated with the attribute. The storage unit 7000 stores in advance data of display images corresponding to attribute information items, and display images corresponding to the group presence. For example, data of a display image corresponding to the attribute information of “en” is text data that represents “English”. Also, for example, data items of display images corresponding to the group presence of “Online, Offline, and Chat” are image data items of icons representing a check mark, a blank image, and a bubble, respectively. The output control unit 74 obtains, for each pair of an obtained attribute information item and a group presence, a corresponding pair of data items of a text and a display image of an icon, from a storage unit 7000. The output control unit 74 generates image data of an attribute list by arranging the obtained pairs of data items of display images such that the items in each pair are located on the same row in a predetermined display area. The output control unit 74 outputs the generated image data of the attribute list to the display 720 (Step S81).
The output control unit 74 repeatedly executes the above process every time the presence management table is updated. Thereby, an attribute list indicating the latest group presence for the respective attributes is displayed on the display 720.
At Step S81, the output control unit 74 outputs an icon presenting a check mark corresponding to “Online” as a selectable icon, and an icon presenting a blank image or a bubble corresponding to “Offline, Chat” as a non-selectable icon, among the icons. For example, even if the user performs an operation of pressing an icon of a blank image corresponding to “Korean” or an icon presenting a bubble corresponding to “Chinese” in the attribute list illustrated in
On the screen illustrated in
Once a selection of the attribute has been received, the storing and reading unit 79 uses the attribute information of “en” that represents the attribute selected at Step S82 as the search key, to search in the destination management table (see
The sending and receiving unit 71 of the terminal 70x transmits to the management system 50 a start request for a call that includes, among the communication IDs read at Step S83, the communication ID of “O02” having the presence of “Online”, the communication ID of “C01” of the terminal 70x as the start requestor, and the attribute information of “en” representing the attribute selected at Step S82 (Step S84-1).
In response to receiving the start request of communication transmitted by the terminal 70x, the sending and receiving unit 51 of the management system 50 transmits this start request for a call to the terminal 10b identified by the communication ID of “O02” included in the start request for a call (Step S84-2). In other words, the sending and receiving unit 51 transmits a request for starting communication to one or more terminals 10 in states of being ready to start communication among the terminals 10 associated with an attribute selected by the user of the terminal 70x.
During a period after having transmitted the start request for a call, and before receiving a response, in the case where the destination management table is updated at Step S26, S36, or S46, the terminal 70x repeatedly executes Step S83. Thereby, in the case where the presence on the side of the terminal 10a is updated to “Online”, and the communication ID of “O01” is extracted as a communication ID having the corresponding presence of “Online”, the sending and receiving unit 71 of the terminal 70x transmits a start request for a call including the communication ID of “O01” to the management system 50 (Step S85-1). It should be noted that the start request for a call transmitted here also includes the attribute information of “en” that represents the attribute selected at Step S82, and the communication ID of “C01” of the terminal itself (terminal 70x).
In response to receiving the start request for a call transmitted by the terminal 70x, the sending and receiving unit 51 of the management system 50 transmits this start request of a call to the terminal 10a identified by the communication ID of “O01” included in the received start request of a call (Step S85-2).
The sending and receiving unit 11 of each of the terminals 10a and 10b receives the start request for a call transmitted from the terminal 70x through the management system 50. In response to receiving the start request for a call, the output control unit 14 of each of the terminals 10a and 10h outputs a message that includes information of the requestor corresponding to the communication ID of “C01” included in the start request for a call, and information of an attribute corresponding to the attribute information of “en” included in the start request for a call, to the display 120.
The message in
The sending and receiving unit 51 of the management system 50 receives the response information transmitted by the terminal 10a, and the response information transmitted by the terminal 10b. The sending and receiving unit 51 of the management system 50 transmits the received response information to the terminal 70x identified by the communication ID of “C01” included in the response information (Steps S87-2 and S88-2).
Having received the response information, the sending and receiving unit 71 of the terminal 70x transmits a communication establishment request for establishing communication with a terminal 10 as the transmission source of the response information, to the management system 50 (Step S89). The communication establishment request includes the communication ID of the terminal itself (terminal 70x), and the communication ID of the terminal 10 as the transmission source of the response. In the case where multiple response information items have been received, the sending and receiving unit 71 of the terminal 70x includes the communication ID of “O02” of the terminal 10b as the first transmission source of the response information in the communication establishment request. In other words, in the case where the sending and receiving unit 71 of the terminal 70x has transmitted communication start requests to the terminals 10a and 10b among destination candidates in states of being ready to start communication, and responses to the communication start request are transmitted to the terminal 70x from both the terminal 10a and the terminal 10b, the terminal 70x establishes communication with the terminal 10b that transmitted the first-received response.
The sending and receiving unit 71 of the management system 50 receives the communication establishment request. The session control unit 58 of the management system 50 executes control of establishing a session for transmitting content data including image data and sound data through the relay device 30 between the terminal 10b and the terminal 70x identified by the communication IDs of “O02, C01” included in the communication establishment request (Step S90). It should be noted that the session is not limited as above, and may be a session for transmitting content data directly between the terminal 10b and the terminal 70x through the communication network 2. Once the communication between the terminal a0b and 70x has been established, each of the terminal 10b and the terminal 70x transmits image data of an image captured at the terminal itself, and sound data collected at the terminal itself to the terminal on the other side through the relay device 30. The output control units 14 and 74 of the terminals 10b and 70x output received content data, respectively. Thereby, the users can start a call.
Once the communication has been established, the sending and receiving unit 11 of the terminal 10b transmits the presence of “Chat”, the attribute information of “en, es, pt, ru, th”, and the presence information including the communication ID of “O02”, to the management system 50 (see Step S22).
Also, once the communication has been established, in order to cancel the start request for a call for transmission sources of responses other than the transmission source from which the response was received first, the sending and receiving unit 71 of the terminal 70x transmits cancellation information to the management system 50 (Step S91-1). The cancellation information includes the communication ID of “C01” of the terminal itself (terminal 70x), and the communication ID of “O01” of the terminal 10a as the transmission source of a response other than the transmission source from which the response was received first.
Having received the cancellation information, the sending and receiving unit 51 of the management system 50 transmits the cancellation information to the terminal 10a identified by the communication ID of “O01” included in the cancellation information (Step S91-2). The sending and receiving unit 11 of the terminal 10a receives the cancellation information transmitted by the management system 50. This enables the user on the side of the terminal 10a to grasp that the response to the start request for a call from the terminal 70x has become unnecessary.
Next, a second embodiment will be described, which is a modified example of the above embodiment. In the following, points different from the above embodiment will be described for the second embodiment. In the second embodiment, available languages “English, Chinese, Korean, Portuguese, Spanish, Thai, and Russian” as attributes in the above embodiment are replaced with subjects of medical treatment “internal medicine, surgery, pediatrics, ophthalmology, otolaryngology, dermatology, and dentistry”.
It should be noted that attributes are not limited to those in the above embodiments, and can be selected discretionarily. As attributes, the names of places, such as “New York, London, Tokyo”, and the like to designate travel destinations, locations of real estate, and the like, and “food, clothing, household appliance”, and the like to designate types of goods, are exemplified.
Next, a third embodiment will be described in points different from the above embodiments. In the third embodiment, the external device connection I/F 118 of a terminal 10 is connected to a headset having a microphone and a speaker built-in. At Step S13-1, the output control unit 14 of the terminal 10 further generates a screen for receiving a selection of sound input and output devices to be used when receiving a call and during the call, and outputs the screen to the display 120.
The operation input receiving unit 12 of the terminal 10 receives a selection of sound input and output devices to be used when receiving a call and during a call at Step S13-1. Identification information of the selected sound input and output devices is stored in the storage unit 1000 by the storing and reading unit 19.
At Step S84-2 or S85-2, when the sending and receiving unit 11 of the terminal 10 receives a start request for a call, the output control unit 14 refers to the identification information of a sound output device to be used when receiving a call that is stored in the storage unit 1000, and causes the sound output device identified by this identification information to sound a ringtone.
Next, once communication has been established with the terminal 70, the sending and receiving unit 11 of the terminal 10 receives sound data transmitted from the terminal 70. In this case, the output control unit 14 of the terminal 10 refers to the identification information of a sound output device to be used during a call that is stored in the storage unit 1000, and causes the sound output device identified by this identification information to sound a ringtone. Also, the sending and receiving unit 11 of the terminal 10 refers to the identification information of a sound input device to be used during a call that is stored in the storage unit 1000, and transmits sound data input from the sound input device identified by this identification information to the terminal 70. The above process enables to appropriately switch sound input and output devices to be used depending on timings.
According to a display control method of the above embodiments, the sending and receiving unit 71 (an example of an obtainer) of the terminal 70 receives attribute information that represents attributes of respective destination candidates, and presence (an example of state information) that indicates whether each of the destination candidates is in a state of being ready to start a call (an example of communication), to obtain the attribute information and the presence (see Steps S24, S34, and S35) (an example of obtaining). In other words, the sending and receiving unit 71 obtains the attribute information that represents, for each destination candidate, one or more attributes of the destination candidate, and a state information that indicates, for each of the destination candidates, whether the destination candidate is in a state of being ready to start communication. Based on the attribute information and the presence obtained by the sending and receiving unit 71, the state management unit 75 (an example of a determiner) of the terminal 70 determines whether the group presence of the destination candidates of the attribute indicated by this attribute information is “Online” (see Step S51 or S79) (an example of determining). In other words, the state management unit 75 determines for every attribute whether it is in a state where one of destination candidates can start communication among one or more destination candidates associated with the attribute. It should be noted that the group presence of “Online” represents that one of destination candidates having this attribute is ready for a call. In the case where the state management unit 75 of the terminal 70 has determined that the group presence is “Online”, the output control unit (an example of a display controller) of the terminal 70 controls displaying a text (an example of information) representing this attribute associated with an icon (an example of information) of a check mark that represents a state of being ready for a call; or in the case where the state management unit 75 has determined that the group presence is not “Online”, the output control unit 74 controls displaying a text (an example of information) representing this attribute associated with an icon (an example of information) of a bubble or a blank image that represents a not-ready-for-call state (see Step S81 and
The operation input receiving unit 72 (an example of a receiver) of the terminal 70 receives selection of an attribute on a screen that is display-controlled as illustrated in
In the case where the sending and receiving unit 71 of the terminal 70 has transmitted start requests for a call to multiple terminals 10 having the presence of “Online” as destination candidates, and multiple responses to the start requests are sent to the terminal 70, the terminal 70 establishes communication with a terminal 10 among the destination candidates from which the response was received first (see Step S89). This enables to shorten a waiting time for starting a call. Also, in the case where multiple destination candidates exist, since the destination can be narrowed down by a process between the clients, a load on the service side can be reduced.
The sending and receiving unit 71 (an example of a transmitter) of the terminal 70 transmits information that represents cancellation of the start request to the terminals 10 among the destination candidates that are the transmission sources of the responses other than the transmission source from which the response was received first (see Steps S91-1, 2). The user on the terminal 10 side receiving information that represents cancellation of the start request can grasp that the response to the start request for a call from the terminal 70 became unnecessary.
The operation input receiving unit 12 (an example of a receiver) of the terminal 10 as a destination candidate receives input of one or more attributes of the destination candidate (see Step S13-1) (an example of a reception process). The sending and receiving unit 11 (an example of a transmitter) of the terminal 10 as the destination candidate transmits attribute information that represents the attributes received as input by the operation input receiving unit 12 to the terminal 70 through the management system 50 (Steps S22, S23, and S24) (an example of a transmission process). This enables the terminal 70 to obtain attribute information that represents the attributes of the destination candidates. In the case of receiving multiple start requests of a call transmitted by multiple terminals 70, the sending and receiving unit 11 of the terminal 10 as a destination candidate transmits a response to the start request to the terminal 70 that is the transmission source from which the start request was received first (see Step S87-1). Thereby, the terminal 70 that is not a transmission destination of the response does not need to transmit cancellation information.
It should be noted that the terminals 10, 70, and the management system 50 in the above embodiments may be constituted with a single computer, or constituted with multiple computers to which corresponding units (functions or means) are arbitrarily partitioned and assigned. Further, if a program providing system 90 is constituted with a single computer, a program transmitted by the program providing system 90 may be transmitted by partitioning the program into multiple modules, or may be transmitted without partitioning. Furthermore, if the program providing system 90 is constituted with multiple computers, a program may be transmitted from the computers in a state where the program is partitioned into multiple modules.
Further, a recording medium in which a terminal program, a relay apparatus program, and a communication management program of the communication system 1 are stored, and an HD 204 in which the above programs are stored can be provided as program products domestically or overseas.
Furthermore, although in the communication system 1, the IP address of a terminal is managed in the terminal management table illustrated in
In the communication system 1, the “video conference” is used as a term that can be replaced by “TV conference”.
Further, although image data and sound data have been described as examples of content data in the above embodiment, it is not limited to that, but may be tactile sensation (touch) data. In this case, sensation of touch by the user on one terminal side is transferred to the other terminal side. Furthermore, content data may be olfactory sensation (smell) data. In this case, sensation of smell on one terminal side is transferred to the other terminal side. Further, content data may be at least one of streaming data items including image data, sound data, tactile sensation data, and olfactory sensation data.
It should be noted that the terminals 10 may be used not only for a call between multiple offices, and a call between different rooms in the same office, but also for a call in the same room, and a call between the outdoors and indoors or between the outdoors and outdoors. If the terminals 10 are used outdoors, wireless communication may be executed through a cellular phone communication network or the like. Further, although a case of a video-conference by the communication system 1 has been described in the above embodiment, it is not limited to that; the communication system may be used for a meeting, an ordinary conversation between family members or friends, or presentation of information in one direction.
It should be noted that a terminal according to the embodiments described above may be implemented with a device memory that stores one or more programs, and one or more processors. The one or more processors run the one or more programs to execute processes described in the embodiments. For example, the device memory and the one or more processors can realize (implement) functions as described in the embodiments. For example, the device memory and the one or more processors may be implemented by hardware elements as described in the embodiments. The one or more programs may be stored in a non-transitory recording medium.
As above, the present disclosure has been described based on the embodiments. It should be noted that the present invention is not limited to the above embodiments, but various modifications may be made within the scope of the subject matters described in the claims.
Number | Date | Country | Kind |
---|---|---|---|
2016-015752 | Jan 2016 | JP | national |
This application is a continuation application filed under 35 U.S.C. 111(a) claiming the benefit under 35 U.S.C. 120 and 365(c) of a PCT International Application No. PCT/JP2017/002143 filed on Jan. 23, 2017, which is based upon and claims the benefit of priority of Japanese Patent Application No. 2016-015752 filed on Jan. 29, 2016, the entire contents of which are hereby incorporated by reference.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2017/002143 | Jan 2017 | US |
Child | 16039898 | US |