Storage medium storing instructions for information processing apparatus, information processing apparatus, and communication system

A non-transitory computer-readable storage medium stores computer-executable instructions. When the instructions are executed by a processor, the instructions cause an information processing apparatus including a communication section configured to communicate with external devices including a server machine on a network, to perform: a process of acquiring hyperlink information corresponding to a hyperlink from document data; a process of acquiring contents specified by the hyperlink information; a process of transmitting the contents to the server machine via the communication section; a process of acquiring, from the server machine, one of URL for acquiring the contents transmitted and URL-related information related to the URL, via the communication section; and a process of generating combined document data in which the URL is combined with the document data.

CROSS REFERENCE TO RELATED APPLICATION

The present application claims priority from Japanese Patent Application No. 2013-247480 filed on Nov. 29, 2013 the disclosure of which is incorporated herein by reference in its entirety.

BACKGROUND

Field of the Invention

The present invention relates to an information processing apparatus which is communicable with external devices on a network, a storage medium storing instructions for the information processing apparatus, and a communication system which includes the information processing apparatus and a server machine.

Description of the Related Art

By displaying an image based on document data in which a hyperlink has been embedded on a panel of a PC (personal computer) etc. and by clicking a location at which the hyperlink has been embedded with a mouse etc., it is possible to make an access to a linked device, and to acquire data from that linked device. However, in a case that a document based on the document data in which the hyperlink has been embedded is printed and the document is distributed, there is a possibility that a person to whom the document has been distributed is not capable of acquiring data from the linked device.

For instance, in a case that the hyperlink has been set in a URL (abbreviation for Uniform Resource Locator), the URL is printed on the document. Therefore, the person to whom the document has been distributed is able to make an access to the linked device by using the URL that has been printed, and to acquire data from the linked device. Whereas, in a case that the hyperlink has been set in a symbol or an icon other than the URL, the URL is not printed on the document, and the symbol or the icon other than the URL is printed on the document. Therefore, the person to whom the document has been distributed is not able to make an access to the linked device, and cannot acquire data from the linked device.

In view of such circumstances, in information processing apparatuses described in Japanese Patent Application Laid-open Nos. 2000-148340 and H10-171727, hyperlink information that has been set in a hyperlink is converted to a two-dimensional code such as a QR (quick response) Code® (registered trademark of DENSO WAVE), and the two-dimensional code is printed on a document. Accordingly, a person to whom the document has been distributed can acquire the hyperlink information by picking up an image of the two-dimensional code by a camera of a mobile telephone etc., and can acquire data from a linked device by making an access to the linked device.

SUMMARY OF THE INVENTION

However, in a technology described in Japanese Patent Application Laid-open Nos. 2000-148340 and H10-171727, there have been the following issues. For instance, in a case that a linked device has not been made open to the public on a public network, there is a possibility that data cannot be acquired from that linked device. For instance, in a case that the linked device is a device which provides data stored in the linked device only to a client device which exists in the same LAN (abbreviation for Local Area Network), since devices other than a device in the LAN cannot make an access to the linked device, those devices are not possible to acquire data from the linked device. Moreover, in a case that an access to the linked device is restricted to a specific device by setting a password etc., since devices other than that specific device cannot make an access to the linked device, those devices are not possible to acquire data from the linked device. The present teaching has been made in view of such circumstances.

According to a first aspect of the present teaching, there is provided a non-transitory computer-readable storage medium storing computer-executable instructions that, when executed by a processor, cause an information processing apparatus including a communication section which is configured to communicate with external devices including a server machine on a network, to perform: a hyperlink-information acquiring process of acquiring hyperlink information corresponding to a hyperlink from document data; a contents acquiring process of acquiring contents specified by the hyperlink information; a contents transmission process of transmitting the contents to the server machine by communicating with the server machine via the communication section, in a case that the contents are acquired in the contents acquiring process; a URL-information acquiring process of acquiring, from the server machine, one of URL for acquiring the contents, transmitted by the contents transmission process, from the server machine and URL-related information related to the URL, via the communication section; and a document-data generating process of generating combined document data in which the URL are combined with the document data, in a case that one of the URL and the URL-related information is acquired in the URL-information acquiring process.

