Abstract:
A method and apparatus for applying information stored remotely to an appliance via a mobile device are provided. The mobile device initiates the process by transmitting instructions to a computer system via a communication network. The instructions designate the information to be processed as well as the appliance to which the information is to be applied. According to the instructions, the computer system retrieves the information and converts the information to a document suitable for the appliance. The computer system then applies the document to the designated appliance.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    This invention relates to a method and an apparatus for applying remotely stored information via a mobile device.  
           [0002]    Conventionally, after editing and formatting a document by using his computer application, getting an email with or without attachment, or browsing a website, a user can apply the information to an appliance. For example, the user can generate a hard copy of it by sending the information from the computer to an appliance, such as a printer connected to the computer directly or via a network, or as a fax machine. The user can also send the information to a projector for displaying it. When the user is traveling, however, he has to carry the edited document in a portable media or a laptop for accessing and processing it. He may also need the laptop for retrieving emails or surfing the internet. If he wants a printed version of the document, the email, the attachment, and so on, or if he wants to project it, he has to connect the laptop to an appropriate appliance, and quite often, to install the appliance. These may not be desirable, especially for a user who travels often.  
           [0003]    With the advent of mobile revolution, mobile devices such as mobile phones and personal digital assistants provide a solution to access information or data remotely. Some devices even allow the user to store some information in them. Nevertheless, the user of the mobile devices cannot apply the information to an appliance conveniently in that he still needs to physically connect the devices with an appliance. Furthermore, due to the compactness and the limitation of size, most mobile devices are short of storage space and processing power. Inevitably, this shortage limits the capacity of information or data that a user can store or retrieve. Besides, some mobile devices like mobile phones do not even allow applications like WinWord™ to be run on them. Therefore, users of these mobile devices are restrained from accessing documents created by these applications.  
         SUMMARY OF THE INVENTION  
         [0004]    In an embodiment of the invention, the invention provides a convenient method and apparatus to allow a user of a mobile device to apply remotely stored information to an appliance.  
           [0005]    In an embodiment according to one aspect of the invention, in a method for applying remotely stored information to an appliance via a mobile device, the mobile device initiates the process by transmitting instructions to a computer system via a first communication network. The instructions designate the information to be processed as well as the appliance to which the information is to be applied. The information is stored in a sub-computer system. The sub-computer system is connected via a second communication network and a firewall to the computer system. The appliance is connected to the computer system via a third communication network. The sub-computer system polls the computer system for instructions and, if instructions are present, transmits the information to the computer system. According to the instructions, the computer system retrieves the information and converts the information to a document suitable for the appliance. The computer system then applies the document to the designated appliance.  
           [0006]    According to another aspect of the invention, a computer system has a first interface for receiving instructions from the mobile device via a first communication network. The instructions designate the information to be processed and the appliance to which the designated information is to be applied. Further, the computer system has a second interface for receiving polling signals from a sub-computer system and for receiving the information sent from the sub-computer system according to the instructions. The sub-computer system is connected to the computer system via a second communication network and a firewall. The appliance is connected to the computer system at a third interface via a third communication network. The third interface sends the information to the appliance. The computer system has a server computer system for processing and storing the instructions and for receiving the designated information. The server computer system further applies the information to the appliance.  
           [0007]    The invention provides the advantage that all devices included in the computer system, can be protected by its respective firewall, thereby providing the security that the device may not be attacked by unauthorized inquiries too easily. Furthermore, the invention provides the possibility to use applications with a huge need of computing resources within a mobile device, which itself does not provide sufficient calculating resources. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0008]    [0008]FIG. 1 illustrates one embodiment of the invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0009]    In one embodiment of the invention as shown in FIG. 1, a user of a mobile device  100  such as a mobile phone can print documents stored in his personal computer  102  via a printer  104 . To enable the user to access the documents remotely, the documents have been shared out to a central server  106  via the internet  108 , that is, filenames of these documents are stored in the central server  106 . While the user selects the files in the user&#39;s personal computer to be shared, a string of information is packed into an HTTP packet in an illustrative format shown below:  
         [0010]    HTTP header  
         [0011]    /MapleWML/CMServer/AddFile.asp  
         [0012]    Username (for identifying in the user&#39;s personal computer  102 )  
         [0013]    User Password (for the purpose of security)  
         [0014]    User Entered Name (e.g., a friendly name for the file)  
         [0015]    File Size  
         [0016]    HTTP Trailer.  
         [0017]    The parameter “User Entered Name” identifies and is associated with the actual location of the individual file to be shared. By selecting such a user-entered name (to be discussed later), the central server  106 , as well as the personal computer is able to identify the file to be printed.  
         [0018]    Such an HTTP packet then will be sent from the personal computer to the central server  106  via the internet  108 . In this embodiment, upon receiving it, the central server  106  is activated by the parameter “/MapleWML/CMServer/AddFile.asp” to run a script. Thus the information following this parameter, i.e., the Username, User password, User Entered Name, and File size, will be added to a file database (not shown) of the central server  106 . The file database stores the filenames of the files shared out by each user.  
         [0019]    Further, the personal computer  102  needs to be accessible, that is, by using its Username and User Password other computers or servers can access and retrieve documents from it. The personal computer  102  is protected by a first firewall  110  against attacks, e.g., unauthorized inquiries, from the internet  108 . Therefore, the central server  106  is not able to start a communication with the personal computer  102 . The personal computer  102  instead periodically polls the central server  106 . Given at least one filename stored in the file database of the central server  106  for the corresponding personal computer  102 , the central server  106  is allowed to communicate with the personal computer  102  due to the polling action of the personal computer  102 .  
         [0020]    Additionally, a plurality of appliances, including, for example, the printer  104 , a fax machine  112 , and a projector  114 , are connected to an appliance server  116  and are registered in the central server  106 . The appliances as well as the appliance server  116  are protected by a second firewall  118  against attacks, e.g., unauthorized inquiries, from the internet  108 , similar to the personal computer  102 . Therefore, the central server  106  is only able to communicate with the appliance server  116  and to send documents to be applied at an individual appliance when the appliance server  116  starts communication with the central server  106 . Hence, the appliance server  116  periodically polls the central server  106  and tells the central server  106  which appliances are logged in. Further, the appliance server  116  tells the central server  106  the Appliance Identities (IDs) of the individual appliances and appliance server Internet Protocol (IP) address and asks for documents to be applied to a connected appliance. The appliances get registered by the appliance server  116  which is sending the central server  106 , for example, an HTTP packet in the following illustrative format:  
         [0021]    HTTP header  
         [0022]    /MapleWML/CMServer/ApplianceLogin.asp  
         [0023]    Appliance ID  
         [0024]    Password for the Appliance Server  
         [0025]    Appliance Server IP Address  
         [0026]    HTTP Trailer,  
         [0027]    where the parameter “/MapleWML/CMServer/ApplianceLogin.asp” activates the central server  106  to run a script such that the information following this parameter in the packet will be loaded to an appliance database (not shown) of the central server  106 . The parameter “Appliance ID,” for example, the appliance name, identifies the appliance to be registered. The parameter “Appliance Server IP Address” helps the central server  106  to locate the appliance server  116 , and further to know where the appliances are.  
         [0028]    When the user is away from his computer  102  and wants a printed copy of his document, the user may use his mobile phone  100  to request the central server  106  for the information about those files he has shared. The request reaches the central server  106  via a Public Switched Telephone Network (PSTN)  120 , a gateway  122  and the internet  108 . For communication between the mobile device  100  and the gateway  122 , standard telecommunication protocols such as Wireless Application Protocols (WAP) are used. It is understood that WAP is used as a transport layer protocol based on the transport layer GSM. Higher data rate transport layers such as 3G or as Telco can also be used. In the context of WAP, the mobile phone is WAP-enabled, and the request from the mobile device  100  is in the following illustrative format:  
         [0029]    WAP Header  
         [0030]    Username  
         [0031]    User Password  
         [0032]    WAP Trailer.  
         [0033]    The gateway  122  converts the request as well as instructions (as discussed below), to an HTTP format suitable for transfer through the internet  108 . Subsequently, the gateway  122  passes the request to the central server  106 .  
         [0034]    It is noted that the mobile device  100  needs to install settings for identifying the gateway  122  and the central server  106  in advance. The mobile device  100  will then be able to contact the appropriate central server  106  via the appropriate gateway  122 . Such a technology is well known in the field of wireless communication.  
         [0035]    After receiving the request, the central server  106  packs a reply in the following illustrative HTTP format:  
         [0036]    HTTP Header  
         [0037]    &lt;Filename&gt; 
         [0038]    HTTP Trailer,  
         [0039]    where the parameter “&lt;Filename&gt;” includes the user-entered-names of all the files shared out by this particular user, that is, files which are stored in the personal computer  102  and are shared out. The central server  106  further sends its reply through the established connection towards the gateway  122 , which in turn would convert the reply into a WAP format for displaying on the mobile device  100 .  
         [0040]    The user selects a document to be printed and a printer  104  to which the document is to be printed via the mobile device  100 . Such a selection is incorporated into an instruction, a printing instruction in the case of this embodiment, by the mobile device  100  according to the following illustrative format:  
         [0041]    WAP Header  
         [0042]    Username  
         [0043]    User Password  
         [0044]    A First Filename (user-entered-name)  
         [0045]    Appliance ID  
         [0046]    WAP Trailer.  
         [0047]    The parameter “A First Filename” identifies the location of the document to be printed, while the parameter “Appliance ID” identifies the appliance to which the document is to be applied. In the case of printing a document, the “Appliance ID” will be the printer name of a selected printer  104 .  
         [0048]    The mobile device  100  then sends the printing instruction to the central server  106  via the PSTN  120 , gateway  122 , and the internet  108 . After receiving such an instruction, the central server  106  stores the parameter “A First Filename” in the file database and the parameter “Appliance ID” in the appliance database. Given a polling action at the central server  106  from the personal computer  102 , the central server  106  requests for the document to be uploaded from the user&#39;s personal computer  102  by sending the personal computer  102  the contents of the parameter “A First Filename” stored in the file database. The central server  106  identifies and requests the personal computer  102  according to the parameters of “Username” and “User Password.” 
         [0049]    The personal computer  102  accordingly packs the file identified by the parameter “A First Filename” into an HTTP packet, for example:  
         [0050]    HTTP Header  
         [0051]    /MapleWML/CMServer/FileUpload.asp  
         [0052]    Username  
         [0053]    User Password  
         [0054]    A First Filename  
         [0055]    Size of the file  
         [0056]    Job_ID  
         [0057]    File Content  
         [0058]    HTTP Trailer,  
         [0059]    wherein the parameter “Job_ID” identifies the source of the job, especially, where the document to be printed comes from. The parameter “/MapIeWML/CMServer/FileUpload.asp” will initiate the central server  106  to retrieve the information contained therein, including the designated document which is contained in “File Content,” and to store it in the appliance database.  
         [0060]    Given a polling action at the central server  106  from the appliance server  116 , the central server  106  sends the document as well as the parameter “Appliance ID” as stored in the appliance database and designated in the printing instruction, e.g., by the printer name, to the appliance server  116  via the internet  108 . The central server  106  is able to locate the appliance server  116  through the parameter “Appliance Server IP Address.” The appliances such as the printer  104 , a fax machine  112 , and a projector  114  are connected to the appliance server  116  as already mentioned above. The appliance server  116  is installed with all the necessary applications and drivers of those connected appliances, in particular, printer drivers of the connected printers  104 .  
         [0061]    The appliance server  116  converts the document to a format suitable for the designated appliance. In the present embodiment, the document is converted to a print job in a Page Descriptive Language (PDL) format. According to the printing instruction, the print job is passed to the designated printer  104  identified by the parameter “Appliance ID,” e.g., the printer name. A hard copy of the document will be then generated.  
         [0062]    Alternatively, the user can apply the document to other appliances such as the fax machine  112  or the projector  114 . The user needs to designate the appliance in the instructions being sent to the central server  106  by incorporating the appropriate appliance identity into the instructions. Accordingly, the appliance server  116  converts the retrieved document to a format suitable for the designated appliance and further passes it to the appliance.  
         [0063]    In another embodiment according to the invention, when the user wants a printed copy of a document, the user sends the central server  106  a request in the following illustrative format:  
         [0064]    WAP Header  
         [0065]    Username  
         [0066]    User Password  
         [0067]    A First Filename  
         [0068]    Appliance ID  
         [0069]    WAP Trailer.  
         [0070]    Thus, the central server  106  directly gets the information about the document to be retrieved, as well as the printer  104  at which the document is to be printed, without replying to and waiting for selections from the mobile device  100 . In this case, the user may need to input the desired parameters “A First Filename” and “Appliance ID” manually, unless this information is already stored in the mobile device  100 .  
         [0071]    Other alternatives can be made to the above described embodiments. For example, the documents can be forwarded to and stored in the central server  106  in advance so that the central server  106  will retrieve the documents directly from its storage unit (not shown). Then, a polling action of the personal computer  102  to allow a user determined document request from the central server  106  is not necessary. The appliances can also be connected to the central server  106  directly, in which case the central server  106  also acts as appliance server  116  but without the second firewall  118 .  
         [0072]    Furthermore, the user of the mobile device  100  can apply information downloaded from the internet  108  to an appliance. In such a case, the central server  106  or the appliance server  116  downloads the information directly from the internet  108  according to the instruction from the mobile device  100 .  
         [0073]    Similarly, the user can apply emails, with or without attachment, which are stored in an email server  124  to a suitable appliance. The email server  124  may also be protected by a third firewall  126  against attacks, e.g., unauthorized inquiries, from the internet  108 . The email server  124  periodically polls the central server  106 . Given an appropriate user request to the central server  106 , the email server  124  then applies the requested email, with or without attachment, to the designated appliance via both the central server  106  and the appliance server  116  as described above.  
         [0074]    Alternatively, the email server  124  together with the personal computer  102  can be protected by a common firewall. Then, the personal computer  102  periodically polls the central server  106 . Given an appropriate user request to the central server  106 , the personal computer  102  fetches the available emails, with or without attachment, from the email server  124  and transmits the requested email, with or without attachment, to the central server  106 . Finally, the central server  106  applies the email to the designated appliance as described above.  
         [0075]    Additionally, other mobile devices  100  such as personal digital assistants can be used on condition that they are able to communicate with the gateway  122 .  
         [0076]    In the following, some alternative embodiments of the invention will be described.  
         [0077]    In an alternative embodiment of the invention, an appliance server polls the computer system via both the third communication network and a further firewall. Then, the computer system transmits the formatted information to the appliance server via both the third communication network and the further firewall due to polling by the appliance server, if the formatted information is present in the computer system. Finally, the appliance server transmits the formatted information to the appliance according to the instructions.  
         [0078]    In this preferred embodiment, the appliance server is formatting the information. This means that the appliance server instead of the computer system converts the information to a document suitable for the appliance.  
         [0079]    In another embodiment of the invention, a part of the first communication network and a part of the second communication network and/or a part of the third communication network or, alternatively, a part of the second communication network and a part of the third communication network can share a part of one common communication network, for instance the internet.  
         [0080]    A plurality of appliances may be registered in the computer system. The plurality of appliances can be connected to the computer system via the third communication network. The mobile device designates a first appliance from the plurality of appliances by specifying it in the instructions.  
         [0081]    In this preferred embodiment, the mobile device designates the information by incorporating the location thereof in the sub-computer system into the instructions.  
         [0082]    Furthermore, the first communication network includes a gateway with which the mobile device communicates by using standard telecommunication protocols. The gateway converts the instructions to a format, which the computer system understands. Preferably, the instructions are converted to a format suitable for transfer through the internet.  
         [0083]    The first appliance can be a printer, a fax machine, or a projector. In one embodiment, the first appliance is a printer and the computer system converts the information to a print job in a format suitable for printing.  
         [0084]    The mobile device may designate the information by incorporating the location thereof in the sub-computer system into the instructions such that the computer system is capable of retrieving the information.  
         [0085]    The third interface of the computer system may receive polling signals from an appliance server protect by a further firewall. Then, the server computer system sends the information via the third communication network, via the further firewall and via the appliance server to the appliance for processing.  
         [0086]    The server computer system may convert the information to a format suitable for the appliance.  
         [0087]    In this embodiment, the appliance is a printer and the server computer system converts the information to a print job in a format suitable for printing on the printer.