The present disclosure relates to a program for operating a plurality of apparatuses in cooperation with each other.
In the related art, an information processing apparatus has been known which is configured to operate (hereinafter, referred to as ‘cooperation operation’) an input apparatus and an output apparatus selected from a plurality of devices connected to a network in cooperation with each other. The information processing apparatus is configured to download target data from a storage server, which is an example of the input apparatus, and to enable a printer, which is an example of the output apparatus, to record an image represented by the target data on a recording sheet.
It cannot be said that the information processing apparatus can always perform communication with both the input apparatus and the output apparatus during the cooperation operation. For this reason, for example, there is a possibility that even though the target data has been received from the input apparatus, the target data cannot be transmitted to the output apparatus. In this case, if the cooperation operation should be performed again from the first, a throughput of the cooperation operation is lowered and a user may be required to perform an unnecessary operation.
It is therefore an object of one aspect of the present disclosure to provide a program capable of implementing a cooperation operation including processing of transmitting target data received from a first apparatus to a second apparatus without enabling a user to be conscious of a configuration of a communication network.
The aspect of the present disclosure provides the following arrangements:
A non-transitory computer readable recording medium storing a computer program for an information processing apparatus comprising a communication unit configured to perform wireless communication with a plurality of apparatuses through a communication network, an operation unit configured to receive a user's operation and a storage unit, the information processing apparatus being configured to control a cooperation operation that is to be executed by a first apparatus and a second apparatus selected from the plurality of apparatuses, wherein the cooperation operation causes the first apparatus to execute a first operation including transmitting target data to the information processing apparatus, and causes the second apparatus to execute a second operation including receiving the target data from the information processing apparatus after the first operation, the computer program when executed by a processor of the information processing apparatus causing the information processing apparatus to execute:
An information processing apparatus configured to control a cooperation operation that is to be executed by a first apparatus and a second apparatus, wherein the cooperation operation is to cause the first apparatus to execute a first operation including transmitting target data to the information processing apparatus, and is to cause the second apparatus to execute a second operation including receiving the target data from the information processing apparatus after the first operation, the information processing apparatus comprising:
A cooperation system comprising:
Hereinafter, an illustrative embodiment of the present disclosure will be described with reference to the drawings. Meanwhile, the illustrative embodiment, which will be described later, is just an example of an aspect of the present disclosure, and the illustrative embodiment of the present disclosure can be appropriately changed without changing the gist of the present invention.
In the example of
Also, in the example of
In
The complex machine 10 belonging to the wireless LAN 102 can perform wireless communication with the portable terminal 50 belonging to the wireless LAN 102 and the portable terminal 50 on the Internet 101, via the access point 102A. The portable terminal 50 belonging to the wireless LANs 102, 103 can perform communication with the complex machines 10A to 10D belonging to the wireless LANs 102, 103 and the server apparatus 70 on the Internet 101, via the access points 102A, 103A.
In the meantime, the wireless communication via the access points 102A, 103A is not limited to the wireless communication that is performed in an entire area of a communication zone. That is, the description ‘the portable terminal 50 wirelessly transmits or wirelessly receives information or data via the access points 102A, 103A’ indicates that at least a wireless zone is preferably formed between the portable terminal 50 and the access point 102A, 103A. This is also the same for the complex machines 10A to 10D.
The complex machines 10A, 10B, 10C, 10D and the server apparatus 70 are allotted with apparatus IDs for uniquely identifying the respective apparatuses. In this illustrative embodiment, an apparatus ID of the complex machine 10A is “MFC-A”, an apparatus ID of the complex machine 10B is “MFC-B”, an apparatus ID of the complex machine 10C is “MFC-C”, an apparatus ID of the complex machine 10D is “MFC-D”, and an apparatus ID of the server apparatus 70 is “server A”. The complex machines 10A, 10B, 10C, 10D and the server apparatus 70 are examples of the plurality of apparatuses. The apparatus ID is an example of the apparatus identification information.
The apparatus included in the cooperation system 100 is not limited to the complex machine 10 and the server apparatus 70, and may be a dedicated machine such as a FAX apparatus, a printer, a 3D printer, a label printer, a sewing machine, a machine tool, a scanner, a camera and the like. In the meantime, the complex machine 10 and server apparatus 70 of the specific examples of the apparatus are examples of the apparatus that can be any of a first apparatus and a second apparatus, which will be described later. Also, the FAX apparatus, the scanner and the camera are examples of the apparatus that can be only the first apparatus. The printer, the 3D printer, the label printer, the sewing machine and the machine tool are examples of the apparatus that can be only the second apparatus.
Complex Machine 10
As shown in
Printer Unit 11, Scanner Unit 12
The printer unit 11 is configured to execute recording processing of recording an image represented by image data onto a recording sheet. Although a recording method of the printer unit 11 is not particularly limited, a well-known method such as an inkjet method and an electrophotographic method may be adopted. The scanner unit 12 is configured to execute scan process of reading an image recorded on a recording sheet and generating image data. The complex machine 10 may further have a FAX function of transmitting and receiving facsimile data, a copy function of reading an image recorded on a recording sheet and recording the same onto another recording sheet, and the like.
Display Unit 23
The display unit 23 has a display screen for displaying a variety of information. Although a specific configuration of the display unit 23 is not particularly limited, an LCD (abbreviation of Liquid Crystal Display), an OLED (abbreviation of Organic Electro-Luminescence Display) and the like may be adopted.
Operation Unit 24
The operation unit 24 is configured to receive a user's operation of selecting an object displayed on the display screen of the display unit 23. Specifically, the operation unit 24 has push buttons, for example, and is configured to output a variety of operation signals associated with the pressed push buttons to the CPU 31. Further, the operation unit 24 may have a film-shaped touch sensor superimposed on the display screen of the display unit 23. That is, the display unit 23 may be configured as a touch panel display. As the touch sensor, a well-known method such as an electrostatic capacitance type, a resistance film type and the like may be adopted.
In the meantime, the term ‘object’ indicates an image that can be selected by a user's operation on the operation unit 24. For example, the object is a character string displayed on the display unit 23. When a direction key of the operation unit 24 is pressed, one of the objects may be highlighted, and when an enter button of the operation unit 24 is pressed, the highlighted object may be selected. As another example, when the operation unit 24 is configured as a touch panel, the object may be an icon, a button, a link and the like displayed on the display unit 23, and the object displayed on a tap position may be selected.
Communication Unit 25
The communication unit 25 is an interface for performing communication with an external apparatus through the communication network. In this illustrative embodiment, the communication unit 25 is configured to perform communication with an external apparatus, based on the TCP/IP (abbreviation of Transmission Control Protocol/Internet Protocol) protocol. That is, the complex machine 10 is configured to transmit a variety of information to the portable terminal 50 through the communication unit 25 and to receive a variety of data or information from the portable terminal 50 through the communication unit 25.
CPU 31
The CPU 31 is configured to control an entire operation of the complex machine 10. The CPU 31 is configured to acquire and execute a variety of programs (which will be described later) from the storage unit 32, based on the variety of information output from the operation unit 24 and the variety of information acquired from the external apparatus through the communication unit 25. That is, the CPU 31 and the storage unit 32 configure an example of the control unit.
Storage Unit 32
The storage unit 32 has a program storage area 32A and a data storage area 32B. The program storage area 32A is configured to store therein an OS (abbreviation of Operating System) 34 and a control program 35. In the meantime, the control program 35 may be a single program or a combination of a plurality of programs. The data storage area 32B is configured to store therein data or information, which is required to execute the control program 35.
In the meantime, the ‘data’ and ‘information’ in the specification have a common feature that ‘data’ and ‘information’ are bits or bit string, which can be handled by a computer. The term ‘data’ indicates that a semantic content represented by each bit can be handled by a computer without considering the semantic content. In contrast, the term ‘information’ indicates that an operation of the computer is branched by a semantic content represented by each bit. Further, the term ‘instruction’ indicates a control signal for urging an apparatus of a transmission destination to perform a next operation, and may include the information or may have a property as the information.
Also, the ‘data’ and ‘information’ are handled as the same data and information even though the formats (for example, a text format, a binary format, a flag format and the like) are changed for each computer, inasmuch as they are recognized as the same semantic content. For example, the information representing ‘two’ may be kept as information of a text format “0x32”, which is the ASCII code, in one computer and may be kept as information of a binary format “10”, which is the binary representation, in another computer.
Also, in the specification, the ‘data’ and ‘information’ before and after a predetermined calculation is applied thereto may be handled as the same data and information. For example, it is assumed that unencrypted key information is stored in the storage unit and encrypted key information (hereinafter, referred to as ‘encrypted key information’) is received through the communication unit 25. In this case, when the key information stored in the storage unit coincides with decrypted key information obtained by decrypting the encrypted key information, the key information, the encrypted key information and the decrypted key information may be handled as the same ‘key information’. In the meantime, the predetermined calculation is not limited to encryption/decryption and may be a calculation using a Hash function, for example.
However, the distinction of the ‘data’ and ‘information’ is not strict, and an exceptional handling is also allowed. For example, the data may be temporarily handled as the information, and the information may be temporarily handled as the data. Also, one that is handled as the data in an apparatus may be handed as the information in another apparatus. Further, the information may be extracted from the data, and the data may be extracted from the information.
The storage unit 32 is configured by a RAM (abbreviation of Random Access Memory), a ROM (abbreviation of Read Only Memory), an EEPROM (abbreviation of Electrically Erasable Programmable Read-Only Memory), an HDD (abbreviation of Hard Disk Drive), a buffer provided for the CPU 31 or a combination thereof.
In the meantime, the storage unit 32 may be a computer-readable storage medium. The computer-readable storage medium is a non-transitory medium. The non-transitory medium includes a recording medium such as a CD-ROM and a DVD-ROM, too. Also, the non-transitory medium is a tangible medium. In the meantime, an electric signal for carrying a program to be downloaded from a server and the like on the Internet is a computer-readable signal medium, which is one kind of the computer-readable medium, but is not included in the non-transitory computer-readable storage medium.
The program stored in the program storage area 32A is configured to be executed by the CPU 31. However, in the specification, the operations of each program may be described while omitting the CPU 31. That is, in below descriptions, the description ‘program A is configured to execute processing A’ may indicate that ‘CPU 31 is configured to execute processing A described in the program A’. This is also the same for the portable terminal 50 and server apparatus 70, which will be described later.
The OS 34 is a basic program for providing an API (abbreviation of Application Programming Interface) configured to control the printer unit 11, the scanner unit 12, the display unit 23, the operation unit 24, the communication unit 25 and the like, which are the hardware configuring the complex machine 10. That is, each program described above is configured to call the API provided by the OS 34, thereby controlling the respective hardware. However, in the specification, the operations of each program are described while omitting the OS 34. That is, in below descriptions, the description ‘program B is configured to control hardware C’ may indicate that ‘program B is configured to control hardware C through the API of the OS 34’. This is also the same for the portable terminal 50 and server apparatus 70, which will be described later.
Portable Terminal 50
As shown in
The communication unit 55 is configured to perform wireless communication with the complex machines 10A, 10B, 10C, 10D belonging to the wireless LANs 102, 103 and to perform wireless communication with the server apparatus 70 on the Internet 101 via the access points 102A, 103A. That is, the portable terminal 50 is configured to wirelessly transmit a variety of data or information to the complex machine 10 or server apparatus 70 through the communication unit 55 and to wirelessly receive the variety of data or information from the complex machine 10 or server apparatus 70 through the communication unit 55. Here, it is assumed that when the portable terminal 50 is arranged in the hatched area of
The data storage area 62B of the storage unit 62 can store therein a cooperation operation list. The cooperation operation list is a list for defining a cooperation operation of causing a first apparatus to execute a first operation and a second apparatus to execute a second operation after the first operation. For example, as shown in
The cooperation operation list shown in
The operation content “DL” associated with the server apparatus 70 indicates a first operation of transmitting the target data stored in the server apparatus 70 to the portable terminal 50. The operation content “SCAN” associated with the complex machine 10A indicates a first operation of causing the scanner unit 12 to execute the scan processing and transmitting the target data generated in the scan processing to the portable terminal 50. The operation content “PRINT” associated with the complex machines 10A, 10B indicates a second operation of receiving the target data from the portable terminal 50 and causing the printer unit 11 to execute recording processing of the target data. The first operation is an operation including the transmission of the target data to the portable terminal 50. The second operation is an operation including the reception of the target data from the portable terminal 50.
In the meantime, although not shown, the operation content included in the cooperation operation list may include more detailed content (hereinafter, referred to as ‘setting information’). For example, the operation content “DL” may be added with a data ID of the target data, which is a downloading target, and the like. Also, the operation content “SCAN” may be added with a document size indicating a size of a document, information indicating a color scan or monochrome scan, information indicating a duplex scan or one-sided scan, and the like. Further, the operation content “PRINT” may be added with information indicating a size of a recording sheet, information indicating a number of the recording sheets, information indicating a number of images to be included on one recording sheet, information indicating a duplex print or one-sided print, and the like.
Regarding the SSID, the SSIDs set for the access points 102A, 103A of the wireless LANs 102, 103 to which the corresponding apparatuses belong are set. That is, the complex machines 10A, 10B identified with the apparatus ID “MFC-A” and apparatus ID “MFC-B” are associated with the SSID “abc”. In the meantime, the SSID corresponding to the server apparatus 70 on the Internet is blank.
The cooperation operation list can be arbitrarily prepared and edited by the user of the portable terminal 50. The portable terminal 50 may receive new registration and editing of the cooperation operation list by the user through the display unit 53 and the operation unit 54, for example. A specific using method of the new registration and editing of the cooperation operation list will be described later with reference to
As shown in
Further, as shown in
Server Apparatus 70
The server apparatus 70 is a storage server configured to store therein data, for example. Although the specific example of the server apparatus 70 is not particularly limited, the server apparatus 70 is an apparatus configured to provide services such as ‘Dropbox (registered trademark)’, ‘Google Docs (registered trademark)’, Tvernote (registered trademark)′ and the like. Also, the present invention is not limited to the configuration where the server apparatus 70 is connected to the Internet 101, and the server apparatus 70 may be a local storage server belonging to the wireless LANs 102, 103.
Cooperation Operation Control Processing
The cooperation operation control processing that is executed by the control program 65 of the portable terminal 50 is described with reference to
First, the control program 65 of the portable terminal 50 displays a cooperation operation selection screen on the display unit 53 (S11).
Then, when the operation unit 54 receives a user's operation of tapping a position of the cooperation operation icon corresponding to the cooperation operation list shown in
In the status images 91, 92, the apparatus IDs included in the cooperation operation list and progressing statuses of operations that are executed by the apparatuses identified by the apparatus IDs are indicated. That is, the information indicated in the status images 91, 92 is changed as the cooperation operation progresses. Also, the status images 91, 92 are arranged in accordance with an execution sequence of the cooperation operation list. In the cooperation operation screen shown in
Then, the control program 65 determines whether the first apparatus and second apparatus registered in the cooperation operation list belong to the same communication network (S13). The control program 65 may determine whether the first apparatus and second apparatus belong to the same network by comparing the SSIDs of the cooperation operation list, for example. In this illustrative embodiment, the server apparatus 70, which is the first apparatus, is arranged on the Internet 101, and the complex machine 10A, which is the second apparatus, belongs to the wireless LAN 102. That is, in this illustrative embodiment, the first apparatus and the second apparatus belong to the different communication networks.
Then, when the server apparatus 70 and the complex machine 10A belong to the different communication networks (S13: No), the control program 65 determines whether it is possible to perform wireless communication with the server apparatus 70 (S14). The case where it is possible to perform wireless communication with the server apparatus 70 on the Internet 101 is a case where it is possible to connect the communication unit 55 to the access points 102A, 103A of the wireless LANs 102, 103 connected to the Internet 101, for example. The case where it is possible to connect the communication unit 55 to the access points 102A, 103A is a case where the communication unit 55 can receive the beacon signals transmitted from the access points 102A, 103A.
That is, in step S14, the condition that the communication unit 55 is already connected to the access points 102A, 103A is not required, and a condition that the communication unit 55 is connected to the access points 102A, 103A is preferably satisfied. This is also the same for steps S17, S24, which will be described later. When it is determined that the communication unit 55 is not connected to any of the access points 102A, 103A yet and that the communication unit 55 can be connected to any one of the access points 102A, 103A, the control program 65 executes the above connection processing.
Then, when it is determined that it is possible to perform wireless communication with the server apparatus 70 (S14: Yes), the control program 65 wirelessly transmits operation instruction information to the server apparatus 70 through the communication unit 55 (S15). The operation instruction information is information for causing an apparatus of a transmission destination to execute a corresponding operation. The processing of step S15 and step S20, which will be described later, is an example of the operation instruction processing. Also, the control program 65 changes the progressing status of the status image 91 on the cooperation operation screen from “operation standby” to “being operating”.
Then, the control program 65 holds execution of next processing and thereafter until transmission completion information is wirelessly received from the server apparatus 70 through the communication unit 55 (S16: No). Also, the control program 65 sequentially wirelessly receives the target data divided in plural from the server apparatus 70 through the communication unit 55 and stores the same in the data storage area 62B until the transmission completion information is wirelessly received from the server apparatus 70 through the communication unit 55 (S16: No). In the meantime, the target data described here may be stored in the RAM because it has only to store the target data only until the target data is completely received. The processing of wirelessly receiving the target data from the server apparatus 70 is an example of the reception processing.
The transmission completion information is information indicating the transmission completion of the target data to the portable terminal 50 of the first operation that is to be executed by the first apparatus. That is, when the transmission completion information is received from the first apparatus through the communication unit 55, the control program 65 determines that the target data is completely received from the first apparatus. Although the specific example of the transmission completion information is not particularly limited, it may be a packet in which “ON” is set in a FIN flag of a TCP header, for example.
Then, when the transmission completion information is received from the server apparatus 70 through the communication unit 55 (S16: Yes), the control program 65 determines whether it is possible to perform wireless communication with the complex machine 10A, which is the second apparatus (S17). The case where it is possible to perform wireless communication with the complex machine 10A belonging to the wireless LAN 102 is a case where the communication unit 55 can receive the beacon signal transmitted from the access point 102A, like step S14, for example. The processing of step S17 is an example of the first determination processing. Also, the control program 65 changes the progressing status of the status image 91 on the cooperation operation screen from “being operating” to “operation completed”.
Then, when it is determined that it is possible to perform wireless communication with the complex machine 10 (S17: Yes), the control program 65 determines whether the access point 103A, to which the communication unit 55 is currently connected, is the same as the access point 102A of the wireless LAN 102 to which the complex machine 10A belongs (S18). When it is determined that the communication unit 55 is not connected to the access point 102A of the wireless LAN 102 to which the complex machine 10A belongs (S18: Yes), the control program 65 switches a connection destination of the communication unit 55 to the access point 102A (S19). On the other hand, when it is determined that the communication unit 55 is already connected to the access point 102A of the wireless LAN 102 to which the complex machine 10A belongs (S18: No), the control program 65 skips over step S19.
For example, in step S19, the control program 65 ends the connection between the communication unit 55 and the access point 103A, and wirelessly transmits a connection request, in response to the beacon signal transmitted from the access point 102A. Thereby, the connection destination of the communication unit 55 is switched from the access point 103A to the access point 102A. The processing of step S19, which is executed after the reception processing is completed (S16: Yes) and before the transmission processing starts (S20), is an example of the connection switching processing. Also, the wireless LAN 103 is an example of the first communication network, and the wireless LAN 102 is an example of the second communication network.
Then, the control program 65 wirelessly transmits the operation instruction information to the complex machine 10A through the communication unit 55 (S20). Also, the control program 65 changes the progressing status of the status image 92 on the cooperation operation screen from “operation standby” to “being operating”. Further, the control program 65 sequentially wirelessly transmits the target data divided in plural to the complex machine 10A through the communication unit 55 until the reception completion information is wirelessly received from the complex machine 10A through the communication unit 55 (S21: No). The processing of, when it is determined in step S17 that it is possible to perform wireless communication with the complex machine 10A, wirelessly transmitting the target data to the complex machine 10A is an example of the direct transmission processing.
The reception completion information is information indicating the reception completion of the target data from the portable terminal 50 of the second operation. That is, when the reception completion information is received from the complex machine 10A through the communication unit 55 (S21: Yes), the control program 65 determines that the transmission of the target data to the complex machine 10A is completed, and ends the cooperation operation control processing. Although the specific example of the reception completion information is not particularly limited, it may be a packet in which “ON” is set for a FIN flag and an ACK flag of the TCP header, for example.
When it is determined that it is not possible to perform wireless communication with the complex machine 10A, which is the second apparatus (S17: No), the control program 65 associates the target data received from the server apparatus 70 with the apparatus ID “MFC-A” of the complex machine 10A and stores the same in the data storage area 62B shown in
Then, the control program 65 displays a notification screen on the display unit 53 (S23).
Then, when the operation unit 54 receives a user's operation of tapping a position of the OK button on the notification screen, the control program 65 holds execution of next processing and thereafter until it becomes possible to perform wireless communication with the complex machine 10A (S24). The determination of determining whether the portable terminal 50 and the complex machine 10A can perform wireless communication with each other may be common to step S17, for example. The processing of step S23, which is executed after the storing control processing (S22), is an example of the second determination processing.
When it becomes possible to perform wireless communication with the complex machine 10A (S24: Yes), the control program 65 asks the user whether to wirelessly transmit the target data stored in the data storage area 62B, which is shown in
Then, when the operation unit 54 receives a user's operation of tapping a position of the OK button on the inquiry screen (S25: Yes), the control program 65 executes processing of step S18 and thereafter. The processing of steps S18 to S21 is different from the above descriptions, in that the target data stored in the data storage area 62B in association with the apparatus ID “MFC-A” of the complex machine 10A is transmitted, and the others are common to the above descriptions. The tap located at the position of the OK button on the inquiry screen is an example of the execution instruction indicating the execution of the transmission processing. The processing of, when it is determined in step S24 that it is possible to perform wireless communication with the complex machine 10A, wirelessly transmitting the target data to the complex machine 10A, is an example of the transmission processing.
On the other hand, when the operation unit 54 receives a user's operation of tapping a position of the cancel icon on the inquiry screen (S25: No), the control program 65 ends the cooperation operation control processing. Also, when a time period for which the control program 65 stands by in step S24 until the processing is executed exceeds a threshold time period, the control program 65 may end the cooperation operation control processing. In the meantime, when ending the cooperation operation control processing, the control program 65 deletes the target data and apparatus ID stored in the data storage area 62B in step S22.
When it is not possible to perform wireless communication with the server apparatus 70 on the Internet 101 (S14: No), the control program 65 displays an error screen on the display unit 53 (S26).
Further, when the operation unit 54 receives a user's operation of tapping the position of the cooperation operation icon corresponding to the cooperation operation list shown in
In step S27, the control program 65 adds location information indicating a location of the complex machine 10B, which is a transmission destination of the target data, to the operation instruction information for causing the complex machine 10A to execute the first operation. Although the specific example of the location information is not particularly limited, it may be an IP address allotted to the complex machine 10B, for example. Thereby, the complex machine 10A, which is the first apparatus, transmits the target data generated by the first operation “SCAN” to the complex machine 10B through the communication unit 25. In the meantime, the complex machine 10B, which is the second apparatus, executes the second operation “PRINT”, in response to the target data received from the complex machine 10A through the communication unit 25.
Meanwhile, the description ‘the target data is transmitted from the complex machine 10A to the complex machine 10B in step S27’ indicates that the target data is transmitted from the complex machine 10A to the complex machine 10B without via the portable terminal 50, for example, and the corresponding configuration does not limit a configuration where the access point 102A, a switching hub and the like are interposed between the complex machine 10A and the complex machine 10B. In other words, an IP address of the complex machine 10B included in the operation instruction information is preferably set in a transmission destination IP address of an IP packet including the target data, which is transmitted from the complex machine 10A. Also, at the time of step S27, when the communication unit 55 of the portable terminal 50 is not connected to the access point 102A of the wireless LAN 102 to which the complex machines 10A, 10B belong, the connection destination of the communication unit 55 is switched by the processing of step S19.
Resumption Processing
Subsequently, resumption processing that is executed by the control program 65 of the portable terminal 50 is described with reference to
In below descriptions, the cooperation operation is executed in accordance with the cooperation operation list shown in
First, when it is not possible to perform wireless communication with the complex machine 10B, the control program 65 associates the target data under transmission with the apparatus ID “MFC-B” of the complex machine 10B, which is a transmission destination of the target data, and stores the same in the data storage area 62B shown in
Then, the control program 65 displays an interruption notification screen on the display unit 53 (S32).
Then, when the operation unit 54 receives a user's operation of tapping a position of the OK icon on the interruption notification screen, the control program 65 holds execution of next processing and thereafter until it becomes possible to perform wireless communication with the complex machine 10B (S33). The processing of step S33 may be common to the processing of step S24 shown in
Then, when it becomes possible to perform wireless communication with the complex machine 10B (S33: Yes), the control program 65 asks the user whether or not to wirelessly transmit the target data stored in the data storage area 62B shown in
Then, when the operation unit 54 receives a user's operation of tapping a position of the OK icon on the inquiry screen (S34: Yes), the control program 65 wirelessly transmits transmission instruction information to the complex machine 10B through the communication unit 55 (S35). The transmission instruction information is information for transmitting resumption information to the complex machine 10B, which is a transmission destination. The resumption information is information for specifying a resumption image of a plurality of images, which is to be recorded on a next recording sheet. In the meantime, the resumption information may be any information inasmuch as it can specify a resumption image, for example, information for specifying an image finally recorded on the recording sheet. The processing of step S35 is an example of the transmission instruction processing.
Then, when the resumption information is received from the complex machine 10B through the communication unit 55 (S36: Yes), the control program 65 wirelessly transmits resumption instruction information to the complex machine 10B through the communication unit 55 (S37). The resumption instruction information is information for resuming the operation interrupted in the apparatus of the transmission destination. Then, the control program 65 wirelessly transmits partial target data to the complex machine 10B through the communication unit 55 (S38). The partial target data is data after the resumption image, which is represented by the resumption information, of the target data stored in the data storage area 62B shown in
When the transmission of the partial target data is completed (S38: Yes), the control program 65 ends the resumption processing. Also, when the operation unit 54 receives a user's operation of tapping a position of the cancel icon on the inquiry screen (S34: No), the control program 65 skips over steps S34 to S38 and ends the resumption processing. In the meantime, when ending the resumption processing, the control program 65 deletes the target data and apparatus ID stored in the data storage area 62B in step S31.
Device Selection Processing
Subsequently, device selection processing that is executed by the control program 65 of the portable terminal 50 is described with reference to
First, the control program 65 displays an additional destination selection screen on the display unit 53 (S41).
Then, when the operation unit 54 receives a user's operation of tapping a position of the ‘+first apparatus’ icon on the additional destination selection screen (S42: Yes), the control program 65 acquires the apparatus ID of the apparatus IDs stored in the data storage area 62B shown in
Then, the control program 65 determines whether the communication unit 55 is connected to any one of the access points 102A, 103A (S44). When the communication unit 55 is already connected to the access point 102A (S44: Yes), the control program 65 searches an apparatus capable of performing wireless communication through the access point 102A, i.e., an apparatus belonging to the wireless LAN 102 (S45). Since the method of searching the apparatus in the wireless LAN 102 has been already well known, the descriptions thereof are omitted.
The control program 65 receives operation information, which indicates an operation that can be executed by the apparatus found in step S45, from the corresponding apparatus through the communication unit 55. In the example of
Then, the control program 65 acquires an apparatus ID of the apparatus found in step S45 (S46). At this time, the apparatus ID overlapping with the apparatus ID already acquired in step S34 is excluded. That is, in this illustrative embodiment, an apparatus ID is not acquired through the apparatus search in the wireless LAN 102. Also, when the communication unit 55 is not connected to any of the access points 102A, 103A upon the starting of the device selection processing (S44: No), the control program 65 skips over steps S45, S46 and executes processing of step S47, which will be described later.
Then, the control program 65 determines whether there is a further connectable access point (S47). For example, in step S47, the control program 65 may determine whether it is possible to receive a beacon signal from the access point 103A, which has not been connected yet, during the device selection processing. When it is possible to receive a beacon signal from the access point 103A (S47: Yes), the control program 65 connects the communication unit 55 to the access point 103A (S48), and again executes the processing of step S45 and thereafter. The processing of step S48 may be common to the processing of step S19 shown in
In this illustrative embodiment, in steps S45, S46 that are executed with the communication unit 55 being connected to the access point 103A, the apparatus ID “MFC-C” of the complex machine 10C and the apparatus ID “MFC-D” of the complex machine 10D are acquired. Also, it is assumed that the operation information acquired from the complex machine 10C, 10D indicate the first operation “SCAN” and the second operation “PRINT”. The control program 65 repeatedly executes the processing of steps S45 to S48 for all the connectable access points 102A, 103A. In other words, in steps S45 to S48 that are repeatedly executed, the control program 65 sequentially connects the communication unit 55 to each of the communication networks to search an apparatus belonging to each communication network. The processing of steps S45 to S48 is an example of the apparatus search processing.
Then, when there is no further connectable access point (S47: No), the control program 65 displays a first apparatus selection screen on the display unit 53 (S49).
Then, when the operation unit 54 receives a user's operation of tapping one position of the plurality of apparatus icons (S50: Yes), the control program 65 registers, in a new cooperation operation list, an apparatus ID denoted for the apparatus icon, a first operation represented by the operation information acquired from the apparatus identified with the apparatus ID, and an SSID for performing wireless communication with the apparatus identified with the apparatus ID. The processing of steps S49 to S51 is an example of the selection receiving processing of selecting the first apparatus and the second apparatus, which will be described later.
Meanwhile, in this illustrative embodiment, the SSIDs stored with being associated with the apparatus IDs “server A” and “MFC-A” in the cooperation operation list are stored in the data storage area 62B shown in
Then, when the apparatus selected in step S50 has not been registered yet in the data storage area 62B shown in
On the other hand, when a position of the ‘+second apparatus’ icon on the additional destination selection screen is tapped, a list of apparatus IDs for identifying the apparatuses capable of executing the second operation is acquired in steps S43 to S48. When a position of the apparatus icon denoted with the apparatus ID on the second apparatus selection screen is tapped, the second operation that can be executed by the apparatus ID is registered in the cooperation operation list. Further, when the selected apparatus ID has not been registered yet, the apparatus ID, the SSID, the first operation and the second operation are stored in the data storage area 62B shown in
According to the cooperation operation control processing of the above illustrative embodiment, it is possible to resume the cooperation operation, which has been interrupted because the wireless communication with the second apparatus could not be performed, as it becomes possible to perform wireless communication with the second apparatus. As a result, it is possible to execute the cooperation operation including the desired second apparatus, irrespective of whether it is possible to perform wireless communication at the present moment. That is, it is possible to execute the cooperation operation without making the user conscious about the configuration of the communication network.
According to the cooperation operation control processing, the user is notified or inquired at the interruption timing and resumption timing of the cooperation operation, so that it is possible to give the user an appropriate notification about the current situation and to allow the user to perform an appropriate operation. For example, it is possible to make the user recognized that the cooperation operation is resumed as it becomes possible to perform wireless communication with the second apparatus, through the notification processing of step S23. As a result, it is possible to suppress the user from performing an operation for restarting the cooperation operation from the beginning. As another example, the unnecessary cooperation operation is suppressed from resuming by the inquiry processing of step S25.
Also, according to the cooperation operation control processing, when the first apparatus and the second apparatus are connected to the same communication network, the target data is transmitted from the first apparatus to the second apparatus without via the portable terminal 50. As a result, as compared to a configuration where the portable terminal 50 is configured to relay the target data, it is possible to improve the throughput of the cooperation operation and to reduce the processing load of the portable terminal 50.
Meanwhile, in the cooperation operation control processing, the first determination processing is executed as the reception processing is completed. However, the execution timing of the first determination processing is not limited thereto. For example, the control program 65 may be configured to repeatedly execute the first determination processing at a predetermined time interval after the cooperation operation control processing starts until the reception processing is completed. Also, when it is determined in the first determination processing that it becomes possible to perform wireless communication with the second apparatus during the reception processing, the control program 65 may execute the reception processing and the direct transmission processing in parallel. That is, the control program 65 may be configured to transmit the target data stored in the RAM to the second apparatus without waiting for the completion of the reception processing. Thereby, the throughput of the cooperation operation is improved.
According to the resumption processing of the illustrative embodiment, the interrupted second operation is resumed in the middle of the operation. Thereby, it is possible to suppress the same image from being redundantly recorded on the plurality of recording sheets in the complex machine 10A. Meanwhile, in the above illustrative embodiment, the resumption processing is executed in the cooperation operation including the second operation “PRINT”. However, the second operation in which the resumption processing is executed is not limited thereto. For example, the resumption processing of
According to the device selection processing of the above illustrative embodiment, it is possible to select the desired first apparatus and second apparatus from the plurality of apparatuses, irrespective of the communication network to which the apparatuses belong or irrespective of whether it is possible to perform wireless communication with the portable terminal 50 at the present moment. That is, it is possible to allow the user to prepare the desired cooperation operation list without making the user conscious about the configuration of the communication network.
Meanwhile, in the above illustrative embodiment, the variety of programs stored in the program storage area 32A, 62A of the storage unit 32, 62 of the complex machine 10 or portable terminal 50 are executed by the CPU 31, 61, so that the respective processing to be executed by the control unit of the present disclosure is implemented. However, the configuration of the control unit is not limited thereto, and a part or all of the configurations may be implemented by hardware such as IC (abbreviation of Integrated Circuit).
Further, the present invention can be implemented not only by the complex machine 10 or portable terminal 50 but also by a program configured to cause the complex machine 10 or portable terminal 50 to execute the processing. The program may be provided with being recorded in a non-transitory recording medium. The non-transitory recording medium may include a storage unit mounted to a server that can be connected to the complex machine 10 or portable terminal 50 through the communication network, in addition to a CD-ROM, a DVD-ROM and the like. The program stored in the storage unit of the server apparatus may be delivered through the communication network such as the Internet, as information or signal representing the program.
According to the above configuration, it is possible to resume the cooperation operation, which has been interrupted because the wireless communication with the second apparatus could not be performed, as it becomes possible to perform wireless communication with the second apparatus. As a result, it is possible to execute the cooperation operation without enabling a user to be conscious of the configuration of the communication network. In the meantime, the storing control processing of storing the target data in the storage unit is different from the processing of temporarily storing the target data received from the first apparatus in a temporary memory.
According to the program described in the specification, it is possible to resume the cooperation operation in the middle of the operation, which has been interrupted because the wireless communication with the second apparatus could not be performed, as it becomes possible to perform wireless communication with the second apparatus. Therefore, it is possible to execute the cooperation operation without enabling the user to be conscious of the configuration of the communication network.
Number | Date | Country | Kind |
---|---|---|---|
2014-134926 | Jun 2014 | JP | national |
This application is a continuation of U.S. patent application Ser. No. 15/337,767 filed Oct. 28, 2016, which is a continuation of U.S. patent application Ser. No. 14/671,385 filed Mar. 27, 2015, issued as U.S. Pat. No. 9,483,214 on Nov. 1, 2016, which is based upon and claims the benefit of priority of Japanese Patent Application No. 2014-134926 filed on Jun. 30, 2014, the contents of which are incorporated herein by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
6609162 | Shimizu et al. | Aug 2003 | B1 |
20090316206 | Anezaki et al. | Dec 2009 | A1 |
20130250358 | Suzuki | Sep 2013 | A1 |
20130254297 | Kobayashi | Sep 2013 | A1 |
Number | Date | Country |
---|---|---|
2000-187573 | Jul 2000 | JP |
Number | Date | Country | |
---|---|---|---|
20180270382 A1 | Sep 2018 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 15337767 | Oct 2016 | US |
Child | 15983667 | US | |
Parent | 14671385 | Mar 2015 | US |
Child | 15337767 | US |