Patent Publication Number: US-8995951-B2

Title: Management of multiple subscriber identity modules

Description:
FIELD 
     The invention relates to management of multiple subscriber identity modules. 
     BACKGROUND 
     Two previous European patent applications by the Applicant, 12151906.0 and 12151908.6, disclose various apparatuses utilizing a set of subscriber identity modules (SIM) for one user of a mobile terminal. As the subscriber identity modules are not designed for such sophisticated use, the management of multiple subscriber identity modules requires further ideas. 
     BRIEF DESCRIPTION 
     According to an aspect of the present invention, there is provided a server comprising: a communication interface; one or more processors, and one or more memories storing instructions, that, when executed by the one or more processors, cause the server, for each subscriber identity module belonging to a set of subscriber identity modules of a user of a mobile terminal, to: detect a need to top up credit of the subscriber identity module; and after the detection, transmit, through the communication interface, transaction data determining a payment to the mobile phone operator of the subscriber identity module in order to top up the credit of the subscriber identity module. 
    
    
     
       LIST OF DRAWINGS 
       Example embodiments of the present invention are described below, by way of example only, with reference to the accompanying drawings, in which 
         FIGS. 1 ,  2 ,  3 ,  4 ,  5  and  6  illustrate example embodiments of an apparatus; 
         FIG. 7  illustrates an example embodiment of a wireless communication system; 
         FIG. 8  illustrates example embodiments of a method; 
         FIG. 9  is a signal sequence chart of some example embodiments; 
         FIG. 10  illustrates example embodiments of an apparatus and a server; 
         FIG. 11  illustrates example embodiments of a method; and 
         FIGS. 12 and 13  illustrate topping up of the subscriber identity modules. 
     
    
    
     DESCRIPTION OF EMBODIMENTS 
     The following embodiments are only examples. Although the specification may refer to “an” embodiment in several locations, this does not necessarily mean that each such reference is to the same embodiment(s), or that the feature only applies to a single embodiment. Single features of different embodiments may also be combined to provide other embodiments. Furthermore, words “comprising” and “including” should be understood as not limiting the described embodiments to consist of only those features that have been mentioned and such embodiments may contain also features/structures that have not been specifically mentioned. 
     It should be noted that while  FIGS. 1 to 6 ,  10 , and  12  illustrate various embodiments of apparatuses, they are simplified block diagrams that only show some structures and functional entities. The connections shown in these Figures are logical connections; the actual physical connections may be different. Interfaces between the various elements may be implemented with suitable interface technologies, such as a message interface, a method interface, a sub-routine call interface, a block interface, or any hardware/software means enabling communication between functional sub-units. It is apparent to a person skilled in the art that the described apparatuses may also comprise other functions and structures. It should be appreciated that details of some functions, structures, and the protocols used for communication are irrelevant to the actual invention. Therefore, they need not be discussed in more detail here. Although the apparatuses have been depicted as separate single entities, different parts may be implemented in one or more physical or logical entities. 
     As shown in  FIG. 1 , an apparatus  100  comprises an interface  108  to a set of subscriber identity (SIM) modules  110 ,  112 ,  114 ,  116  of a wireless communication system. The interface  108  may or may not include a (contact) smart card reader  130  capable of reading the subscriber data through the contacts of the integrated circuit. 
     The number of the subscriber identity modules  110 ,  112 ,  114 ,  116  may vary according to the circumstances, but there are at least three subscriber identity modules. One subscriber identity module  110  may be a default subscriber identity module used normally (in user&#39;s home location or in a network where he/she has the coverage of the default subscriber identity module, for example). The number of other subscriber identity modules  112 ,  114 ,  116  may vary between 2 to N, wherein N is an integer greater than two, whereby the minimum number of the subscriber identity modules (0, 1, 2, . . . , N) is three. 
     In an example embodiment, the subscriber identity module  110 ,  112 ,  114 ,  116  is an integrated circuit storing subscriber data, which is network-specific information used to authenticate and identify subscribers on the network. The subscriber identity module may be embedded into a removable SIM card. First SIM cards were of credit card size, 85.60 mm×53.98 mm×0.76 mm, but a newer mini-SIM card is considerably smaller, 25 mm×15 mm×0.76 mm, or a micro-SIM card is even smaller, 15 mm×12 mm×0.76 mm. Naturally, these measures are only example embodiments. It is also to be noted than one physical SIM card may include a number of different subscriptions: one SIM card may be a multi-IMSI SIM card having many different subscriber identities in the same card. 
     Even a virtual subscriber identity module is feasible: it is a mobile phone number provided by a mobile network operator that does not require a SIM card to connect phone calls to the user&#39;s mobile terminal. In such a scenario, the at least one memory  102  of the apparatus  100  may be used to store subscriber data of the virtual subscriber identity module as required. 
     The wireless communication system may be any standard/non-standard/proprietary radio system that supports the use of the subscriber identity modules  110 ,  112 ,  114 ,  116 . In the present, such a system may be any mobile telephone system, regardless of the generation (such as 2G, 3G, 4G, beyond 4G, etc.). Consequently, the wireless communication system may be GSM (Global System for Mobile Communications), WCDMA (Wideband Code Division Multiple Access), TD-SCDMA (Time Division Synchronous Code Division Multiple Access), or evolved universal terrestrial radio access (E-UTRA), also known as long term evolution (LTE) for example, or its recent LTE-Advanced versions (LTE-A). However, the example embodiments are not restricted thereto, but may be applicable to other suitable radio systems (in their present forms and/or in their evolution forms), such as universal mobile telecommunications system (UMTS) radio access network (UTRAN or EUTRAN), a system based on International Mobile Telecommunication (IMT) standard or any one of its evolution versions (e.g. IMT-Advanced), wireless local area network (WLAN) based on IEEE (Institute of Electrical and Electronics Engineers) 802.11 standard or its evolution versions (IEEE 802.11 ac), worldwide interoperability for microwave access (WiMAX), Wi-Fi, 3GPP, Bluetooth®, or personal communications services (PCS). 
       FIG. 7  illustrates an example of the radio system  702 , LTE. The three basic elements of the radio system  702  are UE  700  (=mobile terminal), eNB (=base station)  704  in a radio network and an access gateway (a-GW)  706  in a core network. In such a division, the apparatus  100  is either in the UE  700  or coupled to it, but not in the eNB  704  nor in the a-GW  706 . 
     The base station may be called, depending on the system, a Node B, enhanced or evolved NodeB (eNB), a home eNode B (HeNB), an access point (AP), an IEEE 802.11 based access point, a femto node, a femto base station, or any other equipment belonging to the network infrastructure of the wireless communication system, and implementing the radio communication interface with the mobile terminal. Functionalities of the eNB  704  may include: all radio protocols, mobility management, all retransmissions, header compression, and packet data convergence protocols. The a-GW  706  provides the interface of the cellular radio system  702  to/from the other networks  712  such as the Internet. The a-GW  706  may be streamlined by separating the user and the control planes: a mobility management entity (MME)  708  is just a control plane entity and the user plane bypasses MME  708  directly to a serving gateway (S-GW)  710 . 
     The apparatus  100  also comprises one or more processors  106 , and one or more memories  102  storing instructions  104 . In an example embodiment, the instructions  104 , when executed by the one or more processors  106 , cause the apparatus  100  to obtain data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116 , obtain data  142  relating to a mobile terminal, obtain at least one selection ground  144  for the subscriber identity module, and select at least one optimal subscriber identity module  110 ,  112 ,  114 ,  116  for use by the mobile terminal on the basis of the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules, the data  142  relating to the mobile terminal, and the at least one selection ground  144  for the subscriber identity module. With this kind of processing, utilization of many and wide range of subscriber identity modules becomes possible, and, furthermore, selection of the right subscriber identity module becomes user friendly and automatic (or at least semi-automatic if user interaction is required for the selection or its confirmation). 
     The term ‘processor’  106  refers to a device that is capable of processing data. Depending on the processing power needed, the apparatus  100  may comprise several processors  106  such as parallel processors or a multicore processor. When designing the implementation of the processor  106 , a person skilled in the art will consider the requirements set for the size and power consumption of the apparatus  100 , the necessary processing capacity, production costs, and production volumes, for example. The processor  106  and the memory  102  may be implemented by an electronic circuitry. In an example embodiment, the processor  106  is Freescale™ i.MX233 applications processor such as MCIMX233CJM4C and the memory  102  includes NAND type flash memory such as Micron® MT29F1G08ABADAH4-IT:D, and mobile DDR (=type of double data rate synchronous DRAM) SDRAM such as Micron® MT46H32M16LFBF-6 IT:C. 
     A non-exhaustive list of implementation techniques for the processor  106  and the memory  102  includes, but is not limited to:
         logic components,   standard integrated circuits,   application-specific integrated circuits (ASIC),   system-on-a-chip (SoC),   application-specific standard products (ASSP),   microprocessors,   digital signal processors,   special-purpose computer chips, and   field-programmable gate arrays (FPGA).       

     The instructions  104  may be implemented by software and/or hardware. In an example embodiment, the software may be written by a suitable programming language (such as C, C++, or Java), and the resulting executable instructions  104  may be stored on the memory  102  and run by the microprocessor  106 . In an example embodiment, the functionality of the hardware may be designed by a suitable hardware description language (such as Verilog or VHDL), and transformed into a gate-level netlist (describing standard cells and the electrical connections between them), and after further phases the chip implementing the processor  106 , memory  102  and the instructions  104  may be fabricated with photo masks describing the circuitry. 
     In an example embodiment, the one or more memories  102  may further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to obtain the data relating to the subscriber identity modules  110 ,  112 ,  114 ,  116  by at least one of the following: read the data  140 A,  140 B,  140 C,  140 D from the subscriber identity modules  110 ,  112 ,  114 ,  116 , receive the data  140 A,  140 B,  140 C,  140 D wirelessly from a service provider, receive the data  140 A,  140 B,  140 C,  140 D from a user interface manipulated by a user of a mobile terminal. 
     The data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116  may include, for example, a unique serial number (Integrated Circuit Card Identifier, ICCID) of the SIM card, internationally unique number of the subscriber (International Mobile Subscriber Identity, IMSI), security authentication and ciphering information for the subscriber (such as an authentication key Ki), temporary information related to the local network, a list of the services the subscriber has access to, an operator-specific emergency number, two passwords (personal identification number, PIN, for ordinary use, and PIN unlock code, PUK, for PIN unlocking), and other required data. The subscriber data may also include other carrier-specific data such as the short message service centre (SMSC) number, service provider name (SPN), service dialling numbers (SDN), advice-of-charge parameters, and value added service (VAS) applications. Further information may be found in the GSM Technical Specification 11.11. 
     Besides being called subscriber identity module, also other names and abbreviations may be used to refer to subscriptions. USIM (Universal Subscriber Identity Module) is an application for UMTS running on a UICC (Universal Integrated Circuit Card). The USIM is a logical entity on the physical card storing user subscriber information, authentication information, text messages, and phone book contacts. For authentication purposes, the USIM stores a long-term pre-shared secret key, which is shared with the Authentication Center (AuC) in the network. The USIM also verifies a sequence number that must be within a range using a window mechanism to avoid replay attacks, and is in charge of generating the session keys to be used in the confidentiality and integrity algorithms of the KASUMI block cipher in UMTS. The equivalent of USIM on CDMA networks is CSIM. 
     The service provider is not illustrated in  FIG. 1 , but the service provider may be an independent supplier/vendor of the subscriber identity modules  112 ,  114 ,  116  and the apparatus  100 . The user interface manipulated by the user of the mobile terminal may be a user interface of the mobile terminal. 
     In an example embodiment, the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to obtain the data  142  relating to the mobile terminal by obtaining location of the mobile terminal, country code from the mobile terminal, pre-set parameters from the mobile terminal, time from the mobile terminal, date from the mobile terminal, day of the week from the mobile terminal, information of available operators from the mobile terminal, information of available networks from the mobile terminal, obtain type (laptop, mobile phone, tablet, etc.) of the mobile terminal, obtain model (Nokia® N9, Samsung® Galaxy, Apple® iPhone 4, etc.) of the mobile terminal, obtain info about applications (games, email, Skype™, etc.) in use or used in the mobile terminal, and/or other suitable pre-set parameters. 
     Location of the mobile terminal may be obtained by use of a satellite navigation receiver, for example, as will be described with reference to  FIG. 2 , but also from cellular location based info. Time, date, and day of the week may be obtained from a watch/calendar application of the mobile terminal, and such information may be relevant when deciding which subscriber identity module  110 / 112 / 114 / 116  to use as the charges may vary according to the time of day, day of the week, or also during special holidays. Information relating to the available operators and available networks may be obtained from an appropriate application of the mobile terminal as the mobile terminal may listen to certain frequencies, and such information may also be relevant for deciding the right subscriber identity module  110 / 112 / 114 / 116  for use as the user may have some preferences relating to the operator, and also the type of the network may affect the decision. The type of the network, for example, may set limits to the data transfer rate, and depending on the user&#39;s requirements, a high enough data transfer rate may be desirable. 
     Each location area of a public land mobile network (PLMN) has its own unique identifier which is known as Location Area Identity (LAI). This internationally unique identifier is used for location updating of mobile subscribers. It is composed of a three decimal digit Mobile Country Code (MCC), a two to three digit Mobile Network Code (MNC) that identifies the GSM PLMN in that country, and a Location Area Code (LAC) which is a 16-bit number thereby allowing 65536 location areas within one GSM PLMN. 
     In an example embodiment, the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to obtain the at least one selection ground  144  for the subscriber identity module by obtaining network coverage criterion, available services criterion, quality of service criterion, costs of using the subscriber identity module criterion, location of the mobile terminal criterion. 
     The various criteria may be used alone or in combination. A simple selection ground  144  could be formulated as follows: “use the cheapest subscriber identity module  110 / 112 / 114 / 116  that provides the required service at the required quality of service in the present location of the mobile terminal by network operator A if available, and if operator A is not available then by any other operator fulfilling the criteria”, but this is only an example embodiment, as the selection ground  144  may be made much simpler but also much more complex. 
       FIG. 9  is a signal sequence chart of some example embodiments. 
     In an example embodiment, the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to treat one of the subscriber identity modules  110  as the default subscriber identity module and to use the default subscriber identity module  110  after start-up of the mobile terminal. The default subscriber identity module  110  may, besides being the starting subscriber identity module, be also the controlling subscriber identity module, and possibly also the back-up subscriber identity module. In  FIG. 9 , the mobile terminal  210  uses  900  the default SIM  110  for communication. 
     In an example embodiment, the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to detect roaming of the mobile terminal, and to initiate said selection of the at least one optimal subscriber identity module  112 / 114 / 116  for use by the mobile terminal. Roaming is the ability for a cellular customer to automatically make and receive voice calls, send and receive data, or access other services when travelling outside the geographical coverage area of the home network, by means of using a visited network. Roaming is technically supported by mobility management, authentication and billing procedures. If the visited network is in the same country as the home network, this is known as National Roaming. If the visited network is outside the home country, this is known as International (or Global) Roaming, If the visited network operates on a different technical standard than the home network, this is known as Inter-standard roaming. GSM Coverage Maps is a unique resource containing information supplied and approved by the members of the GSM Association. Network, services and roaming information are continually updated to reflect the evolving situation worldwide. In  FIG. 9 , the accessory  200  inactivates  902  the mobile terminal  210 , and scans  904 ,  906 ,  908  SIM data from the set of available subscriber identity modules  112 ,  114 ,  116  that are located in the accessory  200 . Next, the accessory  200  asks  910  available networks from the mobile terminal  210 , whereupon the mobile terminal  210  returns  912  the available networks to the accessory  200 . The accessory  200  then selects  914  at least one optimal subscriber identity module  112 ,  114 ,  116  for use by the mobile terminal as the active SIM on the basis of the data  904 ,  906 ,  908  relating to the subscriber identity modules  112 ,  114 ,  116 , the data  912  relating to the mobile terminal  210 , and the at least one selection ground for the subscriber identity module. In our example, SIM-2  114  is selected  914  as the active SIM, whereupon the accessory  200  instructs  916  the mobile terminal  210  to reconnect network with the optimal active subscriber identity module  114 . 
     In an example embodiment, the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to detect if the default subscriber identity module  110  is taken out of the use and instead at least one more optimal subscriber identity module  112 / 114 / 116  is taken into use, in which case the apparatus  100  is caused to switch on a call forwarding from the default subscriber identity module  110  to one of the more optimal subscriber identity modules  112 / 114 / 116  taken into use. With such call forwarding (or diversion) an incoming call to the default subscriber identity module  110  that is not currently in use is redirected to the currently used, more optimal subscriber identity module  112 / 114 / 116 . 
     In an example embodiment, the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to perform said selection of the at least one optimal subscriber identity module  112 / 114 / 116  for use by the mobile terminal in two stages, by pre-selecting subscriber identity modules that are usable on the basis of the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules and the data  142  relating to the mobile terminal, and by selecting at least one subscriber identity module for use by the mobile terminal from among the pre-selected subscriber identity modules on the basis of the at least one selection ground  144 . With this kind of two-stage selection, processing may become simpler, as the pre-selection removes unfeasible subscriber identity modules, whereupon the final selection may be made among a smaller set of subscriber identity modules. 
     In an example embodiment, the apparatus  100  may be a mobile wireless communications terminal, an accessory of a mobile wireless communications terminal, a combination of a mobile wireless communications terminal and an accessory of the mobile wireless communications terminal, an accessory of a mobile terminal, a combination of a mobile terminal and an accessory of the mobile terminal, or a USB (Universal Serial Bus) modem, or any other suitable mobile terminal capable of employing the set of subscriber identity modules  110 ,  112 ,  114 ,  116 , such as a mobile phone, a tablet pc, a portable computer, or a computer. In an example embodiment, the apparatus  100  is a part of a mobile base station, which may employ 3G such as Wi-Fi, for example. 
     However, in an example embodiment, the apparatus  100  may also be interpreted as a circuitry implementing the required functionality within some suitable equipment. 
     If the apparatus  100  is an independent apparatus, then it may also comprise equipment needed for other tasks as well. On the other hand, if the apparatus  100  is the circuitry, then it may only comprise the processor  106 , the memory  102 , the instructions  104 , and the interface  108 . 
     Various example embodiments will be explained with reference to  FIGS. 2 ,  3 ,  4 ,  5  and  6 . 
     In an example embodiment illustrated in  FIG. 6 , the apparatus  100  may be an electronic digital computer, which may comprise, besides the processor  106  and the (working) memory  102 , a non-volatile memory  600 , and a system clock  602 . Naturally, the computer may comprise a number of other peripheral devices, not illustrated here for the sake of clarity. 
     In an example embodiment, the system clock  602  constantly generates a stream of electrical pulses, which cause the various transferring operations within the computer to take place in an orderly manner and with specific timing. 
     In an example embodiment, the processor  106  may be implemented as a microprocessor implementing functions of a central processing unit (CPU) on an integrated circuit. The CPU is a logic machine executing a computer program  122 , which comprises the program instructions  104 . The instructions  104  may be coded as a computer program using a programming language, which may be a high-level programming language, such as C, or Java, or a low-level programming language, such as a machine language, or an assembler. The CPU may comprise a set of registers  604 , an arithmetic logic unit (ALU)  606 , and a control unit (CU)  608 . The control unit  608  is controlled by a sequence of instructions  104  transferred to the CPU from the working memory  102 . The control unit  608  may contain a number of microinstructions for basic operations. The implementation of the microinstructions may vary, depending on the CPU design. The microprocessor  106  may also have an operating system (a dedicated operating system of an embedded system, or a real-time operating system), which may provide the computer program  122  with system services. 
     In an example embodiment, there may be three different types of buses between the working memory  102  and the processor  106 : a data bus  610 , a control bus  612 , and an address bus  614 . The control unit  608  uses the control bus  612  to set the working memory  102  in two states, one for writing data into the working memory  102 , and the other for reading data from the working memory  102 . The control unit  608  uses the address bus  614  to send to the working memory  102  address signals for addressing specified portions of the memory in writing and reading states. The data bus  610  is used to transfer data  622 , such as data  140 A,  140 B,  140 C,  140 D,  142 ,  144 , from the working memory  102  to the processor  106  and from the processor  106  to the working memory  102 , and to transfer the instructions  104  from the working memory  102  to the processor  106 . During running of the program  122 , the instructions  104  are transferred via the data bus  610  from the working memory  102  into the control unit  608 , wherein usually a portion of the instructions  104  resides and controls the operation of the apparatus  100 . 
     In an example embodiment, the working memory  102  may be implemented as a random-access memory (RAM), where the information is lost after the power is switched off. The RAM is capable of returning any piece of data in a constant time, regardless of its physical location and whether or not it is related to the previous piece of data. The data may comprise data  140 A,  140 B,  140 C,  140 D,  142 ,  144  and any other permanent or temporary data needed during the processing, program instructions etc. 
     In an example embodiment, the non-volatile memory  600  retains the stored information even when not powered. Examples of non-volatile memory include read-only memory (ROM), flash memory, magnetic computer storage devices such as hard disk drives, and optical discs. As is shown in  FIG. 6 , the non-volatile memory  600  may store both data  620  and the computer program  122  comprising the instructions  104 . 
     An example embodiment provides a computer program  122  comprising the instructions  104  which, when loaded  126  into the apparatus  100 , cause the apparatus  100  to obtain data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116 , obtain data  142  relating to a mobile terminal, obtain at least one selection ground  144  for the subscriber identity module, and select at least one optimal subscriber identity module  110 ,  112 ,  114 ,  116  for use by the mobile terminal on the basis of the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules, the data  142  relating to the mobile terminal, and the at least one selection ground  144  for the subscriber identity module. 
     In an example embodiment, the computer program  122  may be in source code form, object code form, or in some intermediate form. The computer program  122  may be stored in a carrier  120 , which may be any entity or device capable of carrying the program  122  to the apparatus  100 . The carrier  120  may be a computer-readable storage medium. Besides this, the carrier  120  may be implemented as follows, for example: the computer program  122  may be embodied on a record medium, stored in a computer memory, embodied in a read-only memory, carried on an electrical carrier signal, carried on a telecommunications signal, and/or embodied on a software distribution medium. In some jurisdictions, depending on the legislation and the patent practice, the carrier  120  may not be the telecommunications signal. The medium  120  may be a non-transitory computer-readable storage medium. 
       FIG. 1  illustrates an example embodiment in which the carrier  120  may be coupled  126  with the apparatus  100 , whereupon the program  122  comprising the instructions  104  is transferred into the (working) memory  102 , and possibly also into the non-volatile memory  600 . The program  122  with its instructions  104  may be loaded from the non-volatile memory  600  into the working memory  102  as needed. 
     There are many ways to structure the program  122 . In an example embodiment, the operations of the program may be divided into functional modules, sub-routines, methods, classes, objects, applets, macros, etc., depending on the software design methodology and the programming language used. In modern programming environments, there are software libraries, i.e. compilations of ready-made functions, which may be utilized by the program for performing a wide variety of standard operations. 
       FIG. 2  illustrates an example embodiment wherein the apparatus  100  functionality is implemented in an accessory  200  of a mobile terminal  210 . Consequently, the accessory  200  comprises the set of the subscriber identity modules  112 ,  114 ,  116 , and the at least one processor  106  and at least one memory  102  with the instructions  104 . 
     The accessory  200  may or may not comprise a battery  202 , depending on the power requirements of the accessory  200  and the possibility to obtain electric energy from an external source such as the mobile terminal  210 . The (rechargeable) electrical battery  202  is one or more electrochemical cells that convert stored chemical energy into electrical energy. Instead of battery  202 , other suitable accumulator means may be used to store energy. 
     The interface  108  to the subscriber identity modules  110 ,  112 ,  114 ,  116  is within the accessory  200 , but also another interface  228  to the subscriber identity module  110  possibly located in the mobile terminal  210  may be needed. 
     Furthermore, both the mobile terminal  210  and the accessory  200  comprise a wired/wireless standard/proprietary communication protocol interface  204 ,  220  enabling two-way communication  230  between the mobile terminal  210  and the accessory  200 . In an example embodiment, the interface  204 ,  220  is implemented as a serial or parallel communication bus, hardware line, an USB (Universal Serial Bus) cable with appropriate connectors, a SIM bus according to ISO/IEC 7816-3, a wireless Bluetooth link, a wireless WLAN (Wireless Local Area Network) link, a wireless Wi-Fi (Wireless Fidelity) link, a serial bus such as UART (Universal Asynchronous Receiver/Transmitter), I 2 C (Inter-Integrated Circuit) or SPI (System Packet Interface). The data  140 A relating to the subscriber identity module  110  and the data  142  relating to the mobile terminal  210  may be transferred from the mobile terminal  210  to the accessory  200  through the interfaces  204 ,  220 . 
     The instructions  104 , when executed by the one or more processors  106  of the accessory  200 , cause the accessory  200  to obtain the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116 , obtain the data  142  relating to the mobile terminal  210 , obtain at least one selection ground  144  for the subscriber identity module, and select at least one optimal subscriber identity module  110 ,  112 ,  114 ,  116  for use by the mobile terminal  210  on the basis of the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules, the data  142  relating to the mobile terminal  210 , and the at least one selection ground  144  for the subscriber identity module. 
     In an example embodiment, the mobile terminal  210  may be a mobile wireless communications terminal employing a transceiver  218  capable of communicating with a wireless communication system, such as  702  illustrated in  FIG. 7 . In an example embodiment, the mobile terminal  210  may be a mobile phone comprising the default subscriber identity module  110 , a user interface  216 , a battery  212 , at least one processor  222  and at least one memory  226  with instructions  224 . 
     The user interface  216  may comprise a display, means for producing sound, a keyboard, and/or a keypad, for example. The display may be a liquid crystal display, for example, but it may also be implemented by any appropriate prior art technique, such as with an active-matrix organic light-emitting diode. The display may also incorporate other user interaction means, such as touch input, or haptic feedback, i.e. the display may be a touch screen. The means for producing sound may be a loudspeaker or a simpler means for producing beeps or other sound signals. The keyboard/keypad may comprise a complete (QWERTY) keyboard, a mere numeric keypad or only a few push buttons and/or rotary buttons. In addition, the user interface  216  may comprise other user interface elements, for example various means for focusing a cursor (mouse, track ball, various arrow keys, touch sensitive area etc.) or elements enabling audio control. A parameter, setting or command relating to the described processing of the subscriber identity modules  110 ,  112 ,  114 ,  116  may be manipulated with the user interface  216 . 
     Furthermore, the mobile terminal  210  may comprise a positioning receiver  214  receiving external location information, which may be utilized to generate location of the mobile terminal  210 . The positioning receiver  214  may be a receiver of a global navigation satellite system (GNSS). Such a system may be the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), the Galileo Positioning System (Galileo), the Beidou Navigation System, The Quasi-Zenith Satellite System (QZSS), or the Indian Regional Navigational Satellite System (IRNSS), for example. The positioning receiver  214  determines its location (longitude, latitude, and altitude) using signals transmitted from satellites orbiting the earth. Besides global navigation satellites, the positioning receiver  214  may also determine its location by utilizing other known positioning techniques. It is well known that by receiving radio signals from several different base stations, a mobile phone may determine its location, for example. 
     In the example embodiment of  FIG. 2 , the accessory  200  does not comprise a user interface of its own, but the user interaction is performed through the user interface  216  of the mobile terminal  210  as data may be transferred between the accessory  200  and the mobile terminal  210  through the interfaces  204 ,  220 . However, in another example embodiment, the accessory  200  may comprise a user interface as well for outputting and/or inputting data relating to the described processing of the subscriber identity modules  110 ,  112 ,  114 ,  116 . 
     In the example embodiment of  FIG. 2 , the apparatus  100  functionality may be implemented in the accessory  200  such that the instructions  104  are run in the at least one processor  106  of the accessory  200 . However, also such an example embodiment is feasible wherein a part of the apparatus  100  functionality is implemented in the mobile terminal  210  as well such that a part of the instructions  104  are also run in the at least one processor  222  of the mobile terminal  210 . 
       FIG. 3  illustrates an example embodiment wherein the apparatus  100  functionality is divided between an accessory  300  of a mobile terminal  310  and the mobile terminal  310 . Consequently, the accessory  200  comprises the set of the subscriber identity modules  112 ,  114 ,  116 . The interface  108  to the subscriber identity modules  110 ,  112 ,  114 ,  116  is within the accessory  200 , but also another interface  228  to the subscriber identity module  110  possibly located in the mobile terminal  210  may be needed. But, as shown in  FIG. 3 , the accessory  300  does not require a processor or a memory. 
     The mobile terminal  310  comprises the at least one processor  106  and at least one memory  102  with the instructions  104 , and also the other parts  110 ,  212 ,  214 ,  216 ,  218 ,  220 ,  228  as shown in  FIG. 3 , and explained in relation to  FIG. 2 . 
     In the example embodiment of  FIG. 3 , the accessory  300  is a kind of container including the extra subscriber identity modules  112 ,  114 ,  116  to be used by the mobile terminal  310 , but the required processing is performed only in the at least one processor  106  of the mobile terminal  310 . 
     The data  140 B,  140 C,  140 D relating to the subscriber identity modules  112 ,  114 ,  116  may be transferred from the accessory  300  to the mobile terminal  310  through the interfaces  204 ,  220 . 
     The instructions  104 , when executed by the one or more processors  106  of the mobile terminal  310 , cause the mobile terminal  310  to obtain the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116 , obtain the data  142  relating to the mobile terminal  210 , obtain at least one selection ground  144  for the subscriber identity module, and select at least one optimal subscriber identity module  110 ,  112 ,  114 ,  116  for use by the mobile terminal  210  on the basis of the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules, the data  142  relating to the mobile terminal  210 , and the at least one selection ground  144  for the subscriber identity module. 
       FIG. 4  illustrates an example embodiment wherein the apparatus  100  functionality is implemented to a mobile terminal  400 . Consequently, the mobile terminal  400  comprises the interface  108  to the set of the subscriber identity modules  110 ,  112 ,  114 ,  116  of the wireless communication system, the one or more processors  106 , and the one or more memories  102  storing the instructions  104 . The instructions  104 , when executed by the one or more processors  106 , cause the mobile terminal  400  to obtain data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116  through the interface  108 , obtain data  142  relating to the mobile terminal  400 , obtain at least one selection ground  144  for the subscriber identity module, and select at least one optimal subscriber identity module for use by the mobile terminal  400  on the basis of the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116 , the data  142  relating to the mobile terminal  400 , and the at least one selection ground  144  for the subscriber identity module. The mobile terminal  400  may also comprise at least some of the other parts  212 ,  214 ,  216 ,  218  as shown in  FIG. 4 , and explained in relation to  FIG. 2 . 
       FIG. 5  illustrates an example embodiment wherein the apparatus  100  functionality is implemented in a USB (Universal Serial Bus) modem  500 . Consequently, the USB modem  500  comprises the set of the subscriber identity modules  110 ,  112 ,  114 ,  116 , the interface  108  to the subscriber identity modules  110 ,  112 ,  114 ,  116 , the at least one processor  106 , and at least one memory  102  with the instructions  104 . 
     The USB modem  500  may or may not comprise a battery, depending on the power requirements of the USB modem  500  and the possibility to obtain electric energy from an external source such as a mobile terminal  510 . 
     Furthermore, the USB modem  500  comprises a USB interface  204  capable of being coupled  230  through a USB cable and appropriate connectors to a USB interface  220  of the mobile terminal  510 . The data  142  relating to the mobile terminal  510  may be transferred from the mobile terminal  510  to the USB modem  500  through the interfaces  204 ,  220 . 
     The instructions  104 , when executed by the one or more processors  106  of the USB modem  500 , cause the USB modem  500  to obtain the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116 , obtain the data  142  relating to the mobile terminal  510 , obtain at least one selection ground  144  for the subscriber identity module, and select at least one optimal subscriber identity module  110 ,  112 ,  114 ,  116  for use by the mobile terminal  510  on the basis of the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules, the data  142  relating to the mobile terminal  510 , and the at least one selection ground  144  for the subscriber identity module. 
     In an example embodiment, the mobile terminal  510  may be a portable computer, a tablet computer, or any other suitable mobile terminal capable of employing the set of subscriber identity modules  110 ,  112 ,  114 ,  116 , but not necessarily itself including a transceiver capable of communicating with a wireless communication system, such as  702  illustrated in  FIG. 7 . Consequently, the mobile terminal  510  may only comprise the battery  212  and the user interface  216  of the other parts of the mobile terminal  210  illustrated in  FIG. 2 . 
     In the example embodiment of  FIG. 5 , the apparatus  100  functionality may be implemented in the USB modem  500  such that the instructions  104  are run in the at least one processor  106  of the USB modem  500 . However, also such an example embodiment is feasible wherein a part of the apparatus  100  functionality is implemented in the mobile terminal  510  as well such that a part of the instructions  104  are also run in at least one processor  222  of the mobile terminal  510  besides the other instructions  224  stored in at least one memory  226  of the mobile terminal  510 . 
     The example embodiments explained so far with reference to  FIGS. 1 to 9  mainly deal with the selection of the at least one optimal subscriber identity module  110 ,  112 ,  114 ,  116  for use by the mobile terminal, wherein the processing relating to the selection is mainly done in the mobile terminal and/or in the accessory of the mobile terminal. 
       FIG. 10  illustrates example embodiments, wherein an external server  1010  participates in said processing relating to the selection of the at least one optimal subscriber identity module  110 ,  112 ,  114 ,  116 . 
     The apparatus  100  comprises, as already explained, the SIM interface  108  to the set of the subscriber identity modules  110 ,  112 ,  114 ,  116  of the wireless communication system. Furthermore, the apparatus  100  comprises a radio interface  1002  to a radio transceiver of a wireless communication system. The radio transceiver is not illustrated in  FIG. 10 , but it may be the radio transceiver  218  of the mobile terminal  210  as illustrated in  FIG. 2 ,  3  or  4 , or it may be the radio transceiver  216 / 218  of the USB modem  500  as illustrated in  FIG. 5 , for example. In fact, the apparatus  100  illustrated in  FIG. 10  may be implemented as in any example embodiment described in  FIGS. 1 to 9 . These embodiments include a mobile wireless communications terminal, an accessory of a mobile wireless communications terminal, a combination of a mobile wireless communications terminal and an accessory of the mobile wireless communications terminal, an accessory of a mobile terminal, a combination of a mobile terminal and an accessory of the mobile terminal, a Universal Serial Bus USB modem. Consequently, the apparatus  100  may communicate  1030  with the server  1010  either through the accessory  200 / 300 / 500 , which then includes a suitable transceiver  216 / 218 , or through the mobile terminal  210 / 310 / 400 / 510 , which includes a suitable transceiver  218 . 
     The apparatus  100  further comprises the one or more processors  106 , and the one or more memories  102  storing the instructions  104  as already explained earlier. The one or more memories  102  may further store the earlier mentioned data  620 . 
     The instructions  104 , when executed by the one or more processors  106 , cause the apparatus  100  to obtain, through the SIM interface  108 , data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116 , and obtain data  142  relating to the mobile terminal  210 / 310 / 400 / 510 . 
     Furthermore, the instructions  104 , when executed by the one or more processors  106 , cause the apparatus  100  to transmit, through the radio interface  1002 , the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116  and the data  142  relating to the mobile terminal  210 / 310 / 400 / 510  to the service provider server  1010 , and receive, through the radio interface  1002 , a selection from the service provider server  1010  of at least one optimal subscriber identity module  110 / 112 / 114 / 116  from among the set of the subscriber identity modules  110 ,  112 ,  114 ,  116  for use by the mobile terminal  210 / 310 / 400 / 510 . 
     The server  1010  comprises a communication interface  1012  capable of communicating  1030  with the apparatus  100  through a communication network  1004 . The communication network  1004  comprises at least a wireless system such as the earlier mentioned wireless communication system, but it may also comprise wired system, such as the Internet. Consequently, the communication interface  1012  utilizes either a radio transceiver and/or a wired network interface. 
     The server  1010  also comprises one or more processors  1014 , and one or more memories  1018  storing instructions  1020 . In an example embodiment, the server  1010  is a computer, such as a single server computer or a cluster of computers, whereby the one or more processors  104  and the one or more memories may be implemented by suitable processors, even in parallel or multicore embodiments, for example. As shown in  FIG. 10 , data  1022  relating to the processing may reside on the one or more memories  108 .  FIG. 10  also shows that the server  1010  may comprise a database interface  1016  to a database  1024  filled with information relating to the selection of optimal subscriber identity module. The database  1024  may reside in the server  1010 , or, as illustrated in  FIG. 10 , in another computer. 
     In an example embodiment, the instructions  1020 , when executed by the one or more processors  1014 , cause the server  1010  to receive, through the communication interface  1012 , the data  140 A,  140 B,  140 C,  140 D relating to the set of subscriber identity modules  110 ,  112 ,  114 ,  116  of the mobile terminal  210 / 310 / 400 / 510  of the wireless communication system, and data  142  relating to the mobile terminal  210 / 310 / 400 / 510 . 
     In an example embodiment, the instructions  1020 , when executed by the one or more processors  1014 , cause the server  1010  to select at least one optimal subscriber identity module  110 / 112 / 114 / 116  for use by the mobile terminal  210 / 310 / 400 / 510  on the basis of the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116 , the data  142  relating to the mobile terminal  210 / 310 / 400 / 510 , and at least one selection ground for the subscriber identity module. 
     With this kind of processing, utilization of many and wide range of subscriber identity modules becomes possible, and, furthermore, selection of the right subscriber identity module becomes user friendly and automatic. Besides, making the selection in the server  1010  enables the service provider to utilize the latest possible information relating to the selection grounds, whereby the selection is as optimal as possible. The centralized processing within the server  1010  enables the service provider to gather and combine data relating to a large number of users, whereby the information relating to the selection grounds may be interpreted more precisely. 
     In addition to selection of the at least one optimal subscriber identity module for use, i.e. what subscriber identity module to use, also the way to use the selected subscriber identity module(s) may be informed by the server  1010 , i.e. how to use the subscriber identity module  110 / 112 / 114 / 116 . A simple rule for use could be formulated as follows: “use the subscriber identity module  110  for web surfing, but for movie download use the subscriber identity module  112 ”, but this is only an example embodiment, as the rule may be made much simpler but also much more complex. 
     As was explained earlier, the service provider may be an independent supplier/vendor of the subscriber identity modules  110 ,  112 ,  114 ,  116  and the apparatus  100 . Also a mobile operator may take the role of the service provider. In any case, besides the subscriber identity modules supplied by the service provider, the user may also set own subscriber identity modules into the set of the subscriber identity modules among which the optimal one(s) is (are) selected. 
     The at least one selection ground comprises at least one of the following: network coverage criterion, available services criterion, quality of service criterion, costs of using the subscriber identity module criterion, location of the mobile terminal criterion. The server  1010  may gather real-life data relating to the selection grounds, and, as the processing is centralized, even confidential information may be utilized for the selection. 
     But, as was explained earlier, at least one selection ground  144  may also be obtained by the apparatus  100 . Consequently, the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  102 , cause the apparatus  100  to obtain at least one selection ground  144  for the subscriber identity module, and transmit, through the radio interface  1002 , the at least one selection ground  144  for the subscriber identity module to the service provider server  1010 . 
     In an example embodiment, the instructions  1020 , when executed by the one or more processors  1014 , cause the server  1010  to transmit, through the communication interface  1012 , the selection of at least one optimal subscriber identity module  110 / 112 / 114 / 116  from among the set of the subscriber identity modules  110 ,  112 ,  114 ,  116  for use by the mobile terminal  210 / 310 / 400 / 510 . 
     As was explained earlier, in an example embodiment, the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to obtain the data  140 A,  140 B,  140 C,  140 D relating to the subscriber identity modules  110 ,  112 ,  114 ,  116  by at least one of the following: read the data from the subscriber identity modules  110 ,  112 ,  114 ,  116 , receive the data from a user interface manipulated by a user of the mobile terminal  210 / 310 / 400 / 510 . 
     As was also explained earlier, in an example embodiment, the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to obtain the data relating  142  to the mobile terminal  210 / 310 / 400 / 510  by at least one of the following: obtain location of the mobile terminal  210 / 310 / 400 / 510 , obtain country code from the mobile terminal  210 / 310 / 400 / 510 , obtain time from the mobile terminal  210 / 310 / 400 / 510 , obtain date from the mobile terminal  210 / 310 / 400 / 510 , obtain day of the week from the mobile terminal  210 / 310 / 400 / 510 , obtain information of available operators from the mobile terminal  210 / 310 / 400 / 510 , obtain information of available networks from the mobile terminal  210 / 310 / 400 / 510 , obtain type of the mobile terminal  210 / 310 / 400 / 510 , obtain model of the mobile terminal  210 / 310 / 400 / 510 , obtain info about applications in use or used in the mobile terminal  210 / 310 / 400 / 510 . 
     In an example embodiment, wherein the apparatus  100  further comprises a data interface  1000  to a user interface, and wherein the one or more memories  102  further store instructions  104 , that, when executed by the one or more processors  106 , cause the apparatus  100  to present, through the data interface  1000 , the selection of the at least one optimal subscriber identity module  110 / 112 / 114 / 116  as pre-selected subscriber identity modules for the user, and to receive, through the data interface  1000 , a confirmation/selection of at least one subscriber identity module  110 / 112 / 114 / 116  for use by the mobile terminal  210 / 310 / 400 / 510  from among the pre-selected subscriber identity modules. 
     Next, example embodiments of a method will be described with reference to  FIG. 8 . Other functions, not described in this application, may also be executed between the operations or within the operations. Some of the operations or parts of the operations may also be left out or replaced by a corresponding operation or part of the operation. The method starts in  800 . In  802 , data relating to subscriber identity modules of a wireless communication system is obtained. In  804 , data relating to a mobile terminal is obtained. In  806 , at least one selection ground for the subscriber identity module is obtained. It is to be noted that the sequence of operations  802 ,  804 ,  806  may differ from what is shown, and they may also be executed at least partly in parallel. In  808  at least one optimal subscriber identity module for use by the mobile terminal is selected on the basis of the data relating to the subscriber identity modules, the data relating to the mobile terminal, and the at least one selection ground for the subscriber identity module. The method ends in  810 . 
     The embodiments of the earlier described apparatus  100  may also be used to enhance the method. In an example embodiment, the method may be implemented in an electronic apparatus  100  described earlier. In an embodiment, a computer program comprises instructions which, when loaded into an apparatus  100 , cause the apparatus  100  to perform the described process. In an embodiment, a computer-readable storage medium comprises the computer program. 
     Next, further example embodiments of the method will be described. These example embodiments may be freely combined with each other in order to produce further example embodiments. 
     In an example embodiment, obtaining  802  the data relating to the subscriber identity modules comprises at least one of the following: reading the data from the subscriber identity modules; receiving the data wirelessly from a service provider; receiving the data from a user interface manipulated by a user of the mobile terminal. 
     In an example embodiment, obtaining  804  the data relating to the mobile terminal comprises at least one of the following: obtaining location of the mobile terminal; obtaining country code from the mobile terminal; obtaining time from the mobile terminal; obtaining date from the mobile terminal; obtaining day of the week from the mobile terminal; obtaining information of available operators from the mobile terminal; obtaining information of available networks from the mobile terminal; obtaining type of the mobile terminal, obtaining model of the mobile terminal; obtaining info about applications in use or used in the mobile terminal. 
     In an example embodiment, obtaining  806  the at least one selection ground for the subscriber identity module comprises at least one of the following: obtaining network coverage criterion; obtaining available services criterion; obtaining quality of service criterion; obtaining costs of using the subscriber identity module criterion; obtaining location of the mobile terminal criterion. 
     In an example embodiment, the method further comprises: treating one of the subscriber identity modules as the default subscriber identity module; and using the default subscriber identity module after start-up of the mobile terminal. 
     In an example embodiment, the method further comprises: detecting roaming of the mobile terminal; and initiating said selection of the at least one optimal subscriber identity module for use by the mobile terminal. 
     In an example embodiment, the method further comprises: detecting if the default subscriber identity module is taken out of the use and instead at least one more optimal subscriber identity module is taken into use, and, in such a case, switching on a call forwarding from the default subscriber identity module to one of the more optimal subscriber identity modules taken into use. 
     In an example embodiment, the method further comprises: performing said selection of the at least one optimal subscriber identity module for use by the mobile terminal in two stages, by pre-selecting subscriber identity modules that are usable on the basis of the data relating to the subscriber identity modules and the data relating to the mobile terminal, and by selecting at least one subscriber identity module for use by the mobile terminal from among the pre-selected subscriber identity modules on the basis of the at least one selection ground. 
       FIG. 11  illustrates further example embodiments of the method. The method starts in  1100 . 
     In  1102 , data relating to subscriber identity modules of a wireless communication system is obtained. In an example embodiment, obtaining the data relating to the subscriber identity modules in  1102  comprises at least one of the following: reading the data from the subscriber identity modules, receiving the data from a user interface manipulated by a user of the mobile terminal. 
     In  1104 , data relating to a mobile terminal is obtained. In an example embodiment, obtaining the data relating to the mobile terminal in  1104  comprises at least one of the following: obtaining location of the mobile terminal, obtaining country code from the mobile terminal, obtaining time from the mobile terminal, obtaining date from the mobile terminal, obtaining day of the week from the mobile terminal, obtaining information of available operators from the mobile terminal, obtaining information of available networks from the mobile terminal, obtaining type of the mobile terminal, obtaining model of the mobile terminal, obtaining info about applications in use or used in the mobile terminal. 
     In  1106 , the data relating to the subscriber identity modules and the data relating to the mobile terminal is transmitted to a service provider server. In  1108 , a selection is received from the service provider server of at least one optimal subscriber identity module from among the set of the subscriber identity modules for use by the mobile terminal. The method ends in  1110 . 
     A further example embodiment includes an additional operation: in  1112 , at least one selection ground for the subscriber identity module is obtained, and the at least one selection ground for the subscriber identity module is additionally transmitted in  1106  to the service provider server. 
     In another example embodiment, the method further comprises: presenting the selection of the at least one optimal subscriber identity module as pre-selected subscriber identity modules for the user in  1114 , and receiving, from a user, a confirmation/selection of at least one subscriber identity module for use by the mobile terminal from among the pre-selected subscriber identity modules in  1116 . 
     The previous embodiments have described an elaborated system of utilizing the set of the subscriber identity modules  110 ,  112 ,  114 ,  116  for the single user of the mobile terminal  210 / 310 / 400 / 510 . Next, some further aspects relating to the management of the subscriber identity modules  110 ,  112 ,  114 ,  116  are revealed. 
       FIGS. 12 and 13  illustrate topping up of the subscriber identity modules  110 ,  112 ,  114 ,  116 . 
       FIG. 12  illustrates the way the various parts of the system may interact with each other. It is to be noted that, for the sake of clarity, all possible connections between the various parts are not illustrated. 
     The apparatus  100  with the set of the subscriber identity modules  110 ,  112 ,  114 ,  116  illustrated in  FIG. 12  is as in the example embodiments described earlier with reference to  FIGS. 1 to 11 . 
     Also the server  1010  and the database  1024  are as illustrated with the earlier described embodiments. The server  1010  may comprise at least one of the following: a computer, a server computer, a cluster of computers, a computer system, any one of the previous operated by a service provider providing the set of the subscriber identity modules  110 ,  112 ,  114 ,  116 . 
     The communication network  1004  may comprise, as already explained a combination of various wireless and/or wired systems such as the earlier mentioned wireless communication system and the Internet. 
     As explained before, the server  1010  comprises the communication interface  1012 , the one or more processors  1014 , and the one or more memories  1018  storing the instructions  1020 . 
     The instructions  1020 , when executed by the one or more processors  1014 , cause the server  1010 , for each subscriber identity module  110 ,  112 ,  114 ,  116  belonging to the set of subscriber identity modules of the user of the mobile terminal  210 / 310 / 400 / 510 , to detect  1220 ,  1222 ,  1224 ,  1226 ,  1228  a need to top up credit of the subscriber identity module  110 / 112 / 114 / 116 , and after the detection, transmit, through the communication interface  1012 , transaction data  1230  determining a payment to the mobile phone operator  1200 ,  1202 ,  1204 ,  1206  of the subscriber identity module  110 / 112 / 114 / 116  in order to top up the credit of the subscriber identity module  110 / 112 / 114 / 116 . The need for the topping-up may be detected by the mobile phone operator infrastructure  1200 ,  1202 ,  1204 ,  1206 , and/or by the subscriber identity module  110 ,  112 ,  114 ,  116  and the apparatus  100 . 
     The mobile phone operator (also known as mobile network operator, wireless service provider, wireless carrier, cellular company, or mobile network carrier)  1200 ,  1202 ,  1204 ,  1206  is a telephone company providing services for the user of the mobile terminal  210 / 310 / 400 / 510 . Some examples of the mobile phone operators include: China Mobile, Vodafone, Orange, TeliaSonera, T-Mobile, Verizon Wireless etc. The mobile phone operator  1200 ,  1202 ,  1204 ,  1206  gives the subscriber identity module  110 ,  112 ,  114 ,  116  to the user who inserts it into the apparatus  100  to gain access to the service. In the described embodiments, the mobile phone operators  1200 ,  1202 ,  1204 ,  1206  may first supply the service provider with at least some of the subscriber identity modules  110 ,  112 ,  114 ,  116 , whereupon the service provider assembles a suitable set of the subscriber identity modules  110 ,  112 ,  114 ,  116 , possibly with the apparatus  100 , and gives them to the end-user for use. Other ways of supplying the subscriber identity modules  110 ,  112 ,  114 ,  116  to the end-user are also feasible: the service provider may give one or more subscriber identity modules  110 ,  112 ,  114 ,  116  to the end-user who will set them to the apparatus  100 , for example. The mobile phone operator  1200 ,  1202 ,  1204 ,  1206  may either own the underlying network and spectrum assets required to run the service, or the mobile phone operator may be a virtual one, buying wholesale service from the mobile phone operator owning the underlying network and spectrum assets and selling on to its own customers. Even though connections between the subscriber identity modules  110 ,  112 ,  114 ,  116  and the operator infrastructure  1200 ,  1202 ,  1204 ,  1206  are not shown in  FIG. 12 , it is clear that such connections exist, as the subscriber identity modules  110 ,  112 ,  114 ,  116  remain, in general, under management of the operators; the service provider only supports their flexible use under varying circumstances. 
     In an example embodiment, the set of the subscriber identity modules  110 ,  112 ,  114 ,  116  comprises prepaid subscriber identity modules obtained from various mobile phone operators  1200 ,  1202 ,  1204 ,  1206 . Credit is purchased in advance of use for the prepaid subscriber identity module. The purchased credit is used to pay for the services at the point they are used. If there is no credit left, the requested service is denied by the mobile network operator  1200 ,  1202 ,  1204 ,  1206 . Topping-up of the credit is consequently needed in order to be able to use the network services. A variety of payment methods (including the use of bank accounts and/or credit cards) may be utilized for the topping-up. 
     As shown in  FIG. 12 , the server  1010  may transmit transaction data  1230  determining the payment to the mobile phone operator  1200 ,  1202 ,  1204 ,  1206  to a special payment system  1210 . The payment system  1210  may be a part of a computer system of a bank, or another similar system capable of implementing financial transactions. Depending on the legislation and on the selected business model, the financial transactions relating to the topping-up may be performed in various ways. If the service provider maintaining the server  1010  is an independent supplier/vendor of the subscriber identity modules  110 ,  112 ,  114 ,  116 , the service provider may first pay the topping-up for the mobile network operator and later charge it from the user. In such a case, the service provider acquires subscriber identity modules from various mobile phone operators  1200 ,  1202 ,  1204 ,  1206 , and offers them as a convenient package (as the set) for the user, who may enjoy flexible roaming and reasonable costs as the optimal subscriber identity module  110 / 112 / 114 / 116  may be chosen for use depending on various earlier mentioned factors such as location, network coverage, cost, network quality, or any other parameter or their combination. 
     In the case of prepaid subscriber identity modules  110 ,  112 ,  114 ,  116 , the mobile network operator  1200 ,  1202 ,  1204 ,  1206  is not necessarily using the most convenient payment methods due to the nature and/or features of the prepaid subscriber identity modules and its typical customer. This situation is improved by the service provider purchasing a large number of prepaid subscriber identity modules  110 ,  112 ,  114 ,  116  and acting as one billed customer towards the mobile network operator  1200 ,  1202 ,  1204 ,  1206 , whereupon the service provider takes care of the individual billing towards the end-user. 
     In an example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to determine the payment to the mobile phone operator  1200 ,  1202 ,  1204 ,  1206  to be paid from a bank account of the service provider providing the set of the subscriber identity modules  110 ,  112 ,  114 ,  116 . 
     In another example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to transmit, through the communication interface  1012 , an invoice to the user covering the sum needed to top up the credit of the subscriber identity module  110 / 112 / 114 / 116 . Such single topping-up results in smaller individual bills for the user. This is in contrast to the compiled invoicing described next. 
     In another example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to compile user balance data from the balance data of each subscriber identity module  110 ,  112 ,  114 ,  116  belonging to the set of subscriber identity modules  110 ,  112 ,  114 ,  116 . 
     In another example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to transmit, through the communication interface  1012 , a compiled invoice to the user covering the sum indicated by the user balance data. The compiled invoice simplifies the invoicing, both for the service provider and the user. 
     In an example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to keep balance data  1022  relating to the subscriber identity module  110 ,  112 ,  114 ,  116 , and detect the need to top up the credit of the subscriber identity module  110 ,  112 ,  114 ,  116  on the basis of the balance data  1022 . In order to keep the balance data  1022 , the server  1010  may itself process and store it in the database  1024 , or the server  1010  may, alternatively, or additionally, receive the balance data  1022  from the mobile phone operator  1200 ,  1202 ,  1204 ,  1206 . In an example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to receive  1222 ,  1224 ,  1226 ,  1228 , through the communication interface  1012 , the balance data from the mobile phone operator  1200 ,  1202 ,  1204 ,  1206  of the subscriber identity module  110 ,  112 ,  114 ,  116 . 
     Besides keeping the balance data, or in addition to it, the server  1010  may detect the need for the topping-up in other ways as well. In an example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to receive  1222 ,  1224 ,  1226 ,  1228 , through the communication interface  1012 , a request from the mobile phone operator  1200 ,  1202 ,  1204 ,  1206  of the subscriber identity module  110 ,  112 ,  114 ,  116  to top up the credit, and detect the need to top up the credit of the subscriber identity module  110 ,  112 ,  114 ,  116  on the basis of the received request. 
     The topping-up of the credit may be performed automatically, without any user action, or semi-automatically with some user interaction. 
     In an example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to, after the detection, decide automatically to top up the credit of the subscriber identity module  110 / 112 / 114 / 116 . 
     In another example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to, after the detection, transmit  1220 , through the communication interface  1012 , alarm data to the user informing of the need to top up the credit of the subscriber identity module  110 / 112 / 114 / 116 . Such alarming may be performed just to inform the user that the topping-up is needed, i.e. the topping-up is still performed automatically. Or, alternatively, user interaction is required, whereupon in a further example embodiment, the one or more memories  1018  further store instructions  1020 , that, when executed by the one or more processors  1014 , cause the server  1010  to receive  1220 , through the communication interface  1012 , in response to the alarm data, instructions from the user instructing to top up the credit of the subscriber identity module  110 / 112 / 114 / 116 . 
       FIG. 13  illustrates an example embodiment of a service provider table representing possible contents of the database  1024 . For each user (=user of the subscriber identity modules)  1320 ,  1322 ,  1324 , the table has one row with various columns. It is to be noted that this table does not reflect the accurate database structure, but merely an outline of the information. 
     User column  1300  includes the name of the user  1300 . 
     User info column  1302  includes various information of the user. 
     Invoicing info column  1304  includes various information relating to the invoicing such as credit card number, billing address, account balance etc. 
     For each subscriber identity module of the user there is one column  1306 ,  1308 ,  1310 ,  1312 ,  1314  including various information relating to the subscriber identity module  110 ,  112 ,  114 ,  116  such as SIM number, tariff, preferred area, other network info, operator info, balance of account (in minutes or in money). 
     Total info column  1316  includes various summary information such as number of cards, usage of SIM cards, total time, usage over time, other statistics. 
     Forecasting column  1318  includes forecasts for the user such as a forecast of SIM usage over time. 
     Additionally, the table has two summary rows: total info row  1330 , and forecasting row  1340 . 
     Total info row  1330  includes various summary information of all users such as number of cards, usage of SIM cards, total time, usage over time, other statistics. 
     Forecasting row  1340  includes forecasts for all users such as a forecast of SIM usage over time. 
     The present invention is applicable to apparatuses defined above but also to other suitable apparatuses. The protocols used, the specifications of wireless communication systems, and the apparatuses develop rapidly. Such development may require extra changes to the described example embodiments. Therefore, all words and expressions should be interpreted broadly and they are intended to illustrate, not to restrict, the example embodiments. It will be obvious to a person skilled in the art that, as technology advances, the inventive concept can be implemented in various ways. The invention and its embodiments are not limited to the examples described above but may vary within the scope of the claims.