According to a second aspect of the present teaching, there is provided an information processing apparatus including: a communication section configured to communicate with external devices including a server machine on a network; and a control section, wherein the control section includes: a hyperlink-information acquiring section configured to acquire hyperlink information corresponding to a hyperlink from document data; a contents acquiring section configured to acquire contents specified by the hyperlink information; a contents transmitting section configured to transmit the contents to the server machine by communicating with the server machine via the communication section, in a case that the contents acquiring section acquires the contents; a URL-information acquiring section configured to acquire, from the server machine, one of URL for acquiring the contents, transmitted by the contents transmitting section, from the server machine and URL-related information related to the URL, via the communication section; and a document-data generating section configured to generate combined document data in which the URL is combined with the document data, in a case that the URL-information acquiring section acquires one of the URL and the URL-related information.

According to a third aspect of the present teaching, there is provided a communication system including: an information processing apparatus; and a server machine, wherein the information processing apparatus includes: an information processing apparatus communication section configured to communicate with external devices on a network; and an information processing apparatus control section, wherein the information processing apparatus control section includes: a hyperlink-information acquiring section configured to acquire hyperlink information corresponding to a hyperlink from document data; a contents acquiring section configured to acquire contents specified by the hyperlink information; a contents transmitting section configured to transmit the contents to the server machine by communicating with the server machine via the information processing apparatus communication section, in a case that the contents acquiring section acquires the contents; a URL-information acquiring section configured to acquire, from the server machine, one of URL for acquiring the contents, transmitted by the contents transmitting section, from the server machine and URL-related information related to the URL, via the information processing apparatus communication section; and a document-data generating section configured to generate combined document data in which the URL is combined with the document data, in a case that the URL-information acquiring section acquires one of the URL or the URL-related information, and wherein the server machine includes: a first device which includes a first device control section and a first device communication section configure to communicate with the external devices on the network and which is open to a public network; and a second device which includes a storage section and a second device control section, which is configured to communicate with the first device, and which is closed with respect to the public network, wherein the first device control section includes a first transmitting section configured to transmit the contents to the second device and then to delete the contents, in a case that the contents are acquired from the information processing apparatus via the first device communication section, wherein the second device control section includes: a storage control section configured to store the contents that are transmitted by the first transmitting section in the storage section, in a state that identification information for identifying the contents is associated with the contents; and a second transmitting section configured to transmit the identification information to the first device, and wherein the first device control section includes a third transmitting section configured to transmit, to the information processing apparatus via the first device communication section, one of the URL and the URL-related information including at least the identification information that is transmitted by the second transmitting section.

In the storage medium, the information processing apparatus, and the communication system according to the present teaching, in a case that the hyperlink information is acquired in the information processing apparatus, the contents specified by the hyperlink information are acquired. The acquired contents are transmitted to the server machine. As the server machine receives the contents, the URL for acquiring the contents from the server machine or the URL-related information related to that URL is transmitted. As the information processing apparatus receives the URL or the URL-related information, the information processing apparatus generates the combined document data by combining the URL with the document data. Accordingly, even in a case that the linked device has not been made open to the public on the public network, the contents of the linked device are stored in the server machine. Therefore, it is possible to acquire the contents from the server machine by using the URL in the combined document data.

Moreover, in the communication system according to the present teaching, the server machine consists of a first device that is open to the public on the public network, and the second device, which is capable of communicating with the first device and which is not open to the public on the public network. As the contents are transmitted to the server machine from the information processing apparatus, the first device receives the contents. Thereafter, the first device transmits the contents to the second device, and deletes the contents after the contents have been transmitted. The second device which has received the contents stores the contents received upon associating with the identification information, and transmits the identification information to the first device. The first device which has received the identification information transmits the URL or the URL-related information which includes at least the identification information, to the information processing apparatus. In such manner, in the server machine, the contents are stored in the second device which is closed to the public network, and the contents acquired are deleted in the first device which is open to the public network. Accordingly, it is possible to secure appropriately the confidentiality of the contents.

DETAILED DESCRIPTION OF THE EMBODIMENTS

<Configuration of Communication System>

A block diagram of a communication system1exemplified as a first embodiment of the present teaching is shown inFIGS. 1A and 1B. The communication system1includes a PC (an abbreviation for personal computer) (an example of an information processing apparatus of the present teaching)10, an access point40, a storage server46, a printer48, the Internet50, a web server52, a base station54, a mobile telephone55, and a storage server (an example of a server machine of the present teaching)60.

The PC10, the storage server46, and the printer48have a function as a known wireless LAN terminal equipment, and are capable of transmitting and receiving data mutually via the access point40. Devices which transmit and receive data via the access point40, in other words, the PC10, the storage server46, and the printer48exist in a same LAN (abbreviation for Local Area Network)56.

