US20160036870A1 - Session managing method, session managing system, and call processing method - Google Patents
Session managing method, session managing system, and call processing method Download PDFInfo
- Publication number
- US20160036870A1 US20160036870A1 US14/745,937 US201514745937A US2016036870A1 US 20160036870 A1 US20160036870 A1 US 20160036870A1 US 201514745937 A US201514745937 A US 201514745937A US 2016036870 A1 US2016036870 A1 US 2016036870A1
- Authority
- US
- United States
- Prior art keywords
- session
- app
- communicating device
- business
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000003672 processing method Methods 0.000 title claims 5
- 230000004044 response Effects 0.000 claims abstract description 80
- 238000004891 communication Methods 0.000 claims abstract description 31
- 238000012545 processing Methods 0.000 claims description 83
- 238000012546 transfer Methods 0.000 claims description 16
- 238000010586 diagram Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 18
- 238000005516 engineering process Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
- H04L65/1086—In-session procedures session scope modification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
Definitions
- Technologies disclosed in the present embodiments are related to technologies that manage a session.
- a session managing method executed by a session managing device includes: establishing a session with a communicating device in response to a first request from the communicating device; extending a duration limit of the session by a first time interval according to an actual result of communication between the communicating device and the session managing device; and extending the duration limit of the session by a second time interval longer than the first time interval when receiving, from the communicating device, a notification indicating that a telephone call with another communicating device is started.
- FIG. 1 is a diagram of assistance in explaining an example of a BYOD system
- FIG. 2 is a diagram of assistance in explaining an example of a session management table
- FIG. 3 is a diagram of assistance in explaining an example of a duration time management table
- FIG. 4 is a flowchart illustrating an example of processing operation of a relay server in relation to session management processing
- FIG. 5 is a flowchart illustrating an example of processing operation of a relay server in relation to session management processing at a time of an incoming call response;
- FIG. 6 is a flowchart illustrating an example of processing operation of a user terminal in relation to business screen display processing
- FIG. 7 is a flowchart illustrating an example of processing operation of a user terminal at a time of an incoming call response
- FIG. 8 is a diagram of assistance in explaining an example of a hardware configuration of a relay server that executes a session managing program
- FIG. 9 is a diagram of assistance in explaining an example of a BYOD system.
- FIG. 10 is a diagram of assistance in explaining an example of a management table
- FIG. 11A is a diagram of assistance in explaining an example of display screens of a user terminal
- FIG. 11B is a diagram of assistance in explaining an example of display screens of a user terminal
- FIG. 11C is a diagram of assistance in explaining an example of display screens of a user terminal.
- FIG. 12A is a flowchart illustrating an example of processing operation of a CPU within a user terminal in relation to incoming call response processing
- FIG. 12B is a flowchart illustrating an example of processing operation of a CPU within a user terminal in relation to incoming call response processing
- FIG. 13 is a flowchart illustrating an example of processing operation of a CPU within a relay server in relation to providing processing
- FIG. 14 is a diagram of assistance in explaining an example of a call terminal device that executes a call processing program.
- the relay server transfers a request from the communicating device to the business system.
- the relay server receives a processing result from the business system
- the relay server generates a screen for displaying the processing result, and transfers the screen data of the screen to the communicating device.
- the method of thus transferring the screen data generated by the relay server to the communicating device is generally referred to as a screen transfer method.
- a negotiation for establishing a session is performed between the communicating device and the relay server according to a given protocol.
- Transmission control protocol/internet protocol (TCP/IP)
- TCP/IP Transmission control protocol/internet protocol
- the user of the communicating device may need to input a password and a user ID.
- the communicating device transmits a request to the relay server according to an input by the user.
- the relay server transfers the request to the business system, the business system performs processing according to the request.
- the relay server obtains a result of the processing from the business system, the relay server generates screen data such as a bit map or the like for displaying the processing result, and returns the screen data to the communicating device.
- the communicating device displays a business screen corresponding to the screen data, and returns an acknowledgement (Ack) signal (reception confirmation) notifying the reception of the screen data to the relay server.
- Ack acknowledgement
- the series of pieces of processing is repeated while the session between the communicating device and the relay server is maintained. The user can thereby view results of processing by the business system and perform operations of the business system by using the communicating device.
- the relay server manages the session with the communicating device, and maintains or disconnects the session. For example, the relay server monitors the communication between the communicating device and the relay server, and disconnects the session with the communicating device when no communication is performed over a certain time. That is, a time-out occurs, and the session is disconnected.
- the relay server disconnects the session with the certain communicating device. This is intended to preferably prevent the resources of the relay server from being pressed when the relay server continues to maintain sessions with a large number of communicating devices.
- a memory area of the relay server is used, and also a central processing unit (CPU) is used.
- CPU central processing unit
- the technologies disclosed in the present embodiments provide mechanisms that maintain a session for a certain time even when a response to an incoming call is made on the communicating device side.
- a technology disclosed in a first embodiment maintains, for a particular communicating device during a telephone call, a session between the communicating device and the relay server for a longer time than a normal time, by extending a time before a time-out occurs on the relay server side.
- a technology disclosed in a second embodiment preferably prevents the relay server from determining that a time-out has occurred and disconnecting the session by transmitting a packet for maintaining the session with the relay server from the communicating device side to the relay server side at intervals of a given time during a telephone call.
- the following embodiments accordingly provide mechanisms that maintain a session for only a certain time longer than a normal time-out time from a start of a telephone call (start of response to an incoming call).
- secure communications such as a virtual private network (VPN), secure sockets layer (SSL), and the like, other than thin client systems using the screen transfer method by the relay server.
- VPN virtual private network
- SSL secure sockets layer
- these secure communications monitor a time-out in session units, and perform session management, as with the screen transfer method.
- a session may also be maintained in particular timing. For example, a session may be maintained when a different application (a telephone application, a mailer, a browser, or the like) other than the business application for accessing the business system is started while the business application is operating, and when it is detected that the business application has made a transition to a background.
- a different application a telephone application, a mailer, a browser, or the like
- the communicating device is a user terminal 300
- the relay server is a relay server 400
- the business system is a business system 2 .
- the user terminal 300 is a smart device privately owned by a user
- a thin client system including the user terminal 300 , the relay server 400 , and the business system 2 is referred to as a BYOD system 1000 .
- the user terminal 300 may be a smart device provided by a company or the like.
- FIG. 1 is a diagram of assistance in explaining an example of a BYOD system.
- the BYOD system may be the BYOD system 1000 .
- the BYOD system 1000 illustrated in FIG. 1 includes the business system 2 , the user terminal 300 , and the relay server 400 .
- the BYOD system 1000 adopts the screen transfer method.
- the user terminal 300 accesses the business system 2 via the relay server 400 using a specific application such as a business application (hereinafter referred to as a business app) or the like.
- the user terminal 300 is coupled to the relay server 400 by radio.
- the user terminal 300 is an example of a communicating device.
- the user terminal 300 receives screen data for displaying a result of processing by the business system 2 from the relay server 400 , and displays a business screen corresponding to the screen data.
- the business system 2 is for example a specific system that manages business data within the company, and which allows various kinds of business in the company to be performed in a secure state. There may be a plurality of business systems 2 .
- the relay server 400 relays communication between the business system 2 and the user terminal 300 .
- the relay server 400 is for example a gate way server providing a virtual web browser in a data center or the like.
- the relay server is an example of a session managing device.
- the relay server 400 is for example coupled to the business system 2 by wire. Further, the relay server 400 enables the user terminal 300 to access the business system 2 in a secure state using the business app, and converts a processing result on the business system 2 side into screen data such as a bit map or the like and transfers the screen data to the user terminal 300 . As described above, the relay server 400 enables remote operation of the business system 2 by the user terminal 300 .
- the relay server 400 includes a relay unit 411 , a control unit 412 , and a storage unit 413 .
- the control unit 412 is for example a CPU.
- the storage unit 413 is for example a read only memory (ROM), a random access memory (RAM), and a hard disk drive (HDD).
- the relay unit 411 relays screen data, commands, and the like mutually between the user terminal 300 and the business system 2 .
- the control unit 412 controls the whole of the relay server 400 .
- the control unit 412 controls the transfer of data between the user terminal 300 and the business system 2 .
- the control unit 412 includes a session managing unit 412 A and a setting unit 412 B.
- the session managing unit 412 A manages each session.
- the session managing unit 412 A sets a session duration time and monitors for a time-out of the session duration time for each session identified by an IP address and a port number.
- the duration time of a session with the user terminal 300 is extended by a first time interval.
- the session duration time of a session with the particular user terminal 300 is extended by a second time interval larger than the first time interval.
- the first time interval is one minute
- the second time interval is three minutes.
- the setting unit 412 B is a processing unit that sets the session duration time (second time interval) extended according to an incoming call response.
- the second time interval may be uniform irrespective of the user terminal 300 , or may be set for each of telephone numbers of callers of incoming calls.
- the session duration time is extended according to an incoming call response.
- a company generally manages the telephone numbers of user terminals 300 provided by the company.
- the setting unit 412 B can therefore set the session duration time in association with the telephone number of a user terminal 300 provided by the company.
- the setting unit 412 B may set the session duration time for each business app 313 A.
- the business app 313 A being executed is a business app 313 A that takes time to operate, it is presumed that the user takes more time to perform operation after an end of a telephone call. Therefore, the setting unit 412 B improves the convenience of the user more by setting the session duration time for each business app 313 A.
- the storage unit 413 stores various kinds of information, a program, and the like.
- the storage unit 413 includes a session management table 413 A and a duration time management table 413 B.
- the session management table 413 A is a table managed by the session managing unit 412 A, and stores information for managing sessions with user terminals 300 .
- FIG. 2 is a diagram of assistance in explaining an example of a session management table.
- the session management table illustrated in FIG. 2 may be the session management table 413 A illustrated in FIG. 1 .
- the session management table 413 A illustrated in FIG. 2 stores a terminal ID, an IP address, a port number, a latest communication time, and a session duration limit in association with each other.
- the terminal ID is information identifying the user terminal 300 .
- the IP address is identifying information assigned to the user terminal 300 coupled to the network.
- the port number is information identifying a program used in TCP/IP communication.
- a session is identified by a combination of the IP address and the port number.
- the terminal ID, the IP address, and the port number are obtained from the user terminal 300 when a session is established.
- the latest communication time indicates the time of a latest communication performed using the corresponding session. For example, each time a request is transmitted from the user terminal 300 to the relay server 400 , and each time an Ack signal is transmitted from the user terminal 300 to the relay server 400 , the session managing unit 412 A updates the latest communication time corresponding to the user terminal 300 .
- the session duration limit represents a time limit until which the corresponding session is maintained.
- the session managing unit 412 A sets, as the session duration limit, a time obtained by adding the first time interval to the latest communication time.
- the session managing unit 412 A sets, as the session duration limit, a time obtained by adding the second time interval to a time at which the incoming call response is detected.
- the first time interval is one minute.
- the session managing unit 412 A adds a record corresponding to the new session in the session management table 413 A. As for a session whose session duration limit has passed, the session managing unit 412 A deletes the record of the session from the session management table 413 A.
- the duration time management table 413 B is a table managed by the setting unit 412 B and referred to by the session managing unit 412 A.
- the duration time management table 413 B stores the session duration time (second time interval) for the user terminal 300 .
- FIG. 3 is a diagram of assistance in explaining an example of a duration time management table.
- the duration time management table illustrated in FIG. 3 may be the duration time management table 413 B illustrated in FIG. 1 .
- the duration time management table 413 B stores the session duration time for extending the session duration limit at a time of an incoming call response.
- the duration time management table 413 B stores the information of “three minutes,” for example.
- the duration time management table 413 B may also store the session duration time (normal session duration time) for extending the session duration limit when a response from the user terminal 300 is received, the session duration time (normal session duration time) corresponding to the first time interval.
- the duration time management table 413 B may store a session duration time for each user terminal 300 in association with the terminal ID.
- the duration time management table 413 B may store a session duration time for each business app in association with an application type that identifies the business app.
- the duration time management table 413 B may store a session duration time for each caller in association with the telephone number of the caller.
- the duration time management table 413 B may store session duration times according to time periods of incoming call responses and the number of user terminals using the relay server 400 .
- the setting unit 412 B registers the session duration time in the duration time management table 413 B according to an input of an administrator of the business system 2 and the relay server 400 .
- the setting unit 412 B may also register the session duration time in the duration time management table 413 B according to an input from the user terminal 300 .
- the user terminal 300 includes a communicating unit 311 , a control unit 312 , a storage unit 313 , a display unit 314 , an operating unit 315 , and an audio input-output unit 316 .
- the control unit 312 is for example a CPU.
- the storage unit 313 is for example a ROM, a RAM, and an HDD.
- the communicating unit 311 is a communication interface in charge of radio communication with a base station and communication with the relay server 400 , the communication with the relay server 400 using the business app.
- the display unit 314 is an output interface that performs screen display of various kinds of information.
- the operating unit 315 is an input interface that inputs various kinds of commands.
- the operating unit 315 for example corresponds to a touch panel that detects touch operation on the display screen of the display unit 314 or the like.
- the audio input-output unit 316 for example corresponds to a microphone, a speaker, or the like, and corresponds to an input-output interface that inputs and outputs sound.
- the storage unit 313 for example stores the business app 313 A and a telephone app 313 B.
- the business app 313 A is a specific app that establishes a session with the business system 2 via the relay server 400 , enables access to the business system 2 in a secure state, and performs screen display of a business screen on the display unit 314 .
- the telephone app 313 B is an app that implements a telephone function using the radio communication of a carrier, for example.
- the telephone app 313 B may be an app that implements a telephone call function using the Internet.
- the control unit 312 controls the whole of the user terminal 300 .
- a business app executing unit 312 A performs various kinds of processing operation related to the business app 313 A on the basis of the business app 313 A.
- the business app executing unit 312 A establishes a session with the relay server 400 .
- the business app executing unit 312 A generates a request to the business system 2 on the basis of a user operation input from the operating unit 315 .
- the business app executing unit 312 A then transmits the request to the relay server 400 via the communicating unit 311 .
- the business app executing unit 312 A controls the display unit 314 to display a business screen corresponding to the image data on the display unit 314 .
- the business app executing unit 312 A when receiving the response, the business app executing unit 312 A returns an Ack signal to the relay server 400 via the communicating unit 311 . Further, when detecting that a telephone app executing unit 312 B has responded to an incoming call, the business app executing unit 312 A notifies the relay server 400 via the communicating unit 311 that an incoming call response is detected.
- the telephone app executing unit 312 B performs various kinds of processing operation related to the telephone app 313 B. For example, when the user gives an instruction to respond to an incoming call from a different communicating device (another user terminal 300 ), the telephone app executing unit 312 B starts a telephone call with the different communicating device. In addition, when the user gives an instruction to end the telephone call, the telephone app executing unit 312 B ends the telephone call.
- FIG. 4 is a flowchart illustrating an example of processing operation of a relay server in relation to session management processing.
- the relay server described with reference to FIG. 4 may be the relay server 400 illustrated in FIG. 1 .
- the relay unit 411 receives a session establishment request from the user terminal 300 (S 101 ).
- the session establishment request includes a terminal ID, an IP address, and a port number, and further includes a user ID and a password for accessing the business system 2 .
- the control unit 412 performs a negotiation with the user terminal 300 , and establishes a session, according to a given protocol (for example TCP/IP) (S 102 ). Then, the session managing unit 412 A adds a new record related to the newly established session in the session management table 413 A.
- a given protocol for example TCP/IP
- the control unit 412 determines whether or not a request is received from the user terminal 300 (S 103 ). When a request is received (YES in S 103 ), the control unit 412 controls the relay unit 411 to transfer the request to the business system 2 (S 104 ). Next, the control unit 412 determines whether or not a response (processing result) in response to the request is received from the business system 2 (S 105 ).
- the control unit 412 waits until receiving a processing result (NO in S 105 ).
- the control unit 412 When the control unit 412 has received a processing result (YES in S 105 ), the control unit 412 generates screen data for displaying the processing result. For example, the control unit 412 generates the screen data by generating a bit map that displays the processing result and further performing compression processing.
- the relay unit 411 transfers the screen data to the user terminal 300 under control of the control unit 412 (S 106 ).
- the session managing unit 412 A next determines whether or not an Ack signal is received from the user terminal 300 (S 107 ). Then, when an Ack signal is received (YES in S 107 ), the session managing unit 412 A updates the session management table 413 A (S 108 ). For example, the session managing unit 412 A updates the latest communication time in the session management table 413 A with the reception time of the Ack signal, and updates the session duration limit with a time obtained by adding the first time interval to the updated latest communication time (reception time of the Ack signal). This processing extends the session duration limit.
- the session managing unit 412 A may update the session management table 413 A in timing in which the request is received (YES in S 103 ) other than the timing in which the Ack signal is received.
- the session managing unit 412 A When no request is received in S 103 (NO in S 103 ), when no Ack signal is received in S 107 (NO in S 107 ), or when the updating of the session management table 413 A is ended in S 108 , the session managing unit 412 A deletes the record whose session duration limit has expired from the session management table 413 A (S 109 ). It suffices for the session managing unit 412 A to identify the record whose session duration limit has expired by obtaining a present time and comparing the present time with the session duration limit in the session management table 413 A.
- the control unit 412 returns to S 103 to repeat the series of pieces of processing from S 103 to S 109 .
- the session managing unit 412 A may determine whether or not there is a record whose session duration limit has expired and delete the record whose session duration limit has expired from the session management table 413 A at fixed time intervals independently of the flow illustrated in FIG. 4 .
- the relay server 400 can manage sessions, and disconnect a timed-out session.
- the resources of the relay server 400 are used effectively by disconnecting a session with a user terminal 300 that has not communicated with the relay server 400 for a certain time or longer.
- FIG. 5 is a flowchart illustrating an example of processing operation of a relay server in relation to session management processing at a time of an incoming call response.
- the relay server described with reference to FIG. 5 may be the relay server 400 illustrated in FIG. 1 .
- the control unit 412 determines whether or not an incoming call response start notification is received from the user terminal 300 (S 111 ).
- the incoming call response start notification is generated by the business app executing unit 312 A in the user terminal 300 when the telephone app executing unit 312 B starts a telephone call.
- the incoming call response start notification is then transmitted to the relay server 400 .
- the incoming call response start notification also includes information on the telephone number of the caller.
- the incoming call response start notification may further include information on a time of a start of an incoming call response.
- the session managing unit 412 A updates the session management table 413 A (S 112 ). For example, the session managing unit 412 A refers to the duration time management table 413 B, and obtains the session duration time (the second time interval). Then, the session managing unit 412 A identifies a record corresponding to a session used to transmit the incoming call response start notification in the session management table 413 A. The session managing unit 412 A updates a session duration limit in the record with a time obtained by adding the session duration time to a time of reception of the incoming call response start notification.
- the control unit 412 determines whether or not an incoming call response end notification is received from the user terminal 300 (S 113 ).
- the incoming call response end notification is generated by the business app executing unit 312 A in the user terminal 300 when the telephone app executing unit 312 B ends the telephone call.
- the incoming call response end notification is then transmitted to the relay server 400 .
- the session managing unit 412 A updates the session management table 413 A (S 114 ). For example, the session managing unit 412 A identifies the record corresponding to the session used to transmit the incoming call response end notification in the session management table 413 A. The session managing unit 412 A then updates the session duration limit in the record with a time obtained by adding the first time interval to a time of reception of the incoming call response end notification.
- the session can be maintained for a period of the second time interval from the start of the telephone call in the case where the user terminal 300 is making the telephone call, and the session can be maintained for a period of the first time interval after the telephone call is ended. That is, the present embodiment maintains the session for a period of the second time interval longer than the first time interval during the telephone call, and maintains the session for a period of the first time interval shorter than the second time interval after the end of the telephone call to make effective use of the resources of the relay server 400 .
- the session managing unit 412 A deletes the record whose session duration limit has expired from the session management table 413 A (S 115 ).
- the control unit 412 then returns to S 111 . It suffices for a method of identifying the record whose session duration limit has expired to be similar to the above-described method.
- S 115 for example, the session in which the second time interval has passed since the start of the telephone call is determined to be a session whose session duration limit has expired, and the record corresponding to the session is deleted from the session management table 413 A.
- S 115 in FIG. 5 may be integrated into S 109 in FIG. 4 . That is, records whose session duration limit has expired may be deleted en bloc in the processing flow of FIG. 4 , and S 115 in FIG. 5 may be omitted.
- FIG. 6 is a flowchart illustrating an example of processing operation of a user terminal in relation to business screen display processing.
- the user terminal described with reference to FIG. 6 may be the user terminal 300 illustrated in FIG. 1 .
- the control unit 312 determines whether or not the business app 313 A is started (S 120 ). When the business app 313 A is not started (NO in S 120 ), the processing of the present flowchart is ended.
- the business app executing unit 312 A controls the communicating unit 311 to transmit a session establishment request to the relay server 400 (S 121 ). Then, under control of the business app executing unit 312 A, the communicating unit 311 establishes a session with the relay server 400 according to a given protocol (S 122 ).
- the business app executing unit 312 A generates a request according to an instruction from the user (S 123 ). Then, the business app executing unit 312 A transmits the request to the relay server 400 via the communicating unit 311 (S 124 ).
- the communicating unit 311 receives screen data from the relay server 400 (S 125 )
- the communicating unit 311 transmits an Ack signal notifying the reception of the screen data to the relay server 400 under control of the business app executing unit 312 A (S 126 ).
- the display unit 314 displays a business screen based on the received screen data under control of the business app executing unit 312 A (S 127 ).
- the control unit 312 determines whether or not an instruction to end the business app 313 A is given by the user (S 128 ). When the ending instruction is given (YES in S 128 ), the control unit 312 ends the series of pieces of processing. When the ending instruction is not given (NO in S 128 ), on the other hand, the control unit 312 returns to S 123 .
- the control unit 312 may need to return to S 121 , and transmit a session establishment request to the relay server 400 again.
- a request and a response are exchanged between the user terminal 300 and the business system 2 via the relay server 400 , and the user is provided with a result of processing by the business system 2 as a business screen.
- FIG. 7 is a flowchart illustrating an example of processing operation of a user terminal at a time of an incoming call response.
- the user terminal described with reference to FIG. 7 may be the user terminal 300 illustrated in FIG. 1 .
- the control unit 312 determines whether or not there is an incoming call response (S 131 ). Incidentally, when there is an incoming call response, the telephone app 313 B is started. When an incoming call response is detected (YES in S 131 ), the control unit 312 determines whether or not the business app 313 A is being executed (S 132 ).
- the business app executing unit 312 A controls the communicating unit 311 to transmit an incoming call response start notification to the relay server 400 (S 133 ).
- the telephone app executing unit 312 B then starts a telephone call (S 134 ).
- the control unit 312 determines whether or not the telephone call is ended (S 135 ).
- the control unit 312 determines whether or not the business app 313 A is being executed (S 136 ).
- the business app executing unit 312 A controls the communicating unit 311 to transmit an incoming call response end notification to the relay server 400 (S 137 ).
- the telephone app executing unit 312 B ends the telephone call (S 138 ), and the control unit 312 ends the telephone app 313 B.
- the control unit 312 waits until the telephone call is ended.
- control unit 312 ends the processing of the present flowchart.
- the control unit 312 proceeds to S 134 .
- the control unit 312 proceeds to S 138 .
- the user terminal 300 transmits an incoming call response start notification to the relay server 400 at a point in time that a response to an incoming call is started.
- the relay server 400 can therefore detect that the user terminal 300 has started a telephone call.
- the relay server 400 can extend the session duration limit of the session with the user terminal 300 during the telephone call by the second time interval longer than the first time interval.
- the session between the user terminal 300 and the relay server 400 is disconnected at a point in time that the first time interval has passed since the transmission of a last request or a last Ack signal during the telephone call.
- the session is maintained for a period of the second time interval longer than the first time interval even during the telephone call. That is, according to the present embodiment, the duration time of the session between the user terminal 300 and the relay server 400 is set longer during the telephone call, and the session can be maintained until the user terminal 300 ends the telephone call.
- the whole or an arbitrary part of the various kinds of processing functions performed by the respective devices may be performed on a CPU (or a microcomputer such as a micro processing unit (MPU), a micro controller unit (MCU), or the like).
- a CPU or a microcomputer such as a micro processing unit (MPU), a micro controller unit (MCU), or the like.
- MPU micro processing unit
- MCU micro controller unit
- the whole or an arbitrary part of the various kinds of processing functions may be performed on a program executed by a CPU (or a microcomputer such as an MPU, an MCU, or the like) or on hardware based on wired logic.
- FIG. 8 is a diagram of assistance in explaining an example of a hardware configuration of a relay server that executes a session managing program.
- a relay server 200 illustrated in FIG. 8 corresponds to the relay server 400 in FIG. 1 .
- the relay server 200 includes a communicating unit 210 , an HDD 220 , a ROM 230 , a RAM 240 , and a CPU 250 .
- the communicating unit 210 , the HDD 220 , the ROM 230 , the RAM 240 , and the CPU 250 are coupled to each other via a bus 260 .
- the ROM 230 stores a session managing program describing the pieces of processing illustrated in FIG. 4 and FIG. 5 .
- the session managing program may be recorded on a recording medium readable by a drive not illustrated in the figures rather than in the ROM 230 .
- the recording medium may be for example a portable recording medium such as a compact disk read only memory (CD-ROM), a digital versatile disk (DVD), a universal serial bus (USB) memory, or the like, or a semiconductor memory such as a flash memory or the like.
- the CPU 250 functions as the control unit 412 by reading out the session managing program from the ROM 230 and executing the session managing program.
- the communicating unit 210 functions as the relay unit 411 under control of the CPU 250 .
- the HDD 220 , the ROM 230 , and the RAM 240 function as the storage unit 413 under control of the CPU 250 .
- a second embodiment has a mechanism that maintains a session with a relay server 4 for a time longer than a normal time-out time even when a communicating device such as a smart phone or the like (a user terminal 3 in FIG. 9 , for example) is responding to an incoming call.
- a communicating device such as a smart phone or the like
- the user terminal 3 detects a response to an incoming call
- the user terminal 3 transmits a packet to the relay server 4 to maintain a session with the relay server 4 for a certain time.
- the packet includes a date and time of transmission of the packet, a number of times of transmission of the packet, and the like set in the header of the packet, and the packet includes an appropriate data string such as “00000000” or the like in the body of the packet.
- the relay server 4 updates a session duration limit as described in the foregoing embodiment each time a packet is received.
- the session between the user terminal 3 and the relay server 4 is maintained even during the incoming call response by the packet received during the incoming call response.
- the user terminal 3 moves a business app to a background according to the incoming call response.
- a communicating unit transmits the packet to the relay server 4 under control of a CPU that is executing the business app.
- FIG. 9 is a diagram of assistance in explaining an example of a BYOD system.
- a BYOD system 1 illustrated in FIG. 9 includes a business system 2 , the user terminal 3 such as a privately owned smart device or the like, and the relay server 4 .
- the BYOD system 1 for example accesses the business system 2 from the privately owned user terminal 3 via the relay server 4 using a specific application such as a business application (hereinafter referred to as an app) or the like, and transfers a business screen to the user terminal 3 .
- the user terminal 3 is enabled to perform remote operation of the business system 2 via the relay server 4 .
- the business system 2 adopts a mechanism that does not leave the business screen within the user terminal 3 when the session with the user terminal 3 is disconnected.
- the business system 2 is for example a specific system that manages business data within a company, and which allows various kinds of business in the company to be performed in a secure state.
- the user terminal 3 is for example a BYOD call terminal device such as a smart phone, a tablet, or the like that is privately owned by an employee of the company, rather than a terminal provided from the company, for example.
- the relay server 4 is for example a gate way (GW) server providing a virtual web browser in a data center or the like, the server relaying between the business system 2 and the user terminal 3 in a secure state.
- GW gate way
- the relay server 4 for example couples to the user terminal 3 by radio, and couples to the business system 2 by wire.
- the relay server 4 enables the user terminal 3 to access the business system 2 in a secure state using the business app, and transfers a business screen from the business system 2 side to the user terminal 3 .
- the relay server 4 enables the user terminal 3 to perform remote operation of the business system 2 .
- the relay server 4 includes a relay unit 11 , a CPU 12 , and a management table 13 .
- the relay unit 11 relays business screens, commands, and the like mutually between the user terminal 3 and the business system 2 .
- the CPU 12 controls the whole of the relay server 4 .
- FIG. 10 is a diagram of assistance in explaining an example of a management table.
- the management table illustrated in FIG. 10 may be the management table 13 illustrated in FIG. 9 .
- the management table 13 illustrated in FIG. 10 is a storage unit that manages an app name, an incoming call number, and a session duration time in association with each terminal ID for identifying a user terminal 3 .
- the app name is information identifying a business app being executed by the user terminal 3 during an incoming telephone call.
- the incoming call number is the telephone number of another party as a caller of the incoming telephone call to the user terminal 3 .
- the session duration time is a time for which the business system 2 can maintain or hold a session with the user terminal 3 from a response to the incoming telephone call by the user terminal 3 , that is, from a start of a telephone call.
- a session duration time in a “business A” as an app name is set to be “three minutes” and a session duration time in a “business B” as an app name is set to be “one minute” in a case of an incoming call number of “080-xxx-xx.”
- the session duration time in all of business apps is set to be “three minutes” even when the app name is not determined.
- the contents of the management table 13 can be for example registered in advance by a registration application of the user of the user terminal 3 or the like, and the duration times can also be registered as appropriate according to loads of the business system 2 .
- the CPU 12 includes a search unit 12 A and a providing unit 12 B.
- the search unit 12 A retrieves, from the management table 13 , a session duration time corresponding to an incoming call number related to the terminal ID of the user terminal 3 in response to a time request from the user terminal 3 to be described later.
- the providing unit 12 B is a notifying unit that provides the session duration time retrieved by the search unit 12 A to the user terminal 3 that made the time request.
- the user terminal 3 includes a communicating unit 31 , a display unit 32 , an operating unit 33 , an audio input-output unit 34 , an audio buffer 35 , a ROM 36 , a RAM 37 , and a CPU 38 .
- the communicating unit 31 is a communication interface in charge of normal radio communication and communication with the relay server 4 using the business app.
- the display unit 32 is an output interface that performs screen display of various kinds of information.
- the operating unit 33 is an input interface that inputs various kinds of commands. Incidentally, the operating unit 33 for example corresponds to a touch panel or the like that detects touch operation on the display screen of the display unit 32 .
- the audio input-output unit 34 for example corresponds to a microphone, a speaker, or the like, and corresponds to an input-output interface that inputs and outputs sound.
- the audio buffer 35 is for example an area that temporarily stores audio data using a business app 36 A within the user terminal 3 .
- the ROM 36 is an area that stores various kinds of data and various kinds of programs such for example as the business app 36 A, a telephone app 36 B, and the like.
- the business app 36 A is a specific app that establishes a session with the business system 2 via the relay server 4 with the user terminal 3 as a BYOD device, enables access to the business system 2 in a secure state, and performs screen display of a business screen from the business system 2 on the display unit 32 .
- the telephone app 36 B is for example an app that implements a telephone function of the radio communication of a carrier, Internet communication, or the like.
- the RAM 37 is an area that stores various kinds of information.
- the CPU 38 is a part that controls the whole of the user terminal 3 .
- the CPU 38 reads out a call processing program 36 C, the business app 36 A, and the telephone app 36 B stored in the ROM 36 , and configures various kinds of processes as functions on the basis of the call processing program 36 C, the business app 36 A, and the telephone app 36 B that are read out.
- the CPU 38 includes a business app executing unit 41 , a telephone app executing unit 42 , a first obtaining unit 43 , a requesting unit 44 , a second obtaining unit 45 , a determining unit 46 , and a control unit 47 .
- the business app executing unit 41 performs various kinds of processing operation related to the business app 36 A on the basis of the business app 36 A.
- the telephone app executing unit 42 performs various kinds of processing operation related to the telephone app 36 B on the basis of the telephone app 36 B.
- the first obtaining unit 43 is related to the telephone app 36 B.
- the first obtaining unit 43 detects an incoming telephone call to the user terminal 3 through the communicating unit 31 .
- the first obtaining unit 43 obtains an incoming call number as the telephone number of the caller of the incoming telephone call.
- the requesting unit 44 notifies the relay server 4 of a time request requesting a duration time related to the incoming call number obtained in the first obtaining unit 43 .
- the second obtaining unit 45 obtains the duration time related to the incoming call number which duration time is provided from the relay server 4 in response to the time request to the relay server 4 .
- FIGS. 11A , 11 B, and 11 C are diagrams of assistance in explaining an example of display screens of a user terminal.
- the user terminal described with reference to FIGS. 11A , 11 B, and 11 C may be the user terminal 3 illustrated in FIG. 9 .
- the incoming call screen 51 illustrated in FIG. 11A includes a caller name 51 A, an incoming call number 51 B, a duration time 51 C, a rejecting button 51 D, and a telephone call button 51 E.
- the caller name 51 A is a name or the like that identifies a caller.
- the incoming call number 51 B is the telephone number of the caller of the incoming telephone call.
- the duration time 51 C is a session duration time.
- the rejecting button 51 D is a button that rejects the present incoming telephone call according to a button operation.
- the telephone call button 51 E is a button that responds to the present incoming telephone call according to a button operation.
- the control unit 47 moves the business app 36 A to a background when detecting a button operation on the telephone call button 51 E on the incoming call screen 51 , that is, a response operation. Incidentally, in the transition to the background, a session between the user terminal 3 and the business system 2 is maintained through the relay server 4 .
- the determining unit 46 determines whether or not the business app 36 A being executed now is an app using sound on the basis of whether or not the audio buffer 35 is being used, for example.
- the control unit 47 When the determining unit 46 determines that the audio buffer 35 is being used, the control unit 47 lowers a volume on the business app 36 A side to a given level so as not to obstruct telephone conversation using the telephone app 36 B. After the control unit 47 lowers the volume on the business app 36 A side to the given level, the control unit 47 instructs the telephone app executing unit 42 to perform an incoming call response operation. The telephone app executing unit 42 performs an operation of responding to the incoming telephone call, and starts a telephone call with the other party. Then, the control unit 47 performs screen display of a telephone app screen 32 B on the display unit 32 , as illustrated in FIG. 11B .
- the telephone app screen 32 B includes a telephone call other party name 52 A, a telephone number 52 B of the other party of the telephone call, a duration time 52 C, a remaining time 52 D, and a telephone call ending button 52 E.
- the telephone call other party name 52 A is a name identifying the other party of the telephone call.
- the telephone number 52 B is the telephone number of the other party of the telephone call.
- the duration time 52 C is the session duration time.
- the remaining time 52 D is a remaining time of the duration time 52 C started to be clocked from a start of the telephone call.
- the telephone call ending button 52 E is a button that ends the telephone call according to a button operation.
- the control unit 47 starts the duration time clocking operation, and performs screen display of the remaining time 52 D of the duration time on the telephone app screen 32 B.
- the control unit 47 ends the business app 36 A moved to the background. That is, the user terminal 3 disconnects the session with the business system 2 via the relay server 4 .
- the control unit 47 moves the business app 36 A moved to the background to a foreground. Then, as illustrated in FIG. 11C , the control unit 47 performs screen display of the business app screen 32 A on the display unit 32 according to the transition of the business app 36 A to the foreground. As a result, after the end of the telephone call, because the session with the business system 2 is continued, business using the business app 36 A can be continued smoothly.
- FIGS. 12A and 12B are flowcharts illustrating an example of processing operation of a CPU within a user terminal in relation to incoming call response processing.
- the CPU and the user terminal described with reference to FIGS. 12A and 12B may be the CPU 38 and the user terminal 3 , respectively, illustrated in FIG. 9 .
- the incoming call response processing illustrated in FIGS. 12A and 12B enables, in a case where an incoming telephone call is detected during the execution of the business app, a telephone conversation for the incoming telephone call to be performed while a session with the business system 2 is maintained within the duration time related to the incoming call number of the incoming telephone call.
- the first obtaining unit 43 within the CPU 38 determines whether or not an incoming telephone call is detected (S 11 ). When an incoming telephone call is detected (YES in S 11 ), the first obtaining unit 43 determines whether or not the business app 36 A is being executed (S 12 ).
- the requesting unit 44 within the CPU 38 obtains an incoming call number and the app name of the business app 36 A being executed (S 13 ). Incidentally, the requesting unit 44 obtains the incoming call number as the telephone number of a caller in response to the incoming telephone call. Further, the requesting unit 44 obtains the app name identifying the business app 36 A being executed now through the business app executing unit 41 being executed now.
- the requesting unit 44 requests a duration time related to the own terminal ID and the incoming call number from the relay server 4 (S 14 ).
- the relay server 4 retrieves, from the management table 13 , the duration time related to the terminal ID and the incoming call number according to providing processing to be described later.
- the second obtaining unit 45 determines whether or not the duration time related to the terminal ID and the incoming call number is obtained from the relay server 4 (S 15 ).
- the second obtaining unit 45 performs screen display of the incoming call screen 51 displaying the obtained duration time 51 C and incoming call contents as illustrated in FIG. 11A on the business app screen 32 A (S 16 ).
- the control unit 47 determines through the telephone app executing unit 42 whether or not a button operation on the telephone call button 51 E within the incoming call screen 51 , that is, a response operation is detected (S 17 ). When the response operation is detected (YES in S 17 ), the control unit 47 moves the business app 36 A being executed to the background (S 18 ). Incidentally, because the business app 36 A is moved to the background, the user terminal 3 continues the session with the business system 2 .
- the determining unit 46 determines whether or not the audio buffer 35 is being used (S 19 ). Incidentally, when the audio buffer 35 is being used, the control unit 47 recognizes that the business app 36 A using sound is being executed. The business app 36 A using sound includes an app for Web conferences, an app for moving image contents, and the like. When the audio buffer 35 is being used (YES in S 19 ), the control unit 47 lowers the volume of the business app 36 A to a given level through the business app executing unit 41 (S 20 ).
- the control unit 47 performs an operation of responding to the incoming telephone call through the telephone app executing unit 42 , and performs screen display of the telephone app screen 32 B on the display unit 32 as illustrated in FIG. 11B (S 21 ). After performing the screen display of the telephone app screen 32 B, the control unit 47 starts an operation of clocking a remaining time in the duration time (S 22 ).
- the control unit 47 performs screen display of the remaining time 52 D of the duration time on the telephone app screen 32 B according to the remaining time clocking operation (S 23 ). Incidentally, the user on the user terminal 3 side can recognize the remaining time of the duration time by viewing the remaining time 52 D within the telephone app screen 32 B.
- the control unit 47 determines whether or not the duration time has passed, that is, whether or not there is a remaining time in the duration time (S 24 ). When there is a remaining time (YES in S 24 ), the control unit 47 determines through the telephone app executing unit 42 whether or not the telephone app 36 B is ended (S 25 ). Incidentally, the control unit 47 ends the telephone call, that is, ends the telephone app 36 B, in response to a button operation on the telephone call ending button 52 E on the telephone app on screen 32 B.
- the control unit 47 determines whether or not the business app 36 A in the background is detected (S 26 ).
- the control unit 47 returns the business app 36 A to the foreground (S 27 ), and ends the processing operation illustrated in FIGS. 12A and 12B .
- the user of the user terminal 3 can continue to use the business app 36 A while maintaining the session with the business system 2 .
- the user of the user terminal 3 is therefore free from a burden of an operation for coupling to the business system 2 .
- the control unit 47 ends the business app 36 A moved to the background through the business app executing unit 41 (S 28 ). After ending the business app 36 A, the control unit 47 performs screen display of an end of the duration time on the telephone app screen 32 B (S 29 ), and determines whether or not the telephone app 36 B is ended (S 30 ). Incidentally, the user can recognize the end of the duration time, that is, the disconnection of the session with the business system 2 , by viewing the display of the end of the duration time.
- the control unit 47 waits until the telephone app 36 B is ended (NO in S 30 ).
- the control unit 47 switches from the telephone app screen 32 B to a screen requesting the establishment of a session with the business system 2 (S 31 ), and ends the processing operation illustrated in FIGS. 12A and 12B .
- the user of the user terminal 3 can reestablish a session with the business system 2 by inputting a login ID and a password or the like on the request screen.
- control unit 47 proceeds to S 23 to display the remaining time 52 D on the telephone app screen 32 B.
- control unit 47 proceeds to S 31 to switch display to the request screen.
- the first obtaining unit 43 ends the processing operation illustrated in FIGS. 12A and 12B .
- the control unit 47 determines through the telephone app executing unit 42 whether or not an operation of responding to the incoming telephone call is detected (S 32 ).
- the control unit 47 When the operation of responding to the incoming telephone call is detected (YES in S 32 ), the control unit 47 performs an incoming call response operation, performs screen display of the telephone app screen 32 B on the display unit 32 (S 33 ), and determines whether or not the telephone app 36 B is ended (S 34 ). When the telephone app 36 B is ended (YES in S 34 ), the control unit 47 switches the display of the display unit 32 from the telephone app screen 32 B to an initial screen (S 35 ), and ends the processing operation illustrated in FIGS. 12A and 12B . Incidentally, the initial screen is a so-called standby screen.
- control unit 47 proceeds to S 11 to determine whether or not the incoming telephone call is being received.
- the control unit 47 proceeds to S 34 to determine whether or not the telephone app 36 B is ended.
- control unit 47 proceeds to S 15 to determine whether or not the duration time is obtained.
- the control unit 47 determines whether or not the incoming call is now being received (S 36 ). When the incoming call is now being received (YES in S 36 ), the control unit 47 proceeds to S 17 to determine whether or not the operation of responding to the incoming telephone call is detected. When the incoming call is not being received now (NO in S 36 ), the control unit 47 ends the processing operation illustrated in FIGS. 12A and 12B .
- control unit 47 proceeds to S 21 to perform the operation of responding to the incoming telephone call through the telephone app executing unit 42 , and switch display from the business app screen 32 A to the telephone app screen 32 B.
- the control unit 47 that performs the incoming call response processing illustrated in FIGS. 12A and 12B requests the duration time related to the terminal ID of the own terminal and the incoming call number from the relay server 4 , and performs screen display of the duration time on the telephone app screen 32 B.
- the user can recognize the duration time of a session with the business system 2 before an incoming call response by viewing the duration time 52 C on the telephone app screen 32 B.
- the control unit 47 moves the business app 36 A to the background, lowers the volume of the business app 36 A in the case where the audio buffer 35 is being used, and performs the operation of responding to the incoming telephone call.
- the user can respond to the incoming telephone call while maintaining the session with the business system 2 .
- reducing the mixing of sound produced by the business app 36 A enables the telephone call of the telephone app 36 B to be performed smoothly while the session with the business system 2 is maintained.
- the control unit 47 performs the operation of responding to the incoming telephone call in the case where the audio buffer 35 is not being used. As a result, the user can respond to the incoming telephone call while maintaining the session with the business system 2 .
- control unit 47 performs the operation of responding to the incoming telephone call, and performs screen display of the remaining time of the duration time on the telephone app screen 32 B.
- the user can recognize the remaining time of the duration time of the session with the business system 2 by viewing the remaining time on the telephone app screen 32 B.
- control unit 47 moves the business app 36 A in the background to the foreground.
- the user can continue the business app 36 A because the session with the business system 2 is maintained even after the end of the telephone call.
- control unit 47 can maintain the telephone call while the session with the business system 2 is disconnected after the passage of the duration time.
- the business system 2 can reduce a processing load resulting from indiscriminately maintaining sessions.
- control unit 47 performs screen display of the end of the duration time on the telephone app screen 32 B.
- the user can recognize the end of the duration time, that is, the disconnection of the session with the business system 2 by viewing the end of the duration time on the telephone app screen 32 B.
- FIG. 13 is a flowchart illustrating an example of processing operation of a CPU within a relay server in relation to providing processing.
- the CPU and the relay server described with reference to FIG. 13 may be the CPU 12 and the relay server 4 , respectively, illustrated in FIG. 9 .
- the providing processing illustrated in FIG. 13 retrieves, from the management table 13 , a duration time related to an incoming call number, and provides the duration time to the user terminal 3 , in response to a time request related to the incoming call number of an incoming telephone call from the user terminal 3 .
- the CPU 12 of the relay server 4 determines whether or not a time request is detected from the user terminal 3 (S 41 ).
- the time request includes the terminal ID identifying the user terminal 3 making the time request, the incoming call number of the incoming telephone call to the user terminal 3 , and the app name identifying the business app 36 A being executed on the user terminal 3 .
- the search unit 12 A within the CPU 12 searches the management table 13 for a duration time on the basis of the terminal ID, the incoming call number, and the name of the business app in the time request (S 42 ).
- the search unit 12 A determines whether or not there is a session duration time corresponding to the terminal ID, the incoming call number, and the app name within the management table 13 (S 43 ).
- the providing unit 12 B within the CPU 12 provides the session duration time to the corresponding user terminal 3 (S 44 ), and ends the processing operation illustrated in FIG. 13 .
- the search unit 12 A determines whether or not there is a session duration time corresponding to the terminal ID and the incoming call number within the management table 13 (S 45 ).
- the providing unit 12 B When there is a session duration time corresponding to the terminal ID and the incoming call number within the management table 13 (YES in S 45 ), the providing unit 12 B provides the session duration time to the corresponding user terminal 3 (S 46 ), and ends the processing operation illustrated in FIG. 13 .
- the search unit 12 A When there is no session duration time corresponding to the terminal ID and the incoming call number within the management table 13 (NO in S 45 ), the search unit 12 A provides information indicating that there is no corresponding duration time to the corresponding user terminal 3 (S 47 ), and ends the processing operation illustrated in FIG. 13 .
- the CPU 12 ends the processing operation illustrated in FIG. 13 .
- the CPU 12 of the relay server 4 that performs the providing processing illustrated in FIG. 13 can obtain, from the management table 13 , the duration time corresponding to the terminal ID, the app name, and the incoming call number in the time request, and provide the obtained duration time to the user terminal 3 , in response to the time request from the user terminal 3 .
- the CPU 12 can obtain, from the management table 13 , the duration time corresponding to the terminal ID and the incoming call number in the time request, and provide the obtained duration time to the user terminal 3 .
- the CPU 12 can provide information indicating that there is no corresponding duration time to the user terminal 3 .
- the user terminal 3 When an incoming telephone call is detected during a session with the business system 2 in which session the business app 36 A is used, the user terminal 3 according to the present embodiment obtains the incoming call number of the incoming telephone call, and obtains the duration time corresponding to the incoming call number from the relay server 4 . Further, obtaining the duration time, the user terminal 3 moves the business app 36 A to the background so as to maintain the session with the business system 2 within the duration time, and allows telephone conversation for the incoming telephone call, according to a response to the incoming telephone call. As a result, the duration of the session with the business system 2 and telephone call connection are made compatible with each other. Thus, the convenience of the user and a reduction in the load of the business system 2 are made compatible with each other.
- the user terminal 3 moves the business app 36 A from the background to the foreground. As a result, the business app 36 A can be resumed smoothly after the end of the telephone call.
- the user terminal 3 displays a screen requesting the reestablishment of a session with the business system 2 by using the business app 36 A.
- the business app 36 A can be resumed by an input operation on the screen requesting the reestablishment.
- the user terminal 3 disconnects the session with the business system 2 .
- the time of the session with the business system 2 is limited. A processing load on the business system 2 side due to the holding of sessions can therefore be reduced.
- the user terminal 3 When the business app 36 A is an app using sound, the user terminal 3 lowers the volume of the business app 36 A to a given level. Therefore, the telephone call can preferably be prevented from being obstructed by the sound of the business app 36 A in the background.
- the user terminal 3 performs screen display of the remaining time as notice information giving notice of the passage of the duration time while the business app 36 A is in the background. As a result, the user of the user terminal 3 can recognize the remaining time of the duration time by viewing the remaining time.
- a duration time corresponding to the terminal ID, the incoming call number, and the app name is requested from the relay server 4 in S 14 in FIG. 12A in the above-described embodiment
- a duration time corresponding to the terminal ID and the incoming call number irrespective of the app name may be requested.
- a duration time corresponding to the incoming call number irrespective of the terminal ID and the app name may be requested.
- the user terminal 3 may retain the management table according to the second embodiment.
- the second obtaining unit 45 obtains the duration time corresponding to the incoming call number and the like from the management table without inquiring of the relay server 4 .
- the constituent elements of the units illustrated in the figures do not necessarily need to be physically configured as illustrated in the figures. That is, specific forms of distribution and integration of the units are not limited to the specific forms illustrated in the figures, but the whole or a part of the units can be configured to be distributed or integrated functionally or physically in arbitrary units according to various kinds of loads, usage conditions, and the like.
- the whole or an arbitrary part of various kinds of processing functions performed in the respective devices may be performed on a CPU (or a microcomputer such as an MPU, an MCU, or the like).
- a CPU or a microcomputer such as an MPU, an MCU, or the like.
- the whole or an arbitrary part of the various kinds of processing functions may be performed on a program executed by the CPU (or the microcomputer such as the MPU, the MCU, or the like), or performed on hardware based on wired logic.
- FIG. 14 is a diagram of assistance in explaining an example of a call terminal device that executes a call processing program.
- a call terminal device 100 that executes a call processing program illustrated in FIG. 14 includes a communicating unit 110 , an operating unit 120 , a ROM 130 , a RAM 140 , and a CPU 150 .
- the communicating unit 110 , the operating unit 120 , the ROM 130 , the RAM 140 , and the CPU 150 are connected to each other via a bus 160 .
- the ROM 130 stores, in advance, the call processing program that exerts functions similar to the functions of the foregoing embodiments.
- the ROM 130 stores, as the call processing program, a first obtaining program 130 A, a second obtaining program 130 B, and a control program 130 C.
- the call processing program may be recorded on a recording medium readable by a drive not illustrated in the figures rather than in the ROM 130 .
- the recording medium may be for example a portable recording medium such as a CD-ROM, a DVD, a USB memory, or the like, or a semiconductor memory such as a flash memory or the like.
- the CPU 150 functions as a first obtaining process 150 A by reading out the first obtaining program 130 A from the ROM 130 . Further, the CPU 150 functions as a second obtaining process 150 B by reading out the second obtaining program 130 B from the ROM 130 . The CPU 150 functions as a control process 150 C by reading out the control program 130 C from the ROM 130 .
- the call terminal device 100 When the call terminal device 100 detects an incoming telephone call during a session with a specific system in which session a specific application is used, the call terminal device 100 obtains the incoming call number of the incoming telephone call. The call terminal device 100 obtains, from a server, a duration time for which the session with the specific system can be maintained, the duration time corresponding to the incoming call number. Obtaining the duration time, the call terminal device 100 moves the specific application to a background so as to maintain the session with the specific system within the duration time, and allows a telephone conversation for the incoming telephone call, according to a response to the incoming telephone call. As a result, the duration of the session with the specific system and telephone call connection can be made compatible with each other.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Telephonic Communication Services (AREA)
- Computer And Data Communications (AREA)
Abstract
A session managing method executed by a session managing device, the session managing method includes: establishing a session with a communicating device in response to a first request from the communicating device; extending a duration limit of the session by a first time interval according to an actual result of communication between the communicating device and the session managing device; and extending the duration limit of the session by a second time interval longer than the first time interval when receiving, from the communicating device, a notification indicating that a telephone call with another communicating device is started.
Description
- This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2014-155255, filed on Jul. 30, 2014, and the prior Japanese Patent Application No. 2015-087725, filed on Apr. 22, 2015, the entire contents of which are incorporated herein by reference.
- Technologies disclosed in the present embodiments are related to technologies that manage a session.
- There has recently been a desire to utilize for example a smart device such as a smart phone, a tablet, or the like for business. There have been an increasing number of bring your own device (BYOD) cases where privately owned smart devices are used for business. For example, in a case where a privately owned smart phone is used for business, flexible switching between access to a business system and private use is desired to be realized while a secure state is ensured. Related technologies are disclosed in Japanese Laid-open Patent Publication No. 2011-61814 and Japanese Laid-open Patent Publication No. 2013-201670, for example.
- According to an aspect of the invention, a session managing method executed by a session managing device, the session managing method includes: establishing a session with a communicating device in response to a first request from the communicating device; extending a duration limit of the session by a first time interval according to an actual result of communication between the communicating device and the session managing device; and extending the duration limit of the session by a second time interval longer than the first time interval when receiving, from the communicating device, a notification indicating that a telephone call with another communicating device is started.
- The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
- It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
-
FIG. 1 is a diagram of assistance in explaining an example of a BYOD system; -
FIG. 2 is a diagram of assistance in explaining an example of a session management table; -
FIG. 3 is a diagram of assistance in explaining an example of a duration time management table; -
FIG. 4 is a flowchart illustrating an example of processing operation of a relay server in relation to session management processing; -
FIG. 5 is a flowchart illustrating an example of processing operation of a relay server in relation to session management processing at a time of an incoming call response; -
FIG. 6 is a flowchart illustrating an example of processing operation of a user terminal in relation to business screen display processing; -
FIG. 7 is a flowchart illustrating an example of processing operation of a user terminal at a time of an incoming call response; -
FIG. 8 is a diagram of assistance in explaining an example of a hardware configuration of a relay server that executes a session managing program; -
FIG. 9 is a diagram of assistance in explaining an example of a BYOD system; -
FIG. 10 is a diagram of assistance in explaining an example of a management table; -
FIG. 11A is a diagram of assistance in explaining an example of display screens of a user terminal; -
FIG. 11B is a diagram of assistance in explaining an example of display screens of a user terminal; -
FIG. 11C is a diagram of assistance in explaining an example of display screens of a user terminal; -
FIG. 12A is a flowchart illustrating an example of processing operation of a CPU within a user terminal in relation to incoming call response processing; -
FIG. 12B is a flowchart illustrating an example of processing operation of a CPU within a user terminal in relation to incoming call response processing; -
FIG. 13 is a flowchart illustrating an example of processing operation of a CPU within a relay server in relation to providing processing; and -
FIG. 14 is a diagram of assistance in explaining an example of a call terminal device that executes a call processing program. - When there is a private incoming call to a smart phone owned by an individual during a session with a business system during which session a business application is used on the smart phone, for example, and a telephone conversation is directly performed in response to the incoming call, the session with the business system is disconnected. As a result, it may be necessary to perform an operation for reestablishing a session with the business system, or for example an operation of inputting a login identification (ID) and a password or the like. Thus, a great burden of the operation is imposed on the user.
- In one aspect, it is an object of the technologies disclosed in the present embodiments to achieve compatibility between the duration of a session between a communicating device and a business system and telephone call connection at the communicating device.
- Embodiments disclosed in the present application will hereinafter be described in detail with reference to the drawings. It is to be noted that the disclosed technologies is not limited by the present embodiments. In addition, the embodiments to be illustrated in the following may be combined with each other as appropriate within a scope in which no contradiction occurs.
- Description will first be made of a mechanism in related art which mechanism is related to the duration and disconnection of a session between a communicating device as a user terminal and a server. Incidentally, the following description will be made by taking, as an example, a thin client system adopting a method of screen transfer by a relay server between a communicating device and a business system.
- In the thin client system adopting the screen transfer method, the relay server transfers a request from the communicating device to the business system. When the relay server then receives a processing result from the business system, the relay server generates a screen for displaying the processing result, and transfers the screen data of the screen to the communicating device. The method of thus transferring the screen data generated by the relay server to the communicating device is generally referred to as a screen transfer method.
- First, when the communicating device starts a business application, a negotiation for establishing a session is performed between the communicating device and the relay server according to a given protocol. Transmission control protocol/internet protocol (TCP/IP), for example, is adopted as the given protocol. In addition, when establishing the session, the user of the communicating device may need to input a password and a user ID.
- Next, after the session is established, communication is started between the communicating device and the business system via the relay server. For example, the communicating device transmits a request to the relay server according to an input by the user. When the relay server then transfers the request to the business system, the business system performs processing according to the request. Next, obtaining a result of the processing from the business system, the relay server generates screen data such as a bit map or the like for displaying the processing result, and returns the screen data to the communicating device.
- Receiving the screen data, the communicating device displays a business screen corresponding to the screen data, and returns an acknowledgement (Ack) signal (reception confirmation) notifying the reception of the screen data to the relay server. The series of pieces of processing is repeated while the session between the communicating device and the relay server is maintained. The user can thereby view results of processing by the business system and perform operations of the business system by using the communicating device.
- In addition, the relay server manages the session with the communicating device, and maintains or disconnects the session. For example, the relay server monitors the communication between the communicating device and the relay server, and disconnects the session with the communicating device when no communication is performed over a certain time. That is, a time-out occurs, and the session is disconnected.
- For example, when no Ack signal is received from a certain communicating device for a certain time, or when no request is received from a certain communicating device for a certain time, the relay server disconnects the session with the certain communicating device. This is intended to preferably prevent the resources of the relay server from being pressed when the relay server continues to maintain sessions with a large number of communicating devices.
- For example, for each session, a memory area of the relay server is used, and also a central processing unit (CPU) is used. Hence, the larger the number of sessions maintained becomes, the more the resources of the relay server are pressed. Thus, disconnecting an unnecessary session releases resources on the relay server side, and therefore enables effective use of the resources of the relay server.
- When session management by the above method is performed, in a case where there is an incoming call for a telephone conversation (hereinafter described simply as an “incoming call”) to the communicating device, and the user responds to the incoming call and performs a telephone conversation, for example, none of a request and an Ack signal from the communicating device is transmitted to the relay server. A time-out consequently occurs, so that the session is disconnected. Hence, the user may need to input a login ID and a password again after an end of the telephone conversation.
- On the other hand, continuing to maintain the session with the business system unconditionally increases a risk of leakage of information, and is thus not desirable. Further, unnecessarily maintaining a session also leads to wasteful consumption of the resources of the server and the network. Accordingly, it may be necessary to improve the convenience of the user and extend the duration of a session according to conditions.
- Accordingly, the technologies disclosed in the present embodiments provide mechanisms that maintain a session for a certain time even when a response to an incoming call is made on the communicating device side. For example, a technology disclosed in a first embodiment maintains, for a particular communicating device during a telephone call, a session between the communicating device and the relay server for a longer time than a normal time, by extending a time before a time-out occurs on the relay server side. A technology disclosed in a second embodiment preferably prevents the relay server from determining that a time-out has occurred and disconnecting the session by transmitting a packet for maintaining the session with the relay server from the communicating device side to the relay server side at intervals of a given time during a telephone call. Incidentally, continuing to maintain a session when a telephone call continues for a certain time or longer may lead to unnecessary use of resources on the relay server side. The following embodiments accordingly provide mechanisms that maintain a session for only a certain time longer than a normal time-out time from a start of a telephone call (start of response to an incoming call).
- It is to be noted that the following embodiments are also applicable to thin client systems using secure communications, such as a virtual private network (VPN), secure sockets layer (SSL), and the like, other than thin client systems using the screen transfer method by the relay server. This is because these secure communications monitor a time-out in session units, and perform session management, as with the screen transfer method.
- In addition to maintaining a session according to a start of a telephone call between a communicating device and another communicating device, a session may also be maintained in particular timing. For example, a session may be maintained when a different application (a telephone application, a mailer, a browser, or the like) other than the business application for accessing the business system is started while the business application is operating, and when it is detected that the business application has made a transition to a background.
- The following description will be made supposing that the communicating device is a
user terminal 300, that the relay server is arelay server 400, and that the business system is abusiness system 2. In a case where theuser terminal 300 is a smart device privately owned by a user, a thin client system including theuser terminal 300, therelay server 400, and thebusiness system 2 is referred to as aBYOD system 1000. However, theuser terminal 300 may be a smart device provided by a company or the like. -
FIG. 1 is a diagram of assistance in explaining an example of a BYOD system. The BYOD system may be theBYOD system 1000. TheBYOD system 1000 illustrated inFIG. 1 includes thebusiness system 2, theuser terminal 300, and therelay server 400. In the present embodiment, theBYOD system 1000 adopts the screen transfer method. - The
user terminal 300 accesses thebusiness system 2 via therelay server 400 using a specific application such as a business application (hereinafter referred to as a business app) or the like. Theuser terminal 300 is coupled to therelay server 400 by radio. In addition, theuser terminal 300 is an example of a communicating device. - Further, the
user terminal 300 receives screen data for displaying a result of processing by thebusiness system 2 from therelay server 400, and displays a business screen corresponding to the screen data. Incidentally, it is desirable from a viewpoint of security to adopt a mechanism that does not leave the screen data within theuser terminal 300 after the session between theuser terminal 300 and therelay server 400 is disconnected. - The
business system 2 is for example a specific system that manages business data within the company, and which allows various kinds of business in the company to be performed in a secure state. There may be a plurality ofbusiness systems 2. - The
relay server 400 relays communication between thebusiness system 2 and theuser terminal 300. Therelay server 400 is for example a gate way server providing a virtual web browser in a data center or the like. Incidentally, the relay server is an example of a session managing device. - The
relay server 400 is for example coupled to thebusiness system 2 by wire. Further, therelay server 400 enables theuser terminal 300 to access thebusiness system 2 in a secure state using the business app, and converts a processing result on thebusiness system 2 side into screen data such as a bit map or the like and transfers the screen data to theuser terminal 300. As described above, therelay server 400 enables remote operation of thebusiness system 2 by theuser terminal 300. - The
relay server 400 includes arelay unit 411, acontrol unit 412, and astorage unit 413. Thecontrol unit 412 is for example a CPU. Thestorage unit 413 is for example a read only memory (ROM), a random access memory (RAM), and a hard disk drive (HDD). - The
relay unit 411 relays screen data, commands, and the like mutually between theuser terminal 300 and thebusiness system 2. - The
control unit 412 controls the whole of therelay server 400. For example, thecontrol unit 412 controls the transfer of data between theuser terminal 300 and thebusiness system 2. Thecontrol unit 412 includes asession managing unit 412A and asetting unit 412B. Thesession managing unit 412A manages each session. For example, thesession managing unit 412A sets a session duration time and monitors for a time-out of the session duration time for each session identified by an IP address and a port number. - For example, each time a request or an Ack signal is received from a
user terminal 300, the duration time of a session with theuser terminal 300 is extended by a first time interval. In addition, when an incoming call response is detected in aparticular user terminal 300, the session duration time of a session with theparticular user terminal 300 is extended by a second time interval larger than the first time interval. For example, the first time interval is one minute, and the second time interval is three minutes. Further, as for a session whose session duration limit has passed, thesession managing unit 412A disconnects the session. - The
setting unit 412B is a processing unit that sets the session duration time (second time interval) extended according to an incoming call response. For example, the second time interval may be uniform irrespective of theuser terminal 300, or may be set for each of telephone numbers of callers of incoming calls. - For example, when the telephone number of a caller is the number of another
user terminal 300 provided from the company to which the caller belongs as in the case of theuser terminal 300, the session duration time is extended according to an incoming call response. A company generally manages the telephone numbers ofuser terminals 300 provided by the company. Thesetting unit 412B can therefore set the session duration time in association with the telephone number of auser terminal 300 provided by the company. - In addition, the
setting unit 412B may set the session duration time for eachbusiness app 313A. For example, when thebusiness app 313A being executed is abusiness app 313A that takes time to operate, it is presumed that the user takes more time to perform operation after an end of a telephone call. Therefore, thesetting unit 412B improves the convenience of the user more by setting the session duration time for eachbusiness app 313A. - The
storage unit 413 stores various kinds of information, a program, and the like. Thestorage unit 413 includes a session management table 413A and a duration time management table 413B. - The session management table 413A is a table managed by the
session managing unit 412A, and stores information for managing sessions withuser terminals 300.FIG. 2 is a diagram of assistance in explaining an example of a session management table. The session management table illustrated inFIG. 2 may be the session management table 413A illustrated inFIG. 1 . - The session management table 413A illustrated in
FIG. 2 stores a terminal ID, an IP address, a port number, a latest communication time, and a session duration limit in association with each other. The terminal ID is information identifying theuser terminal 300. The IP address is identifying information assigned to theuser terminal 300 coupled to the network. The port number is information identifying a program used in TCP/IP communication. Incidentally, a session is identified by a combination of the IP address and the port number. The terminal ID, the IP address, and the port number are obtained from theuser terminal 300 when a session is established. - The latest communication time indicates the time of a latest communication performed using the corresponding session. For example, each time a request is transmitted from the
user terminal 300 to therelay server 400, and each time an Ack signal is transmitted from theuser terminal 300 to therelay server 400, thesession managing unit 412A updates the latest communication time corresponding to theuser terminal 300. - The session duration limit represents a time limit until which the corresponding session is maintained. For example, the
session managing unit 412A sets, as the session duration limit, a time obtained by adding the first time interval to the latest communication time. In addition, when an incoming call response is detected in theuser terminal 300, thesession managing unit 412A sets, as the session duration limit, a time obtained by adding the second time interval to a time at which the incoming call response is detected. - In the example of
FIG. 2 , in a session identified by an IP address “111.11.11.111” and a port number “1,” for example, the latest communication was performed at “2015.01.01, 00:00:00:00,” and the session duration limit is “2015.01.01, 00:01:00:00.” Incidentally, in the example ofFIG. 2 , the first time interval is one minute. - In addition, each time a new session is established, the
session managing unit 412A adds a record corresponding to the new session in the session management table 413A. As for a session whose session duration limit has passed, thesession managing unit 412A deletes the record of the session from the session management table 413A. - Returning to
FIG. 1 , the duration time management table 413B is a table managed by thesetting unit 412B and referred to by thesession managing unit 412A. The duration time management table 413B stores the session duration time (second time interval) for theuser terminal 300. -
FIG. 3 is a diagram of assistance in explaining an example of a duration time management table. The duration time management table illustrated inFIG. 3 may be the duration time management table 413B illustrated inFIG. 1 . The duration time management table 413B stores the session duration time for extending the session duration limit at a time of an incoming call response. The duration time management table 413B stores the information of “three minutes,” for example. Incidentally, the duration time management table 413B may also store the session duration time (normal session duration time) for extending the session duration limit when a response from theuser terminal 300 is received, the session duration time (normal session duration time) corresponding to the first time interval. - Further, the duration time management table 413B may store a session duration time for each
user terminal 300 in association with the terminal ID. In addition, the duration time management table 413B may store a session duration time for each business app in association with an application type that identifies the business app. Further, the duration time management table 413B may store a session duration time for each caller in association with the telephone number of the caller. Moreover, the duration time management table 413B may store session duration times according to time periods of incoming call responses and the number of user terminals using therelay server 400. - The
setting unit 412B registers the session duration time in the duration time management table 413B according to an input of an administrator of thebusiness system 2 and therelay server 400. Thesetting unit 412B may also register the session duration time in the duration time management table 413B according to an input from theuser terminal 300. - Returning to
FIG. 1 , theuser terminal 300 includes a communicatingunit 311, acontrol unit 312, astorage unit 313, adisplay unit 314, anoperating unit 315, and an audio input-output unit 316. Thecontrol unit 312 is for example a CPU. Thestorage unit 313 is for example a ROM, a RAM, and an HDD. - The communicating
unit 311 is a communication interface in charge of radio communication with a base station and communication with therelay server 400, the communication with therelay server 400 using the business app. Thedisplay unit 314 is an output interface that performs screen display of various kinds of information. Theoperating unit 315 is an input interface that inputs various kinds of commands. Theoperating unit 315 for example corresponds to a touch panel that detects touch operation on the display screen of thedisplay unit 314 or the like. - The audio input-
output unit 316 for example corresponds to a microphone, a speaker, or the like, and corresponds to an input-output interface that inputs and outputs sound. Thestorage unit 313 for example stores thebusiness app 313A and atelephone app 313B. Thebusiness app 313A is a specific app that establishes a session with thebusiness system 2 via therelay server 400, enables access to thebusiness system 2 in a secure state, and performs screen display of a business screen on thedisplay unit 314. Thetelephone app 313B is an app that implements a telephone function using the radio communication of a carrier, for example. Thetelephone app 313B may be an app that implements a telephone call function using the Internet. - The
control unit 312 controls the whole of theuser terminal 300. A businessapp executing unit 312A performs various kinds of processing operation related to thebusiness app 313A on the basis of thebusiness app 313A. For example, the businessapp executing unit 312A establishes a session with therelay server 400. Further, after establishing the session, the businessapp executing unit 312A generates a request to thebusiness system 2 on the basis of a user operation input from theoperating unit 315. The businessapp executing unit 312A then transmits the request to therelay server 400 via the communicatingunit 311. - In addition, when receiving a response (image data corresponding to a result of processing by the business system 2) from the
relay server 400 via the communicatingunit 311, the businessapp executing unit 312A controls thedisplay unit 314 to display a business screen corresponding to the image data on thedisplay unit 314. - Further, when receiving the response, the business
app executing unit 312A returns an Ack signal to therelay server 400 via the communicatingunit 311. Further, when detecting that a telephoneapp executing unit 312B has responded to an incoming call, the businessapp executing unit 312A notifies therelay server 400 via the communicatingunit 311 that an incoming call response is detected. - The telephone
app executing unit 312B performs various kinds of processing operation related to thetelephone app 313B. For example, when the user gives an instruction to respond to an incoming call from a different communicating device (another user terminal 300), the telephoneapp executing unit 312B starts a telephone call with the different communicating device. In addition, when the user gives an instruction to end the telephone call, the telephoneapp executing unit 312B ends the telephone call. -
FIG. 4 is a flowchart illustrating an example of processing operation of a relay server in relation to session management processing. The relay server described with reference toFIG. 4 may be therelay server 400 illustrated inFIG. 1 . Therelay unit 411 receives a session establishment request from the user terminal 300 (S101). Incidentally, the session establishment request includes a terminal ID, an IP address, and a port number, and further includes a user ID and a password for accessing thebusiness system 2. - The
control unit 412 performs a negotiation with theuser terminal 300, and establishes a session, according to a given protocol (for example TCP/IP) (S102). Then, thesession managing unit 412A adds a new record related to the newly established session in the session management table 413A. - The
control unit 412 determines whether or not a request is received from the user terminal 300 (S103). When a request is received (YES in S103), thecontrol unit 412 controls therelay unit 411 to transfer the request to the business system 2 (S104). Next, thecontrol unit 412 determines whether or not a response (processing result) in response to the request is received from the business system 2 (S105). - The
control unit 412 waits until receiving a processing result (NO in S105). When thecontrol unit 412 has received a processing result (YES in S105), thecontrol unit 412 generates screen data for displaying the processing result. For example, thecontrol unit 412 generates the screen data by generating a bit map that displays the processing result and further performing compression processing. - The
relay unit 411 transfers the screen data to theuser terminal 300 under control of the control unit 412 (S106). Thesession managing unit 412A next determines whether or not an Ack signal is received from the user terminal 300 (S107). Then, when an Ack signal is received (YES in S107), thesession managing unit 412A updates the session management table 413A (S108). For example, thesession managing unit 412A updates the latest communication time in the session management table 413A with the reception time of the Ack signal, and updates the session duration limit with a time obtained by adding the first time interval to the updated latest communication time (reception time of the Ack signal). This processing extends the session duration limit. Incidentally, thesession managing unit 412A may update the session management table 413A in timing in which the request is received (YES in S103) other than the timing in which the Ack signal is received. - When no request is received in S103 (NO in S103), when no Ack signal is received in S107 (NO in S107), or when the updating of the session management table 413A is ended in S108, the
session managing unit 412A deletes the record whose session duration limit has expired from the session management table 413A (S109). It suffices for thesession managing unit 412A to identify the record whose session duration limit has expired by obtaining a present time and comparing the present time with the session duration limit in the session management table 413A. - Then, after S109 is ended, the
control unit 412 returns to S103 to repeat the series of pieces of processing from S103 to S109. Incidentally, thesession managing unit 412A may determine whether or not there is a record whose session duration limit has expired and delete the record whose session duration limit has expired from the session management table 413A at fixed time intervals independently of the flow illustrated inFIG. 4 . - By the above processing, the
relay server 400 can manage sessions, and disconnect a timed-out session. Hence, according to the present embodiment, the resources of therelay server 400 are used effectively by disconnecting a session with auser terminal 300 that has not communicated with therelay server 400 for a certain time or longer. -
FIG. 5 is a flowchart illustrating an example of processing operation of a relay server in relation to session management processing at a time of an incoming call response. The relay server described with reference toFIG. 5 may be therelay server 400 illustrated inFIG. 1 . Thecontrol unit 412 determines whether or not an incoming call response start notification is received from the user terminal 300 (S111). Incidentally, the incoming call response start notification is generated by the businessapp executing unit 312A in theuser terminal 300 when the telephoneapp executing unit 312B starts a telephone call. The incoming call response start notification is then transmitted to therelay server 400. In addition, when the session duration time is determined according to the caller of an incoming call, for example, the incoming call response start notification also includes information on the telephone number of the caller. The incoming call response start notification may further include information on a time of a start of an incoming call response. - When the incoming call response start notification is received (YES in S111), the
session managing unit 412A updates the session management table 413A (S112). For example, thesession managing unit 412A refers to the duration time management table 413B, and obtains the session duration time (the second time interval). Then, thesession managing unit 412A identifies a record corresponding to a session used to transmit the incoming call response start notification in the session management table 413A. Thesession managing unit 412A updates a session duration limit in the record with a time obtained by adding the session duration time to a time of reception of the incoming call response start notification. - Next, when no incoming call response start notification is received in S111 (NO in S111), or when the updating of the session management table 413A is ended in S112, the
control unit 412 determines whether or not an incoming call response end notification is received from the user terminal 300 (S113). Incidentally, the incoming call response end notification is generated by the businessapp executing unit 312A in theuser terminal 300 when the telephoneapp executing unit 312B ends the telephone call. The incoming call response end notification is then transmitted to therelay server 400. - When the incoming call response end notification is received (YES in S113), the
session managing unit 412A updates the session management table 413A (S114). For example, thesession managing unit 412A identifies the record corresponding to the session used to transmit the incoming call response end notification in the session management table 413A. Thesession managing unit 412A then updates the session duration limit in the record with a time obtained by adding the first time interval to a time of reception of the incoming call response end notification. - As a result of the processing of S112 and S114, the session can be maintained for a period of the second time interval from the start of the telephone call in the case where the
user terminal 300 is making the telephone call, and the session can be maintained for a period of the first time interval after the telephone call is ended. That is, the present embodiment maintains the session for a period of the second time interval longer than the first time interval during the telephone call, and maintains the session for a period of the first time interval shorter than the second time interval after the end of the telephone call to make effective use of the resources of therelay server 400. - Next, when the incoming call response end notification is not received in S113 (NO in S113), or when the session management table 413A is updated in S114, the
session managing unit 412A deletes the record whose session duration limit has expired from the session management table 413A (S115). Thecontrol unit 412 then returns to S111. It suffices for a method of identifying the record whose session duration limit has expired to be similar to the above-described method. - In S115, for example, the session in which the second time interval has passed since the start of the telephone call is determined to be a session whose session duration limit has expired, and the record corresponding to the session is deleted from the session management table 413A. Incidentally, S115 in
FIG. 5 may be integrated into S109 inFIG. 4 . That is, records whose session duration limit has expired may be deleted en bloc in the processing flow ofFIG. 4 , and S115 inFIG. 5 may be omitted. -
FIG. 6 is a flowchart illustrating an example of processing operation of a user terminal in relation to business screen display processing. The user terminal described with reference toFIG. 6 may be theuser terminal 300 illustrated inFIG. 1 . Thecontrol unit 312 determines whether or not thebusiness app 313A is started (S120). When thebusiness app 313A is not started (NO in S120), the processing of the present flowchart is ended. - When the
business app 313A is started (YES in S120), on the other hand, the businessapp executing unit 312A controls the communicatingunit 311 to transmit a session establishment request to the relay server 400 (S121). Then, under control of the businessapp executing unit 312A, the communicatingunit 311 establishes a session with therelay server 400 according to a given protocol (S122). - Next, the business
app executing unit 312A generates a request according to an instruction from the user (S123). Then, the businessapp executing unit 312A transmits the request to therelay server 400 via the communicating unit 311 (S124). - Next, when the communicating
unit 311 receives screen data from the relay server 400 (S125), the communicatingunit 311 transmits an Ack signal notifying the reception of the screen data to therelay server 400 under control of the businessapp executing unit 312A (S126). Further, thedisplay unit 314 displays a business screen based on the received screen data under control of the businessapp executing unit 312A (S127). - The
control unit 312 determines whether or not an instruction to end thebusiness app 313A is given by the user (S128). When the ending instruction is given (YES in S128), thecontrol unit 312 ends the series of pieces of processing. When the ending instruction is not given (NO in S128), on the other hand, thecontrol unit 312 returns to S123. - However, when the session is disconnected, the transmission of the request (S124) fails. Hence, in this case, the
control unit 312 may need to return to S121, and transmit a session establishment request to therelay server 400 again. - As described above, while the session is established, a request and a response are exchanged between the
user terminal 300 and thebusiness system 2 via therelay server 400, and the user is provided with a result of processing by thebusiness system 2 as a business screen. -
FIG. 7 is a flowchart illustrating an example of processing operation of a user terminal at a time of an incoming call response. The user terminal described with reference toFIG. 7 may be theuser terminal 300 illustrated inFIG. 1 . Thecontrol unit 312 determines whether or not there is an incoming call response (S131). Incidentally, when there is an incoming call response, thetelephone app 313B is started. When an incoming call response is detected (YES in S131), thecontrol unit 312 determines whether or not thebusiness app 313A is being executed (S132). - When the
business app 313A is being executed (YES in S132), the businessapp executing unit 312A controls the communicatingunit 311 to transmit an incoming call response start notification to the relay server 400 (S133). The telephoneapp executing unit 312B then starts a telephone call (S134). - Next, the
control unit 312 determines whether or not the telephone call is ended (S135). When the telephone call is ended (YES in S135), thecontrol unit 312 determines whether or not thebusiness app 313A is being executed (S136). When thebusiness app 313A is being executed (YES in S136), the businessapp executing unit 312A controls the communicatingunit 311 to transmit an incoming call response end notification to the relay server 400 (S137). Then, the telephoneapp executing unit 312B ends the telephone call (S138), and thecontrol unit 312 ends thetelephone app 313B. Incidentally, when the telephone call is not ended (NO in S135), thecontrol unit 312 waits until the telephone call is ended. - When no incoming call response is detected in S131 (NO in S131), on the other hand, the
control unit 312 ends the processing of the present flowchart. In addition, when thebusiness app 313A is not being executed in S132 (NO in S132), thecontrol unit 312 proceeds to S134. Further, when thebusiness app 313A is not being executed in S136 (NO in S136), thecontrol unit 312 proceeds to S138. - As described above, the
user terminal 300 transmits an incoming call response start notification to therelay server 400 at a point in time that a response to an incoming call is started. Therelay server 400 can therefore detect that theuser terminal 300 has started a telephone call. Hence, therelay server 400 can extend the session duration limit of the session with theuser terminal 300 during the telephone call by the second time interval longer than the first time interval. In other words, in related art, the session between theuser terminal 300 and therelay server 400 is disconnected at a point in time that the first time interval has passed since the transmission of a last request or a last Ack signal during the telephone call. According to the present embodiment, on the other hand, the session is maintained for a period of the second time interval longer than the first time interval even during the telephone call. That is, according to the present embodiment, the duration time of the session between theuser terminal 300 and therelay server 400 is set longer during the telephone call, and the session can be maintained until theuser terminal 300 ends the telephone call. - Further, the whole or an arbitrary part of the various kinds of processing functions performed by the respective devices may be performed on a CPU (or a microcomputer such as a micro processing unit (MPU), a micro controller unit (MCU), or the like). In addition, it is needless to say that the whole or an arbitrary part of the various kinds of processing functions may be performed on a program executed by a CPU (or a microcomputer such as an MPU, an MCU, or the like) or on hardware based on wired logic.
- A hardware configuration of a relay server will next be described.
FIG. 8 is a diagram of assistance in explaining an example of a hardware configuration of a relay server that executes a session managing program. - A
relay server 200 illustrated inFIG. 8 corresponds to therelay server 400 inFIG. 1 . Therelay server 200 includes a communicatingunit 210, anHDD 220, aROM 230, aRAM 240, and aCPU 250. The communicatingunit 210, theHDD 220, theROM 230, theRAM 240, and theCPU 250 are coupled to each other via abus 260. - The
ROM 230 stores a session managing program describing the pieces of processing illustrated inFIG. 4 andFIG. 5 . Incidentally, the session managing program may be recorded on a recording medium readable by a drive not illustrated in the figures rather than in theROM 230. In addition, the recording medium may be for example a portable recording medium such as a compact disk read only memory (CD-ROM), a digital versatile disk (DVD), a universal serial bus (USB) memory, or the like, or a semiconductor memory such as a flash memory or the like. - The
CPU 250 functions as thecontrol unit 412 by reading out the session managing program from theROM 230 and executing the session managing program. In addition, the communicatingunit 210 functions as therelay unit 411 under control of theCPU 250. In addition, theHDD 220, theROM 230, and theRAM 240 function as thestorage unit 413 under control of theCPU 250. - A second embodiment has a mechanism that maintains a session with a relay server 4 for a time longer than a normal time-out time even when a communicating device such as a smart phone or the like (a
user terminal 3 inFIG. 9 , for example) is responding to an incoming call. For example, when theuser terminal 3 detects a response to an incoming call, theuser terminal 3 transmits a packet to the relay server 4 to maintain a session with the relay server 4 for a certain time. For example, the packet includes a date and time of transmission of the packet, a number of times of transmission of the packet, and the like set in the header of the packet, and the packet includes an appropriate data string such as “00000000” or the like in the body of the packet. - The relay server 4 updates a session duration limit as described in the foregoing embodiment each time a packet is received. Thus, the session between the
user terminal 3 and the relay server 4 is maintained even during the incoming call response by the packet received during the incoming call response. Incidentally, in the following description, theuser terminal 3 moves a business app to a background according to the incoming call response. However, even after the transition to the background, a communicating unit transmits the packet to the relay server 4 under control of a CPU that is executing the business app. -
FIG. 9 is a diagram of assistance in explaining an example of a BYOD system. ABYOD system 1 illustrated inFIG. 9 includes abusiness system 2, theuser terminal 3 such as a privately owned smart device or the like, and the relay server 4. TheBYOD system 1 for example accesses thebusiness system 2 from the privately owneduser terminal 3 via the relay server 4 using a specific application such as a business application (hereinafter referred to as an app) or the like, and transfers a business screen to theuser terminal 3. Theuser terminal 3 is enabled to perform remote operation of thebusiness system 2 via the relay server 4. Moreover, though the business screen is transferred to theuser terminal 3, thebusiness system 2 adopts a mechanism that does not leave the business screen within theuser terminal 3 when the session with theuser terminal 3 is disconnected. - The
business system 2 is for example a specific system that manages business data within a company, and which allows various kinds of business in the company to be performed in a secure state. Theuser terminal 3 is for example a BYOD call terminal device such as a smart phone, a tablet, or the like that is privately owned by an employee of the company, rather than a terminal provided from the company, for example. - The relay server 4 is for example a gate way (GW) server providing a virtual web browser in a data center or the like, the server relaying between the
business system 2 and theuser terminal 3 in a secure state. Suppose that the relay server 4 for example couples to theuser terminal 3 by radio, and couples to thebusiness system 2 by wire. Further, the relay server 4 enables theuser terminal 3 to access thebusiness system 2 in a secure state using the business app, and transfers a business screen from thebusiness system 2 side to theuser terminal 3. Further, the relay server 4 enables theuser terminal 3 to perform remote operation of thebusiness system 2. - The relay server 4 includes a
relay unit 11, aCPU 12, and a management table 13. Therelay unit 11 relays business screens, commands, and the like mutually between theuser terminal 3 and thebusiness system 2. TheCPU 12 controls the whole of the relay server 4. -
FIG. 10 is a diagram of assistance in explaining an example of a management table. The management table illustrated inFIG. 10 may be the management table 13 illustrated inFIG. 9 . The management table 13 illustrated inFIG. 10 is a storage unit that manages an app name, an incoming call number, and a session duration time in association with each terminal ID for identifying auser terminal 3. The app name is information identifying a business app being executed by theuser terminal 3 during an incoming telephone call. The incoming call number is the telephone number of another party as a caller of the incoming telephone call to theuser terminal 3. The session duration time is a time for which thebusiness system 2 can maintain or hold a session with theuser terminal 3 from a response to the incoming telephone call by theuser terminal 3, that is, from a start of a telephone call. - As illustrated in
FIG. 10 , for a “terminal A” as a terminal ID, a session duration time in a “business A” as an app name is set to be “three minutes” and a session duration time in a “business B” as an app name is set to be “one minute” in a case of an incoming call number of “080-xxx-xx.” In addition, for the “terminal A” as a terminal ID, in a case of an incoming call number of “090-yyy-xx,” the session duration time in all of business apps is set to be “three minutes” even when the app name is not determined. Incidentally, the contents of the management table 13 can be for example registered in advance by a registration application of the user of theuser terminal 3 or the like, and the duration times can also be registered as appropriate according to loads of thebusiness system 2. - The
CPU 12 includes asearch unit 12A and a providingunit 12B. Thesearch unit 12A retrieves, from the management table 13, a session duration time corresponding to an incoming call number related to the terminal ID of theuser terminal 3 in response to a time request from theuser terminal 3 to be described later. The providingunit 12B is a notifying unit that provides the session duration time retrieved by thesearch unit 12A to theuser terminal 3 that made the time request. - The
user terminal 3 includes a communicatingunit 31, adisplay unit 32, an operatingunit 33, an audio input-output unit 34, anaudio buffer 35, aROM 36, aRAM 37, and aCPU 38. The communicatingunit 31 is a communication interface in charge of normal radio communication and communication with the relay server 4 using the business app. Thedisplay unit 32 is an output interface that performs screen display of various kinds of information. The operatingunit 33 is an input interface that inputs various kinds of commands. Incidentally, the operatingunit 33 for example corresponds to a touch panel or the like that detects touch operation on the display screen of thedisplay unit 32. - The audio input-
output unit 34 for example corresponds to a microphone, a speaker, or the like, and corresponds to an input-output interface that inputs and outputs sound. Theaudio buffer 35 is for example an area that temporarily stores audio data using abusiness app 36A within theuser terminal 3. TheROM 36 is an area that stores various kinds of data and various kinds of programs such for example as thebusiness app 36A, atelephone app 36B, and the like. Thebusiness app 36A is a specific app that establishes a session with thebusiness system 2 via the relay server 4 with theuser terminal 3 as a BYOD device, enables access to thebusiness system 2 in a secure state, and performs screen display of a business screen from thebusiness system 2 on thedisplay unit 32. Thetelephone app 36B is for example an app that implements a telephone function of the radio communication of a carrier, Internet communication, or the like. TheRAM 37 is an area that stores various kinds of information. - The
CPU 38 is a part that controls the whole of theuser terminal 3. TheCPU 38 reads out acall processing program 36C, thebusiness app 36A, and thetelephone app 36B stored in theROM 36, and configures various kinds of processes as functions on the basis of thecall processing program 36C, thebusiness app 36A, and thetelephone app 36B that are read out. TheCPU 38 includes a businessapp executing unit 41, a telephoneapp executing unit 42, a first obtainingunit 43, a requestingunit 44, a second obtainingunit 45, a determiningunit 46, and acontrol unit 47. - The business
app executing unit 41 performs various kinds of processing operation related to thebusiness app 36A on the basis of thebusiness app 36A. The telephoneapp executing unit 42 performs various kinds of processing operation related to thetelephone app 36B on the basis of thetelephone app 36B. The first obtainingunit 43 is related to thetelephone app 36B. The first obtainingunit 43 detects an incoming telephone call to theuser terminal 3 through the communicatingunit 31. When the first obtainingunit 43 detects an incoming telephone call, the first obtainingunit 43 obtains an incoming call number as the telephone number of the caller of the incoming telephone call. The requestingunit 44 notifies the relay server 4 of a time request requesting a duration time related to the incoming call number obtained in the first obtainingunit 43. The second obtainingunit 45 obtains the duration time related to the incoming call number which duration time is provided from the relay server 4 in response to the time request to the relay server 4. - When the second obtaining
unit 45 has obtained the duration time, thecontrol unit 47 displays, on abusiness app screen 32A, anincoming call screen 51 displaying incoming call contents of the incoming call now being received or the like.FIGS. 11A , 11B, and 11C are diagrams of assistance in explaining an example of display screens of a user terminal. The user terminal described with reference toFIGS. 11A , 11B, and 11C may be theuser terminal 3 illustrated inFIG. 9 . Theincoming call screen 51 illustrated inFIG. 11A includes acaller name 51A, anincoming call number 51B, aduration time 51C, a rejectingbutton 51D, and atelephone call button 51E. Thecaller name 51A is a name or the like that identifies a caller. Theincoming call number 51B is the telephone number of the caller of the incoming telephone call. Theduration time 51C is a session duration time. The rejectingbutton 51D is a button that rejects the present incoming telephone call according to a button operation. Thetelephone call button 51E is a button that responds to the present incoming telephone call according to a button operation. Thecontrol unit 47 moves thebusiness app 36A to a background when detecting a button operation on thetelephone call button 51E on theincoming call screen 51, that is, a response operation. Incidentally, in the transition to the background, a session between theuser terminal 3 and thebusiness system 2 is maintained through the relay server 4. - After the
business app 36A is moved to the background, the determiningunit 46 determines whether or not thebusiness app 36A being executed now is an app using sound on the basis of whether or not theaudio buffer 35 is being used, for example. - When the determining
unit 46 determines that theaudio buffer 35 is being used, thecontrol unit 47 lowers a volume on thebusiness app 36A side to a given level so as not to obstruct telephone conversation using thetelephone app 36B. After thecontrol unit 47 lowers the volume on thebusiness app 36A side to the given level, thecontrol unit 47 instructs the telephoneapp executing unit 42 to perform an incoming call response operation. The telephoneapp executing unit 42 performs an operation of responding to the incoming telephone call, and starts a telephone call with the other party. Then, thecontrol unit 47 performs screen display of atelephone app screen 32B on thedisplay unit 32, as illustrated inFIG. 11B . Thetelephone app screen 32B includes a telephone callother party name 52A, atelephone number 52B of the other party of the telephone call, aduration time 52C, a remainingtime 52D, and a telephonecall ending button 52E. The telephone callother party name 52A is a name identifying the other party of the telephone call. Thetelephone number 52B is the telephone number of the other party of the telephone call. Theduration time 52C is the session duration time. The remainingtime 52D is a remaining time of theduration time 52C started to be clocked from a start of the telephone call. The telephonecall ending button 52E is a button that ends the telephone call according to a button operation. - When the operation of responding to the incoming telephone call by the
telephone app 36B is performed, thecontrol unit 47 starts the duration time clocking operation, and performs screen display of the remainingtime 52D of the duration time on thetelephone app screen 32B. - When the duration time has passed during the telephone call, the
control unit 47 ends thebusiness app 36A moved to the background. That is, theuser terminal 3 disconnects the session with thebusiness system 2 via the relay server 4. - When the telephone call of the
telephone app 36B is ended before the duration time has passed, thecontrol unit 47 moves thebusiness app 36A moved to the background to a foreground. Then, as illustrated inFIG. 11C , thecontrol unit 47 performs screen display of thebusiness app screen 32A on thedisplay unit 32 according to the transition of thebusiness app 36A to the foreground. As a result, after the end of the telephone call, because the session with thebusiness system 2 is continued, business using thebusiness app 36A can be continued smoothly. - Next, operation of the
BYOD system 1 according to the present embodiment will be described.FIGS. 12A and 12B are flowcharts illustrating an example of processing operation of a CPU within a user terminal in relation to incoming call response processing. The CPU and the user terminal described with reference toFIGS. 12A and 12B may be theCPU 38 and theuser terminal 3, respectively, illustrated inFIG. 9 . The incoming call response processing illustrated inFIGS. 12A and 12B enables, in a case where an incoming telephone call is detected during the execution of the business app, a telephone conversation for the incoming telephone call to be performed while a session with thebusiness system 2 is maintained within the duration time related to the incoming call number of the incoming telephone call. - In
FIG. 12A , the first obtainingunit 43 within theCPU 38 determines whether or not an incoming telephone call is detected (S11). When an incoming telephone call is detected (YES in S11), the first obtainingunit 43 determines whether or not thebusiness app 36A is being executed (S12). - When the
business app 36A is being executed (YES in S12), the requestingunit 44 within theCPU 38 obtains an incoming call number and the app name of thebusiness app 36A being executed (S13). Incidentally, the requestingunit 44 obtains the incoming call number as the telephone number of a caller in response to the incoming telephone call. Further, the requestingunit 44 obtains the app name identifying thebusiness app 36A being executed now through the businessapp executing unit 41 being executed now. - The requesting
unit 44 requests a duration time related to the own terminal ID and the incoming call number from the relay server 4 (S14). Incidentally, the relay server 4 retrieves, from the management table 13, the duration time related to the terminal ID and the incoming call number according to providing processing to be described later. The second obtainingunit 45 determines whether or not the duration time related to the terminal ID and the incoming call number is obtained from the relay server 4 (S15). - When the duration time is obtained (YES in S15), the second obtaining
unit 45 performs screen display of theincoming call screen 51 displaying the obtainedduration time 51C and incoming call contents as illustrated inFIG. 11A on thebusiness app screen 32A (S16). - The
control unit 47 determines through the telephoneapp executing unit 42 whether or not a button operation on thetelephone call button 51E within theincoming call screen 51, that is, a response operation is detected (S17). When the response operation is detected (YES in S17), thecontrol unit 47 moves thebusiness app 36A being executed to the background (S18). Incidentally, because thebusiness app 36A is moved to the background, theuser terminal 3 continues the session with thebusiness system 2. - The determining
unit 46 determines whether or not theaudio buffer 35 is being used (S19). Incidentally, when theaudio buffer 35 is being used, thecontrol unit 47 recognizes that thebusiness app 36A using sound is being executed. Thebusiness app 36A using sound includes an app for Web conferences, an app for moving image contents, and the like. When theaudio buffer 35 is being used (YES in S19), thecontrol unit 47 lowers the volume of thebusiness app 36A to a given level through the business app executing unit 41 (S20). - The
control unit 47 performs an operation of responding to the incoming telephone call through the telephoneapp executing unit 42, and performs screen display of thetelephone app screen 32B on thedisplay unit 32 as illustrated inFIG. 11B (S21). After performing the screen display of thetelephone app screen 32B, thecontrol unit 47 starts an operation of clocking a remaining time in the duration time (S22). - The
control unit 47 performs screen display of the remainingtime 52D of the duration time on thetelephone app screen 32B according to the remaining time clocking operation (S23). Incidentally, the user on theuser terminal 3 side can recognize the remaining time of the duration time by viewing the remainingtime 52D within thetelephone app screen 32B. Thecontrol unit 47 determines whether or not the duration time has passed, that is, whether or not there is a remaining time in the duration time (S24). When there is a remaining time (YES in S24), thecontrol unit 47 determines through the telephoneapp executing unit 42 whether or not thetelephone app 36B is ended (S25). Incidentally, thecontrol unit 47 ends the telephone call, that is, ends thetelephone app 36B, in response to a button operation on the telephonecall ending button 52E on the telephone app onscreen 32B. - When the
telephone app 36B is ended (YES in S25), thecontrol unit 47 determines whether or not thebusiness app 36A in the background is detected (S26). When thebusiness app 36A in the background is detected (YES in S26), thecontrol unit 47 returns thebusiness app 36A to the foreground (S27), and ends the processing operation illustrated inFIGS. 12A and 12B . As a result, the user of theuser terminal 3 can continue to use thebusiness app 36A while maintaining the session with thebusiness system 2. The user of theuser terminal 3 is therefore free from a burden of an operation for coupling to thebusiness system 2. - In addition, when there is no remaining time in the duration time (NO in S24), the
control unit 47 ends thebusiness app 36A moved to the background through the business app executing unit 41 (S28). After ending thebusiness app 36A, thecontrol unit 47 performs screen display of an end of the duration time on thetelephone app screen 32B (S29), and determines whether or not thetelephone app 36B is ended (S30). Incidentally, the user can recognize the end of the duration time, that is, the disconnection of the session with thebusiness system 2, by viewing the display of the end of the duration time. - The
control unit 47 waits until thetelephone app 36B is ended (NO in S30). When thetelephone app 36B is ended (YES in S30), thecontrol unit 47 switches from thetelephone app screen 32B to a screen requesting the establishment of a session with the business system 2 (S31), and ends the processing operation illustrated inFIGS. 12A and 12B . Incidentally, the user of theuser terminal 3 can reestablish a session with thebusiness system 2 by inputting a login ID and a password or the like on the request screen. - When the
telephone app 36B is not ended (NO in S25), thecontrol unit 47 proceeds to S23 to display the remainingtime 52D on thetelephone app screen 32B. When thebusiness app 36A in the background is not detected (NO in S26), thecontrol unit 47 proceeds to S31 to switch display to the request screen. - When no incoming telephone call is detected (NO in S11), the first obtaining
unit 43 ends the processing operation illustrated inFIGS. 12A and 12B . When thebusiness app 36A is not being executed (NO in S12), thecontrol unit 47 determines through the telephoneapp executing unit 42 whether or not an operation of responding to the incoming telephone call is detected (S32). - When the operation of responding to the incoming telephone call is detected (YES in S32), the
control unit 47 performs an incoming call response operation, performs screen display of thetelephone app screen 32B on the display unit 32 (S33), and determines whether or not thetelephone app 36B is ended (S34). When thetelephone app 36B is ended (YES in S34), thecontrol unit 47 switches the display of thedisplay unit 32 from thetelephone app screen 32B to an initial screen (S35), and ends the processing operation illustrated inFIGS. 12A and 12B . Incidentally, the initial screen is a so-called standby screen. - When the operation of responding to the incoming telephone call is not detected (NO in S32), the
control unit 47 proceeds to S11 to determine whether or not the incoming telephone call is being received. When thetelephone app 36B is not ended (NO in S34), thecontrol unit 47 proceeds to S34 to determine whether or not thetelephone app 36B is ended. - When the duration time related to the terminal ID and the incoming call number is not obtained from the relay server 4 (NO in S15), the
control unit 47 proceeds to S15 to determine whether or not the duration time is obtained. - When the operation of responding to the incoming telephone call is not detected (NO in S17), the
control unit 47 determines whether or not the incoming call is now being received (S36). When the incoming call is now being received (YES in S36), thecontrol unit 47 proceeds to S17 to determine whether or not the operation of responding to the incoming telephone call is detected. When the incoming call is not being received now (NO in S36), thecontrol unit 47 ends the processing operation illustrated inFIGS. 12A and 12B . - When the
audio buffer 35 is not being used (NO in S19), thecontrol unit 47 proceeds to S21 to perform the operation of responding to the incoming telephone call through the telephoneapp executing unit 42, and switch display from thebusiness app screen 32A to thetelephone app screen 32B. - When an incoming telephone call is detected while the business app is being executed, the
control unit 47 that performs the incoming call response processing illustrated inFIGS. 12A and 12B requests the duration time related to the terminal ID of the own terminal and the incoming call number from the relay server 4, and performs screen display of the duration time on thetelephone app screen 32B. As a result, the user can recognize the duration time of a session with thebusiness system 2 before an incoming call response by viewing theduration time 52C on thetelephone app screen 32B. - When the operation of responding to the incoming telephone call is detected on the
telephone app screen 32B, thecontrol unit 47 moves thebusiness app 36A to the background, lowers the volume of thebusiness app 36A in the case where theaudio buffer 35 is being used, and performs the operation of responding to the incoming telephone call. As a result, the user can respond to the incoming telephone call while maintaining the session with thebusiness system 2. Moreover, reducing the mixing of sound produced by thebusiness app 36A enables the telephone call of thetelephone app 36B to be performed smoothly while the session with thebusiness system 2 is maintained. - The
control unit 47 performs the operation of responding to the incoming telephone call in the case where theaudio buffer 35 is not being used. As a result, the user can respond to the incoming telephone call while maintaining the session with thebusiness system 2. - Further, the
control unit 47 performs the operation of responding to the incoming telephone call, and performs screen display of the remaining time of the duration time on thetelephone app screen 32B. As a result, the user can recognize the remaining time of the duration time of the session with thebusiness system 2 by viewing the remaining time on thetelephone app screen 32B. - When the telephone call is ended before the passage of the duration time, the
control unit 47 moves thebusiness app 36A in the background to the foreground. As a result, the user can continue thebusiness app 36A because the session with thebusiness system 2 is maintained even after the end of the telephone call. - In the case where the telephone call is ended after the passage of the duration time, the
control unit 47 can maintain the telephone call while the session with thebusiness system 2 is disconnected after the passage of the duration time. As a result, thebusiness system 2 can reduce a processing load resulting from indiscriminately maintaining sessions. - Further, in the case where the telephone call is ended after the passage of the duration time, the
control unit 47 performs screen display of the end of the duration time on thetelephone app screen 32B. As a result, the user can recognize the end of the duration time, that is, the disconnection of the session with thebusiness system 2 by viewing the end of the duration time on thetelephone app screen 32B. -
FIG. 13 is a flowchart illustrating an example of processing operation of a CPU within a relay server in relation to providing processing. The CPU and the relay server described with reference toFIG. 13 may be theCPU 12 and the relay server 4, respectively, illustrated inFIG. 9 . The providing processing illustrated inFIG. 13 retrieves, from the management table 13, a duration time related to an incoming call number, and provides the duration time to theuser terminal 3, in response to a time request related to the incoming call number of an incoming telephone call from theuser terminal 3. - In
FIG. 13 , theCPU 12 of the relay server 4 determines whether or not a time request is detected from the user terminal 3 (S41). Incidentally, the time request includes the terminal ID identifying theuser terminal 3 making the time request, the incoming call number of the incoming telephone call to theuser terminal 3, and the app name identifying thebusiness app 36A being executed on theuser terminal 3. - When the time request is detected (YES in S41), the
search unit 12A within theCPU 12 searches the management table 13 for a duration time on the basis of the terminal ID, the incoming call number, and the name of the business app in the time request (S42). Thesearch unit 12A determines whether or not there is a session duration time corresponding to the terminal ID, the incoming call number, and the app name within the management table 13 (S43). - When there is a session duration time corresponding to the terminal ID, the incoming call number, and the app name (YES in S43), the providing
unit 12B within theCPU 12 provides the session duration time to the corresponding user terminal 3 (S44), and ends the processing operation illustrated inFIG. 13 . - When there is no session duration time corresponding to the terminal ID, the incoming call number, and the app name within the management table 13 (NO in S43), the
search unit 12A determines whether or not there is a session duration time corresponding to the terminal ID and the incoming call number within the management table 13 (S45). - When there is a session duration time corresponding to the terminal ID and the incoming call number within the management table 13 (YES in S45), the providing
unit 12B provides the session duration time to the corresponding user terminal 3 (S46), and ends the processing operation illustrated inFIG. 13 . - When there is no session duration time corresponding to the terminal ID and the incoming call number within the management table 13 (NO in S45), the
search unit 12A provides information indicating that there is no corresponding duration time to the corresponding user terminal 3 (S47), and ends the processing operation illustrated inFIG. 13 . When no time request is detected from the user terminal 3 (NO in S41), theCPU 12 ends the processing operation illustrated inFIG. 13 . - The
CPU 12 of the relay server 4 that performs the providing processing illustrated inFIG. 13 can obtain, from the management table 13, the duration time corresponding to the terminal ID, the app name, and the incoming call number in the time request, and provide the obtained duration time to theuser terminal 3, in response to the time request from theuser terminal 3. - The
CPU 12 can obtain, from the management table 13, the duration time corresponding to the terminal ID and the incoming call number in the time request, and provide the obtained duration time to theuser terminal 3. - When there is no duration time corresponding to the terminal ID and the incoming call number in the time request within the management table 13, the
CPU 12 can provide information indicating that there is no corresponding duration time to theuser terminal 3. - When an incoming telephone call is detected during a session with the
business system 2 in which session thebusiness app 36A is used, theuser terminal 3 according to the present embodiment obtains the incoming call number of the incoming telephone call, and obtains the duration time corresponding to the incoming call number from the relay server 4. Further, obtaining the duration time, theuser terminal 3 moves thebusiness app 36A to the background so as to maintain the session with thebusiness system 2 within the duration time, and allows telephone conversation for the incoming telephone call, according to a response to the incoming telephone call. As a result, the duration of the session with thebusiness system 2 and telephone call connection are made compatible with each other. Thus, the convenience of the user and a reduction in the load of thebusiness system 2 are made compatible with each other. - When the telephone call is ended before the passage of the duration time from the response to the incoming telephone call, the
user terminal 3 moves thebusiness app 36A from the background to the foreground. As a result, thebusiness app 36A can be resumed smoothly after the end of the telephone call. - When the telephone call is ended after the passage of the duration time from the response to the incoming telephone call, the
user terminal 3 displays a screen requesting the reestablishment of a session with thebusiness system 2 by using thebusiness app 36A. As a result, thebusiness app 36A can be resumed by an input operation on the screen requesting the reestablishment. - When the duration time has passed since the response to the incoming telephone call, the
user terminal 3 disconnects the session with thebusiness system 2. As a result, the time of the session with thebusiness system 2 is limited. A processing load on thebusiness system 2 side due to the holding of sessions can therefore be reduced. - When the
business app 36A is an app using sound, theuser terminal 3 lowers the volume of thebusiness app 36A to a given level. Therefore, the telephone call can preferably be prevented from being obstructed by the sound of thebusiness app 36A in the background. - The
user terminal 3 performs screen display of the remaining time as notice information giving notice of the passage of the duration time while thebusiness app 36A is in the background. As a result, the user of theuser terminal 3 can recognize the remaining time of the duration time by viewing the remaining time. - Incidentally, while a duration time corresponding to the terminal ID, the incoming call number, and the app name is requested from the relay server 4 in S14 in
FIG. 12A in the above-described embodiment, a duration time corresponding to the terminal ID and the incoming call number irrespective of the app name may be requested. Similarly, a duration time corresponding to the incoming call number irrespective of the terminal ID and the app name may be requested. - Further, the
user terminal 3 may retain the management table according to the second embodiment. In this case, the second obtainingunit 45 obtains the duration time corresponding to the incoming call number and the like from the management table without inquiring of the relay server 4. - In addition, the constituent elements of the units illustrated in the figures do not necessarily need to be physically configured as illustrated in the figures. That is, specific forms of distribution and integration of the units are not limited to the specific forms illustrated in the figures, but the whole or a part of the units can be configured to be distributed or integrated functionally or physically in arbitrary units according to various kinds of loads, usage conditions, and the like.
- Further, the whole or an arbitrary part of various kinds of processing functions performed in the respective devices may be performed on a CPU (or a microcomputer such as an MPU, an MCU, or the like). In addition, it is needless to say that the whole or an arbitrary part of the various kinds of processing functions may be performed on a program executed by the CPU (or the microcomputer such as the MPU, the MCU, or the like), or performed on hardware based on wired logic.
- The various kinds of processing described in the present embodiments can be implemented by making a processor such as a CPU or the like within a terminal device execute a program prepared in advance. Accordingly, the following description will be made of an example of a call terminal device that executes a program having functions similar to the functions of the foregoing embodiments.
FIG. 14 is a diagram of assistance in explaining an example of a call terminal device that executes a call processing program. - A
call terminal device 100 that executes a call processing program illustrated inFIG. 14 includes a communicatingunit 110, anoperating unit 120, aROM 130, aRAM 140, and aCPU 150. The communicatingunit 110, theoperating unit 120, theROM 130, theRAM 140, and theCPU 150 are connected to each other via abus 160. - The
ROM 130 stores, in advance, the call processing program that exerts functions similar to the functions of the foregoing embodiments. TheROM 130 stores, as the call processing program, a first obtainingprogram 130A, a second obtainingprogram 130B, and acontrol program 130C. Incidentally, the call processing program may be recorded on a recording medium readable by a drive not illustrated in the figures rather than in theROM 130. In addition, the recording medium may be for example a portable recording medium such as a CD-ROM, a DVD, a USB memory, or the like, or a semiconductor memory such as a flash memory or the like. - The
CPU 150 functions as a first obtainingprocess 150A by reading out the first obtainingprogram 130A from theROM 130. Further, theCPU 150 functions as a second obtainingprocess 150B by reading out the second obtainingprogram 130B from theROM 130. TheCPU 150 functions as acontrol process 150C by reading out thecontrol program 130C from theROM 130. - When the
call terminal device 100 detects an incoming telephone call during a session with a specific system in which session a specific application is used, thecall terminal device 100 obtains the incoming call number of the incoming telephone call. Thecall terminal device 100 obtains, from a server, a duration time for which the session with the specific system can be maintained, the duration time corresponding to the incoming call number. Obtaining the duration time, thecall terminal device 100 moves the specific application to a background so as to maintain the session with the specific system within the duration time, and allows a telephone conversation for the incoming telephone call, according to a response to the incoming telephone call. As a result, the duration of the session with the specific system and telephone call connection can be made compatible with each other. - All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Claims (13)
1. A session managing method executed by a session managing device, the session managing method comprising:
establishing a session with a communicating device in response to a first request from the communicating device;
extending a duration limit of the session by a first time interval according to an actual result of communication between the communicating device and the session managing device; and
extending the duration limit of the session by a second time interval longer than the first time interval when receiving, from the communicating device, a notification indicating that a telephone call with another communicating device is started.
2. The session managing method according to claim 1 , wherein
the session managing device is a relay device that relays communication between the communicating device and a system.
3. The session managing method according to claim 2 , further comprising:
transferring, to the system, a second request from the communicating device to the system;
obtaining a result of processing by the system in response to the second request; and
transmitting screen data of a screen that displays the processing result to the communicating device.
4. The session managing method according to claim 1 , further comprising:
disconnecting the session when the duration limit extended by one of the first time interval and the second time interval has passed.
5. The session managing method according to claim 1 , wherein
the second time interval is set according to at least one of the communicating device and the another communicating device.
6. A call processing method executed by a communicating device, the call processing method comprising:
establishing a session between a server and the communicating device using a specific application for obtaining a processing result of the server; and
when an incoming call from a different communicating device is received while the session is maintained, moving the specific application to a background; and
maintaining the session with the server within a given time during a telephone call for the incoming call.
7. The call processing method according to claim 6 , wherein
the session is maintained by a packet transmitted to the server at each given time interval within the given time.
8. The call processing method according to claim 6 , further comprising:
moving the specific application from the background to a foreground when the telephone call is ended before passage of the given time from a response to the incoming call.
9. A session managing system comprising:
circuitry configured to:
establish a session with a communicating device in response to a first request from the communicating device,
extend a duration limit of the session by a first time interval according to an actual result of communication between the communicating device and the session managing device, and
extend the duration limit of the session by a second time interval longer than the first time interval when receiving, from the communicating device, a notification indicating that a telephone call with another communicating device is started.
10. The session managing system according to claim 8 , wherein
the session managing device is a relay device that relays communication between the communicating device and another system.
11. The session managing system according to claim 10 , wherein the circuitry is configured to:
transfer, to the another system, a second request from the communicating device to the another system,
obtain a result of processing by the another system in response to the second request, and
transmit screen data of a screen that displays the processing result to the communicating device.
12. The session managing system according to claim 9 , wherein the circuitry is configured to:
disconnect the session when the duration limit extended by one of the first time interval and the second time interval has passed.
13. The session managing system according to claim 9 , wherein
the second time interval is set according to at least one of the communicating device and the another communicating device.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014155255 | 2014-07-30 | ||
JP2014-155255 | 2014-07-30 | ||
JP2015087725A JP2016033811A (en) | 2014-07-30 | 2015-04-22 | Session management method, session management device, session management program and communication processing method |
JP2015-087725 | 2015-04-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
US20160036870A1 true US20160036870A1 (en) | 2016-02-04 |
Family
ID=55181293
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/745,937 Abandoned US20160036870A1 (en) | 2014-07-30 | 2015-06-22 | Session managing method, session managing system, and call processing method |
Country Status (2)
Country | Link |
---|---|
US (1) | US20160036870A1 (en) |
JP (1) | JP2016033811A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10038672B1 (en) * | 2016-03-29 | 2018-07-31 | EMC IP Holding Company LLC | Virtual private network sessions generation |
US11770872B2 (en) | 2019-07-19 | 2023-09-26 | Jvckenwood Corporation | Radio apparatus, radio communication system, and radio communication method |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6679867B2 (en) * | 2015-09-30 | 2020-04-15 | ブラザー工業株式会社 | Communication system, communication device, and computer program |
JP6970870B2 (en) * | 2017-01-13 | 2021-11-24 | パナソニックIpマネジメント株式会社 | Information and communication equipment and information and communication methods |
JP7119429B2 (en) * | 2018-03-02 | 2022-08-17 | ブラザー工業株式会社 | Computer program, data transmission method and terminal device |
JP7001235B2 (en) * | 2019-01-29 | 2022-01-19 | Necプラットフォームズ株式会社 | Routers, router control methods, and router control programs |
JP6792654B2 (en) * | 2019-02-15 | 2020-11-25 | レノボ・シンガポール・プライベート・リミテッド | Information processing equipment, information processing methods and programs |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040153549A1 (en) * | 2001-05-25 | 2004-08-05 | Akihiko Naito | Internet communication system |
US20060056364A1 (en) * | 2004-09-15 | 2006-03-16 | Owen Russell N | Switch-in of centralised infrastructure for management for wireless communications |
US20070049335A1 (en) * | 2005-08-08 | 2007-03-01 | Robert Haitani | Operating multiple views on a computing device in connection with a wireless communication session |
US20070298770A1 (en) * | 2004-12-28 | 2007-12-27 | Kyung-Tak Lee | Method and Apparatus for Managing Multimedia Messages |
US20080144630A1 (en) * | 2006-12-14 | 2008-06-19 | Fujitsu Limited | Call management method, call management system and message processing server system |
US20080171564A1 (en) * | 2007-01-15 | 2008-07-17 | Kabushiki Kaisha Toshiba | Apparatus, method, and terminal apparatus for maintaining connection |
US20090304027A1 (en) * | 2004-10-18 | 2009-12-10 | Research In Motion Limited | Method and apparatus for controlling an upper layer in a protocol stack to delay timeouts |
US20110276660A1 (en) * | 2010-05-06 | 2011-11-10 | Fujifilm Corporation | Relay server, method of controlling operation of same, and program for controlling operation of same |
US20140235227A1 (en) * | 2011-09-21 | 2014-08-21 | Nec Corporation | Communication system, terminal, communication method and communication program |
US20150023161A1 (en) * | 2013-07-22 | 2015-01-22 | Seven Networks, Inc. | Modifying system timers for optimizing mobile traffic management |
US9106538B1 (en) * | 2014-09-05 | 2015-08-11 | Openpeak Inc. | Method and system for enabling data usage accounting through a relay |
US20150256622A1 (en) * | 2014-03-10 | 2015-09-10 | Kabushiki Kaisha Toshiba | Connection management device, communication system, connection management method, and computer program product |
-
2015
- 2015-04-22 JP JP2015087725A patent/JP2016033811A/en active Pending
- 2015-06-22 US US14/745,937 patent/US20160036870A1/en not_active Abandoned
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040153549A1 (en) * | 2001-05-25 | 2004-08-05 | Akihiko Naito | Internet communication system |
US20060056364A1 (en) * | 2004-09-15 | 2006-03-16 | Owen Russell N | Switch-in of centralised infrastructure for management for wireless communications |
US20090304027A1 (en) * | 2004-10-18 | 2009-12-10 | Research In Motion Limited | Method and apparatus for controlling an upper layer in a protocol stack to delay timeouts |
US20070298770A1 (en) * | 2004-12-28 | 2007-12-27 | Kyung-Tak Lee | Method and Apparatus for Managing Multimedia Messages |
US20070049335A1 (en) * | 2005-08-08 | 2007-03-01 | Robert Haitani | Operating multiple views on a computing device in connection with a wireless communication session |
US20080144630A1 (en) * | 2006-12-14 | 2008-06-19 | Fujitsu Limited | Call management method, call management system and message processing server system |
US20080171564A1 (en) * | 2007-01-15 | 2008-07-17 | Kabushiki Kaisha Toshiba | Apparatus, method, and terminal apparatus for maintaining connection |
US20110276660A1 (en) * | 2010-05-06 | 2011-11-10 | Fujifilm Corporation | Relay server, method of controlling operation of same, and program for controlling operation of same |
US20140235227A1 (en) * | 2011-09-21 | 2014-08-21 | Nec Corporation | Communication system, terminal, communication method and communication program |
US20150023161A1 (en) * | 2013-07-22 | 2015-01-22 | Seven Networks, Inc. | Modifying system timers for optimizing mobile traffic management |
US20150256622A1 (en) * | 2014-03-10 | 2015-09-10 | Kabushiki Kaisha Toshiba | Connection management device, communication system, connection management method, and computer program product |
US9106538B1 (en) * | 2014-09-05 | 2015-08-11 | Openpeak Inc. | Method and system for enabling data usage accounting through a relay |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10038672B1 (en) * | 2016-03-29 | 2018-07-31 | EMC IP Holding Company LLC | Virtual private network sessions generation |
US11770872B2 (en) | 2019-07-19 | 2023-09-26 | Jvckenwood Corporation | Radio apparatus, radio communication system, and radio communication method |
Also Published As
Publication number | Publication date |
---|---|
JP2016033811A (en) | 2016-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160036870A1 (en) | Session managing method, session managing system, and call processing method | |
CN110896528B (en) | Method for operating functions and resources of electronic device | |
CN111818503B (en) | Voice communication method, system, chip, electronic equipment and storage medium | |
WO2019071612A1 (en) | Method for supporting both voice service and data service and terminal | |
CN105850101B (en) | Tunneling VoIP Call Control to Cellular Networks | |
JP5891559B2 (en) | Instant messaging method, terminal, server and system | |
US10560929B2 (en) | Resource request method and system, device, and network side node | |
US9231907B2 (en) | Method for establishing connection between communication apparatuses, communication apparatus, and server apparatus | |
CN113630574A (en) | Video call method and terminal equipment | |
US20140323166A1 (en) | Method, device and system for voice communication | |
JP4172458B2 (en) | Connection control apparatus, communication system, and connection control method | |
CN114666306B (en) | WebRTC network connection establishment method, server, electronic device and computer readable storage medium | |
EP3197101B1 (en) | Connection method, connection system, portable terminal, and program | |
US20130107697A1 (en) | Network Connection System of Network Electronic Device and Method to Solve Terminal Device Unable to Reach Electronic Device Caused by Router Not Supporting NAT Loopback | |
JP2014135540A (en) | Radio communication system, radio relay device, radio terminal device, radio communication method, and control program | |
CN102340430A (en) | Connection management method and system of personal area network equipment | |
US20160191573A1 (en) | Systems and methods for modifying a state of a software client | |
US10237886B2 (en) | Communication relay device and communication relay method | |
EP3010261B1 (en) | Method of message retransmission and user equipment using the same | |
CN116684216B (en) | Communication method, readable medium and electronic equipment | |
KR102113550B1 (en) | Method for Operating Functions and Resources of Electric Device | |
WO2024140570A1 (en) | Policy configuration method and apparatus, terminal, network side device, and readable storage medium | |
CN105933924B (en) | Online state detection method and device for information interaction software and terminal | |
WO2024027479A1 (en) | Call control method and apparatus, electronic device, and storage medium | |
WO2023185841A1 (en) | Method and apparatus for selecting relay user equipment, and user equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: FUJITSU LIMITED, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MATSUI, KAZUKI;REEL/FRAME:035876/0549 Effective date: 20150611 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |