An information processing apparatus includes a processor, a storage unit, and a connection unit that connects to a portable device which sends a connection request for a predetermined network as a response to a command from the processor. The processor stores the connection request from the portable device and the predetermined network contained in the connection request in the storage unit; detects a state transition of communication over the predetermined network; and determines whether a network whose status has transitioned from communication being unavailable to communication being available matches the predetermined network stored in the storage unit, and if the two networks match, sends a command to the portable device for causing the portable device to transmit a connection request for the predetermined network as a response.

DESCRIPTION OF EMBODIMENTS

Embodiments of the present invention will now be described with drawings. Note that the configurations of the embodiments described below are for illustrative purpose and not limitative.

First Embodiment

The configuration of a network system according to a first embodiment is similar to that of the network system illustrated inFIG. 1; the network system of the first embodiment includes a mobile device1, an IC card2, a Web server3, and a payment server4. The IC card2is inserted into a slot in the mobile device1and is electrically connected with the mobile device1. The mobile device1utilizes a Third Generation mobile device communications network (3G network) as the bearer1. The mobile device1also utilizes a wireless LAN as the bearer2and is able to connect to the Internet. The Web server3connects to the Internet. The payment server4connects to the 3G network. The bearer1and the bearer2are not limited to a 3G network and a wireless LAN but may be a combination of a wireless LAN and WiMAX, for example. Also, there may be three or more bearers available to the mobile device1.

FIG. 4illustrates an exemplary hardware configuration of the mobile device1. The mobile device1is an information processing apparatus that is electrically connected to an IC card and has wireless communication functions, such as a portable telephone terminal, smartphone, portable information terminal, tablet computer, notebook personal computer, car navigation device, gaming machine with communication functions, for example. The mobile device1is an example of the information processing apparatus. However, the information processing apparatus is not limited to the mobile device1. The information processing apparatus may be stationary as long as it is a device that can be electrically connected with a portable device such as an IC card and has wireless communication functions.

The mobile device1includes a processor101, a main storage102, an input device103, an output device104, an auxiliary storage105, a connection terminal106, an antenna107, and a portable recording media drive108. These components are interconnected by a bus109.

The input device103may be operation buttons, a touch panel, a keyboard, a keypad, or the like for example. The input device103also includes an audio input device, such as a microphone. The input device103also includes an image input device, such as a camera. Data input from the input device103is output to the processor101.

The antenna107is provided for each bearer type, for example. For example, when the bearer1is a 3G network and the bearer2is a wireless LAN, an antenna for 3G network and an antenna for wireless LAN are separately provided. Wireless signals received by the antenna107are demodulated and decoded into data in a wireless signal processing circuit and output to the processor101.

The main storage102provides the processor101with a storage area into which a program stored in the auxiliary storage105is loaded and a work area, or is used as a buffer. The main storage102is semiconductor memory such as RAM(Random Access Memory), for example.

The auxiliary storage105stores programs and data used by the processor101for execution of the programs. The auxiliary storage105is non-volatile memory such as EPROM(Erasable Programmable ROM) and a hard disk drive(Hard Disk Drive), for example. The auxiliary storage105stores an operating system (OS), an information processing program, and various kinds of application program, for example.

The portable recording media drive108reads programs and various kinds of data recorded in a portable recording medium110and outputs them to the processor101. The portable recording medium110is a recording medium such as an SD card, miniSD card, microSD card, USB (Universal Serial Bus) flash memory, CD (Compact Disc), DVD (Digital Versatile Disc), and flash memory card, for example. By the connection terminal106making contact with the connection terminal204of the IC card2, the mobile device1and the IC card2are electrically connected to each other. The connection terminal106is an example of a connection unit.

The processor101is a CPU (Central Processing Unit), for example. The processor101executes various kinds of processing by loading the OS or various application programs stored in the auxiliary storage105or portable recording medium110into the main storage102and executing them.

The output device104outputs the result of processing performed by the processor101. The output device104includes a display and an audio output device such as a speaker. The connection terminal106electrically connects the IC card2.