The printer48is a device which executes printing based on data transmitted from the PC10. The storage server46is a device which provides data etc. stored therein to a client device existing in the LAN56. Whereas, the web server52is a device which provides data etc. stored therein to a client device in a public network.

A mobile telephone55carries out a wireless communication57with the base station54in accordance with a communication method of mobile-telephone. In other words, as the mobile telephone55makes an access to the base station54, and is in a state of being able to carry out the wireless communication57in accordance with the communication method of mobile-telephone, it is possible to carry out data communication with the web server52or the storage server60via the Internet50.

A configuration of the PC10will be described below. The PC10includes mainly, a CPU (an abbreviation for central processing unit) (an example of an information processing apparatus control section, a control section, and a computer of the present teaching)12, a storage section14, a wireless LAN I/F (an example of an information processing apparatus communication section and a communication section of the present teaching)20, a panel22, a button input section24. These components are mutually communicable via an input-output port30.

The wireless LAN I/F20is capable of carrying out a wireless communication (data communication using radio waves)58in accordance with an infrastructure mode (a mode in which a plurality of wireless LAN terminal equipment perform data communication via an access point) of a wireless LAN method. The wireless communication58is a wireless communication of a Wi-Fi® (registered trademark of Wi-Fi Alliance) mode in accordance with IEEE (Institute of Electrical & Electronic Engineers) 802.11 standard, and standards based thereon. Moreover, the storage server46and the printer48are also capable of carrying out the wireless communication58. Therefore, as the PC10makes an access to the access point40, and is in a state of being able to carry out the wireless communication58of wireless LAN method, it is possible to perform data communication with other device connected to the access point40, in other words, with the storage server46and the printer48. Furthermore, by the access point40being connected to the Internet50, it is also possible to carry out data communication with devices outside the LAN58such as the web server52and the storage server60, via the access point40.

The CPU12executes processing according to a control program (an example of instructions of the present teaching)32in the storage section14. The control program32is a computer program for generating print data. The storage section14is formed by combining a RAM (an abbreviation for Random Access Memory), a ROM (an abbreviation for Read Only Memory), a flash memory, a HDD (an abbreviation for hard disc drive), a buffer included in the CPU12, and the like. Moreover, the storage section14includes a data storage area34. The data storage area34is an area for storing data such as document data for generating the print data, and data necessary for executing the control program32.

The button input section24includes a keyboard, and receives a button operation by a user. The panel22displays characters etc. inputted by the button input section24.

A configuration of the storage server60will be described below. The storage server60includes a first device (an example of a first device of the present teaching)62and a second device (an example of a second device of the present teaching)66. The first device62mainly includes a CPU (an example of a first device control section of the present teaching)70, a storage section72, a communication I/F (an example of a first device communication section of the present teaching)76. These components are communicable mutually via an input-output port78.

The CPU70executes processing according to a control program80in the storage section72. The control program80is a computer program for transmitting and receiving data to and from the second device66, or for transmitting and receiving data to and from external devices. The storage section72includes a RAM, a ROM, a flash memory, a HDD, and a buffer in the CPU70etc. being combined. Moreover, the storage section72includes a data storage area82. The data storage area82is an area storing data to be transmitted to and received from the second device66or the external devices, and data necessary for executing the control program80.

The communication I/F76is connected to the Internet50. Accordingly, the first device62is capable of providing data stored in the data storage area82to client devices in the public network.

The second device66mainly includes a CPU (an example of a second device control section of the present teaching)84and a storage section86. These components are mutually communicable via an input-output port88.

The CPU84executes processing according to a control program90in the storage section86. The control program90is a computer program for transmitting and receiving data to and from the first device62. The storage section86is formed by a RAM, a ROM, a flash memory, a HDD, and a buffer in the CPU84etc. being combined. Moreover, the storage section86includes a data storage area92. The data storage area92is an area for storing data to be transmitted to and received from the first device62, and data necessary for executing the control program90.

The input-output port88is connected to the input-output port78of the first device62. Accordingly, the second device66is capable of providing data stored in the data storage area92only to the first device62.

There are cases that a text based on document data in which a hyperlink is embedded is printed on a document, and the document is distributed. In a case that the hyperlink is set in a URL (an abbreviation for Uniform Resource Locator), the URL is printed on such document. Therefore, a person, to whom the document has been distributed, can make an access to a linked device using the URL that has been printed, and it is possible to acquire data from the linked device. However, in a case that the hyperlink has been set in a symbol, an icon, or characters etc. other than the URL, the URL is not printed on the document, and the symbol, the icon, or the characters other than the URL is printed on the document. Therefore, the person to whom the document has been distributed cannot make an access to the linked device, and the person cannot acquire data from the linked device.

