The present disclosure relates to communication systems, information processing apparatuses, and methods for communication.
An electronic blackboard provided with a touch panel on a large-size flat panel display is known in the art. Such an electronic blackboard displays a screen used as a blackboard, on which trajectories of an electronic pen or a finger are input through the touch panel, and then display the trajectories on the screen as handwriting information. In such a way, the screen is used just as a blackboard. Furthermore, an electronic blackboard which is connectable to a personal computer may display the same screen as the personal computer, so as to superimpose handwritten information on the screen and to operate the personal computer according to information input through the touch panel.
Furthermore, an administrator may perform settings relating to, for example, security on such an electronic blackboard.
Conventionally, techniques for performing the same setting on multiple apparatuses in efficient ways have been invented (see, for example, Patent Document 1). Patent Document 1 discloses a network synchronization system including multiple information processing devices. A first information processing device includes a synchronization-use common storage unit configured to copy and store personal setting information for each user. A second information processing device includes a setting information unit configured to store personal setting information for each user, and a synchronization control unit configured to update the personal information for each user stored in the setting information unit to latest personal setting information for each user. The synchronization control unit acquires update information common to the multiple information processing devices, which is stored in the synchronization-use common storage unit.
PTL 1: Japanese Patent No. 4942686
However, such a network synchronization system as disclosed in Patent Document 1 has difficulty synchronizing a large number of electric blackboards. For example, in a case of having a number of first apparatuses, the second apparatus need synchronize all of the first apparatuses, which causes a heavy load.
In view of the above technical problem, the objective of the present invention is to provide an information processing apparatus capable of synchronizing setting information with another information processing apparatus.
One aspect of the present invention provides a communication system including information processing apparatuses forming a hierarchic structure having a depth of three or more levels. Each of the information processing apparatuses includes a setting information storing unit configured to store setting information relating to respective operations. At least one of the information processing apparatuses includes a setting receiving unit configured to receive setting information entered to the at least one of the information processing apparatuses and configured to store the setting information in the setting information storing unit. At least one of the information processing apparatuses arranged in any level situated lower in the hierarchic structure than the at least one of the information processing apparatuses which receives the entered setting information includes a communication information storing unit configured to store communication information for communicating with one of the information processing apparatuses arranged in a level immediately above, and an acquiring unit configured to acquire the setting information through communication with the one of the information processing apparatuses in the level immediately above by use of the communication information retrieved from the communication information storing unit and configured to store the acquired setting information in the setting information storing unit. At least one of the information processing apparatuses arranged in any level situated lower in the hierarchic structure than the at least one of the information processing apparatuses which receives the entered setting information performs processing of acquiring the setting information stored in the setting information storing unit provided on the one of the information processing apparatuses arranged in the level immediately above.
An information processing apparatus capable of synchronizing setting information with another information processing apparatus is provided.
In the following, embodiments of the present invention will be described with reference to accompanying drawings.
<Comparison to the Background Art>
Before describing an image processing system according the embodiments of the present invention, a comparative example of synchronization processing of setting information will be described.
Alternatively, as illustrated in
Additionally, in a daisy chain configuration, for example, where a parent device and a child device as well as a child device and a grandchild device perform one-on-one communication, a single electronic blackboard 2 performs setting of setting information on only another single electronic blackboard 2. However, such a configuration may cause another problem that it takes too much time until the setting of the setting information is performed on the last electronic blackboard 2.
<<Summary of a Synchronization Method According to the Embodiments>>
According to the embodiments of the present invention, instead of setting setting information from the parent device 2p to the child devices 2c or from the child devices 2c to the grandchild devices 2g, the child device 1 performs communication with the parent device 2p so as to acquire the setting information from the parent device 2p, and then applies the setting. So do the child devices 2 and 3. Similarly, the grandchild device 1 performs communication with the child device 1 so as to acquire the setting information from the child device 1, and then applies the setting. So do the grandchild devices 2 and 3.
Using such a synchronization method, the load imposed on each of the electronic blackboards 2 associated with performing setting of setting information is reduced, as each of the electronic blackboards 2 communicate with only a single electronic blackboard 2 arranged in a level immediately above itself for acquiring the setting information. Further, each of the electronic blackboards 2 need not have information with regard to updates of setting information performed on an electronic blackboard 2 arranged in a level immediately below itself. Moreover, as each of the electronic blackboards 2 only needs to transmit setting information in response to a request from each of the electronic blackboards 2 arranged in a level immediately below itself, a load for processing is relatively small, which enables each of the electronic blackboards 2 to have multiple (three, in the drawing) information processing apparatuses in a level immediately below itself. In such a way, synchronization of setting information on all of the electronic blackboards 2 is possible with relatively small loads and with reduced time difference between setting of the setting information on the parent device 2p and setting of the setting information on the grandchild devices 2g and descendent electronic blackboards 2.
As illustrated in the drawing, the tree network configuration is constituted with at least three levels. Here, as long as the deepest level is the third or deeper level, there may be branches that end in the second level. Further, the number of the electronic blackboards 2 arranged in a level is not limited to three, and may be determined in consideration of the total number of the electronic blackboards 2 and the depth of the tree network configuration.
In the following, as a matter of convenience in explanation, the level in which the child devices 1 through 3 are arranged is referred to as a child device level C and the level in which the grandchild devices 1 through 3 are arranged is referred to as a grandchild device level G. Furthermore, without differentiating the parent device 2p and the child device level C or the child device level C and the grandchild device level D, each of the electronic blackboards 2 arranged in a level relatively above another electronic blackboard 2 (in a relationship of being immediately above the other electronic blackboard 2, such as the parent device 2p viewed from the child device 1) may be referred to an electronic blackboard 2 in a higher level, whereas each of the electronic blackboards 2 arranged in a level relatively below another electronic blackboard 2 (in a relationship of being immediately below the other electronic blackboard 2, such as the child device 1 viewed from the parent device 2p) may be referred to an electronic blackboard 2 in a lower level.
<System Configuration>
As illustrated in
The electronic blackboard 2a is capable of displaying on the display 3a an image which is drawn through an event generated by the electronic pen 4a (e.g. touching the display 3 with the pen tip or pen end of the electronic pen 4a). In addition to the electronic pen 4a, the electronic blackboard 2a is capable of changing an image displayed on the display 3a based on an event generated by a hand Ha of a user (e.g. gesture such as enlarging/reducing the size of an image and turning a page).
Furthermore, the USB memory 5a may be connected to the electronic blackboard 2a, so that the electronic blackboard 2a performs read and write processing of an electronic file such as a PDF file to the USB memory 5a. Further, the laptop computer 6a is connected to the electronic blackboard 2a via a cable 10al that enables communication according to a standard such as Display Port (registered trademark), Digital Visual Interface (DVI), High-Definition Multimedia Interface (HDMI; registered trademark), and Video Graphics Array (VGA). Here, responding to an event generated through touching the display 3a, the electronic blackboard 2a transmits event information indicative of the event to the laptop computer 6a, just as events generated through an input device such as a mouse and a keyboard. Similarly, teleconference terminal 7a is connected to the electronic blackboard 2a via a cable 10a2 that enables communication according to such a standard as mentioned above. Here, the laptop computer 6a and the teleconference terminal 7a may perform wireless communication with the electronic blackboard 2a according to a wireless communication protocol such as Bluetooth (registered trademark).
In the meantime, at another location provided with the electronic blackboard 2b, the electronic blackboard 2b including the display 3b, the electronic pen 4b, the USB memory 5b, the laptop computer 6b, the teleconference terminal 7b, a cable 10b1, and a cable 10b2 are similarly employed in such a manner as described above. Further, the electronic blackboard 2a is capable of changing an image displayed on the display 3b may be changed based on an event generated by a hand Hb of a user.
In such a way, an image drawn on the display 3a of the electronic blackboard 2a at one of the locations is displayed on the display 3b of the electronic blackboard 2b at another location, whereas an image drawn on the display 3b of the electronic blackboard 2b at one of the locations is displayed on the display 3a of the electronic blackboard 2a at another location. Here, the image processing system 1 enables remote-sharing processing for sharing the same image at remote locations, and therefore is conveniently used when a conference at remote locations is held.
Here, in the following description, an unspecified electronic blackboard among multiple electronic blackboards is referred to as an electronic blackboard 2. An unspecified display among multiple displays is referred to as a display 3. An unspecified electronic pen among multiple electronic pens is referred to as an electronic pen 4. An unspecified USB among multiple USBs is referred to as a USB memory 5. An unspecified laptop computer among multiple laptop computers is referred to as a laptop computer 6. An unspecified teleconference terminal among multiple teleconference terminals is referred to as a teleconference terminal 7. An unspecified hand among multiple hands is referred to as a hand H. An unspecified cable among multiple cables is referred to as a cable 10.
Further, although the electronic blackboard 2 is described as an example of an information processing apparatus in the embodiments, the information processing apparatus of the present invention is not limited to an electronic blackboard. Another example of the information processing apparatus is an electronic signboard (digital signage), a telestrator used in sports and weather broadcasts, a remote image (video) diagnostic apparatus, etc. Further, although the laptop computer 6 is described as an example of an information processing terminal, the information processing terminal of the present invention is not limited to a laptop computer. Another example of the information processing terminal is a desktop PC, a tablet PC, a personal digital assistant (PDA), a digital video camera, a digital camera, a game machine, and other types of terminals that are capable of rendering an image frame. Further, the communication network 9 may be the Internet, a Local Area Network (LAN), a mobile telephone network, etc. d. Further, although the USB memory 5 is described as an example of a recording medium in the embodiments, the recording medium of the present invention is not limited to a USB memory. Another example of the recording medium is a secure digital (SD) card, etc.
<Hardware Configuration of Electronic Blackboard>
In the following, a hardware configuration of the electronic blackboard 2 according to the present embodiment is described with reference to
As illustrated in
The electronic blackboard 2 further includes a capture device 111 that displays video information on a display of the laptop computer 6 in a form of a still image or a moving image, a graphics processing unit (GPU) 112 dedicated to processing graphics, and a display controller 113 that controls and manages screen display operations for displaying an output image from the GPU on the display 3 or the teleconference terminal 7.
The electronic blackboard 2 further includes a touch sensor 115 that detects being touched by the electronic pen 4 or the hand H of the user on the display 3, and a sensor controller 114 that controls processing of the touch sensor 115. The touch sensor 115 performs an input and a detection of a coordinate in an infrared ray insulating method. In the method for inputting and detecting coordinates, two light-emitting/receiving units provided on respective ends of the upper side of the display 3 emit multiple infrared rays parallel to the surface of the display 3. Emitted lights are reflected by the reflection members surrounding the display 3 and track back the same paths to return to the light-emitting/receiving units, and then are received by light-receiving elements. The touch sensor 115 outputs to the sensor controller 114 the identifications (IDs) of infrared rays insulated by an object, so that the sensor controller 114 specifies the coordinates of the touch position of the object. Here, IDs described in the following are examples of identification information.
Here, not only an infrared ray insulating method, the touch sensor 115 may employ other types of detection methods using a conductive touch panel which detects a change in capacitance to specify a touch position, a resistive touch panel which detects a change in voltage of two opposing resistance films to specify a touch position, an electromagnetic inductive touch panel which detects an electromagnetic induction resulting from a touch of an object on a display unit to specify a touch position, etc.
Furthermore, the electronic blackboard 2 includes an electronic pen controller 116. The electronic pen controller 116 performs communication with the electronic pen 4 in order to detect a touch of a pen tip or a pen end on the display 3. Here, not only the pen tip and the pen end of the electronic pen 4, but also the electronic pen controller 116 may be arranged so as to detect a touch of other parts of the electronic pen 4 such as a grip part.
The electronic blackboard 2 further includes a bus line 120 such as an address bus or a data bus for electrically connecting the CPU 101, the ROM 102, the RAM 103, the SSD 104, the network controller 105, the external memory controller 106, the capture device 111, the GPU 112, the sensor controller 114, and the electronic pen controller 116 as illustrated in
Here, the program for the electronic blackboard 2 may be recorded on a computer-readable recording medium such as a CD-ROM for distribution.
<Functional Configuration of Electronic Blackboard>
In the following, a functional configuration of the electronic blackboard 2 is described with reference to
The functional configuration of the electronic blackboard 2 illustrated in
<Functional Configuration of Client Unit>
In the following, a functional configuration of the client unit 20 is described with reference to
The video acquirer 21 acquires an output video from a video outputting device that is connected to the cable 10. Upon receiving an image signal from the video outputting device, the video acquirer 21 analyzes the received image signal and derives image information such as the resolution of an image frame corresponding to an image formed by the image signal which is displayed on of the video outputting device, and the update frequency of the image frame, so as to output the image information to an image acquirer 31 of the image processor 30.
The coordinate detector 22 detects coordinates of an event generated by a user on the display 3 (e.g. touching the display 3 with the hand H of the user). Further, the coordinate detector 22 detects the dimensions of a touched region.
The automatic adjuster 23 is activated when the electronic blackboard 2 is activated (or reactivated). As the coordinate detector 22 detects coordinates using an optical sensor, the automatic adjuster 23 adjusts parameters used for processing an image in an optical sensor camera so that the coordinate detector 22 outputs appropriate values.
The touch detector 24 detects an event generated by the user (e.g. touching the display 3 with the pen tip or the pen end of the electronic pen 4).
The event sorter 25 sorts coordinates of an event detected by the coordinate detector 22 and a detection result of the touch detector 24 into event categories including a stroke drawing, a user interface (UI) operation, and a gesture operation.
Here, the “stroke drawing” is an event that occurs when a stroke image (B) as illustrated in
The “UI operation” is an event that occurs when a UI image (A) as illustrated in
The “gesture operation” is an event that occurs when the stroke image (B) as illustrated in
When the event sorter 25 determines to sort an event into the UI operation, the operation processor 26 executes various operations according to UI elements associated with respective events. The UI elements include a button, a list, a checkbox, a textbox, etc. When the event sorter 25 determines to sort an event into the gesture operation, the gesture processor 27 executes various operations according to the respective gestures.
The video superimposer 28 displays images superimposed by a display superimposer 36 (described in the following) on a display unit 29 in a video format. The display unit 29 provides a display function which is implemented by the display 3. Furthermore, the video superimposer 28 provides a picture-in-picture function, in which a video transmitted from a video outputting device (such as the laptop computer 6) is displayed on a part of a video transmitted from another video outputting device (such as the teleconference terminal 7). Moreover, the video superimposer 28 switches the modes of a video displayed by the display unit 29 between a picture-in-picture mode and a full screen mode.
The image processor 30 performs processing such as superimposing multiple image layers as illustrated in
The image acquirer 31 acquires images of each frame of the video acquired by the video acquirer 21. The image acquirer 31 outputs the image data to the page processor 37. The images correspond to an output image (C) transmitted from a video outputting device (such as the laptop computer 6) as illustrated in
The stroke processor 32 executes processing of drawing an image, deleting a drawn image, editing a drawn image, etc., in an event of the stroke drawing sorted by the event sorter 25. The image generated by the stroke drawing corresponds to the stroke image (B) as illustrated in
The UI image generator 33 generates a UI image preset in the electronic blackboard 2. The UI image corresponds to a UI image (A) as illustrated in
The layout manager 35 manages layout information indicative of the layout of images output from the image acquirer 31, the stroke processor 32, and the UI image generator 33 (or the background generator 34). Hence, the layout manager 35 is capable of providing directions to the display superimposer 36 concerning the display positions of the output image (C) and the stroke image (B) disposed between the UI image (A) and the background image (D), as well as directions to display or hide the images.
The display superimposer 36 arranges the layouts of the images output from the image acquirer 31, the stroke processor 32, and the UI image generator 33 (or the background generator 34) based on the layout information output from the layout manager 35.
The page processor 37 assembles data of the stroke image (B) and data of the output image (C) in to a set of page data, and then stores the set of page data in the page data storage 300. The data of the stroke image (B) constitute a part of the page data as stroke arrangement data (stroke data), which are represented by stroke arrangement data IDs illustrated in Table 1. The data of the output image (C) constitute a part of the page data as media data, which are represented by media data IDs illustrated in Table 1. Further, when the page data storage 300 reads out the media data, the media data are processed as data of the background image (D).
Furthermore, the page processor 37 may transmit media data out of the stored page data to the display superimposer 36 via the background generator 34 so that the video superimposer 28 redisplays the background image (D) on the display 3. Moreover, the page processor 37 may return the stroke arrangement data (stroke data) out of the page data to the stroke processor 32, so as to enable re-editing of a stroke. Further, the page processor 37 may delete or replicate the page data.
In other words, when the page processor 37 stores page data in the page data storage 300, the output data (C) displayed on the display 3 at the moment is first stored in the page data storage 300, and then is read out of the page data storage 300 as media data representing a background image (D). The page processor 37 outputs stroke arrangement data representing the stroke image (B), which are included in media data read out of the page data storage 300, to the stroke processor 32. Further, the page processor 37 outputs media data representing the background image (D), which are included in media data read out of the page data storage 300, to the background generator 34.
The display superimposer 36 superimposes the output image (C) transmitted from the image acquirer 31, the stroke image (B) transmitted from the stroke processor 32, the UI image (A) transmitted from the UI image generator 33, and the background image (D) transmitted from the background generator 34 according to the layout specified by the layout manager 35. In this way, as illustrated in
Furthermore, the display superimposer 36 may switch between the output image (C) and the background image (D) so as to superimpose either one of the output image (C) or the background image (D) on the UI image (A) and the stroke image (B) in an exclusive manner. For example, in a case where the cable 10 which connects the electronic blackboard 2 and the video outputting device (such as the laptop computer 6) is unplugged while initially the UI image (A), the stroke image (B), and the output image (C) are displayed, the layout manager 35 may direct to exclude the output image (C) from the superimposed images and display the background image (D) instead. In such a case, the display superimposer 36 executes processing for scaling images, moving display regions, etc.
The page data storage 300 stores page data as illustrated in Table 1.
Table 1 conceptually indicates page data. Page data, such as stroke arrangement data (stroke data) and media data, constitute a page displayed on the display 3. Here, the page data are explained with reference to Table 1 through Table 4, in order to cover a wide variety of parameters included in the page data.
As illustrated in Table 1, page data are stored, associating a page data ID for identifying a page, a start time indicating the time when a page is displayed, an end time indicating the time when rewriting of the page through stroke drawing, gesture operations, etc., is ended, a stroke arrangement data ID for identifying stroke arrangement data generated by a stroke of the electronic pen 4 or the hand H, and a media data ID for identifying media data. The stroke arrangement data corresponds to data for displaying the stroke image (B) illustrated in
Hence, in a case where a user draws an alphabet letter “S” using the electronic pen 4, the alphabet letter “S” is represented with one stroke ID as the alphabet letter “S” is written with one stroke. On the other hand, in a case where a user draws an alphabet letter “T” using the electronic pen 4, the alphabet letter “T” is represented with two stroke IDs as the alphabet letter “T” is written with two strokes.
Further, the stroke arrangement data include detailed information as illustrated in Table 2. Table 2 conceptually indicates the stroke arrangement data. As illustrated in Table 2, stroke arrangement data are represented with multiple stroke data. One set of stroke data includes a stroke ID for identifying stroke data, a start time indicating the time when a stroke is performed, an end time indicating the time when a stroke is ended, a stroke color, a stroke width, and a coordinate arrangement data ID for identifying the pass points of the arrangement of the strokes.
Furthermore, the coordinate arrangement data include detailed information as illustrated in Table 3. Table 3 conceptually indicates the coordinate arrangement data. As illustrated in Table 3, the coordinate arrangement data include the coordinates of the display 3 (X-coordinate and Y-coordinate), a time difference (ms) between the start time of a stroke and the time the stroke passes the coordinates, and a pen pressure of the electronic pen 4 at the coordinates. That is to say, a collection of coordinates as illustrated in Table 3 represents one set of the stroke arrangement data as illustrated in Table 2. For example, in a case where a user draws an alphabet letter “S” using the electronic pen 4, the alphabet letter “S” is written with one stroke, but the stroke passes through multiple coordinates until the end of the stroke. Hence, the coordinate arrangement data is represented with information of the multiple coordinates.
The media data of the page data illustrated in Table 1 include detailed information as illustrated in Table 4.
Table 4 conceptually indicates the media data. As illustrated in Table 4, the media data are stored, associating the media data ID of the page data illustrated in Table 1, a data type of the media data, a recording time when the page processor 37 stores the page data in the page data storage 300, a position (X coordinate and Y coordinate) and a size (width and height) of an image displayed on the display 3 based on the page data, and data indicating the content of the media data. Here, the position of the image displayed on the display 3 based on the page data represents the upper left corner of a displayed image, assuming that the coordinates of the upper left corner of the display 3 are (X-coordinate, Y-coordinate)=(0, 0).
Referring back to
<Functional Configuration of File Processor>
In the following, a functional configuration of the file processor 40 illustrated in
The file processor 40 includes a recovery processor 41, a file input unit 42a, a file output unit 42b, a file convertor 43, a file transmitter 44, an address book input unit 45, a backup processor 46, a backup output unit 47, a setting manager 48, a setting file input unit 49a, and a setting file output unit 49b. The file processor 40 further includes an address book management table 410, a backup data storage 420, a setting file storage 430, and a connection destination management table 440.
The recovery processor 41 detects an abnormal shutdown of the electronic blackboard 2, and then recovers page data that are not properly stored. For example, in a case of a normal shutdown, page data are stored as a PDF file in the USB memory 5 via the file processor 40. However, in a case of an abnormal shutdown due to power failure, etc., the page data are stored in the page data storage 300. Thus, when the power is turned back on, the recovery processor 41 retrieves the page data from the page data storage 300 for recovery.
The file input unit 42a reads out a PDF file from the USB memory 5 and stores each page of the PDF file as page data in the page data storage 300. The file convertor 43 converts the page data stored in the page data storage 300 into a PDF file.
The file output unit 42b stores the PDF file output from the file convertor 43 in the USB memory 5.
The file transmitter 44 sends the PDF file generated by the file convertor 43, attached to an email. The display superimposer 36 displays contents of the address book management table 410 on the display 3 and the file transmitter 44 accepts a user selection of the destination through an operation on an input unit such as a touch panel, etc., so that the destination of the file is determined. As illustrated in Table 6, the address book management table 410 stores a name and an email address of a destination, associating with each other.
Further, the file transmitter 44 may accept an input of an email address through a user operation on an input unit such as a touch panel, etc.
The address book input unit 45 reads out a list file of email addresses from the USB memory 5 and manages in the address book management table 410.
The backup processor 46 stores a file output from the file output unit 42b or a file transmitted by the file transmitter 44 in the backup data storage 420 as a backup. Here, the backup process is not performed unless the user sets up the backup processor 46 for a backup setting. The backup data are stored in a PDF format as illustrated in
The backup output unit 47 stores the backup file in the USB memory 5. Upon storing the backup file, the user is prompted to enter a passcode for security purposes through an operation on an input unit such as a touch panel.
The setting manager 48 stores setting information of the electronic blackboard 2 in the setting file storage 430 and reads out the setting information from the setting file storage 430 for management. The setting information of the electronic blackboard 2 may be network settings, time/date settings, region/language settings, mail server settings, address book settings, connection destination list settings, and backup related settings. Here, the network settings may include an Internet protocol (IP) address setting of the electronic blackboard 2, a netmask setting, a default gateway setting, and a Domain Name System (DNS) setting.
The setting file output unit 49b stores the setting information of the electronic blackboard 2 in the USB memory 5 as a setting file. Here, the content of the setting file may not be viewed by the user for a security reason.
The setting file input unit 49a reads out a setting file stored in the USB memory 5 and applies the setting information to the relevant settings of the electronic blackboard 2.
The address book input unit 50 reads out a list file of IP addresses of connection destinations for performing a remote-sharing process from the USB memory 5, so as to manage the list file in the connection destination management table 440. Table 8 illustrates an example of the connection destination management table 440.
The connection destination management table 440 manages IP addresses of the electronic blackboards 2 that serve as a host apparatus, so that, in a case where an electronic blackboard 2 serves as a participating apparatus to participate in remote-sharing processing, the user of the participating apparatus need not enter the IP address of the host apparatus. The destination management table 440 manages a name of a location and an IP address of the electronic blackboard 2 serving as a host apparatus ready for participations of participating apparatuses, in association with each other.
Here, the destination management table 440 is not necessary. However, without the destination management table 440, the user of the participating apparatus need enter the IP address of the host apparatus through an operation on an input unit such as a touch panel to start performing a remote-sharing processing with the host apparatus. Here, the user of the participating apparatus may acquire the IP address of the host apparatus from the user of the host apparatus via a telephone call or an e-mail.
<Functional Configuration of Communication Controller 60>
In the following, a functional configuration of the communication controller 60 is described with reference to
The remote start processor 61 sends a request to start a new remote-sharing process to the server unit 90 within the same electronic blackboard 2, and then receives a response from the server unit 90. Here, the remote start processor 61 refers to the remote license management table 310 to determine whether license information (such as a product ID, a license ID, and an expiration date). If the license information is managed in the remote license management table 310, the remote start processor 61 may send a request to start remote-sharing processing. On the other hand, in a case where the license information is not managed in the remote license management table 310, the remote start processor 61 may not send a request to start the remote-sharing processing.
The participating location management table 610 of a host apparatus manages electronic blackboards 2 serving as participating apparatuses in currently performed remote-sharing processing. Table 9 is an example of the participating location management table 610.
The participating location management table 610 manages a location name and an IP address of a participating electronic blackboard 2, in a corresponding manner.
The remote participation processor 62 sends a participation request for participating in remote-sharing processing to a remote connection request receiver 71 of the server unit 90 of the electronic blackboard 2 serving as a host apparatus of currently performed remote-sharing processing via the communication network 9. Here, the remote participation processor 62 refers to the remote license management table 310 as well. Further, in a case where the remote participation processor 62 sends a request to participate in the currently performed remote-sharing processing, the remote participation processor 62 refers to the connection destination management table 440 in order to acquire the IP address of the electronic blackboard 2 to be connected to. Here, the remote participation processor 62 may not refer to the connection destination management table 440. In such a case, a user enters the IP address of the electronic blackboard to be connected to through an operation on an input unit such as a touch panel.
The remote image transmitter 63 receives the output image (C) from the video acquirer 21 via the image acquirer 31, and then transmits the received output image (C) to the server unit 90.
The remote image receiver 64 receives image data from a video outputting device connected to another electronic blackboard 2 via the server unit 90, and then outputs the received image data to the display superimposer 36, so as to enable remote-sharing processing.
The remote operation transmitter 65 transmits operation data used for remote-sharing processing to the server unit 90. The operation data may include, for example, data relating to operations such as adding a stroke, deleting a stroke, editing a stroke (e.g. zoom in, zoom out, move), storing page data, creating page data, duplicating page data, deleting page data, and switching a displayed page. The remote control receiving unit 66 receives from the server unit 90 operation data entered through another electronic blackboard 2, and then outputs the received operation data to the image processor 30, so as to perform remote-sharing processing.
<Functional Configuration of Server Unit>
In the following, a functional configuration of the server unit 90 is described with reference to
<Functional Configuration of Communication Controller>
In the following, a functional configuration of the communication controller 70 is described with reference to
The communication controller 70 controls communications with the communication controller 60 of the client unit 20 within the same electronic blackboard 2 as well as communications with the communication controller 60 of the client unit of another electronic blackboard 2 via the communication network 9. The data manager 80 manages data such as operation data and image data.
Furthermore, the communication controller 70 includes the remote connection request receiver 71, a remote connection result transmitter 72, a remote image receiver 73, a remote image transmitter 74, a remote operation receiver 75, and a remote operation transmitter 76.
The remote connection request receiver 71 receives from the remote start processor 61 a request for starting remote-sharing processing, and receives from the remote participation processor 62 a request for participating in remote-sharing processing. The remote connection result transmitter 72 transmits to the remote start processor 61 a response to the request for starting the remote-sharing processing, and transmits to the remote participation processor 62 a response to the request for participating in the remote-sharing processing.
The remote image receiver 73 receives image data (data of output image (C)) from the remote image transmitter 63, and then transmits the received image data to a remote image processor 82 (described in the following). The remote image transmitter 74 receives image data from the remote image processor 82, and then transmits the received image data to the remote image receiver 64.
The remote operation receiver 75 receives operation data (data of stroke image (B)) from the remote operation transmitter 65, and then transmits the received operation data to a remote operation processor 83 (described in the following). The remote operation transmitter 76 receives operation data from the remote operation processor 83, and then transmits the received operation data to the remote operation receiver 66.
<Functional Configuration of Data Manager>
In the following, a functional configuration of the data manager 80 is described with reference to
The remote connection processor 81 starts remote-sharing processing and terminates the remote-sharing processing. The remote connection processor 81 also detects license information received by the remote connection request receiver 71 from the remote start processor 61 together with a request for starting remote-sharing processing or license information received by the remote connection request receiver 71 from the remote participation processor 62 together with a request for participating in remote-sharing processing, and detects whether the license information is valid, considering expiration dates. Further, the remote connection processor 81 detects whether the number of participation requests received from other electronic blackboards 2 serving as client apparatuses exceeds a predetermined number for allowing participations.
Further, the remote connection processor 81 determines whether a passcode received along with a request for participating in remote-sharing processing from another electronic blackboard 2 matches a passcode managed in the passcode manager 810. In a case where the passcode matches, the request for participating in the remote-sharing processing is accepted. Here, the passcode is produced by the remote connection processor 81 upon starting new remote-sharing processing, and the passcode may be communicated via a telephone call and an e-mail from a user of the electronic blackboard 2 serving as a host apparatus to a user of another electronic blackboard 2 serving as a participating apparatus that requests for participating in the remote-sharing processing. Then, the user of the other electronic blackboard 2 serving as a participating apparatus that requests for participating in the remote-sharing processing may enter the passcode through the participating apparatus through a touch panel, etc., before sending a participation request, so that the transmitted participation request is accepted. Here, the participation request may be accepted only through a confirmation of license information, without a confirmation of the passcode, to improve convenience for a user.
Furthermore, in a case where the electronic blackboard 2 serves as a host apparatus, the remote connection processor 81 stores participating location information included in a participation request sent via the communication network 9 from the remote participation processor 62 of a participating apparatus, in the participating location management table 820 of the server unit 90. The remote connection processor 81 then reads out the remote location information stored in the participating location management table 820 and transmits the remote location information to the remote connection result transmitter 72. The remote connection result transmitter 72 transmits the remote location information to the remote start processor 61 of the client unit 20 of the same electronic blackboard 2 serving as the host apparatus. The remote start processor 61 stores the remote location information in the participating location management table 610. In this way, the host apparatus manages the remote location information in both the client unit 20 and the server unit 90.
The remote image processor 82 receives image data (such as output image (C)) from a video outputting device (such as laptop computer 6) connected to a client unit 20 of each electronic blackboard 2 involved in remote-sharing processing (including the client unit 20 within the electronic blackboard 2 serving as a host apparatus), and then stores the received image data in the image data storage 830. In the meantime, the remote image processor 82 determines the order of displaying the image data during the remote-sharing processing, according to the chronological order of the image data received by the server unit 90 of the electronic blackboard 2 serving as the host apparatus. Further, the remote image processor 82 refers to the participating location management table 820, so as to transmit the image data via the communication controller 70 (remote image transmitter 74) to the client unit 20 of each electronic blackboard 2 involved in the remote-sharing processing (including the client unit 20 within the electronic blackboard 2 serving as the host apparatus), in the determined order as described above.
The remote operation processor 83 receives operation data (such as stroke image (B)) produced on a client unit 20 of each electronic blackboard 2 involved in remote-sharing processing (including the client unit 20 within the electronic blackboard 2 serving as the host apparatus), and then determines the order of displaying the image data during the remote-sharing processing, according to the chronological order of the image data received by the server unit 90 of the electronic blackboard 2 serving as the host apparatus. Here, the operation data are the same as the operation data explained in the above description. Further, the remote operation processor 83 refers to the participating location management table 820, so as to transmit the operation data to the client unit 20 of each electronic blackboard 2 involved in the remote-sharing processing (including the client unit 20 within the electronic blackboard 2 serving as the host apparatus).
The operation synthesis processor 84 synthesizes the operation data of each electronic blackboard 2 output from the remote operation processor 83, stores the synthesized operation data in the operation data storage 840, and then returns the synthesized operation data to the remote operation processor 83. The operation data are transmitted to the client unit 20 of the electronic blackboard 2 serving as the host apparatus and the client unit 20 of each of the electronic blackboards 2 serving as participating apparatuses, so that the same image relating to the operation data is displayed on each of the electronic blackboards 2. Table 10 is an example of the operation data.
As illustrated in Table 10, the operation data include a sequence number (SEQ), a name of operation, an IP address of an electronic blackboard 2 that transmits operation data and a port number of a client unit (or a server unit), an IP address of an electronic blackboard 2 that receives the operation data and a port number of a client unit (or a server unit), a type of operation, an object of operation, and a content of the operation data, in a manner so that each items are correspond with each other. For example, SEQ 1 indicates that a stroke is drawn on the client unit 20 (Port No.: 50001) of the electronic blackboard 2 serving as a host apparatus (IP address: 192.0.0.1), and then operation data relating to the stroke is sent to the server unit 90 (Port No.: 50000) of the same electronic blackboard 2 serving as the host apparatus (IP address: 192.0.0.1). Here, according to the operation data, the type operation is “STROKE”, the object of operation is the page data ID “p005”, and the content of the operation data is stroking. Further, SEQ 2 indicates that operation data is sent from the server unit 90 (Port No.: 50000) of the electronic blackboard 2 serving as the host apparatus to the client unit 20 (Port No.: 50001) of another electronic blackboard 2 serving as a participating apparatus (IP address: 192.0.0.1).
Here, the operation synthesis processor 84 synthesizes the operation in order of inputting to the operation synthesis processor 84. Accordingly, as long as the communication network 9 is not congested, a stroke image (B) is displayed on the display 3 of each of the electronic blackboards 2 involved in the remote-sharing processing each time a stroke is drawn by a user of the respective electronic blackboards 2.
The page processor 85 has a function similar to the function of the page processor 37 provided in the image processor 30 of the client unit 20. That is, in the server unit 90 as well, the page processor 85 stores page data as illustrated in Table 1 through Table 3 in the page data storage 850. Here, the page data storage 850 has substantially the same configuration as the page data storage 300 provided in the image processor 30, and therefore, descriptions of the page data storage 850 are omitted.
<Processing/Operation of Embodiments>
In the following, processing and operation in the embodiments of the present invention are described with reference to
(Participation Processing)
First, processing for the electronic blackboards 2b and 2c to participate in remote-sharing processing is described below, with reference to
When a user turns on the power of the electronic blackboard 2a, the client unit 20 of the electronic blackboard 2a is activated. Then, responding to a user operation through an input unit such as a touch panel to activate the server unit 90, the remote start processor 61 provided in the client unit 20 of the electronic blackboard 2a outputs an instruction to the remote connection request receiver 71 provided in the server unit 90 of the same electronic blackboard 2a for starting processing of the server unit 90. In this way, not only the client unit 20 but also the server unit 90 of the electronic blackboard 2a become ready to start processing (step S21).
Subsequently, the UI image generator 33 provided in the client unit 20 of the electronic blackboard 2a generates connection information used for connecting to the electronic blackboard 2a, and then the video superimposer 28 acquires the connection information from the UI image generator 33 via the display superimposer 36, so as to display the connection information on the display 3a (step S22).
The connection information includes the IP address of the host apparatus and a passcode generated for a remote-sharing processing. Here, the passcode stored in the passcode manager 810 is retrieved by the remote connection processor 81 and transmitted from the remote connection processor 81 to the remote connection result transmitter 72 and then from the remote connection result transmitter 72 to the remote start processor 61. Furthermore, the passcode is transmitted from the communication controller 60, in which the remote start processor 61 is provided, to the image processor 30 as illustrated in
Next, responding to an input of the connection information through a user operation using an input unit such as a touch panel, the remote participation processor 62 provided in the client unit 20 of each of the electronic blackboards 2b and 2c sends a participation request along with the passcode to the communication controller 70 provided in the server unit 90 of the electronic blackboard 2a via the communication network 9, referring to the IP address included in the connection information (steps S23 and S24). In this way, the remote connection request receiver 71 provided in the communication controller 70 receives the participation requests (including the passcodes) from the electronic blackboards 2b and 2c, and then outputs the passcodes to the remote connection processor 81.
Then, the remote connection processor 81 authenticates the passcodes received from the electronic blackboards 2b and 2c, referring to the passcode stored in the passcode manager 810 (step S25).
Then, the remote connection result transmitter 72 provides an authentication result to the client units 20 of the electronic blackboards 2b and 2c (steps S26 and S27).
In a case where the electronic blackboards 2b and 2c are successfully authenticated in the authentication process of step S25, communication for the remote-sharing processing is established between the electronic blackboard 2a serving as the host apparatus and the electronic blackboards 2b and 2c serving as the participating apparatuses, which enables the remote participation processors 62 provided in the client units 20 of the respective electronic blackboards 2b and 2c to start remote-sharing processing with the other electronic blackboards (steps S28 and S29).
(Displaying Output Image)
In the following, processing for displaying an output image (C) in the remote-sharing processing is described with reference to
First, the electronic blackboard 2b displays an output image (C) on the display 3b (step S30 of
Then, the image processor 30 of the electronic blackboard 2b, in which the image acquirer 31 is provided, transmits the data of the output image (C) to the remote image transmitter 63, so that the communication controller 60, in which the remote image transmitter 63 is provided, transmits the data of the output image (C) via the communication network 9 to the communication controller 70 of the electronic blackboard 2a serving as the host apparatus (step S31). In this way, the remote image receiver 73 of the electronic blackboard 2a receives the data of the output image (C), and then outputs the received data to the remote image processor 82, so that the remote image processor 82 stores the data of the output image (C) in the image data storage 830.
Then, the electronic blackboard 2a serving as the host apparatus displays the output image (C) on the display 3a (step S32). Specifically, the remote image processor 82 of the electronic blackboard 2a outputs the data of the output image (C) received from the remote image receiver 73 to the remote image transmitter 74. The remote image transmitter 74 outputs the data of the output image (C) to the remote image receiver 64 provided in the client unit 20 of the same electronic blackboard 2a serving as the host apparatus. The remote image receiver 64 outputs the data of the output image (C) to the display superimposer 36. The display superimposer 36 outputs the data of the output image (C) to the video superimposer 28. The video superimposer 28 outputs the data of the output image (C) to the display 3a. In this way, the output image (C) is displayed on the display 3a.
Then, the communication controller 70, in which the remote image transmitter 74 is provided, of the server unit 90 of the electronic blackboard 2a serving as the host apparatus transmits the data of the output image (C) via the communication network 9 to the communication controller 60 provided in another electronic blackboard 2c, not to the electronic blackboard 2b which is the sender of the data of the output image (C) (step S33). In this way, the remote image receiver 64 provided in the electronic blackboard 2c serving as one of the participating apparatuses receives the data of the output image (C).
Then, the electronic blackboard 2c displays the output image (C) on the display 3c (step S34). Specifically, the remote image receiver 64 provided in the electronic blackboard 2c outputs the data of the output image (C) received in step S33 as described above to the display superimposer 36 provided in the electronic blackboard 2c. The display superimposer 36 outputs the data of the output image (C) to the video superimposer 28. The video superimposer 28 outputs the data of the output image (C) to the display 3c. In this way, the output image (C) is displayed on the display 3c.
Here, in a case where data of the UI image (A) and the stroke image (B), in addition to the output image (C), are provided to the display superimposer 36, the display superimposer 36 generates an superimposed image (A, B, C), and then the video superimposer 28 outputs the superimposed image (A, B, C) to the display 3c. Furthermore, in a case where a video (E) for teleconferencing is provided to the video superimposer 28 from the teleconference terminal 7, the video superimposer 28 superimposes the video (E) for teleconferencing on the superimposed image (A, B, C) in a picture-in-picture format, and then outputs the video (E) to the display 3c.
(Displaying Superimposed Image)
In the following, processing for displaying a superimposed image during the remote-sharing processing is described with reference to
First, the user draws a stroke image (B) on the electronic blackboard 2b using the electronic pen 4b (step S41).
Then, as illustrated in
Then, the image processor 30 of the electronic blackboard 2b, in which the stroke processor 32 is provided, transmits the data of the stroke image (B) to the remote operation transmitter 65, so that the remote operation transmitter 65 of the electronic blackboard 2b transmits the data of the stroke image (B) to the communication controller 70 provided in the electronic blackboard 2a serving as the host apparatus via the communication network 9 (step S43).
Then, the remote operation receiver 75 of the electronic blackboard 2a receives the data of the stroke image (B) and outputs the received image data to the remote operation processor 83, so that the remote operation processor 83 outputs the data of the stroke image (B) to the operation synthesis processor 84. In this way, each time a stroke is drawn on the electronic blackboard 2b, data of the stroke image (B) are sequentially transmitted to the remote operation processor 83 of the electronic blackboard 2a serving as the host apparatus. Here, data of the stroke image (B) correspond to data represented by each stroke data ID as illustrated in Table 2. For example, as explained in the above description, in a case where a user draws an alphabet letter “T” using the electronic pen 4, data of the stroke image (B) represented with each of the two stroke IDs are sequentially transmitted as the alphabet letter “T” is written with two strokes.
Then, the electronic blackboard 2a serving as the host apparatus displays on the display 3a the superimposed image (A, B, C) including the data of the stroke image (B) transmitted from the electronic blackboard 2b (step S44). Specifically, the operation synthesis processor 84 of the electronic blackboard 2a synthesizes multiple sets of data of the stroke images (B) sequentially transmitted from the remote operation processor 83, stores the synthesized data in the operation data storage 840, and then returns the synthesized data to the remote operation processor 83. Then, the remote operation processor 83 outputs the synthesized data of the stroke images (B) received from the operation synthesis processor 84 to the remote operation transmitter 76. The remote operation transmitter 76 outputs the synthesized data of the stroke images (B) to the remote operation receiver 66 provided in the client unit 20 of the same electronic blackboard 2a serving as the host apparatus. The remote operation receiver 66 outputs the synthesized data of the stroke images (B) to the display superimposer 36 provided in the image processor 30. Then, the display superimposer 36 superimposes the synthesized data of the stroke images (B) on the UI image (A) and the output image (C). Then, the video superimposer 28 displays the superimposed image (A, B, C) generated by the display superimposer 36 on the display 3a.
Then, the communication controller 70, in which the remote operation transmitter 76 is provided, of the server unit 90 of the electronic blackboard 2a serving as the host apparatus transmits the synthesized data of the stroke images (B) via the communication network 9 to the communication controller 60 provided in the other electronic blackboard 2c, not the electronic blackboard 2b which is the sender of the data of the stroke images (B) (step S45). In this way, the remote operation receiver 66 provided in the electronic blackboard 2c serving as one of the participating apparatuses receives the synthesized data of the stroke images (B).
Then, the electronic blackboard 2c displays the superimposed image (A, B, C) on the display 3c (step S46). Specifically, the remote operation receiver 66 provided in the electronic blackboard 2c outputs the synthesized data of the stroke images (B) received in step S45 as described above to the image processor 30 of the electronic blackboard 2c. The display superimposer 36 provided in the image processor 30 superimposes the synthesized data of the stroke images (B) on the data of the UI image (A) and the output image (C), and then the outputs the data of the superimposed image (A, B, C) to the video superimposer 28. In this way, the superimposed image (A, B, C) is displayed on the display 3c.
Here, although a superimposed image including the output image (C) is displayed on the display 3 in the above processing, a superimposed image including the background image (D) may be displayed alternatively. Further, instead of displaying a superimposed image including either the output image (C) or the background image (D), a superimposed image including both the output image (C) and the background image (D) may be displayed on the display 3 at the same time.
(Participation Termination)
In the following, processing for a participating apparatus to terminate remote-sharing processing is described, with reference to
First, responding to a request for terminating participation through a user operation using an input unit such as a touch panel, the remote participation processor 62 transmits a request for terminating participation to the connection controller 70 provided in the server unit 90 of the electronic blackboard 2a serving as the host apparatus (step S47). In this way, the remote connection request receiver 71 provided in the communication controller 70 of the electronic blackboard 2a receives the request for terminating participation from the electronic blackboard 2c, and then outputs the request for terminating participation to the remote connection processor 81 along with the IP address of the electronic blackboard 2c. Then, based on the IP address of the electronic blackboard 2c transmitted from the remote connection request receiver 71, the remote connection processor 81 provided in the electronic blackboard 2a deletes from the participating location management table 820 the IP address of the electronic blackboard 2c which is the sender of the request for terminating participation and the name of the location of the electronic blackboard 2c. Then, the remote connection processor 81 outputs a notification of the deletion of the IP address of the electronic blackboard 2c to the remote connection result transmitter 72 provided in the electronic blackboard 2a.
Then, the communication controller 70, in which the remote connection result transmitter 72 is provided, sends an instruction for terminating participation to terminate participation via the communication network 9 to the communication controller 60 provided in the client unit 20 of the electronic blackboard 2c (step S48). In this way, the remote participation processor 62 provided in the communication controller 60 of the electronic blackboard 2c disconnects the communication of the remote-sharing processing, so as to terminate participation (step S49).
In the first embodiment, the image processing system 1 will be described. The image processing system 1 has a tree network configuration in which an electronic blackboard 2 in a lower level performs a process of acquiring setting information from an electronic blackboard 2 in the higher level, and the process is repeatedly performed between each of the electronic blackboards 2 in a lower level and each of the electronic blackboards 2 in a higher level, so as to synchronize the setting information. Here, setting information, which will be described in detail along with
A setting administrative personal computer (PC) 500 illustrated in
The setting administrative PC 500 may run browser software so as to communicate with the parent device 2p and acquire screen information written in HTML or JavaScript (registered trademark). Then, the setting administrative PC 500 displays a setting information setting screen, which will be described hereinafter. Here, the setting administrator may select and enter setting information.
Furthermore, the setting administrator may operate the setting administrative PC 500, so as to perform setting of communication information (described hereinafter) on the electronic blackboards 2 in the child device level C and the grandchild device level G. The communication information is information with which each of the electronic blackboards 2 in a lower level communicates with an electronic blackboard 2 in a higher level. For this purpose, the setting administrative PC 500 displays a communication information setting screen, which will be described hereinafter. Here, the setting administrator may select and enter communication information with which each of the electronic blackboards 2 in a lower level communicates with an electronic blackboard 2 in a higher level.
The setting acquirer 180 provided on an electronic blackboard 2 in the grandchild device level G operates for acquiring setting information from an electronic blackboard 2 in the child device level C. Supposing that there is a great-grandchild device level although not illustrated in the drawings, the setting provider 150 provided on an electronic blackboard 2 in the grandchild device level G operates in response to a request for setting information from an electronic blackboard 2 in the great-grandchild level.
The CPU 201 executes programs stored in the supplementary memory unit 204 and an operating system (OS). The ROM 202 is a non-volatile memory. The ROM 202 stores programs, data, etc., utilized by the CPU 201 to execute the programs stored in the supplementary memory unit 204.
The RAM 203 is a main memory unit, such as a dynamic random access memory (DRAM) and a static random access memory (SRAM). The CPU 201 loads the programs stored in the supplementary memory unit 204 on the RAM 203, and then the RAM serves as a work area for the CPU 201 to execute the programs.
The supplementary memory unit 204 stores the programs to be executed by the CPU 201 and databases to be used by the CPU 201 to execute the programs. The supplementary memory unit 204 is a non-volatile memory, such as a hard disk drive (HDD) and a solid state drive (SSD). The databases will be described hereinafter.
The input unit 205 is an interface for an operator to enter instructions on the setting administrative PC 500, such as a keyboard, a mouse, a touch panel, and a voice-input device. The setting administrative PC 500 may further include a connection unit, such as a USB interface (I/F), to be connected by a recording medium.
The display unit 206 displays information stored in the setting administrative PC 500 on a display 210 by use of a cursor, a menu, a window, a letter, an image, etc., in response to a request from the CPU 201.
The communication unit 207 is a network I/F for communication with the electronic blackboards 2 via a network N.
<Functions of the Setting Provider 150>
The setting provider 150 includes a communicator 151, a setting receiver 152, a message digest (MD) generator 153, an information provider 154, and a memory reader 155. Here, each of the functional units provides functions or methods as the CPU 101 executes programs stored in the SSD 104 and controls the relevant constituent parts illustrated in
Further, the setting provider 150 is capable of accessing to storage 2000 which is constituted by at least one of the SSD 104, the ROM 102, and the RAM 103 illustrated in
Table 11 illustrates an example of authentication information stored in the authentication information storage 2002. In Table 11, a passcode is registered as the authentication information. The electronic blackboard 2 in the higher level authenticates the electronic blackboard 2 in the lower level based on whether a passcode sent from the electronic blackboard 2 in the lower level matches the passcode stored in the authentication information storage 2002. Here, an electronic certificate may be applied as an authentication method, instead of using a passcode.
Table 12 illustrates an example of setting information stored in the setting information storage 2001. In Table 12, setting information type, setting information setting time, and file name are registered. The setting information for operation of device indicates currently active setting information. The setting information setting time indicates time and date on which the setting information is set on the electronic blackboard 2. The file name indicates the name of a file storing the setting information.
Table 13 illustrating an example of a hash value (i.e. MD) stored in the MD storage 2003. The MD storage 2003 stores an MD of the setting information for operation of device. A hash value is commonly used as an MD, although an MD may be other information that changes along with even a small change of the setting information. Upon setting of setting information on an electronic blackboard 2, the electronic blackboard 2 generates a hash value from the setting information and then stores the hash value in the MD storage 2003. The hash value is used by an electronic blackboard 2 in the lower level for determining the need for synchronizing setting information.
<Function of the Setting Provider 150>
The communicator 151, which is implemented by the CPU 101 and the network controller 105, etc., illustrated in
The setting receiver 152, which is implemented by the CPU 101, etc., illustrated in
The MD generator 153, which is implemented by the CPU 101, etc., illustrated in
The information provider 154, which is implemented by the CPU 101, etc., illustrated in
The memory reader 155, which is implemented by CPU 101, SSD 104, RAM 103, etc., performs read and write processing of information to the storage 2000. In the following explanation, with regard to such a description as “the setting provider 150 performs read and write processing of information to the storage 2000 via the memory reader 155”, the description “via the memory reader 155” may be omitted.
<Functions of the Setting Acquirer 180>
The setting acquirer 180 includes a communicator 181, a setting receiver 182, a setting requester 183, an MD comparer 184, a memory reader 185, an information acquirer 186, an MD generator 187, and an error code display unit 188. Here, each of the functional units provides functions or methods as the CPU 101 executes programs stored in the SSD 104 and controls the relevant constituent parts illustrated in
Further, the setting acquirer 180 is capable of accessing to a storage 5000 which is constituted by at least one of the SSD 104, the ROM 102, and the RAM 103 illustrated in
Table 14A illustrates an example of the communication information stored in the communication information storage 5002. The communication information is used by the electronic blackboard 2 in the lower level for communicating with the electronic blackboard 2 in the higher level. In the first embodiment, an Internet Protocol (IP) address and a passcode are stored as the communication information. The communication information is set on each of the electronic blackboards 2 (except for electronic blackboards serving as the parent device) by the setting administrator through an operation of the setting administrative PC 500, as described hereinafter. Based on such a tree network configuration having multiple levels (three levels or more) as illustrated in
Table 14B illustrates an example of synchronization information stored in the communication information storage 5002. The synchronization information is referred by the electronic blackboard 2 in the lower level to synchronize with the electronic blackboard 2 in the higher level. In the first embodiment, “SYNCHRONIZATION”, “TIMING OF SYNCHRONIZATION”, and “ITEMS TO BE SYNCHRONIZED” are registered as the synchronization information. “SYNCHRONIZATION” is turned ON so that synchronization is performed and is turned OFF so that synchronization is not performed. “TIMING OF SYNCHRONIZATION” indicates the timing for the electronic blackboards 2 to perform synchronization. “ITEMS TO BE SYNCHRONIZED” is for setting items to be synchronized, among multiple items included in the setting information, using numbers assigned to each of the items. “TIMING OF SYNCHRONIZATION” may be immediately after shutdown, at a predetermined time (such as at four o'clock everyday), etc., other than at the time of restart.
<Functions of the Setting Acquirer 180>
The communicator 181, which is implemented by the CPU 101, the network controller 105, etc., illustrated in
The setting receiver 182, which is implemented by the CPU 101, etc., illustrated in
The setting requester 183, which is implemented by the CPU 101, etc., illustrated in
The MD comparer 184, which is implemented by the CPU, etc., illustrated in
The information acquirer 186, which is implemented by the CPU 101, etc., illustrated in
After the setting information is stored in the setting information storage 5001 of the storage 5000 as setting information for operation of device, the MD generator 184, which is implemented by the CPU 101, etc., illustrated in
The error code display unit 188, which is implemented by the CPU 101, etc., illustrated in
The memory reader 185, which is implemented by the CPU 101, the SSD 104, the RAM 103, etc., illustrated in
<Functions of the Setting Administrative PC 500>
The setting administrative PC 500 includes a communicator 221, an operation receiver 222, a display controller 223, and a memory reader 224. Here, each of the functional units provides functions or methods as the CPU 101 executes browser software 7001 stored in the supplementary memory unit 204 and controls the relevant constituent parts illustrated in
Further, the setting administrative PC 500 is capable of accessing a storage 7000 which is constituted by at least one of the supplementary memory unit 204, the ROM 204, and the RAM 203 illustrated in
<Functions of the Setting Administrative PC 500>
The communicator 221, which is implemented by the CPU 201, the communicator 207, etc., illustrated in
The operation receiver 222, which is implemented by the CPU 201, the input unit 205, etc., illustrated in
The display controller 223, which is implemented by the CPU 201, the display unit 206, etc., illustrated in
The memory reader 224, which is implemented by the CPU 201, the ROM 202, the RAM 203, etc., illustrated in
<Setting Information Setting Screen>
SYSTEM SETTING: settings of name of location, time until automatic shutout, time for automatic restart, time until automatic standby, etc., are performed.
SECURITY SETTING: settings of permitted/prohibited domain of email address (in a case of setting a domain as both permitted and prohibited domains, the domain is permitted), prohibition of direct input of email address, minimum digit of passcode, timing for generating passcode, hiding of passcode, etc., are performed. Here, “timing for generating passcode” is for setting the timing (e.g. at the time of startup) or time for generating a passcode, in a condition where a passcode is automatically generated by the electronic blackboards 2. That is to say, passcodes may be automatically generated by the electronic blackboards 2, or may be preset by the setting administrator.
NETWORK SETTING: settings of IP address, subnet mask, default gateway, domain name system (DNS), etc., are performed.
TIME/DATE SETTING: settings of time zone, synchronization with time server, etc., are performed.
In a condition where the timing for synchronization is at the time of restarting the electronic blackboard 2, the setting administrator sets the timing for synchronization using the setting of time for automatic restart stored as the SYSTEM SETTING. Alternatively, the setting administrator may set a predetermined time as the timing for synchronization. As the timing for synchronization is stored as the SYSTEM SETTING and shared with each of the electronic blackboards 2, each of the electronic blackboards 2 in a lower level can acquire setting information from an electronic blackboard 2 in a higher level at the same timing.
Here, as only examples of the setting information are illustrated in
The setting administrative PC 500 receives entry of setting information and sends the setting information to an electronic black board 2 transmitting the screen information to display the setting information setting screen 501. In such a way, the setting provider 150 registers the setting information in the setting information storage 2001.
Here, the setting receiver 152 provided on the electronic blackboard 2 in the higher level may display the setting information setting screen 501 illustrated in
In table 15, a schematic example of contents of setting information set by the setting administrator is illustrated. In Table 15, an item and contents are registered, corresponding to each of the item numbers.
<Communication Information Setting Screen>
When the checkbox 602 is checked, settings of an item for synchronization 6021 and a timing of synchronization 6022 are allowed to the setting administrator. On the field of the item for synchronization 6021, the item numbers as illustrated in Table 14B and Table 15 are displayed so that each of the items is selectable. On the field of the timing of synchronization 6022, “at the time of restart”, “at the time of shutdown”, and a time setting area are displayed so as to be selectable.
The setting performed through the checkbox 602 is reflected on “SYNCHRONIZATION” of the setting of Table 14B. The setting performed through the item for synchronization 6021 is similarly reflected on “ITEMS TO BE SYNCHRONIZED”. The setting performed through the timing of synchronization 6022 is similarly reflected on “TIMING OF SYNCHRONIZATION”.
Further, an IP address entry field 603 and a passcode entry field 604 are displayed on the communication information setting screen 601. The setting administrator enters the IP address of the electronic blackboard 2 in the higher level is on the communication information setting screen 601 displayed through the electronic blackboard 2 in the lower level. Similarly, the setting administrator enters a passcode on the passcode entry field 604.
The setting administrator presses an OK button 605 to execute the setting of communication information on the electronic blackboard 2, and presses a CANCEL button 606 to abandon the setting of communication information on the electronic blackboard 2. The setting administrative PC 500 receives an entry of setting, and then transmits the entry to the electronic blackboard 2 transmitting the screen information for displaying the communication information setting screen 601. In such a way, the setting acquirer 180 registers the communication information on the communication information storage 5002.
Here, the setting receiver 182 provided on the electronic blackboard 2 in the lower level may display the communication information setting screen 601 as illustrated in
<Sequence of Synchronization>
S1 (
S2 (
S3 (
S4 (
Further, the electronic blackboards 2 of the parent device 2p and the child device 2c need to operate in mutually compatible synchronization sequences. Here, such a synchronization sequence is referred to as protocol. Protocol has versions, and the parent device 2p and the child device 2c preferably perform processing using the same version of protocol. Therefore, the hash value is sent to the child device 2c in a case where the versions of the protocols and the passcodes match. In the process of step S4 of
Further, needless to say, the child device 2c may not acquire the hash value in such a case where the power of the parent device 2p is off or the parent device 2p has some trouble. In an event of such a failure of acquiring the setting information from the parent device 2p, the setting requester 183 provided on the child device 2c records an error, which will be described in detail with reference to
S5 (
S6 (
Here, the parent device 2p may acquire the hash value from the child device 2c for comparison. Although, in such a case, the load imposed on the parent device 2p increases, the parent device 2p may perform comparison if comparing hash values is not considered to impose too much load on the parent device 2p.
S7 (
S8 (
S9 (
S10 (
According to the processing described above, the setting information is synchronized between the parent device 2p and the child device 2c. Then, when the setting requester 183 provided on the grandchild device 2g detects the need for synchronizing setting information, the grandchild device 2g executes the same processing as the child device 2c, as illustrated in steps S11 through S17 (
In such a way, each of the electronic blackboards 2 in a lower level only needs to perform update processing of setting information of itself, which causes less load imposed on each of the electronic blackboards 2, compared to a case where each of the electronic blackboards 2 in a higher level performs setting of the setting information on the respective multiple electronic blackboards 2 in a lower level.
Here, the grandchild device 2g acquires setting information in a cycle after a cycle where the child device 2c acquires setting information. In other words, when the grandchild device 2g is restarted, the child device 2c will be on the process of synchronization, and therefore the grandchild device 2g does not determine the need for synchronization because the hash values match. Therefore, for example, in a case where the synchronization is performed once a day (i.e. the electronic blackboards 2 are restarted once a day), the grandchild device 2g acquires setting information a day later than the child device 2c. However, as synchronizations are performed at different timings, each of the electronic blackboards 2 need not perform both synchronization of itself and transmission of setting information to each of the electronic devices 2 in a lower level at the same time, which reduces the load imposed on each of the electronic blackboards 2. In case that the delay is not preferred, the setting administrator may set the electronic blackboards 2 to automatically restart multiple times a day or the user or the setting administrator may manually restart the electronic blackboards 2, etc.
<Operation sequence of the child device 2c>
As described above, the setting requester 183 provided on the child device 2c requests the parent device 2p to provide a hash value (S10 of
The setting requester 183 provided on the child device 2c determines whether the hash value is acquired (S20 of
In a case where the hash value is not acquired (NO in S20 of
400: the versions of protocols do not match.
401: the passcodes do not match.
Further, in a case of receiving no response from the parent device 2p (because the power is off, etc.), the setting requester 183 provided on the child device 2c records an error code 402 which indicates that there is no response. Here, the error code display unit 188 may display an error code on the display 3 of the electronic blackboards 2 or the setting administrative PC 500.
(Displaying of an Error Code)
It is preferred that a display of an error code performed by the error code display unit 188 lasts just a couple seconds after a startup of the electronic blackboard 2, so as not to disturb the use of the electronic blackboard 2. The user may inform the setting administrator of a display of an error code, so that the setting administrator becomes aware of a failure of synchronization and the reason for the failure.
As described above, in the image processing system 1 according to the first embodiment, an electronic blackboard 2 in a lower level performs synchronization of setting information with an electronic blackboard 2 in a higher level, respectively, so as to synchronize the setting information with all of the electronic blackboards 2.
Here, instead of setting the setting information on the electronic blackboard 2 on top of the tree configuration, the setting administrator may set the setting information on an electronic blackboard 2 in a lower level. In such a case, synchronizations of the setting information are performed by the electronic blackboards 2 in the levels below the electronic blackboard 2 on which the setting administrator sets the setting information. Further, two or more parent devices 2p may be situated on the level of the parent device 2p. In such a case, the setting administrator sets the setting information on each of the two or more parent devices 2p.
In the second embodiment, the image processing apparatus 1, in which the setting administrator may set the setting information on one of the electronic blackboards 2.
(1) First, the setting administrator operates the setting administrative PC 500 to perform setting of setting information, for example, on the grandchild device 1.
(2) The grandchild device 1 detects that setting of the setting information is performed.
(3) The grandchild device 1 sends the setting information to the child device 1 which is an electronic blackboard 2 registered above the grandchild device 1.
(4) The child device 1 detects that setting information is updated.
(5) The child device 1 sends the setting information to the parent device 2p which is an electronic blackboard 2 registered above the child device 1.
In such a sequence, the setting information is set on the child device 1 and the parent device 2p. Consequently, the grandchild devices 2 and 3 can synchronize the setting information with the child device 1, through the processes as described in the first embodiment (the processes are illustrated with dotted lines 521). Similarly, the child devices 2 and 3 can synchronize the setting information with the parent device 2p, through the processes as described in the first embodiment. Here, the setting information need not be synchronized between the parent device 2p and the child device 1, and between the child device 1 and the grandchild device, as the hash values match.
<Functions of the Setting Provider 150 and the Setting Acquirer 180>
In the second embodiment, the setting information stored in the setting information storages 2001 and 5001 are different from the setting information stored in the setting information storages 2001 and 5001 in the first embodiment.
In Table 16, an example of the setting information stored in the setting information storages 2001 and 5001 is illustrated. Here, the differences between the Table 16 and Table 12 will be explained. In the second embodiment, the setting information storages 2001 and 5001 store setting information for operation of device, setting information of external entry, and setting information of lower-level entry. According to the second embodiment, setting information entered by the setting administrator is registered as setting information of external entry. Setting information sent from the electronic blackboard 2 in a lower level is registered as setting information of lower-level entry.
<Functions>
In the second embodiment, the setting receiver 152 provided on the electronic blackboard 2 in the lower level receives an entry of setting information. Here, the setting receiver 152 updates the setting information of external entry stored in the setting information storage 5001.
In the second embodiment, the setting acquirer 180 further includes a lower-level information setting unit 189 and an update detector 190. The update detector 190, which is implemented by the CPU 101, etc., illustrated in
Responding to a detection of an update performed by the update detector 190, the lower-level information setting unit 189 sends to the electronic blackboard 2 in the higher level the setting information (the setting information of external entry or the setting information of lower-level entry) which is determined to be different from the setting information for operation of device. The setting information may be sent from the setting acquirer 180 to the electronic blackboard 2 in the higher level, for example, at a predetermined timing for synchronization, although not limited to the predetermined timing.
The setting provider 150 further includes a higher-level information setting unit 156. The higher-level information setting unit 156, which is implemented by the CPU 101, etc., illustrated in
Similarly, the update detector 190 provided on the electronic blackboard 2 in the higher level compares setting information for operation of device to setting information of external entry and setting information of lower-level entry, in order to detect an update of setting information. Then, the same processing is performed until reaching to the parent device 2p.
In such a way, an update of setting information may be detected based on setting information of external entry and setting information of lower-level entry stored in the setting information storage 2001 and 5001 before sending setting information from the electronic blackboard 2 in the lower level to the electronic blackboard 2 in the higher level. Here, an authentication method may be the same as in the first embodiment.
<Sequence of Synchronization>
S1 (
S2 (
S3 (
S4 (
S5 (
Further, as the update of the setting information in the grandchild device 2g has been detected, there is no need to compare a hash value stored in the child device 2c and a hash value stored in the grandchild device 2g.
S6 (
In the following, the processing performed by the child device 2c will be explained. The processing performed by the child device 2c is almost the same as the processing performed by the grandchild device 2g.
S7 (
S8 (
S9 (
S10 (
S11 (
In the following, the processing performed by the parent device 2p will be explained. The processing performed by the parent device 2p is almost the same as the processing performed by the child device 2c, except that the parent device 2p does not send setting information as there is no higher level above the parent device 2p. The electronic blackboard 2 serving as the parent device 2p does not perform synchronizations as the checkbox 602 on the communication information setting screen 601 of the electronic blackboard 2 serving as the parent device 2p is not checked (i.e. “SYNCHRONIZATION” of the synchronization information is OFF).
S12 (
S13 (
S14 (
S15 (
As described above, the setting information is set on each of the grandchild device 2g, the child device 2c, and the parent device 2p. Subsequently, synchronizations are preformed between the parent device 2p and the child device 2c and between the child device 2c and the grandchild device 2g just as in the first embodiment. The information acquirer 186 provided on the electronic blackboard 2 in the lower level stores the setting information received from the electronic blackboard 2 in the higher level as the setting information for operation of device. Therefore, as the setting information having the most recent setting information setting time is the setting information for operation of device, the electronic blackboard 2 in the lower level does not send the setting information to the electronic blackboard 2 in the higher level while the synchronization processing according to the first embodiment is performed.
First, the update detector 190 determines whether the setting information having the most recent setting information setting time is the setting information for operation of device (S10 of
In a case where the determination in step S10 of
In a case where the determination in step S20 of
In a case where the “SYNCHRONIZATION” is ON (YES in S20 of
In a case where the “SYNCHRONIZATION” is OFF (NO in S20 of
Furthermore, the electronic blackboard 2 which sends the setting information to the electronic blackboard 2 in the higher level also operates according to the setting information updated through step S40.
In such a way, in the image processing system 2 according to the second embodiment, setting information is synchronized with all of the electronic blackboards 2 even though the setting administrator sets the setting information on any one of the electronic blackboards 2.
Further, the present invention is not limited to these embodiments, but various variations and modifications may be made without departing from the scope of the present invention.
Although setting information of electronic blackboards 2 is exemplified in the explanation of synchronization processing in the embodiments, such an update of setting information may be performed by devices other than the electronic blackboards 2. Such devices may be a projector, an image forming apparatus (a copier, a printer, a scanner device, a multi-function peripheral (MFP)), a teleconference device, etc.
Further, setting information is not limited to the examples of setting information for synchronization described in the embodiments. For example, the setting information may include a print setting associated with a printer connected to the electronic blackboard 2 (such as authentication for printing, password, and encryption), a setting of region and language, a setting relating to management of registration data (such as a setting for restricting read and write operations to information included in the electronic blackboard 2), a setting relating to color profiling, and user information of the electronic blackboard 2 (such as user name, address such as an email address to which the electronic blackboard 2 sends an email), etc. Further, in a case where devices other than electronic blackboards 2 are synchronized, information specific to the devices may be synchronized.
Further, the configurations exemplified in
Further, one or more storage units included in the storages 2000 and 5000 illustrated in
Here, the setting receiver 152 is an example of a setting receiving unit. The setting information storages 2001 and 5001 are examples of setting information storing units. The communication information storage 5002 is an example of a communication information storing unit. The information acquirer 186 is an example of an acquiring unit. The MD generator 187 is an example of a generating unit. The setting requester 183 is an example of a message digest acquiring unit. The MD comparer 184 is an example of a determining unit. The setting administrative PC 500 is an example of an external device. The display 3 of the electronic blackboard 2 is an example of a display unit. The error code display unit 188 is an example of a display processing unit.
The setting information for operation of device is an example of setting information stored in a first region. The setting information of external entry and the setting information of lower-level entry are examples of setting information stored in a second region. The update detector 190 is an example of an update detecting unit. The lower-level information setting unit 189 is an example of an upward sending unit. The image processing system 1 is an example of a communication system.
For example, the parent device 2p viewed from the child device 2c is a first information processing apparatus. The electric blackboard 2 in the level immediately above the parent device 2p is another information processing apparatus. The grandchild device 2g viewed from the child device 2c is a second information processing apparatus. The setting receiver 182 is an example of an acquisition setting receiving unit. The information provider 154 is an example of a providing unit. The synchronization of the setting information performed by the electronic blackboard 2 is an example of a method for communication.
The present application is based on Japanese priority application No. 2015-194990 filed on Sep. 30, 2015, with the Japanese Patent Office, the entire contents of which are hereby incorporated by reference.
Number | Date | Country | Kind |
---|---|---|---|
2015-194990 | Sep 2015 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2016/004358 | 9/27/2016 | WO | 00 |