A computer with a SIM (or ISIM or USIM) card can today connect to the internet using e.g. General Packet Radio Service (GPRS), and can send and receive SMS messages using GSM. Such a computer can potentially also be connected to the internet through a landline cable, such as e.g. Asymmetric Digital Subscriber Line (ADSL) or a broadband access. With the SIM (or USIM, or ISIM or similar) card it has an identity which makes it reachable. This identity can be its Mobile Station International ISDN Number (MSISDN) number (ISDN stands for Integrated Service Digital Network), such as in the SMS case, or it can be a Session Initiation Protocol Uniform Resource Identifier (SIP URI) as it is the case with ISIM (ISIM is the SIM card application used in the IMS case). The device can e.g. send and receive SMS messages over the GSM network or alternatively over the land line cable over the internet with a direct connection to the Short Message Service Centre (SMSC).
As indicated above, the service used to connect to the second device, can be SMS or similar. The SMS service is commonly known and needs no further clarification. It is not unlikely that the SMS service over time is replaced by something else. The unique characteristic of the SMS service is that it is always available as soon as the SIM (or USIM or ISIM) card is installed into the device. A similar service should have the same characteristics but can be more efficiently implemented by using e.g. the SIP URI identity instead of the MS ISDN. This present invention covers also alternative services to SMS.
The present method may further make use of an SMS feature defined in some communication systems, such as radio communications systems, which directly addresses a specified port, not appearing in the device's normal SMS inbox and thereby auto start certain applications. The second device 110 further supports download of applications such as e.g. Java or UIQ devices. JAVA is an object oriented programming language developed at Sun Microsystems. The Java language is used extensively on the World Wide Web (www). UIQ 3 is a software platform, pre-integrated and tested with the operating system Symbian OS v9, providing core technologies and services such as telephony and networking.
The first device 100 comprises an application. The application may be an application of the type that it can be downloaded from e.g. a server. The application can be written in any open environment such as in e.g. Java or UIQ, making it possible to install the application. The application may e.g. be such that it enables real time communication between the first device 100 and the second device 110, e.g. voice, pictures, video or any other communication.
The user of the first device 100 wishes to share the application with the user of the second device 110 using an IP connection. E.g. to talk to the user of the second device 110, using an Internet Protocol (IP) telephony application, show a picture for the user of the second device 110 using a picture viewer application, run an instant messaging session etc. In order to make this work, the second device 110 requires comprising the same application. The first device 100 wishes to provide the second device 110 with the application if the second device 110 does not already comprise the application.
The first device 100 may comprise a public IP address. In current telecom systems and on the internet, the number of IP addresses is limited. Therefore there are not enough addresses to provide public IP addresses to every user, and most users have private IP addresses. In the next version of IP, the IP v6 version, close to infinite numbers of IP addresses will exist, allowing for everyone to have public IP addresses.
If the first device 100 does not comprises a public IP address, the consequence is that a user of the first device 100 can not be directly contacted by the second device 110. Instead the second device 110 contacts of a server 120, using an IP address of the server. The server 120 completes the IP connection to the first device 100. How this is performed will be described later on. Therefore there is provided, one embodiment wherein the first device 100 has a public IP address and no server is used as will be described below with reference to FIG. 2 and another embodiment wherein the first device 100 not has any public IP address and a server 120 is involved, which embodiment will be described further on with reference to
The IP address of the server 120 is used by the first device 100 to set up an IP connection to the server 120. The first device 100 sends a request to the server 120; requesting a registration and an identity of the connection. I.e., the first device 100 who wishes to contact the second device 110 must register some identification of the wished connection in the server 120. The identity is sent by the first device 100 in an SMS to the second device 110. When the second device 110 contacts the server 120 it informs the server 120 about the identity. The server 120 then knows to which existing connection the second device 110 shall be connected. The identity may e.g. be a 128 bit hash code or any other unique identifier of the connection.
201. The first device 100 sends a first SMS to the second device 110. The first SMS may be sent by the application in the first device 100 to the application in the second device 110. This method step 201 may be performed e.g. by, starting the application in the first device 100 and choosing the second device 110 in a phone book in the first device 100.
The first SMS comprises an identity for the second device 110 to use for initiating an IP connection between the first device 100 and the second device 110. In this embodiment when the first device has an IP address, the identity is the public IP address of the first device 100.
The first SMS may further comprise a link to a place, in this example the IP address of the first device 100, where the application can be downloaded into the second device 110 if the second device 110 not already comprises the application. The link may also be to another place such as a server comprising the application.
The first SMS may further comprise an invitation text to be displayed in the second device 110 if the second device 110 not already comprises the application. The invitation text is a human readable text inviting the user of the second device 110 to activate the link if he/she wishes to download the application, such as e.g. “the user of the first device wants to send you a picture. Please click on the link below to make that possible http://xxx.yyy.zzz.”. This may e.g. be accomplished by the first device 100 addressing the first SMS to a specific port at the second device 110, which port is associated with the application. If the second device 110 comprises that application it has registered that any SMS addressed to that specific port is associated with the application. If the first SMS does not find such a port, it is an indication that the second device 110 does not comprise the application and that the invitation text shall be displayed in the regular SMS inbox in the second device 110 for the user to read.
The first SMS may further comprise a trigger to start the application in the second device 110 if the second device 110 already comprises the application. If the application is already installed in the second device 110, then the application is subscribing to SMS on the specific port as described above, the SMS will be directed towards the application, which will auto-start and neither the first SMS nor the invitation text which were comprised in the first SMS is displayed in the second device 110.
202. If the second device 110 comprises the application, it is started. This may be performed automatically by the trigger comprised in the first SMS mentioned above. The second device 110 then initiates an IP connection between the first device 100 and the second device 110, using the identity, which in this embodiment is represented by the IP address of the first device 100. This may be performed by the application in the second device 110. This may be performed by the application in the first device 100 being contacted by the application in the second device 110.
203. An IP connection is started between of the first device 100 and the second device 110. The first device 100 can start communicate with the second device 110, using the shared application.
204. If the second device 110 does not comprise the application, the invitation text mentioned above may be displayed in the second device 110. The link in the text is activated in the second device 110, if the user of the second device 110 chooses to do so, and the first device 100 is contacted for down load using the link. The link is preferably a link to the application of the second device.
205. The application is then downloaded into the second device 110. The application in the second device 110 is started.
206. The second device 110 then initiates an IP connection between the first device 100 and the second device 110, using the identity, which in this embodiment is represented by the IP address of the first device 100. This may be performed by the application in the second device 110.
207. An IP connection is started between the first device 100 and the second device 110 and the first device 100 can start communicate with the second device 110, using the shared application.
208. In an alternative embodiment, the link to the place where the application can be downloaded, and the invitation text to be displayed in the second device 110 if the second device 110 not already comprises the application, is not comprised in the first SMS in step 201. Instead a separate invitation SMS comprising the link and the invitation text is sent by the first device 100 to the second device 110, if the second device 110 does not comprise the application. The invitation SMS is referred to as a dashed line 208 in
To establish whether the second device 110 comprises the application or not may be performed in the following way. When the first device 100 sends the first SMS to the second device 110 in step 201, the application in the first device 100 expects the application in the second device 110 to take contact. If no contact is taken within a predetermined time period, e.g. 45 seconds, this is an indication that the second device 110 does not comprise the application or that the second device 110 is turned off.
To distinguish between these two cases, the delivery report feature of SMS may be used. The delivery report is a feature where the Short Message Service Centre (SMSC) in a radio communication system notifies the first device 100 of that an SMS has been delivered to the second device 110. If there is no delivery of the SMS to the second device 110, due to the fact that second device 110 is not turned on, then no delivery report is sent from the SMSC to the first device 100. The delivery report is in-itself an SMS, but it does not show up as an SMS on the first device 100. An SMS (in this example the SMS in step 201) that is sent from the first device 100 to the second device 110 comprises a Message Reference Number. This Message Reference Number is also attached to the delivery report that is sent to the first device 100 from the SMSC. Thereby the first device 100 can associate a sent SMS and a delivery report to the same sent SMS.
Instead of using the delivery report feature of SMS, an alternative way of establish whether the second device 110 is turned on or not is to ask the Home Location Register (HLR) of the operator of second device 110, which HLR keeps up with the status whether the second device 110 is turned on or not. The first device 100 may send a request to the operator who owns the SIM card of the second device 110, possibly via the server 120, and ask the operator to find out in its HLR whether the second device 110 is turned on or not.
Therefore, in the first of those two alternatives, the invitation SMS is sent from the first device 100 to the second device 110, if a delivery report associated with the SMS sent in step 201 is received by the first device 100 but no contact with the application in the first device 100 is taken by the application in the second device 110 within a predetermined time period (the second device 110 is turned on but the second device 110 does not comprise the application).
In the second of those two alternatives the invitation SMS is sent from the first device 100 to the second device 110, if the operator upon request has said that the second device 110 is turned on but no contact with the application in the first device 100 is taken by the application in the second device 110 within a predetermined time period (the second device 110 is turned on but the second device 110 does not comprise the application).
301. The first device 100 connects to of the server 120 by means of the known IP address, for initiating an IP connection between the first device 100 and the server 120. This step may be performed e.g. by, starting the application in the first device 100 and choosing the second device 110 in a phone book in the first device 100, which application then will initiate the connection to the server 120. The initiating of the connection may be performed by the application.
The first device 100 sends a request requesting an identity identifying the connection between first device 100 and the server 120, and a registration of this connection and its identity in the server 120.
The server 120 may also be informed of the telephone number of the second device 110. It will be explained why later on.
302. The first device 100 receives a response from the server 120, the response comprising the requested identity identifying the connection between the first device 100 and the server 120.
The response may further comprise an invitation text formulated by the server 120 which will be sent by the first device 100 to the second device 110 in the next step. The server 120 may preferably adopt the text to the country code of the second device 110 e.g. +45 equals Denmark, which will be found out by means of the telephone number received in the previous step 301. In that case the response also will comprise the invitation text. The text will only be displayed in the second device 110 if the second device 110 not comprises the application in the same way as described above.
303. The first device 100 sends a first SMS to the second device 110. The first SMS may be sent by the application in the first device 100 to the application in the second device.
The first SMS comprises an identity for the second device 110 to use for initiating an IP connection between the first device and the second device. The identity in this embodiment is represented by the identity identifying the existing connection between first device 100 and the server 120 obtained from the server 120 in step 312.
The first SMS further comprises a link to a place from where the application can be downloaded into the second device 110 if the second device 110 not already comprises the application. In this example the link may be to the server 120, where the application can be downloaded.
The first SMS may further comprise a trigger to start the application in the second device 110 if the second device 110 already comprises the application in the same way as mentioned above under step 201.
The first SMS may further comprise the invitation text to be displayed in the second device 110 if the second device 110 not already comprises the application in the same way as mentioned under method step 201. If the response from the server did not comprise any invitation text, such text may be created in the first device 100 preferably by the application.
304. If the second device 110 comprises the application, the application is started by the trigger. The application in the second device knows the IP address of the server 120 as mentioned above. The second device 110 connects to the first device 100 by first setting up a connection using the known IP address of the server 120. This may be performed by the application in the second device 110 connecting to the application in the first device 100.
The second device provides the server 120 with the identity identifying the existing connection between the first device 100 and the server 120, which identity were comprised in the first SMS. The server 120 identifies the existing connection by means of the identity.
305. When the server has identified the connection associated with the identity it sets up an IP connection between the first device 100 and the second device 110, by connecting the connection between the second device 110 and the server 120 with the connection between the first device 100 and the server 120.
306. An IP connection is started between the first device 100 and the second device 110. The first device 100 can start communicate with the second device 110, using the shared application.
307. If the second device 110 does not comprise the application, the invitation text mentioned above is displayed in the second device 110. The link in the text is activated by the user of the second device 110, if the user of the second device 120 chooses to do so, and the second device 110 contacts the place where the application can be downloaded by using the link, which place e.g. may be the server 120.
308. The application is then downloaded into the second device 110. The application in the second device 110 is started.
309. The application downloaded in the second device 110 knows the IP address of the server 120. The second device 110 connects to the first device 100 by first set up a connection to of the server 120, using the known IP address. This may be performed by the application in the second device 110 connecting to the application in the first device 100.
The second device 110 provides the server 120 with the identity identifying the existing connection between the first device 100 and the server 120, which identity were comprised in the first SMS. The server 120 identifies the existing connection by means of the identity.
310. When the server 120 has identified the connection associated with the identity it sets up an IP connection between the first device 100 and the second device 110, by connecting the connection between the second device 110 and the server 120 with the connection between the first device 100 and the server 120.
311. An IP connection is started between the first device 100 and the second device 110. The first device 100 can start communicate with the second device 110, using the shared application.
312. In an alternative embodiment, the link to the place, where the application can be downloaded and the invitation text to be displayed in the second device 110 if the second device 110 not already comprises the application, is not comprised in the SMS in step 303. Instead a separate invitation SMS comprising the link and the invitation text is sent by the first device 100 to the second device 110, if the second device 110 does not comprise the application, in the same way as described under step 208. The invitation SMS is referred to as a dashed line 312 in
Therefore, in the first alternative, the invitation SMS is sent from the first device 100 to the second device 110, if a delivery report associated with the SMS sent in step 303 is received by the first device 100 but no contact with the application in the first device 100 is taken by the application in the second device 110 within a predetermined time period (the second device 110 is turned on but the second device 110 does not comprise the application). See more details about this under similar step 208.
In the second alternative the invitation SMS is sent from the first device 100 to the second device 110, if the operator upon request has said that the second device 110 is turned on but no contact with the application in the first device 100 is taken by the application in the second device 110 within a predetermined time period (the second device 110 is turned on but the second device does not comprise the application).
The first device 110, depicted in
The first SMS comprises the link to a place from where the application 400 can be downloaded into the second device 110 if the second device 110 not already comprises the application 400. The link may be a link to the first device 100 or to the server 120 or any other place where the application may be downloaded. The SMS further comprises an identity for the second device 110 to use for initiating an IP connection between the first device 100 and the second device 110. The first SMS may further comprise an invitation text, which invitation text is adapted to invite the user of the second device 110 to activate the link if he/she wishes to download the application 400. In one embodiment the invitation text is only adapted to be displayed in the second device 110 if the second device 110 not already comprises the application 400. The first SMS further may comprise a trigger adapted to start the application 400 in the second device 110 if the second device 110 already comprises the application.
The sending unit 410 is further adapted to send a separate invitation SMS to the second device 110 if the second device 110 does not comprise the application 400, said invitation SMS being adapted to comprise the link and the invitation text. In that case the link and the invitation text are not adapted to be comprised in the first SMS. The sending unit 410 may further be adapted to only send the invitation SMS if a delivery report associated with the first SMS is received but no contact with the application 400 in the first device 110 is taken by the application in the second device 110 within a predetermined time period after sending the first SMS. As an alternative the sending unit 410 may only be adapted to send the invitation SMS if an operator of the second device 110 upon request has informed that the second device 110 is turned on but no contact with the application 400 in the first device 100 is taken by the application in the second device 110 within a predetermined time period after sending the first SMS.
The first device 100 further comprises an IP connection point 420 adapted to be connected to by the second device 110 for setting up an IP connection between the first device 100 and the second device 110, which second device 110 is adapted to downloaded the application by means of the link received in the first SMS if the second device 110 did not already comprise the application. The second device 110 is further adapted to connect to the first device 100 by means of the identity received in the first SMS. The identity may e.g. be represented by the IP address of the first device.
In one embodiment the server 120 is used for setting up the IP connection. The application in the first device 100 knows the IP address of the server 120. In that case the identity comprised in the first SMS is represented by an identity identifying an IP connection between the first device 100 and the server 120. The IP connection point 420 is in this embodiment further adapted to set up an IP connection between the server 120 and the first device 100 by means of the known IP address. The IP connection point 420 may be adapted to be used for sending a request to the server 120 requesting the identity identifying the connection between the server 120 and the first device 100, and requesting a registration in the server 120 of the identity being associated with the connection between the server 120 and the first device 100.
The IP connection point 420 may further be adapted to use the IP connection to the server 120 for receiving a response from the server 120. The response comprises the requested identity which identity is intended to be comprised in the first SMS. The server 120 may formulate the invitation text which then may be adapted to be comprised in the response from the server 120.
The IP connection between the first device 100 and the second device 110 is adapted to be performed by the second device 110 setting up a connection between the second device 110 and the server 120. The second device 110 provides the server 120 with the identity, which identity is adapted to be comprised in the first SMS. The identity is adapted to be used by the server 120 for identifying the IP connection between the server 120 and the first device 100 which was registered in the server 120. The server 120 is adapted to connect the identified IP connection between the IP connection point 420 in the first device 100 and the server 120 with the IP connection between the server 120 and the second device 110.
The IP connection point is further adapted to communicate with the second device 110 in an IP connection sharing the application 400.
The present application sharing mechanism can be implemented through one or more processors, such as the processor 430 in the first device 100 depicted in
The present invention is not limited to the above-describe preferred embodiments. Various alternatives, modifications and equivalents may be used. Therefore, the above embodiments should not be taken as limiting the scope of the invention, which is defined by the appending claims.
Number | Date | Country | Kind |
---|---|---|---|
06113816.0 | May 2006 | EP | regional |
This application claims priority from U.S. Provisional Application 60/747,502, filed May 17, 2006, and titled “Automatic Spread of Applications”, and from U.S. Provisional Application 60/806,420, filed Jun. 30, 2006, and titled “Automatic Spread of Applications Method”, the contents of which are hereby incorporated by reference.
Number | Date | Country | |
---|---|---|---|
60747502 | May 2006 | US | |
60806420 | Jun 2006 | US |