For example, in the PC10, when document data in which the hyperlink has been embedded is converted to data for print and the data for print is transmitted to the printer48via the wireless LAN I/F20, the printer48prints a document100shown inFIG. 2. The hyperlink that has been embedded in the document data is set in predetermined characters other than the URL, and the predetermined characters102are printed on the document100. Since a person to whom such a document has been distributed cannot identify the URL by the characters other than the URL, the person cannot make an access to the linked device.

Therefore, hyperlink information in which the hyperlink has been set, is converted to a two-dimensional code such as a QR Code® (registered trademark of DENSO WAVE), and the two-dimensional code is printed on the document. The hyperlink information is subjected to two-dimensional encoding, and the two-dimensional encoded information is combined with the document data. Therefore, if the document data in which the two-dimensional encoded information has been combined is printed, a two-dimensional code104is printed on the document100as shown inFIG. 3. The person to whom such a document has been distributed is able to acquire the hyperlink information by picking up an image of the two-dimensional code104by a camera of the mobile telephone55etc. Moreover, by making an access to the linked device based on the acquired hyperlink information, the person is possible to acquire data from the linked device.

A specific symbol106has been recorded next to the predetermined characters102, and a symbol108same as the symbol106has been recorded next to the two-dimensional code104. Accordingly, even in a case that a plurality of two-dimensional codes is printed on the document100with respect to a plurality of hyperlinks for instance, a person to whom the document has been distributed is able to use the two-dimensional code104corresponding to the predetermined characters102.

However, in a case that the linked device is not open to the public network, there is a possibility that data cannot be acquired from the linked device. Let us assume a case in which the linked device is the storage server46for example. The storage server46is a device that provides data etc. stored therein to client devices that exist in the same LAN56. Therefore, in a case that the PC10has made an access to the storage server46, it is possible to acquire data from the storage server46. However, since the mobile telephone55is not capable of making an access to the storage server46, it is not possible to acquire data from the storage server46.

Moreover, there are cases in which the access to the linked device is restricted by setting a password etc. In such cases, since it is not possible to make an access to the linked device unless a correct password is transmitted, it is not possible to acquire data from the linked device. In view of such circumstances, in the PC10, in the case that the linked device is not open to the public network, data stored in the linked device is to be shifted to a device that is open to the public network, and hyperlink information that has been embedded in document data is to be changed to hyperlink information of the shifted device to which the data stored in the linked device has been shifted.

More elaborately, first of all, the PC10acquires the hyperlink information from the document data in which the hyperlink has been embedded. Moreover, based on the hyperlink information acquired, the PC10makes a judgment of whether or not the linked device is a device that is open to the public network. Concretely, the PC10extracts a URL of the linked device from the hyperlink information, and makes a judgment of whether a scheme of the extracted URL is a predetermined scheme (“http” and “ftp” in the present embodiment). In a case that the scheme of the extracted URL is the predetermined scheme, the PC10makes a judgment that the linked device is a device that is open to the public network, and in a case that the scheme of the extracted URL is not the predetermined scheme, the PC10makes a judgment that the linked device is not a device that is open to the public network.

In a case that the PC10has made a judgment that the linked device is not a device that is open to the public network, the PC10makes an access to the linked device by using the extracted URL and downloads predetermined contents from that linked device. In a case that the linked device is the storage server46for example, the PC10makes an access to the storage server46via the wireless LAN I/F20, and downloads contents from the storage server46. Next, the PC10makes an access to a device such as the storage server60that is open to the public network, and transmits the contents to the storage server60. Information for specifying the storage server60, in other words, a URL for making an access to the storage server60is stored in the data storage area34of the PC10.

Since the storage server60, as aforementioned, includes the first device62that is open to the public network and the second device66that is not open to the public network, the contents transmitted to the storage server60are transmitted to the first device62, and are temporarily stored in the data storage area82of the first device62. Moreover, the contents stored in the data storage area82are transmitted to the second device66via the input-output port78. As the contents are transmitted to the second device66, the contents stored in the data storage area82of the first device62are deleted.

Next, as the second device66acquires the contents, the second device66generates an identification code (an example of identification information of the present teaching) for identifying the contents acquired, and upon associating the identification code with the contents, stores the identification code and the contents in the data storage area92of the second device66. Thereafter, the second device66transmits data for specifying the identification code (hereinafter, also referred to as identification-code specifying data) (an example of URL-related information) to the first device62via the input-output port88. The second device66stores a time at which the identification code and the contents were stored as an uploading time.