For example, on the mobile device1, the processor101loads an information processing program stored in the auxiliary storage105into the main storage102and executes the program. Through execution of the information processing program, the mobile device1performs relay of communications between an external network and the IC card2and the like.

The main storage202provides the processor201with a storage area into which a program stored in the auxiliary storage203is loaded and a work area, or is used as a buffer. The main storage202is semiconductor memory such as RAM, for example.

The auxiliary storage203stores programs and data used by the processor201in execution of the programs. The auxiliary storage203is non-volatile memory, including EPROM and ROM, for example. The auxiliary storage203stores an OS, card application205, for example. In the auxiliary storage203, subscriber information, payment information, and other information are stored. Subscriber information may be identification information of the user of the mobile device1which is established at the time of contract with the telecommunications carrier of the 3G network, for example. The payment information includes an ID identifying the user of the mobile device1, an ID for use in payment such as a credit card number, which are established at the time of contract with an operator providing a payment service, for example. By the connection terminal204making contact with the connection terminal106of the mobile device1, the IC card2and the mobile device1are electrically connected to each other.

The processor201is a CPU, for example. The processor201executes various kinds of processing by loading an OS and card application205stored in the auxiliary storage203into the main storage202and executing them.

For example, in the IC card2, the processor201loads the card application205stored in the auxiliary storage203into the main storage202and executes it. Through execution of the card application205, the IC card2performs communications with an external network and sends user information for payment processing, for example. The IC card2is an example of the portable device; however, the portable device is not limited to an IC card. Another example of the portable device is an SD card with a processor, for example.

FIG. 6illustrates exemplary functional blocks of the mobile device1and IC card2. The mobile device1executes an information processing program to operate as a control unit11, a decision unit12, an IC card communication control unit13, and a network communication control unit14. Loading or execution of the information processing program by the mobile device1causes a storage unit15to be defined in a storage area of the main storage102or the auxiliary storage105. The IC card2operates as the control unit21by executing an OS. The IC card2operates as a card application unit22by executing a card application.

The control unit11of the mobile device1controls processing such as call origination and reception on the mobile device1, input from the input device103, and output to the output device104. For example, when the mobile device1originates or receives a call using the bearer1(3G network), the control unit11retrieves subscriber information from the IC card2by way of the IC card communication control unit13and performs processing relating to call origination or reception.

The control unit11also relays data between a bearer via the network communication control unit14and the IC card2via the IC card communication control unit13, for example. For example, the control unit11analyzes data obtained by way of the bearer1(3G network) or bearer2(wireless LAN), and passes the data to the IC card2via the IC card communication control unit13when the data is destined for the card application unit22of the IC card2. The control unit11also instructs the network communication control unit14to connect to a specified bearer in response to a connection request containing a specified bearer made by the card application unit22of the IC card2via the IC card communication control unit13, for example.

The IC card communication control unit13controls communication between the IC card2and the mobile device1. For example, the IC card communication control unit13reads subscriber information stored in the IC card2and relays communications between the IC card2and the control unit11.

The network communication control unit14controls connection to multiple bearers available to the mobile device1. The network communication control unit14also detects state transitions of communications over the bearers. For example, the network communication control unit14detects state transitions of communications over the bearers by periodically determining availability and connection status (i.e., connected or disconnected) of the individual bearers. The network communication control unit14also detects state transitions of communications over the bearers from a software-based change of connectivity settings for the bearers or reception of a predetermined signal from outside, for example. When it detects a state transition of communication over a bearer, the network communication control unit14notifies the control unit11of the state transition.

For the first embodiment, suppose that the mobile device1can utilize a 3G network through registration with a base station as long as the mobile device1is able to perform connection and data transmission/reception (a so-called “within range”) when it wants to do so. Suppose also that the mobile device1is not able to utilize a 3G network when it is not registered with a base station and is so-called “out of range”. Suppose also that the mobile device1can utilize a wireless LAN when it has established a connection with an access point or an ad-hoc connection point and is not able to utilize a wireless LAN when it has failed to establish a connection. It is assumed however that for all of the networks, when connectivity to a network is set to disabled by software, the mobile device1is not able to utilize the network.

When there is an instruction for connection request from the control unit11, the network communication control unit14performs a connection establishment process if the bearer specified in the connection request has been detected to be available. When a connection with the specified bearer is successfully established as the result of the connection establishment process, the network communication control unit14sends a notification of successful connection to the control unit11. When the bearer specified in the connection request has been detected to be unavailable, the network communication control unit14sends a notification of failed connection to the control unit11without performing a connection establishment process. The notification of successful connection or failed connection sent to the control unit11is included into a predetermined command and sent to the IC card2via the IC card communication control unit13by the control unit11.

For example, when connectivity to the 3G network is enabled by software, the network communication control unit14detects a base station by detecting a wireless signal and registers the mobile device1with the base station so that packet data communication can be performed. This causes the state of the 3G network to be detected as available by the network communication control unit14. At this stage, the network communication control unit14retrieves subscriber information from the IC card2via the IC card communication control unit13and control unit11and sends the subscriber information to the base station along with registration of the mobile device1.

The decision unit12monitors relay process performed by the control unit11for communication between the IC card2and a bearer (i.e., data relay process between the network communication control unit14and the IC card communication control unit13). For example, the decision unit12recognizes that communication between the mobile device1and the IC card2has started by detecting data relay process by the control unit11from the network communication control unit14to the IC card communication control unit13or responsive to an instruction from the control unit11, and starts monitoring of the control unit11.

When detecting that the control unit11has received a network connection request made by the IC card2from the IC card communication control unit13, the decision unit12stores the connection request and the bearer specified in the connection request in, for example, the storage unit15. Alternatively, the connection request and the bearer specified in the connection request may be instead stored in a storage area of the main storage102or auxiliary storage105prepared for the decision unit12.

When detecting that the control unit11has received a state transition of communication over a bearer from the network communication control unit14, the decision unit12compares the specified bearer stored in the storage unit15with the bearer whose status has transitioned. If the specified bearer stored in the storage unit15matches the bearer whose status has transitioned and the control unit11is notified that the state of communication over the bearer has become available, the decision unit12sends a command to the IC card2via the IC card communication control unit13. The command sent here is for causing the IC card2to send a connection request as the response to the command. The command sent to the IC card2may be a command not relevant to the card application unit22currently activated. For example, it may be STATUS command for acquiring the state of the IC card2, Channel Status Envelop command for indicating the bearer status, or the like. In addition, the state of the specified bearer (i.e., available) may be included in the command. By including the state of the specified bearer in the command, load of processing for deciding the specified bearer in the IC card2can be lessened.

When detecting that the control unit11has received a network disconnection request made by the IC card2from the IC card communication control unit13, the decision unit12deletes information on the connection request and the specified bearer stored in the storage unit15.

The user can disable connection to the bearer1(3G network), which is charges on a pay-as-you-go basis, for the purpose of saving communication cost, for example. When connection to the bearer1is disabled by the user (software), the decision unit12may provide a notification of enablement of connection to the bearer1upon receiving a connection request for the bearer1from the card application unit22for payment processing for the IC card2. For example, when the decision unit12detects that a connection request for the bearer1has been received by the control unit11from the IC card2, the decision unit12has the display of the mobile device1present a screen for confirming enablement of the bearer1. If the user inputs permission for enabling the bearer1, the decision unit12instructs the network communication control unit14to execute a connection establishment process to the bearer1. Also, in this case, the decision unit12may set connectivity to the bearer1back to disabled when it detects that a disconnection request has been received from the IC card2and connection with the bearer1has been terminated.

The control unit21of the IC card2proceeds to activate a card application unit22and relay data between the card application unit22and the mobile device1. When receiving a command destined for an unactivated card application from the mobile device1, the control unit21of the IC card2identifies the card application specified in the command and activates the appropriate card application unit22. In the first embodiment, the card application unit22is a functional block of a card application for payment processing. As the data relay process between the mobile device1and the card application unit22, the control unit21takes information indicating payment instruction, successful connection, failed connection or the like from a command received from the device1, and sends a payment instruction to the card application unit22, for example. Also, upon receiving a connection request or information such as payment information from the card application unit22, the control unit21sends it to the mobile device1as the response to the command, for example. For example, the control unit21includes the connection request or information such as payment information into the payload portion of the response to the command.