As the first device62receives the identification-code specifying data, the first device62transmits the identification-code specifying data to the PC10via the communication I/F76. As the PC10receives the identification-code specifying data, the PC10generates a URL for acquiring contents (hereinafter, also referred to as data acquiring URL) from the storage server60based on the identification-code specifying data. Concretely, the data acquiring URL is generated by combining the identification-code specifying information with the URL for making an access to the storage server60. For instance, in a case that the URL for making an access to the storage server60is “http://service.bro.com/”, “http://service.bro.com/copyfile?id=fileA” is created as the data acquiring URL. “id=fileA” in the URL is data for specifying the identification code. Moreover, “copyfile?” is a command for acquiring data from a server.

In such manner, as the data acquiring URL is generated, the generated URL is subjected to two-dimensional encoding. Moreover, the two-dimensional encoded URL is combined with the document data. As the document data is converted to data for print and transmitted to the printer48, the printer48prints the two-dimensional code104on the document100as shown inFIG. 3. The two-dimensional code104printed on the document100is the data acquiring URL subjected to two-dimensional encoding. Therefore, as a person to whom the document100is distributed picks up an image of the two-dimensional code104by the camera of the mobile telephone55, the mobile telephone55acquires the data acquiring URL. Accordingly, the mobile telephone55is capable of making an access to the storage server60by using the data acquiring URL that has been acquired.

Moreover, in a case that a hyperlink has been set in the URL, after document data in which the hyperlink is embedded has been converted to data for print and transmitted to the printer48, a document110shown inFIG. 4is printed in the printer48. That URL112is printed on the document110, but in a case that the linked device is not open to the public network, a scheme of the URL112printed on the document110is “https”. For this reason, it is not possible to make an access to the linked device even by using that URL112.

Therefore, even in a case that the hyperlink has been set in the URL and the linked device has not been made open to the public on the public network, as aforementioned, a transmission of the contents to a device that is open to the public network, generation of the data acquiring URL, two-dimensional encoding of the data acquiring URL, and combining of the data acquiring URL that has been two-dimensional encoded with the document data are carried out. Moreover, as the document data that has been combined is printed, the two-dimensional code114is printed on the document110as shown inFIG. 5. The two-dimensional code114printed on the document110is a code obtained by two-dimensional encoding of the data acquiring URL. Therefore, as a person to whom the document110is distributed picks up an image of the two-dimensional code114by the camera of the mobile telephone55for example, the data acquiring URL is acquired by the mobile telephone55. Accordingly, the mobile telephone55is capable of making an access to the storage server60by using the data acquiring URL that has been acquired.

Furthermore, a data acquiring URL116is printed instead of the URL112on the document110. In other words, when the data acquiring URL that has been two-dimensional encoded is combined with the document data, data of a portion in which the hyperlink has been set is rewritten to data of the data acquiring URL. Therefore, a person to whom the document110is distributed is able to make an access to a device in which the contents have been stored, by inputting the URL printed on the document110to the mobile telephone55. Even in this document110, a specific symbol118is recorded next to the data acquiring URL116, and a symbol120same as the symbol118is recorded next to the two-dimensional code114.

<Acquiring Contents by Using Changed Hyperlink>

When an access source device makes an access to a device in which the contents have been stored by using the data acquiring URL, a processing for transmitting the contents to the access source device is carried out in the device in which the contents have been stored. For example, when the access source device makes an access to the storage server60by using the data acquiring URL, the first device62of the storage server60extracts an identification-code specifying data from the data acquiring URL that has been used for the access. Moreover, the first device62transmits, to the second device66, a transmission request for transmitting the contents corresponding to the identification code that has been specified by that identification-code specifying data to the first device62.

As the second device66receives the transmission request, the second device66makes a judgment of whether contents associated with the identification code that has been specified have been stored in the data storage area92. This is because the contents are deleted in a case that a predetermined time has elapsed after the contents have been stored in the second device66. More elaborately, as aforementioned, the uploading time which is a time at which the contents have been stored in the data storage area92of the second device66is stored in the second device66, and when a predetermined time has elapsed after the uploading time, the contents stored in the data storage area92are deleted. Therefore, sometimes there are cases in which the contents associated with the specified identification code have not been stored in the data storage area92.

In a case that the second device66has made a judgment that the contents associated with the specified identification code have been stored in the data storage area92, the second device66transmits those contents to the first device62. Whereas, in a case that the second device66has made a judgment that the contents associated with the specified identification code have not been stored in the data storage area92, the second device66transmits error information to the first device62.