The card application unit22sends a connection request via the control unit21in response to the payment instruction given by the mobile device1via the control unit21. The connection request contains information on the bearer specified for use by the card application unit22. The card application unit22maintains predefined information on the bearer to be used. The IC card2designates a 3G network, wireless LAN, circuit switching network, GPRS(General Packet Radio Service), UTRAN(Universal Terrestrial Radio Access), E-UTRAN(Evolved UTRAN), I-WLAN(Interworking WLAN), or the like, for example, as the bearer specified in connection requests.

When receiving a notification of successful connection from the mobile device1via the control unit21, the card application unit22reads payment information from the auxiliary storage203and sends it via the control unit21. When receiving a notification of failed connection from the mobile device1via the control unit21, the card application unit22may continue the session with the mobile device1for a predetermined period of time or disconnect the session. For example, when a notification of failed connection is received from the mobile device1and thereafter a command destined for the card application unit22is received from the mobile device1while the session with the mobile device1is maintained, the card application unit22sends a connection request via the control unit21. The connection request sent here also contains designation of the bearer to be used.

Process Flow for Mobile Device

FIG. 7is an exemplary flowchart of a process executed by the mobile device1. The process of the flowchart illustrated inFIG. 7is started when the mobile device1receives a connection request from the IC card2.

In S1, the processor101stores the contents of the detected connection request from the IC card2in the storage unit15. Specifically, the processor101stores the connection request from the IC card2and the bearer specified in the connection request. The action at51represents one of actions of the decision unit12. The flow then proceeds to S2.

In S2, the processor101determines whether connection to the bearer specified in the connection request has been successfully established. If connection to the bearer specified in the connection request has been successfully established (S2: Yes), the flow proceeds to S3. If connection to the bearer specified in the connection request has failed (S2: No), the flow proceeds to S4. Detection of a successful connection establishment with the bearer specified in the connection request represents one of actions of the network communication control unit14.

In S3, as connection with the bearer specified in a connection request has been established, the processor101includes a notification of “successful connection” in a predetermined command and sends the command to the IC card2. The action at S3represents one of actions of the control unit11. The flow then proceeds to S5.

In S4, as establishment of connection with the bearer specified in the connection request has failed, the processor101includes a notification of “failed connection” in a predetermined command and sends the command to the IC card2. The action at S4represents one of actions of the control unit11. The flow then proceeds to S7.

In S5, the processor101determines whether it has detected termination of the connection with the specified bearer that has been taking place. Termination of a connection with the specified bearer that has been taking place can be detected by detecting a change in reception status of wireless signals of the specified bearer, for example. If termination of the connection with the specified bearer that has been taking place is detected (S5: Yes), the flow proceeds to S6. If termination of the connection with the specified bearer that has been taking place is not detected (S5: No), the flow proceeds to S9. The action at S5represents one of actions of the network communication control unit14.

In S6, the processor101includes a notification of “specified bearer disconnected” indicating that connection with the bearer specified in the connection request has been terminated in a predetermined command and sends the command to the IC card2. The action at S6represents one of actions of the control unit11. The flow then proceeds to S7.

In S7, the processor101detects that the state of a bearer has transitioned from unavailable to available and determines whether that bearer is the specified bearer stored in the storage unit15. Transition of the bearer state from unavailable to available is referred to as bearer recovery. Detection of bearer recovery represents one of actions performed by the network communication control unit14. Determination of whether a recovered bearer is the bearer specified in a connection request represents one of actions of the decision unit12. Determination of whether a recovered bearer is the bearer specified in a connection request is done by comparing the recovered bearer with the bearer specified in the connection request which is stored in the storage unit15. If recovery of the bearer specified in the connection request is detected (S7: Yes), the flow proceeds to S8.

In S8, as recovery of the bearer specified in the connection request has been detected, the processor101sends a command to the IC card2in order to prompt the IC card2to transmit a connection request. The command may contain the state of the specified bearer. The action at S8represents one of actions of the decision unit12. The flow then returns to S2and steps S2through S7are repeatedly executed.