As the first device62receives the contents, the first device62transmits the received contents to the access source device, in other words, to the mobile telephone55via the communication I/F76. Accordingly, the mobile telephone55is capable of acquiring the contents associated with the specified identification code, in other words, the data that has been stored in the linked device. As the first device62receives the error information, the first device62transmits message indicating that the contents associated with the specified identification code do not exist, to the mobile telephone55. In such manner, in the communication system1, even if the linked device is a device that is not open to the public network, it is possible to acquire appropriately the contents stored in that linked device.

Moreover, in a case that the linked device is closed to the public network, highly confidential data has been stored in the linked device in many cases. Therefore, in the storage server60which stores contents considered to be highly confidential instead of the linked device, the contents are stored in the second device66which is not open to the public network. Accordingly, it becomes possible to secure appropriately the confidentiality of the contents. Particularly, in the storage server60, in a case that the first device62has received the contents from the PC10, the received contents are stored in the first device62, and the contents are deleted from the first device62after the contents have been transmitted to the second device66. Accordingly, the confidentiality of the contents is secured more appropriately. Furthermore, in the storage server60, the contents are deleted after a predetermined time has elapsed since the contents were stored in the second device66. Accordingly, the contents are prevented from being stored for a long time in a device in which the contents should not be stored, and the confidentiality of the contents is secured more appropriately.

A change and a two-dimensional encoding of the abovementioned hyperlink information are carried out by the CPU12of the PC10executing the control program32. A flowchart when the CPU12executes the control program32will be described below by usingFIGS. 6A and 6B.

As the control program32is executed, first of all, a hyperlink in document data is retrieved by the CPU12(step (hereinafter, abbreviated as “S”)100). Next, a judgment of whether a hyperlink has been embedded in the document data is made by the CPU12(step S102) based on a result of retrieving. In a case that a hyperlink has been embedded in the document data (YES at step S102), a judgment of whether a URL in which that hyperlink has been set is a public URL, namely, a scheme of the URL in which that hyperlink has been set is either “http” or “ftp”, is made by the CPU12(step S104).

In a case that the URL in which the hyperlink has been set was not a public URL (NO at step S104), the CPU12makes an access to a linked device by using the URL in which the hyperlink has been set (step S106). Moreover, the CPU12acquires contents from the linked device (step S108). Next, the CPU12transmits the acquired contents to the storage server60(step S110), and acquires identification-code specifying data from the storage server60as a response thereof (step S112).

As the CPU12acquires the identification-code specifying data, the CPU12combines the identification-code specifying data and the URL of the storage server60, and generates a data acquiring URL (step S114). Moreover, the CPU12changes the URL in which the hyperlink has been set to the data acquiring URL (step S116). Next, the CPU12carries out two-dimensional encoding of the data acquiring URL (step S118), and combines the two-dimensional encoded data acquiring URL with the document data (step S119). As the CPU12combines the two-dimensional encoded data acquiring URL with the document data, the CPU12converts the combined document data to data for print (step S120). Thereafter, the CPU12transmits the data for print to the printer48(step S122). With this, the control program32is terminated.

In a case that the URL in which the hyperlink has been set is a public URL at step S104(YES at step S104), processing at steps from step S118onward is carried out. Moreover, in a case in which no hyperlink has been embedded in the document data at step S102(NO at step S102), the CPU12carries out processing at steps from step S120onward.

Moreover, the contents stored in the storage server60are acquired by executing the control program80by the CPU70of the first device62of the storage server60and executing the control program90by the CPU84of the second device66. A flow when the CPU70executes the control program80and a flow when the CPU84executes the control program90will be described below by usingFIG. 7andFIG. 8.

As the control program80is executed, first of all, a judgment of whether contents have been uploaded from the PC10is made by the CPU70(step S200). In a case that the contents have been uploaded (YES at step S200), the CPU70transmits the uploaded contents to the second device66(step S202). As the CPU70transmits the contents to the second device66, the CPU70deletes the contents (step S203). Next, the CPU70acquires identification-code specifying data from the second device66as a response to the transmission of the contents (step S204). Thereafter, the CPU70transmits the acquired identification-code specifying data to a device which is a source of uploading, in other words, to the PC10(step S206), and the process returns to step S200.

Moreover, in a case that the contents have not been uploaded at step S200(NO at step S200), a judgment of whether a request for transmission of the contents has been received is made by the CPU70(step S208). In other words, a judgment of whether an access has been made to the first device62by using the data acquiring URL from an external device such as the mobile telephone55is made by the CPU70. In a case that the request for transmission of the contents has been received (YES at step S208), the CPU70extracts an identification code from the data acquiring URL that was used for the access, and transmits a request for transmission of contents specified by that identification code, to the second device66(step S210).

Next, the CPU70makes a judgment of whether contents have been received from the second device66as a response to the request for transmission of contents (step S212). In a case that the contents have been received from the second device66(YES at step S212), the CPU70transmits the received contents to a device from which the request was made, such as the mobile telephone55(step S214). Thereafter, the process returns to step S200. On the other hand, in a case that the contents have not been received from the second device66(NO at step S212), the CPU70transmits a message indicating that the contents do not exist to the device from which the request was made (step S216). Thereafter, the process returns to step S200. Even in a case that the request for transmission of contents has not been received at step S208(NO at step S208), the process returns to step S200.

Moreover, as the control program90is executed, first of all, a judgment of whether contents have been received from the first device62is made (step S300). In a case that the contents have been received from the first device62(YES at step S300), the CPU84generates an identification code, and stores upon associating the identification code with the contents (step S302). Next, the CPU84transmits identification-code specifying data for specifying that identification code to the first device62(step S303). Thereafter, the CPU84stores a time and date at which the identification code and the contents were stored, as a time and date of uploading (step S304), and the process returns to step S300.

Moreover, in a case that the contents have not been received from the first device62at step S300(NO at step S300), a judgment of whether a request for transmission of contents for which the identification code was specified has been received from the first device62is made by the CPU84(step S306). In a case that the request for transmission of contents for which the identification code was specified has been received (YES at step S306), a judgment of whether the contents specified by the identification code have been stored in the data storage area92is made by the CPU84(step S308).

In a case that the contents specified by the identification code have been stored (YES at step S308), the CPU84transmits the contents to the first device62(step S310), and the process returns to step S300. Whereas, in a case that the contents specified by the identification code have not been stored (NO at step S308), the CPU84transmits error information to the first device62(step S312), and the process returns to step S300.

Moreover, in a case that the request for transmission of contents for which the identification code is specified has not been received at step S306(NO at step S306), a judgment of whether the contents, for which a predetermined time has elapsed since the time and date of uploading, have been stored is made by the CPU84(step S314), after referring to the stored time and date of uploading. In a case that the contents for which the predetermined time has elapsed since the time and date of uploading have been stored (YES at step S314), the contents are deleted (step S316), and the process returns to step S300. Whereas, in a case that the contents for which the predetermined time has elapsed since the time and date of uploading have not been stored (NO at step S314), processing at step S316is skipped, and the process returns to step S300.

<Functional Configuration of CPU>

The CPU12which executes the control program32of the abovementioned PC10, in view of executing processing, can be considered as having a functional configuration as shown inFIG. 1A. More specifically, the CPU12includes a hyperlink-information acquiring section130, a contents acquiring section132, a contents transmitting section134, a URL-information acquiring section136, a document-data generating section138, and a judging section140.

The hyperlink-information acquiring section130is a functional section which executes the processing at steps S100and S102of the control program32. The contents acquiring section132is a functional section which executes the processing at step S108of the control program32. The contents transmitting section134is a functional section which executes the processing at step S110of the control program32. The URL-information acquiring section136is a functional section which executes the processing at step S112of the control program32. The document-data generating section138is a functional section which executes the processing at step S119of the control program32. The judging section140is a functional section which executes the processing at step S104of the control program32.

The CPU70which executes the control program80of the abovementioned first device62, in view of executing processing, can be considered as having a functional configuration as shown inFIG. 1B. More specifically, the CPU70includes a first transmitting section150, a third transmitting section152, a fourth transmitting section154, and a sixth transmitting section156.

The first transmitting section150is a functional section which executes the processing at steps S202and S203of the control program80. The third transmitting section152is a functional section which executes the processing at step S206of the computer program80. The fourth transmitting section154is a functional section which executes the processing at step S210of the control program80. The sixth transmitting section156is a functional section which executes the processing at step S214of the control program80.

Moreover, the CPU84which executes the control program90of the abovementioned second device66, in view of executing processing, can be considered as having a functional configuration as shown inFIG. 1B. More specifically, the CPU84includes a storage control section160, a second transmitting section162, and a fifth transmitting section164.

The storage control section160is a functional section which executes the processing at step S302of the control program90. The second transmitting section162is a functional section which executes the processing at step S303of the control program90. The fifth transmitting section164is a functional section which executes processing at step S310of the control program90.

Second Embodiment