In the processing at S8, if the session with the IC card2is being maintained, the processor101sends a command. If the session with the IC card2has been disconnected, the processor101includes a predetermined instruction in a command and sends the command, for example. For example, in a case where the card application unit22is a card application relating to payment processing, the predetermined instruction contained in the command is a payment instruction.

Also in the processing at S8, the processor101may include information on the specified bearer, which is now available, in the command to be sent to the IC card2. By including information on the specified bearer in the command to be sent to the IC card2, load of processing for deciding the specified bearer in the card application unit22of the IC card2can be lessened.

In S9, the processor101determines whether a disconnection request has been received from the IC card2. If the processor101receives a disconnection request from the IC card2(S9: Yes), the flow proceeds to S10. If the processor101does not receive a disconnection request from the IC card2(S9: No), the flow returns to S5, where steps S5and S9are repeated until a disconnection request is received from the IC card2. Reception of a disconnection request from the IC card2represents one of actions performed by the IC card communication control unit13. Detecting reception of a disconnection request from the IC card2is one of actions performed by the control unit11.

In S10, the processor101deletes the connection request and the bearer specified in the connection request stored in the storage unit15. The action at S10is one of actions of the decision unit12. Thereafter, the processor101performs processing for terminating the connection with the bearer specified in the connection request, upon which the process illustrated inFIG. 7ends.

Processing performed by the mobile device1is not limited to the process of the flowchart illustrated inFIG. 7. For example, the timing of storing a connection request from the IC card2and the timing of deleting the stored connection request may be varied as appropriate.

Exemplary operation1describes operations of the mobile device1and IC card2for a case where the bearer specified in a connection request by a card application in the IC card2is unavailable at the time of the connection request and afterwards transitions to become available.

FIGS. 8A and 8Bare an exemplary sequence of a process of Exemplary operation1. The example ofFIGS. 8A and 8Bcorrespond to the network system illustrated inFIG. 1, where the IC card2specifies the bearer1as the network to connect to. In the example ofFIGS. 8A and 8B, the mobile device1performs payment processing for purchase of a product provided by the Web server3, as in the case illustrated inFIGS. 2A and 2B, for example. In the example ofFIGS. 8A and 8B, the bearer1(3G network) is unavailable, because of its connectivity being disabled by software or the mobile device1being located out of range. The bearer2(wireless LAN) is available. The mobile device1has detected these states of the bearer1and bearer2.FIG. 8Aomits actions relating to viewing of web pages from the mobile device1to the Web server3, such as actions related to OP1through OP3inFIG. 2A.

In OP31, the mobile device1receives a payment instruction destined for the IC card2from the Web server3. In OP32, the mobile device1includes the received payment instruction in a predetermined command and sends the command to the IC card2. At this point, the decision unit12of the mobile device1starts monitoring of processing by the control unit11.

In the IC card2, when the predetermined command containing the payment instruction is received from the mobile device1, the control unit21takes the payment instruction from the command, activates a card application unit22relating to payment processing, and sends the payment instruction to the card application unit22.

In OP33, the card application unit22of the IC card2sends a network connection request that specifies the bearer1(3G network). The network connection request is sent to the mobile device1by the control unit21of the IC card2as the response to the command received in OP32.

In OP34, the mobile device1receives the response containing the network connection request specifying the bearer1(3G network), and stores the connection request and the bearer specified in the connection request (bearer1) (S1inFIG. 7).

In OP35, the mobile device1does not perform a connection establishment process by the network communication control unit14because it has been detected that the bearer1is unavailable (S2inFIG. 7: No). The mobile device1sends a command containing a notification of failed connection with the bearer1to the IC card2through the control unit11(S4inFIG. 7).

Suppose that thereafter the state of the bearer1transitions to available as a result of the connectivity to the bearer1(3G network) being changed to enabled by software, or the mobile device1moving into the range, for example.

In OP36, the mobile device1detects through the network communication control unit14that the state of the bearer1(3G network) has transitioned from unavailable to available (S7inFIG. 7: Yes). Here, the decision unit12of the mobile device1compares the specified bearer stored in the storage unit15with the bearer detected to have recovered by the network communication control unit14, and determines that they match.