In a communication system1according to a second embodiment of the present teaching, by the data acquiring URL generated in the first device62being transmitted to the PC10, change of the hyperlink information is carried out in the PC10. Generating the data acquiring URL in the first device62and changing the hyperlink information in the PC10will be described below in detail. Since a method of data processing except for generating the data acquiring URL in the first device62and changing the hyperlink information in the PC10is the same as the method in the first embodiment, description thereof is omitted. Moreover, since a configuration of the communication system1in the second embodiment is the same as the configuration of the communication system1in the first embodiment, description thereof is omitted here.

As the first device62of the second embodiment receives the identification code from the second device66, the first device62generates the data acquiring URL by combining data for specifying that identification code and data which indicates URL of the storage server60. Moreover, the first device62transmits that data acquiring URL to the PC10via the communication I/F76. On the other hand, as the PC10receives the data acquiring URL, the PC10carries out two-dimensional encoding of the data acquiring URL, and combines the two-dimensional encoded data acquiring URL and the document data. By the document data being printed, the two-dimensional code which enables to acquire contents is printed on a document. Accordingly, even in the communication system1of the second embodiment, it is possible to achieve an effect similar to the effect achieved by the communication system1of the first embodiment.

Generating the data acquiring URL in the first device62, and changing the hyperlink information in the PC10mentioned above are carried out by executing the control program32by the CPU12of the PC10and executing the control program80by the CPU70of the first device62of the storage server60. A flow when the CPU12executes the control program32and a flow when the CPU70executes the control program80will be described below by using diagrams fromFIG. 9AtoFIG. 10. Since the flow at the time of executing the control program32and the control program80of the second embodiment includes processing same as the processing included in the flow at the time of executing the control program32and the control program80of the first embodiment, description of the same processing is omitted.

When CPU12of the PC10executes the control program32, at steps from S400to S410, the CPU12carries out processing same as the processing at steps from S100to S110shown inFIG. 6A. Moreover, the CPU12receives the data acquiring URL from the first device62via the wireless LAN I/F20(step S412). Next, the CPU12changes the URL in which the hyperlink has been set to the data acquiring URL (step S414). Thereafter, the CPU12, at steps from S416to S420, carries out processing same as the processing at steps from S118to S122shown inFIG. 6B. With this, the control program32is terminated.

Moreover, when the CPU70of the first device62executes the control program80, at steps from S500to S504, the CPU70carries out processing same as the processing at steps from S200to S204shown inFIG. 7. Moreover, the CPU70generates the data acquiring URL by combining the data for specifying the identification code and the data indicating the URL of the storage server60(step S506). Next, the CPU70transmits the generated data acquiring URL to a device which is a source of uploading, in other words, to the PC10(step S508). Thereafter, the process returns to step S500. Moreover, at steps from S510to S518, processing same as the processing at steps from S208to S216shown inFIG. 7is carried out.

The present teaching is not restricted to the embodiments described heretofore, and it is possible to have various aspects in which various changes and modifications have been made based on a knowledge of a person skilled in the art. For instance, in the embodiments described heretofore, data such as the data acquiring URL has been converted to a two-dimensional code. However, the data may be converted to one-dimensional code such as a bar-code. In other words, the data such as the data acquiring URL is to be converted to a code symbol such as a one-dimensional code or a two-dimensional code.

Moreover, in the embodiments described heretofore, a hyperlinked device is different from the PC10. However, a hyperlinked device may be a data storage area34in the PC10. In such a case, a URL of a link destination is a URL which specifies the data storage area34in the PC10, in other words, a local memory in the PC10.

Moreover, in the embodiments described heretofore, the contents are to be stored in the storage server60which includes the second device66that is not open to the public network. However, the contents may be stored in a storage server which does not include an area that is not open to the public network.

Moreover, in the embodiments described heretofore, the document data with which the two-dimensional encoded data acquiring URL has been combined is converted to the data for print, and then printing on a document is performed based on the data for print. However, it is also possible to use document data that has been combined. Concretely, in a case that an image based on the combined document data is displayed on a panel of a PC other than the PC10, it is possible to acquire contents from the storage server60by clicking by a mouse etc., a location at which the hyperlink has been set.

Moreover, in the embodiments described heretofore, examples, in which processing shown in diagrams fromFIGS. 6A to 10is executed by the CPU12etc., are described. However, without restricting to the CPU12etc., these processing may be executed by an ASIC (application specific integrated circuit) or other logic integrated circuit. Moreover, these processing may be executed by a combined operation of the CPU12etc., an ASIC, and other logic integrated circuit.