In OP37, the mobile device1sends a predetermined command to the IC card2through the decision unit12because the specified bearer stored in the storage unit15and the bearer detected to have recovered by the network communication control unit14are both the bearer1(S8inFIG. 7). If the session with the card application unit22of the IC card2is maintained at this point, the decision unit12sends an empty command, for example. If the session with the card application unit22of the IC card2has been disconnected, the decision unit12sends a payment instruction in the predetermined command, for example.

In OP38, the IC card2receives the predetermined command from the mobile device1. When the card application unit22is activated, the card application unit22receives the predetermined command. If the card application unit22is not activated, the control unit21takes the payment instruction from the command, activates the card application unit22, and sends the payment instruction to it. The IC card2sends through the card application unit22a network connection request that specifies the bearer1(3G network) as the response to the received command.

In OP39, the mobile device1receives the response containing the network connection request specifying the bearer1(3G network). As the bearer1is now available, the mobile device1executes a connection establishment process with the bearer1through the network communication control unit14. Thereafter, connection with the bearer1succeeds, establishing a connection between the bearer1and the mobile device1(S2inFIG. 7: Yes).

In OP40, the mobile device1sends a notification of “successful connection” in a predetermined command to the IC card2(S3inFIG. 7). Thereafter, processing related to payment is executed in a similar manner to OP9to OP17of the example illustrated inFIGS. 2A and 2B. When the payment-related processing ends and a disconnection request is received from the IC card2, the mobile device1deletes the connection request and the specified bearer stored in the storage unit15.

In a case where the specified bearer is unavailable when a connection request from the IC card2is received and recovers afterwards as in Exemplary operation1, the mobile device1sends a predetermined command to the IC card2to allow the IC card2to re-transmit the connection request.

Exemplary operation2describes operations of the mobile device1and IC card2in a case where the bearer specified by the IC card2in a connection request transitions to unavailable during connection establishment process to the bearer and connection with the bearer fails, and the bearer recovers afterwards.

FIGS. 9A and 9Bare an exemplary sequence of a process in Exemplary operation2. The example illustrated inFIGS. 9A and 9Bcorresponds to the network system illustrated inFIG. 1, where the IC card2specifies in a connection request the bearer1as the network to connect to.FIGS. 9A and 9Billustrate a case where the mobile device1performs payment processing for purchase of a product provided by the Web server3, as in the example illustrated inFIGS. 2A and 2B. In the example illustrated inFIGS. 9A and 9B, the bearer1(3G network) and the bearer2(wireless LAN) are both available. The mobile device1has detected these states of the bearer1and the bearer2.FIG. 9Aomits actions relating to viewing of web pages from the mobile device1to the Web server3, such as actions related to OP1through OP3inFIG. 2A. As actions at OP51to OP54ofFIG. 9Aare similar to OP31to OP34of Exemplary operation1illustrated inFIG. 8A, their descriptions are omitted.

Exemplary operation2assumes that after the mobile device1sends a command containing a payment instruction to the IC card2in OP52, the bearer specified in the connection request (bearer1) by the IC card2transitions to unavailable as a result of, for example, the mobile device1moving outside the range (such as a tunnel). However, because the IC card2does not detect that the bearer specified in the connection request (bearer1) has transitioned to unavailable, the IC card2sends a connection request specifying the bearer1as the response to the command containing the payment instruction from the mobile device1to the mobile device1in OP53.

In OP54, the mobile device1receives the connection request from the IC card2, and stores the connection request and the specified bearer (bearer1) in the storage unit15(S1inFIG. 7). Since the bearer1has transitioned to unavailable, connection to the bearer1fails (S2inFIG. 7: No). In OP55, the mobile device1sends a notification of failed connection in a predetermined command to the IC card2(S4inFIG. 7). The mobile device1has detected the transition of the bearer1(3G network) to unavailable through, for example, periodical detection of network status by the network communication control unit14, and decides failed connection without executing a connection establishment process to the bearer1. Alternatively, the mobile device1may actually execute connection establishment process to the bearer1through the network communication control unit14and decide failed connection as the result of the execution.

Suppose that subsequently the bearer (3G network) transitions from unavailable to available as the mobile device1moves from outside to inside the range such as coming out of a tunnel, for example. In OP56, the mobile device1detects recovery of the bearer1(3G network) through the network communication control unit14(S7inFIG. 7: Yes). Here, the decision unit12of the mobile device1compares the specified bearer stored in the storage unit15with the bearer that is detected to have recovered by the network communication control unit14, and determines that they match.

In OP57, the mobile device1sends a predetermined command to the IC card2through the decision unit12because the specified bearer stored in the storage unit15and the bearer detected to have recovered by the network communication control unit14are both the bearer1(S8inFIG. 7). The state of the specified bearer (i.e., available) may be included in the predetermined command.

The IC card2receives the predetermined command from the mobile device1. In OP58, the IC card2sends through the card application unit22a network connection request that specifies the bearer1(3G network) as the response to the received command.

Thereafter, a connection is established between the mobile device1and the bearer1(S2inFIG. 7: Yes) and a connection between the mobile device1and the IC card2is established, and communication is performed between the IC card2and the payment server4, as in OP7and the following operations inFIG. 2Band OP38and the following operations inFIG. 8B.

In the first embodiment, the mobile device1sends a predetermined command to the IC card2even when the specified bearer becomes unavailable during connection establishment process from the mobile device1to the specified bearer and connection fails once, and the bearer recovers later, as in Exemplary operation2. The first embodiment therefore enables the IC card2to retransmit a connection request and connect to the specified bearer even in such a case illustrated by Exemplary operation2.

Exemplary operation3describes operations of the mobile device1and the IC card2for a case where a connection is terminated due to transition of the specified bearer's state to unavailable while communication is performed by the IC card2using the specified bearer and the bearer recovers again.

FIGS. 10A and 10Bare an exemplary sequence of a process in Exemplary operation3. The example illustrated inFIGS. 10A and 10Bcorresponds to the network system illustrated inFIG. 1, where the IC card2specifies in a connection request the bearer1as the network to connect to. FIG. A.10A and10B illustrate a case where the mobile device1performs payment processing for purchase of a product provided by the Web server3, as in the example illustrated inFIGS. 2A and 2B, for example. In the example illustrated inFIGS. 10A and 10B, the bearer1(3G network) and the bearer2(wireless LAN) are both available. The mobile device1has detected these states of the bearer1and the bearer2.FIG. 10Aomits actions relating to viewing of web pages from the mobile device1to the Web server3, such as actions related to OP1through OP3inFIG. 2A. As actions at OP71to OP74ofFIG. 10Aare similar to OP31to OP34of Exemplary operation1illustrated inFIG. 8A, their descriptions are omitted.

In OP75, the mobile device1sends a connection request to the bearer1specified by the IC card2in the connection request. As the bearer1is available, connection is successfully established between the mobile device1and the bearer1(S2inFIG. 7: Yes). In OP76, the mobile device1sends a notification of successful connection in a predetermined command to the IC card2(S3inFIG. 7). Connection is established between the mobile device1and the IC card2, and the IC card2communicates with the payment server4.

Exemplary operation3assumes that during communication between the IC card2and the payment server4, the state of the bearer specified in the connection request (bearer1) by the IC card2transitions to unavailable as a result of, for example, the mobile device1moving outside the range (such as a tunnel). As a result, the connection between the mobile device1and the bearer1is terminated. In OP77, the network communication control unit14of the mobile device1detects the disconnection between the mobile device1and the bearer1(S5inFIG. 7: Yes). In OP78, the mobile device1sends a notification of disconnection of the bearer1in a predetermined command to the IC card2(S6inFIG. 7).

Suppose that subsequently the bearer (3G network) transitions from unavailable to available as the mobile device1moves from outside to inside the range such as coming out of a tunnel, for example. In OP79, the mobile device1detects recovery of the bearer1(3G network) through the network communication control unit14(S7inFIG. 7: Yes). Here, the decision unit12of the mobile device1compares the specified bearer stored in the storage unit15with the bearer that is detected to have recovered by the network communication control unit14, and determines that they match.

In OP80, the mobile device1sends a predetermined command to the IC card2through the decision unit12because the specified bearer stored in the storage unit15and the bearer detected to have recovered by the network communication control unit14are both the bearer1(S8inFIG. 7). The state of the specified bearer (i.e., available) may be included in the predetermined command.

In OP81, the IC card2receives the predetermined command from the mobile device1. The IC card2sends through the card application unit22a network connection request that specifies the bearer1(3G network) as the response to the received command.

Thereafter, a connection is established between the mobile device1and the bearer1(S2inFIG. 7: Yes) and a connection between the mobile device1and the IC card2is established, and communication between the IC card2and the payment server4is resumed, as in OP7and the following operations inFIG. 2Band OP38and the following operations inFIG. 8B.

In the first embodiment, the mobile device1sends a predetermined command to the IC card2even when the specified bearer becomes unavailable while the mobile device1is connected to the specified bearer and the connection is terminated, and the bearer recovers later, as in Exemplary operation3. The first embodiment therefore enables the IC card2to resume communication using the specified bearer even in a case illustrated in Exemplary operation3.

The timing of the mobile device1storing a connection request from the IC card2may be when a command containing a notification of failed connection to the bearer specified in the connection request is transmitted in OP35in Exemplary operation1illustrated inFIG. 8A, for example.

The timing of the mobile device1deleting the connection request and the specified bearer stored in the storage unit15may be when connection with the recovered specified bearer is successfully established in Exemplary operation1illustrated inFIGS. 8A and 8Band Exemplary operation2illustrated inFIGS. 9A and 9B, for example. Alternatively, the timing of deleting the connection request and the specified bearer stored in the storage unit15may be when a predetermined time period has elapsed since they are stored in the storage unit15following transmission of a command for causing the IC card2to send a connection request after recovery of the specified bearer, for example.

Advantageous Effects of the First Embodiment

In the first embodiment, the mobile device1stores a connection request from the IC card2and the specified bearer, detects transition of the specified bearer's state from unavailable to available, and sends a command to the IC card2in order to prompt the IC card2to resend the connection request. This enables an application in the IC card2to resend the connection request after the specified bearer recovers even when connection with the specified bearer fails or when communication connection with the bearer is terminated because the bearer is unavailable.

The information processing apparatus, information processing method, and information processing program disclosed herein enable connection to a network specified by a portable device which sends a connection request as a response to a command it receives, when communication over the specified network has transitioned from unavailable to available.

Other

While the first embodiment illustrates a mobile device having an IC card, the present invention is not limited thereto; the invention is applicable to any information processing apparatus that uses BIP to perform communication with a portable device, such as a card. For example, the portable device may be an SD card instead of an IC card.

Also, while transmission of the command for payment instruction is initiated on the Web server3(such as in OP31ofFIG. 3) in the above-described first embodiment, this is not limitation. For example, the command for payment instruction may be sent from the mobile device1to the IC card2when the user inputs a purchase request, for example. In a case where the IC card2has browsing capability, browsing process involving the Web server3may also be done by the IC card2and payment processing may be initiated by the IC card2when the user inputs a purchase request through the mobile device1. Additionally, notifications of payment instruction and completion from the Web server3may be SMS mail messages, for example.

In the first embodiment, when receiving a connection request from the IC card2, the mobile device1stores the connection request and the specified bearer in the storage unit15. When detecting recovery of a bearer, the mobile device1compares the recovered bearer with the specified bearer stored in the storage unit15, and sends a predetermined command to the IC card2if they match. Instead of comparing the recovered bearer with the specified bearer, the mobile device1may send the predetermined command to the IC card2every time it detects a recovery of a bearer. When the application for issuing connection requests is not activated in the IC card2, the predetermined command is discarded, for example. When the application for issuing connection requests is activated in the IC card2, the IC card2sends a connection request in a response to the received command to the mobile device1. When the bearer specified in the connection request matches the recovered bearer, connection to the specified bearer succeeds. When the bearer specified in the connection request and the recovered bearer do not match, connection to the specified bearer fails. When comparison between the recovered bearer and the specified bearer is not implemented, the connection request and the specified bearer do not have to be stored in the storage unit15.