WO2017077907A1 - 情報処理装置、通信システム及び情報処理方法 - Google Patents

情報処理装置、通信システム及び情報処理方法 Download PDF

Info

Publication number
WO2017077907A1
WO2017077907A1 PCT/JP2016/081627 JP2016081627W WO2017077907A1 WO 2017077907 A1 WO2017077907 A1 WO 2017077907A1 JP 2016081627 W JP2016081627 W JP 2016081627W WO 2017077907 A1 WO2017077907 A1 WO 2017077907A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
information processing
information
processing apparatus
setting
Prior art date
Application number
PCT/JP2016/081627
Other languages
English (en)
French (fr)
Inventor
尚一郎 兼松
笠谷 潔
加藤 喜永
小山 毅
Original Assignee
株式会社リコー
尚一郎 兼松
笠谷 潔
加藤 喜永
小山 毅
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社リコー, 尚一郎 兼松, 笠谷 潔, 加藤 喜永, 小山 毅 filed Critical 株式会社リコー
Priority to CN201680062888.9A priority Critical patent/CN108351774A/zh
Priority to EP16861969.0A priority patent/EP3373135A4/en
Priority to JP2017548717A priority patent/JP6610674B2/ja
Publication of WO2017077907A1 publication Critical patent/WO2017077907A1/ja
Priority to US15/955,841 priority patent/US10705724B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03547Touch pads, in which fingers can move on a surface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/042Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
    • G06F3/0421Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means by interrupting or reflecting a light beam, e.g. optical touch-screen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/042Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
    • G06F3/0425Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0483Interaction with page-structured environments, e.g. book metaphor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels

Definitions

  • the present invention relates to an information processing apparatus, a communication system, and an information processing method.
  • An electronic blackboard with a touch panel mounted on a large flat panel display is known.
  • the electronic blackboard displays a screen that functions as a blackboard, takes in the trajectory of an electronic pen, a finger, and the like via the touch panel, and draws the trajectory on the screen as handwritten content. Therefore, the user can use the screen like a blackboard.
  • an electronic blackboard that can be connected to a personal computer the same screen as the personal computer can be displayed and the handwritten content can be superimposed and drawn, or the electronic blackboard can operate the personal computer according to information entered from the touch panel. it can.
  • Patent Document 1 discloses a network synchronization system having a first device and a second device.
  • the first device has a synchronization shared storage means for copying and storing personal setting information for each user.
  • the second apparatus includes setting information means for storing personal setting information for each user, and synchronization control means for updating the personal setting information for each user stored by the setting information means to the latest personal setting information for each user.
  • the synchronization control means acquires update information common to a plurality of information processing devices stored in the synchronization shared storage means.
  • an object of the present invention is to provide an information processing apparatus capable of considering a software version when synchronizing settings.
  • the present invention is an information processing apparatus that provides functions by an installed program and operates based on setting information related to operation, and stores communication information for communicating with other information processing apparatuses. Communicated with the other information processing apparatus using the communication information and the version of the program installed in the information processing apparatus and installed in the other information processing apparatus.
  • the communication information is used to communicate with the other information processing apparatus.
  • Setting information acquisition means for communicating and acquiring the setting information from the other information processing apparatus.
  • FIG. 1 is an example of an overall configuration diagram of an image processing system. It is an example of the hardware block diagram of an electronic blackboard. It is an example of the functional block diagram of an electronic blackboard. It is an example of a functional block diagram of a file processing unit. It is an example of the functional block diagram of a server part and a client part. It is an example of the block diagram of each image layer. It is an example of the sequence diagram which showed the process of each electronic blackboard.
  • FIG. 1A is an example of a diagram illustrating a network structure of the image processing system 1 of the present embodiment.
  • the image processing system 1 has a tree structure network structure. That is, a plurality of electronic blackboards 2p (master unit), 2c (slave unit), and 2g (grandchild unit) form a hierarchical structure in layers.
  • a plurality of electronic blackboards 2p master unit
  • 2c slave unit
  • 2g grandchild unit
  • FIG. 1A or FIG. 1B when an arbitrary electronic blackboard among the electronic blackboards 2p, 2c, and 2g is shown, it is referred to as “electronic blackboard 2”.
  • the tree structure is a kind of hierarchical structure, and refers to a structure that repeats branching from a node (electronic blackboard 2) to a node (electronic blackboard 2).
  • each of the slave units 1 to 3 starts communication with the master unit 2p, and the slave unit 1 acquires the setting information held by the master unit 2p and sets it in the slave unit 1 itself.
  • the grandchild devices 1 to 3 start communication with the child device 1, acquire setting information of the child device 1, and set it in the grandchild device 1 itself. The same applies to the grandchild machines 2 and 3.
  • FIG. 1B is a diagram showing a comparative example to be compared with the network structure of the present embodiment.
  • the parent device 2p sets the setting information for the child devices 1 to 3, and the child device 1 sets the setting information for the grandchild devices 1 to 3.
  • the parent device 2p must set the setting information in the child devices 1 to 3, and the child device 1 must set the setting information in the grandchild devices 1 to 3, and one electronic device The load on the blackboard 2 is large.
  • one electronic blackboard 2 only needs to communicate with the electronic blackboard 2 immediately above it when viewed from itself to obtain setting information. Can suppress the load when synchronizing the setting information. Further, each electronic blackboard 2 does not need to have information related to the update of the setting information of the electronic blackboard immediately below the electronic blackboard 2. The meanings of “direct electronic blackboard” and “directly electronic blackboard” will be described later. Further, the electronic blackboard 2 that provides the setting information only needs to perform a relatively low-load process of transmitting the setting information in response to a request from the electronic blackboard 2 directly below. Stand) directly underneath. That is, there is no need to connect the electronic blackboard 2 in series (daisy chain). Thereby, all the electronic blackboards 2 can synchronize setting information with a relatively small load and in a relatively short time.
  • FIG. 2 is an example of a diagram schematically illustrating a process that considers the version of a program when setting information is synchronized.
  • the electronic blackboard 2 of this embodiment checks whether the version of the program is the same as that of the electronic blackboard 2 directly above before synchronizing the setting information. The procedure up to synchronization will be briefly described below. (1) The electronic blackboard 2 checks whether the version of the program is the same as the electronic blackboard 2 directly above before synchronizing the setting information. (2) When the versions are different, the electronic blackboard 2 downloads the program file from the electronic blackboard 2 immediately above. (3) The electronic blackboard 2 installs a new program (upgrades). (4) When the versions are the same or when the versions are the same by installation, the electronic blackboard 2 synchronizes the setting information.
  • the electronic blackboard 2 of the present embodiment even if the electronic blackboard 2 directly has setting information having different items due to different versions of the program, the electronic blackboard 2 has different items of setting information. Can be prevented from synchronizing.
  • the electronic blackboard 2 having a different program version from the electronic blackboard 2 directly above can synchronize the setting information after upgrading the program.
  • each electronic blackboard 2 can synchronize not only the setting information but also the program version. Therefore, if the administrator or the like upgrades the program of the parent device, all the electronic blackboards 2 can upgrade the program.
  • Software means procedures related to computer operation and information processed by the computer.
  • a program is one of what is called software.
  • the program is information indicating a function to be realized by the electronic blackboard 2 in a language that can be decoded by the computer, and the program can be called function instruction description information.
  • the program may be called an application program, firmware, OS (Operating System), or the like, but is not limited thereto.
  • the software and the program do not have to be strictly distinguished, but in the description of the present embodiment, the term “program” is used for the software and the program for convenience.
  • a plurality of programs such as OS and application programs may operate on one electronic blackboard 2.
  • all programs may be upgraded, or some programs may be upgraded without distinguishing a plurality of programs.
  • the setting information refers to information indicating the content of the settings regarding the operation of the electronic blackboard 2.
  • the setting information includes, for example, information indicating settings for the electronic blackboard 2 to operate properly, information indicating settings for permitting or restricting the operation of the electronic blackboard 2, and on / off settings for each function.
  • Information indicating the contents of the network information indicating the contents of settings for communicating with the Internet and other devices via the network, and the like. The specific contents of the setting information will be described later with reference to FIGS. 16A and 16B.
  • the tree-structured network structure is preferably at least three layers, but may be two layers.
  • the three or more hierarchies may be that the deepest hierarchy included in the tree structure is three or more hierarchies, and branches of two or less hierarchies may exist in the tree structure.
  • the number of electronic blackboards 2 included in one layer is not limited to three, and the number of electronic blackboards 2 included in one layer is appropriately determined in consideration of the number of electronic blackboards 2 and the depth of the layer.
  • the layers of the slave units 1 to 3 are referred to as a slave unit layer C, and the layers of the slave units 1 to 3 are referred to as a grandchild layer G.
  • the upper electronic blackboard 2 as the parent device 2p viewed from the child device 1 is directly referred to as the “upper electronic blackboard 2”
  • the lower electronic blackboard as directly as the child device 1 viewed from the parent device 2p is referred to as “direct electronic blackboard 2”.
  • the slaves 1 to 3 and the grandchild devices 1 to 3 (including the lower electronic blackboard) viewed from the parent machine 2p are referred to as “relatively lower electronic blackboard 2”.
  • the electronic blackboard 2 of the child device 1 and the parent device 2p viewed from the grandchild device 1 is referred to as “relatively higher electronic blackboard 2”.
  • FIG. 3 is an overall configuration diagram of the image processing system 1 of the present embodiment. Note that, in order to simplify the description, FIG. 3 shows two electronic blackboards 2a and 2b, and electronic pens 4a and 4b associated therewith, and the image processing system 1 of the present embodiment. In this case, three or more electronic blackboards or electronic pens may be used.
  • the image processing system 1 includes a plurality of electronic blackboards 2a and 2b, a plurality of electronic pens 4a and 4b, USB (Universal Serial Bus) memories 5a and 5b, and a notebook PC (Personal Computer) 6a. And 6b, television (video) conference terminals 7a and 7b, and a PC8. Further, the electronic blackboards 2a and 2b and the PC 8 are communicably connected via a communication network 9. Further, the plurality of electronic blackboards 2a and 2b are provided with displays 3a and 3b, respectively.
  • the electronic blackboard 2a can cause the display 3a to display an image drawn by an event (touch of the pen tip of the electronic pen 4a or the pen butt of the electronic pen 4a on the display 3a) generated by the electronic pen 4a. it can.
  • the electronic blackboard 2a can change an image displayed on the display 3a based on an event (a gesture such as enlargement, reduction, page turning, etc.) generated by the electronic pen 4a, the user's hand Ha, or the like.
  • a USB memory 5a can be connected to the electronic blackboard 2a, and the electronic blackboard 2a reads an electronic file such as PDF (Portable Document Format) from the USB memory 5a or records an electronic file in the USB memory 5a.
  • the electronic blackboard 2a includes a cable 10a1 capable of communication according to standards such as DisplayPort (registered trademark), DVI (Digital Visual Interface), HDMI (registered trademark: High-Definition Multimedia Interface), and VGA (Video Graphics Array).
  • the notebook PC 6a is connected via the cable.
  • the electronic blackboard 2a generates an event by touching the display 3a, and transmits event information indicating the event to the notebook PC 6a in the same manner as an event from an input device such as a mouse or a keyboard.
  • a television (video) conference terminal 7a is connected to the electronic blackboard 2a via a cable 10a2 capable of communication according to the above standards.
  • the notebook PC 6a and the video conference terminal 7a may communicate with the electronic blackboard 2a by wireless communication complying with various wireless communication protocols such as Bluetooth (registered trademark).
  • the electronic blackboard 2b with the display 3b, the electronic pen 4b, the USB memory 5b, the notebook PC 6b, the video conference terminal 7b, the cable 10b1, and the cable 10b2 in the same manner as described above. Is used. Further, the electronic blackboard 2b can change the image displayed on the display 3b based on an event caused by the user's hand Hb or the like.
  • the image drawn on the display 3a of the electronic blackboard 2a at one base is also displayed on the display 3b of the electronic blackboard 2b at another base, and conversely on the display 3b of the electronic blackboard 2b at another base.
  • the image drawn on is displayed on the display 3a of the electronic blackboard 2a at one base.
  • the image processing system 1 can perform remote sharing processing for sharing the same image as that at a remote location, and thus is very convenient when used for a conference with a remote location.
  • an arbitrary electronic blackboard is shown among the plurality of electronic blackboards, it is referred to as “electronic blackboard 2”.
  • display 3 When an arbitrary display among a plurality of displays is shown, it is referred to as “display 3”.
  • an arbitrary electronic pen among a plurality of electronic pens is indicated, it is referred to as “electronic pen 4”.
  • USB memory 5 When an arbitrary USB memory is shown among the plurality of USB memories, it is referred to as “USB memory 5”.
  • an arbitrary notebook PC is indicated among the plurality of notebook PCs, it is referred to as “notebook PC 6”.
  • video conference terminal 7 When an arbitrary video conference terminal is shown among the plurality of video conference terminals, it is referred to as “video conference terminal 7”.
  • hand H When an arbitrary hand is shown among the hands of a plurality of users, it is referred to as “hand H”.
  • an arbitrary cable among a plurality of cables When an arbitrary cable among a plurality of cables is
  • an electronic blackboard will be described as an example of the image processing apparatus.
  • the image processing apparatus is not limited to the electronic blackboard.
  • Other examples of the image processing apparatus include an electronic signboard (digital signage), a telestrator used for sports and weather forecasts, a remote image (video) diagnostic apparatus, and the like.
  • PC6 is demonstrated as an example of an information processing terminal, an information processing terminal is not restricted to notebook PC.
  • Other examples of the information processing terminal include a terminal capable of supplying image frames, such as a desktop PC, a tablet PC, a PDA (Personal Digital Assistant), a digital video camera, a digital camera, and a game machine.
  • the communication network 9 may be any of the Internet, a LAN (Local Area Network), a mobile phone communication network, or the like, or any combination thereof.
  • a USB memory is described as an example of the recording medium.
  • the recording medium is not limited to the USB memory, and other examples of the recording medium include various recording media such as an SD card.
  • FIG. 4 is an example of a hardware configuration diagram of the electronic blackboard.
  • the electronic blackboard 2 stores a program used to drive the CPU 101 such as a CPU (Central Processing Unit) 101 and an IPL (Initial Program Loader) that control the entire operation of the electronic blackboard 2.
  • ROM Read-Only Memory
  • RAM Random Access Memory
  • SSD Solid State Drive
  • ROM Read-Only Memory
  • a network controller 105 that controls the communication of the USB memory 5
  • an external storage controller 106 that controls the communication with the USB memory 5.
  • the electronic blackboard 2 displays a capture device 111 that displays video information as a still image or a moving image on the display of the notebook PC 6, a GPU (Graphics Processing Unit) 112 that specializes in graphics, and an output image from the GPU 112. 3 and a display controller 113 for controlling and managing screen display for output to the video conference terminal 7.
  • a capture device 111 that displays video information as a still image or a moving image on the display of the notebook PC 6
  • a GPU (Graphics Processing Unit) 112 that specializes in graphics
  • an output image from the GPU 112. 3 and a display controller 113 for controlling and managing screen display for output to the video conference terminal 7.
  • the electronic blackboard 2 includes a sensor controller 114 that controls the processing of the contact sensor 115 and a contact sensor 115 that detects that the electronic pen 4, the user's hand H, or the like has contacted the display 3.
  • the contact sensor 115 performs coordinate input and coordinate detection by an infrared ray blocking method.
  • two light emitting / receiving devices installed at both upper ends of the display 3 emit a plurality of infrared rays in parallel with the display 3 and are provided around the display 3. This is a method in which the light receiving element receives light that is reflected by the reflecting member and returns on the same optical path as the emitted infrared light path.
  • the contact sensor 115 outputs infrared IDs (Identification) emitted by the two light receiving and emitting devices blocked by the object to the sensor controller 114, and the sensor controller 114 identifies the coordinate position that is the contact position of the object. All IDs shown below are examples of identification information.
  • the contact sensor 115 is not limited to an infrared cut-off sensor.
  • a capacitive touch panel that specifies a contact position by detecting a change in capacitance, or a resistance film type that specifies a contact position by a voltage change between two opposing resistance films.
  • Various detection means such as a touch panel and an electromagnetic induction type touch panel that detects electromagnetic induction caused by contact of a contact object with the display unit and identifies a contact position may be used.
  • the electronic blackboard 2 includes an electronic pen controller 116.
  • the electronic pen controller 116 communicates with the electronic pen 4 to determine whether the display 3 has a pen tip touch or a pen butt touch. It should be noted that the electronic pen controller 116 may determine whether there is a touch on a part gripped by the user of the electronic pen 4 as well as a part of the other electronic pen, as well as the pen tip and the tip of the electronic pen 4.
  • the electronic blackboard 2 includes a CPU 101, ROM 102, RAM 103, SSD 104, network controller 105, external storage controller 106, capture device 111, GPU 112, sensor controller 114, and electronic pen controller 116 as shown in FIG.
  • a bus line 120 such as an address bus or a data bus for electrical connection is provided.
  • program for the electronic blackboard 2 may be recorded and distributed on a computer-readable recording medium such as a CD-ROM.
  • FIG. 5 is an example of a functional block diagram of the electronic blackboard 2.
  • the electronic blackboard 2 implements each functional configuration shown in FIG. 5 by the hardware configuration and program shown in FIG.
  • the electronic blackboard 2 can be a “host device” that starts the remote sharing process first, and can also be a “participating device” that participates in the remote sharing process that has already started.
  • the electronic blackboard 2 roughly includes both the client unit 20 and the server unit 90.
  • the client unit 20 and the server unit 90 are functions realized in one housing of the electronic blackboard 2.
  • the electronic blackboard 2 implements the client unit 20 and the server unit 90.
  • the electronic blackboard 2 is a participating device, in the electronic blackboard 2, the client unit 20 is realized, but the server unit 90 is not realized. That is, for example, in FIG.
  • the client unit 20 of the electronic blackboard 2a is connected via the server unit 90 realized in the electronic blackboard 2a. Communicate with the client unit 20 of the electronic blackboard 2b.
  • the client unit 20 of the electronic blackboard 2b communicates with the client unit of the other electronic blackboard 2a via the server unit 90 realized in the other electronic blackboard 2a.
  • the client unit 20 includes a video acquisition unit 21, a coordinate detection unit 22, an automatic adjustment unit 23, a contact detection unit 24, an event distribution unit 25, an operation processing unit 26, a gesture processing unit 27, a video superimposing unit 28, and an image processing unit 30. And a communication control unit 60.
  • the video acquisition unit 21 acquires the output image of the video output device connected to the cable 10.
  • the video acquisition unit 21 analyzes the image signal, and updates the resolution of the image frame, which is a display image of the video output device generated by the image signal.
  • Image information such as frequency is derived and output to the image acquisition unit 31.
  • the coordinate detection unit 22 detects the coordinate position of an event (such as an operation in which the user's hand H is touched on the display 3) generated on the display 3 by the user.
  • the coordinate detection unit 22 also detects the touched area.
  • the automatic adjustment unit 23 is activated when the electronic blackboard 2 is activated (may be expressed as restarting), and coordinates that detect coordinates by an optical sensor method so that the coordinate detection unit 22 can output an appropriate value.
  • the detection unit 22 adjusts parameters when processing the image of the sensor camera.
  • the contact detection unit 24 detects an event (such as an operation in which the pen tip of the electronic pen 4 or the pen butt of the electronic pen 4 is pressed (touched) on the display 3).
  • the event distribution unit 25 distributes the coordinate position of the event detected by the coordinate detection unit 22 and the detection result detected by the contact detection unit 24 to each event of stroke drawing, UI (User Interface) operation, and gesture operation.
  • stroke drawing when a stroke image (B), which will be described later, shown in FIG. This is an event until the electronic pen 4 is moved and finally the electronic pen 4 is released from the display 3.
  • UI User Interface
  • gesture operation for example, alphabet letters “S” and “T” are drawn on the display 3.
  • the “stroke drawing” includes not only drawing an image but also an event of deleting an already drawn image or editing a drawn image.
  • UI operation is an event in which the user touches a predetermined position with the electronic pen 4 or the hand H when a UI image (A), which will be described later, shown in FIG.
  • UI operation for example, the color or width of a line drawn by the electronic pen 4 is set.
  • the “gesture operation” is an event in which the user touches or moves the display 3 with the hand H when a stroke image (B) described later shown in FIG.
  • this gesture operation for example, by moving the hand H while the user touches the display 3 with the hand H, the image can be enlarged (or reduced), the display area can be changed, or the page can be switched. it can.
  • the operation processing unit 26 executes various operations according to the UI element in which the event is generated based on the event determined as the UI operation by the event distribution unit 25.
  • Examples of the UI element include a button, a list, a check box, and a text box.
  • the gesture processing unit 27 performs an operation corresponding to the gesture determined by the event distribution unit 25 as a gesture operation.
  • the video superimposing unit 28 displays the image superimposed by the display superimposing unit 36 described later on the display unit 29 as a video.
  • the display unit 29 has a display function realized by the display 3.
  • the video superimposing unit 28 displays the video sent from another video output device (the video conference terminal 7 or the like) by a so-called picture-in-picture function. To do. Further, the video superimposing unit 28 performs switching for displaying the video displayed on a part of the display unit 29 by the picture-in-picture function on the entire display unit 29.
  • the image processing unit 30 performs a superimposition process for superimposing each image layer as shown in FIG.
  • the image processing unit 30 includes an image acquisition unit 31, a stroke processing unit 32, a UI image generation unit 33, a background generation unit 34, a layout management unit 35, a display superimposition unit 36, a page processing unit 37, a file processing unit 40, page data.
  • a storage unit 300 and a remote license management table 310 are provided.
  • the image acquisition unit 31 acquires each frame as an image from the video acquired by the video acquisition unit 21.
  • the image acquisition unit 31 outputs the image data to the page processing unit 37.
  • This image corresponds to an output image (C) from the video output device (notebook PC 6 or the like) shown in FIG.
  • the stroke processing unit 32 draws an image, deletes the drawn image, or edits the drawn image based on the event related to the stroke drawing allocated by the event distribution unit 25.
  • the image by this stroke drawing corresponds to the stroke image (B) shown in FIG.
  • the results of image drawing, deletion, and editing based on the stroke drawing are stored in the operation data storage unit 840 as operation data to be described later.
  • the UI image generation unit 33 generates a UI image set in advance on the electronic blackboard 2. This UI image corresponds to the UI image (A) shown in FIG.
  • the background generation unit 34 receives media data from the page processing unit 37 out of the page data read from the page data storage unit 300 by the page processing unit 37.
  • the background generation unit 34 outputs the received media data to the display superimposing unit 36.
  • the image based on the media data corresponds to the background image (D) shown in FIG.
  • the pattern of the background image (D) is plain or grid display.
  • the layout management unit 35 manages layout information indicating the layout of each image output from the image acquisition unit 31, the stroke processing unit 32, and the UI image generation unit 33 (or the background generation unit 34) with respect to the display superimposing unit 36. Yes. Thereby, the layout management unit 35 causes the display superimposing unit 36 to display the output image (C) and the stroke image (B) in the UI image (A) and the background image (D). It is possible to instruct whether to hide.
  • the display superimposing unit 36 Based on the layout information output from the layout management unit 35, the display superimposing unit 36 performs the layout of each image output from the image acquisition unit 31, the stroke processing unit 32, and the UI image generation unit 33 (background generation unit 34). .
  • the page processing unit 37 combines the data of the stroke image (B) and the data of the output image (C) into one page data and stores it in the page data storage unit 300.
  • the data of the stroke image (B) forms part of page data as stroke arrangement data (each stroke data) indicated by a stroke arrangement data ID shown in Table 1 described later.
  • the data of the output image (C) forms part of the page data as the media data indicated by the media data ID shown in Table 1. Then, when this media data is read from the page data storage unit 300, it is handled as data of the background image (D).
  • the page processing unit 37 transmits the media data of the once stored page data to the display superimposing unit 36 via the background generating unit 34 so that the video superimposing unit 28 displays the background image (D). 3 can be displayed again.
  • the page processing unit 37 can return the stroke arrangement data (each stroke data) in the page data to the stroke processing unit 32 so that the stroke can be re-edited. Further, the page processing unit 37 can delete or duplicate page data.
  • the data of the output image (C) displayed on the display 3 when the page processing unit 37 stores the page data in the page data storage unit 300 is temporarily stored in the page data storage unit 300 and then the page data When it is read from the storage unit 300, it is read as media data indicating the background image (D). Then, the page processing unit 37 outputs stroke arrangement data indicating the stroke image (B) among the page data read from the page data storage unit 300 to the stroke processing unit 32. Further, the page processing unit 37 outputs media data indicating the background image (D) among the page data read from the page data storage unit 300 to the background generation unit 34.
  • the display superimposing unit 36 outputs an output image (C) from the image acquisition unit 31, a stroke image (B) from the stroke processing unit 32, a UI image (A) from the UI image generation unit 33, and a background generation unit 34.
  • the background image (D) is superimposed according to the layout specified by the layout management unit 35. As a result, as shown in FIG. 8, the UI image (A), the stroke image (B), the output image (C), and the background image (D) are superimposed in the order in which they can be seen by the user even if the images overlap. Layer structure to be obtained.
  • the display superimposing unit 36 can also superimpose the image (A) and the image (B) exclusively by switching the image (C) and the image (D) shown in FIG. .
  • the display superimposing unit 36 can also performs display enlargement, display reduction, and display area movement processing.
  • the page data storage unit 300 stores page data as shown in Table 1.
  • Table 1 conceptually shows the page data.
  • the page data includes data for one page (stroke arrangement data (each stroke data) and media data) displayed on the display 3. Since there are many types of parameters included in the page data, here, the contents of the page data will be described separately in Tables 1 to 4.
  • the page data is a page data ID for identifying an arbitrary page, a start time indicating the start time of display of this page, and rewriting of the contents of the page by a stroke, a gesture or the like.
  • These page data ID, start time, end time, stroke arrangement data ID, and media data ID are stored in association with each other.
  • the stroke arrangement data is data for displaying the stroke image (B) shown in FIG.
  • the media data is data for displaying the background image (D) shown in FIG.
  • the stroke arrangement data has detailed information as shown in Table 2.
  • Table 2 conceptually shows one stroke data among a plurality of stroke arrangement data st001, st002, st003,.
  • one stroke array data has a plurality of stroke data.
  • One stroke data includes a stroke data ID for identifying the stroke data, a start time indicating the start time of writing one stroke, an end time indicating the end time of writing one stroke, the color of the stroke, A coordinate array data ID for identifying coordinate array data indicating the width of the stroke and the array of the passing points of the stroke is included.
  • This coordinate array data has detailed information as shown in Table 3.
  • Table 3 conceptually shows one coordinate array data among a plurality of coordinate array data c001, c002, c003,.
  • one coordinate array data has data of a plurality of passing points.
  • the data of one passing point includes one point on the display 3 (X coordinate value, Y coordinate value), a time difference (ms) from the start time of the stroke when passing this one point, and this
  • Each piece of information on the writing pressure of the electronic pen 4 at one point is included. That is, a collection of a plurality of passing points indicated by one coordinate array data (for example, coordinate array data ID, c001 coordinate array data) shown in Table 3 is one coordinate array data shown in Table 2. It is shown as coordinate array data identified by ID, c001. For example, when the user draws the alphabet letter “S” with the electronic pen 4, it is drawn with a single stroke, but passes through a plurality of passing points until the drawing of “S” is completed. Have information.
  • the media data of the page data shown in Table 1 has detailed information as shown in Table 4.
  • Table 4 conceptually shows the media data.
  • the media data is stored in the page data storage unit 300 from the page processing unit 37, the media data ID in the page data shown in Table 1, the data type of the media data, and the page data storage unit 300.
  • These media data ID, data type, recording time, X coordinate value, Y coordinate value, width, height and data are associated with each other.
  • the position of the upper left corner of the image displayed by the page data is shown.
  • the remote license management table 310 manages license data necessary for executing remote sharing processing.
  • this remote license management table 310 as shown in Table 5, the product ID of the electronic blackboard 2, the license ID used for authentication, and the expiration date of the license are managed in association with each other.
  • the file processing unit 40 includes a recovery processing unit 41, a file input unit 42a, a file output unit 42b, a file conversion unit 43, a file transmission unit 44, an address book input unit 45, a backup processing unit 46, a backup output unit 47, and a setting management unit. 48, a setting file input unit 49a, a setting file output unit 49b, and an address book input unit 50. Furthermore, the file processing unit 40 includes an address book management table 410, a backup data storage unit 420, a setting file storage unit 430, and a connection destination management table 440.
  • the recovery processing unit 41 detects the abnormal end after the electronic blackboard 2 is abnormally terminated, and recovers the unsaved page data.
  • the page data is recorded as a PDF file on the USB 5 via the file processing unit 40.
  • the page data is stored in the page data storage unit 300. It remains recorded. Therefore, when the power is turned on again, the recovery processing unit 41 reads the page data from the page data storage unit 300 to recover the page data.
  • the file input unit 42a reads a PDF file from the USB memory 5, and stores each page in the page data storage unit 300 as page data.
  • the file conversion unit 43 converts the page data stored in the page data storage unit 300 into a PDF file.
  • the file output unit 42 b records the PDF file output by the file conversion unit 43 in the USB memory 5.
  • the file transmission unit 44 transmits the PDF file generated by the file conversion unit 43 as an attachment to an e-mail.
  • the destination of this file is determined as follows.
  • the display superimposing unit 36 displays the contents of the address book management table 410 on the display 3 and the user operates an input device such as a touch panel to select a destination
  • the file transmission unit 44 accepts the selection of the destination. In this way, the file transmission destination is determined.
  • the address book management table 410 as shown in Table 6, the name of the destination and the mail address of the destination e-mail are managed in association with each other.
  • the file transmission destination may be determined as follows. When the user operates an input device such as a touch panel to input a mail address as a destination, the file transmission unit 44 receives the input of the mail address as a destination. In this way, the file transmission destination may be determined.
  • the address book input unit 45 reads an e-mail address list file from the USB memory 5 and manages the read e-mail address list file in the address book management table 410.
  • the backup processing unit 46 performs backup by storing the file output by the file output unit 42 b and the file transmitted by the file transmission unit 44 in the backup data storage unit 420. Note that backup processing is not performed when the user does not set backup.
  • the backed up file is stored in PDF format as shown in Table 7.
  • the backup output unit 47 stores the backed up file in the USB memory 5. At the time of storage, a passcode is input by an operation of an input device such as a touch panel by a user for security.
  • the setting management unit 48 stores and reads various setting information of the electronic blackboard 2 in the setting file storage unit 430 for management.
  • the various setting information include network settings, date and time settings, region and language settings, mail server settings, address book settings, connection destination list settings, and backup settings.
  • the network setting is, for example, an IP address setting of the electronic blackboard 2, a net mask setting, a default gateway setting, a DNS (Domain Name System) setting, or the like. The setting information will be further described later.
  • the setting file output unit 49b records various setting information of the electronic blackboard 2 in the USB memory 5 as a setting file.
  • the security function prevents the user from seeing the contents of the setting file.
  • the setting file input unit 49a reads the setting file stored in the USB memory 5 and reflects various setting information in the various settings of the electronic blackboard 2.
  • the address book input unit 50 reads a list file of connection destination IP addresses for remote sharing processing from the USB memory 5 and manages the read list file of connection destination IP addresses for remote sharing processing in the connection destination management table 440.
  • An example of the connection destination management table 440 is shown in Table 8.
  • the connection destination management table 440 is a table for the user of the electronic blackboard 2 as the participating device to manage in advance the IP address of the electronic blackboard 2 as the host device.
  • the connection destination management table 440 By managing the IP address of the electronic blackboard 2 as the hosting device in advance, when the electronic blackboard 2 is a participating device that intends to participate in the remote sharing process, the user of the participating device can use the electronic blackboard 2 as the hosting device. The trouble of inputting the IP address can be reduced.
  • the name of the base where the electronic blackboard 2 that can be used as the hosting device is installed and the IP address of the electronic blackboard 2 as the hosting device are managed in association with each other.
  • connection destination management table 440 may be omitted.
  • the user of the participating device needs to input the IP address of the host device using an input device such as a touch panel in order to start remote request processing with the host device. Therefore, the user of the participating device obtains the IP address of the sponsoring device from the user of the sponsoring device by telephone or electronic mail.
  • FIG. 7 is an example of a functional block diagram of the server unit 90 and the client unit 20.
  • the communication control unit 60 controls communication performed with another electronic whiteboard 2 via the communication network 9 and communication performed with the communication control unit 70 described later in the server unit 90. Therefore, the communication control unit 60 includes a remote start processing unit 61, a remote participation processing unit 62, a remote image transmission unit 63, a remote image reception unit 64, a remote operation transmission unit 65, a remote operation reception unit 66, and a participation base management table 610. Have.
  • the remote start processing unit 61 requests the server unit 90 of the electronic blackboard 2 having the remote start processing unit 61 to newly start remote sharing processing, and receives a result for the request from the server unit 90. .
  • the remote start processing unit 61 refers to the remote license management table 310.
  • the remote start processing unit 61 can request the start of the remote sharing process.
  • the remote start processing unit 61 cannot request the start of the remote sharing process.
  • the participation base management table 610 is a table for managing the electronic blackboard 2 as a participating device that is currently participating in the remote sharing process when the electronic blackboard 2 is a sponsor device.
  • An example of the participating base management table 610 is shown in Table 9.
  • the participating base management table 610 the name of the base where the participating electronic blackboard 2 is installed and the IP address of the electronic blackboard 2 are managed in association with each other.
  • the remote participation processing unit 62 requests the remote connection request receiving unit 71 in the server unit 90 of the electronic blackboard 2 as a hosting device that has already started remote sharing processing to participate in remote sharing processing via the communication network 9. I do. Also in this case, the remote participation processing unit 62 refers to the remote license management table 310. When participating in the remote sharing process that has already been started, the remote participation processing unit 62 refers to the connection destination management table 440 and acquires the IP address of the electronic blackboard 2 that is executing the remote sharing process of the participation destination. . The remote participation processing unit 62 does not refer to the connection destination management table, and the IP address of the electronic blackboard 2 executing the remote sharing process of the participation destination may be input by the user operating the input device such as a touch panel. .
  • the remote image transmission unit 63 transmits the output image (C) sent from the video acquisition unit 21 via the image acquisition unit 31 to the server unit 90.
  • the remote image receiving unit 64 receives the image data from the video output device connected to the other electronic blackboard 2 from the server unit 90 and outputs it to the display superimposing unit 36, thereby enabling the remote sharing process to be executed.
  • the remote operation transmission unit 65 transmits various operation data necessary for remote sharing processing to the server unit 90.
  • Examples of the operation data include adding a stroke, deleting a stroke, editing a stroke (enlarging, reducing, or moving), storing page data, generating page data, duplicating page data, deleting page data, and displaying. Data related to the switching of the current page.
  • the remote operation receiving unit 66 performs remote sharing processing by receiving operation data input from the server unit 90 on the other electronic blackboard 2 and outputting the operation data to the image processing unit 30.
  • the server unit 90 includes a communication control unit 70 and a data management unit 80. (Functional configuration of communication control unit 70) Next, the functional configuration of the communication control unit 70 will be described with reference to FIG.
  • the communication control unit 70 communicates with the communication control unit 60 in the client unit 20 in the electronic blackboard 2 having the communication control unit 70 and the communication control unit 60 in the client unit 20 in the other electronic blackboard 2 via the communication network 9. Controls communication with.
  • the data management unit 80 manages operation data, image data, and the like.
  • the communication control unit 70 includes a remote connection request receiving unit 71, a remote connection result transmitting unit 72, a remote image receiving unit 73, a remote image transmitting unit 74, a remote operation receiving unit 75, and a remote operation transmitting unit 76.
  • the remote connection request receiving unit 71 receives a remote sharing processing start request from the remote start processing unit 61 or receives a participation request for remote sharing processing from the remote participation processing unit 62.
  • the remote connection result transmission unit 72 transmits the result of the remote sharing processing start request to the remote start processing unit 61, or transmits the result of the participation request for the remote sharing processing to the remote participation processing unit 62.
  • the remote image receiving unit 73 receives the image data (output image (C) data) from the remote image transmitting unit 63 and transmits it to the remote image processing unit 82 described later.
  • the remote image transmitting unit 74 receives image data from the remote image processing unit 82 and transmits the received image data to the remote image receiving unit 64.
  • the remote operation receiving unit 75 receives the operation data (data such as the stroke image (B)) from the remote operation transmitting unit 65 and transmits it to the remote operation processing unit 83 described later.
  • the remote operation transmission unit 76 receives operation data from the remote operation processing unit 83 and transmits the received operation data to the remote operation reception unit 66.
  • the data management unit 80 includes a remote connection processing unit 81, a remote image processing unit 82, a remote operation processing unit 83, an operation composition processing unit 84, and a page processing unit 85. Further, the data management unit 80 includes a passcode management unit 810, a participating site management table 820, an image data storage unit 830, an operation data storage unit 840, and a page data storage unit 850.
  • the remote connection processing unit 81 starts the remote sharing process and ends the remote sharing process.
  • the remote connection processing unit 81 receives the license information received by the remote connection request receiving unit 71 from the remote start processing unit 61 together with the remote sharing processing start request or received from the remote participation processing unit 62 together with the remote sharing processing participation request. Based on the license information thus obtained, it is confirmed whether there is a license and whether it is within the license period. Further, the remote connection processing unit 81 confirms whether or not the participation request from the other electronic blackboard 2 as the client unit exceeds the predetermined number of possible participations.
  • the passcode sent when a request for participation in remote sharing processing is received from another electronic whiteboard 2 is the same as the passcode managed by the passcode management unit 810. If it is the same, participation in the remote sharing process is permitted.
  • This passcode is issued by the remote connection processing unit 81 when a new remote sharing process is started, and the user of the electronic blackboard 2 as a participating device who intends to participate in the remote sharing processing is an electronic blackboard as a hosting device. 2 users are notified by telephone or e-mail. Then, a user of a participating device who intends to participate in the remote sharing process inputs the pass code to the participating device by an input device such as a touch panel and requests participation, thereby permitting participation. If priority is given to user usability over security, only the license status may be checked, and the passcode check may be omitted.
  • the remote connection processing unit 81 uses the participation base information included in the participation request sent from the remote participation processing unit 62 of the participating device via the communication network 9 in the server unit 90. This is stored in the participating site management table 820. Then, the remote connection processing unit 81 reads out the remote site information stored in the participating site management table 820 and transmits it to the remote connection result transmission unit 72. The remote connection result transmission unit 72 transmits the remote base information to the remote start processing unit 61 in the client unit 20. The remote start processing unit 61 stores the remote site information in the participating site management table 610. As a result, the host device manages the remote site information by both the client unit 20 and the server unit 90.
  • the remote image processing unit 82 receives image data from a video output device (notebook PC 6 or the like) connected to the client unit of each electronic blackboard 2 (including the client unit of the electronic blackboard 2 as the hosting device) during remote sharing processing. (Output image (C)) is received and stored in the image data storage unit 830.
  • the remote image processing unit 82 further determines the display order of the image data to be remotely shared according to the time order of arrival at the server unit 90 of the electronic blackboard 2 as the host device.
  • the remote image processing unit 82 refers to the participating site management table 820 to all the client units 20 of the electronic blackboard 2 participating in the remote sharing process (including the client unit of the electronic blackboard 2 as the host device).
  • the image data is transmitted through the communication control unit 70 (remote image transmission unit 74) in the determined order.
  • the remote operation processing unit 83 performs various operation data such as stroke images (stroke images (B (B)) drawn by the client unit of each electronic blackboard 2 (including the client unit of the electronic blackboard 2 as the hosting device) during the remote sharing process. ) And the like, and the display order of images to be remotely shared is determined according to the time order received by the server unit 90 of the electronic blackboard 2 as the host apparatus.
  • the various operation data is the same as the various operation data described above.
  • the remote operation processing unit 83 refers to the participating site management table 820 and stores the operation data in the client units 20 (including the client unit of the electronic blackboard 2 as the hosting device) of all the electronic blackboards 2 that are being remotely shared. Send.
  • the operation synthesis processing unit 84 synthesizes the operation data of each electronic blackboard 2 output from the remote operation processing unit 83, stores the operation data as a synthesis result in the operation data storage unit 840 and returns it to the remote operation processing unit 83.
  • the operation data is transmitted from the remote operation transmission unit 76 to each of the client unit of the electronic blackboard 2 as the hosting device and the client unit of the electronic blackboard 2 as a participating device. As a result, an image related to the same operation data is displayed on each electronic blackboard 2.
  • An example of the operation data is shown in Table 10.
  • the operation data includes SEQ (Sequence), the operation name of the operation data, the IP address of the electronic blackboard 2 that is the transmission source of the operation data, and the Port No. of the client unit (server unit).
  • SEQ Sequence
  • the IP address of the electronic blackboard 2 that is the transmission destination of the operation data, the port number of the client unit (server unit), the operation type of the operation data, the operation target of the operation data, and the data indicating the contents of the operation data are associated with each other Included.
  • the operation data SEQ “1” As a result of the stroke being drawn by the client unit (Port No .: 50001) of the electronic blackboard 2 (IP address: 192.0.0.1) as the hosting device, the same electronic blackboard 2 (IP It is shown that the operation data is sent to the server part (Port No .: 50000) of the address: 192.0.0.1).
  • the operation type is “STROKE”
  • the operation target is the page data ID “p005”
  • the data indicating the contents of the operation data is data indicating the stroke (stroke data).
  • the operation data SEQ “2” includes another electronic blackboard 2 (IP address) as a participating device from the server unit (Port No .: 50000) of the electronic blackboard 2 (IP address: 192.0.0.1) as the host device. : 192.0.0.2) shows that operation data has been sent to the client part (Port No .: 50001).
  • IP address electronic blackboard 2
  • the operation composition processing unit 84 performs composition in the order in which the operation data is input to the operation composition processing unit 84. Therefore, if the communication network 9 is not congested, the operation composition processing unit 84 performs remote control in the order of stroke drawing by the user of each electronic blackboard 2. A stroke image (B) is displayed on the displays 3 of all the electronic blackboards 2 during the sharing process.
  • the page processing unit 85 has the same function as the page processing unit 37 in the image processing unit 30 of the client unit 20, and the server unit 90 also receives the page data shown in Tables 1 to 3 like the client unit 20.
  • the data is stored in the page data storage unit 850.
  • the page data storage unit 850 has the same contents as the page data storage unit 300 in the image processing unit 30, and thus the description thereof is omitted.
  • FIGS. 9 and 10 are sequence diagrams showing the processing of each electronic blackboard 2.
  • the electronic blackboard 2a serves as a hosting device (server unit and client unit) that hosts the remote sharing process, and the electronic blackboards 2b and 2c participate in the remote sharing process.
  • displays 3a, 3b, and 3c are connected to the electronic blackboards 2a, 2b, and 2c, respectively
  • notebook PCs 6a, 6b, and 6c are connected to the electronic blackboards 2a, 2b, and 2c, respectively.
  • electronic pens 4a, 4b and 4c are used, respectively.
  • the client unit 20 of the electronic blackboard 2a When the user turns on the power switch of the electronic blackboard 2a, the client unit 20 of the electronic blackboard 2a is activated.
  • the remote start processing unit 61 of the client unit 20 performs the processing of the server unit 90 on the remote connection request receiving unit 71 in the server unit 90 of the electronic blackboard 2a. Output instructions to start.
  • the electronic blackboard 2a not only the client unit 20 but also the server unit 90 can start various processes (step S21).
  • the UI image generation unit 33 in the client unit 20 of the electronic blackboard 2a generates connection information for the other electronic blackboard 2 to establish a connection with the electronic blackboard 2a, and the video superimposing unit 28 performs the UI image generation unit 33. Connection information obtained through the display superimposing unit 36 is displayed on the display 3a (step S22).
  • This connection information includes the host device's IP address and the passcode generated for this remote sharing process.
  • the passcode stored in the passcode management unit 810 is read out by the remote connection processing unit 81 shown in FIG. 7 and transmitted in the order of the remote connection result transmission unit 72 and the remote start processing unit 61. . Further, the passcode is transmitted from the communication control unit 60 including the remote start processing unit 61 to the image processing unit 30 shown in FIG. 5 and finally input to the UI image generation unit 33. As a result, the pass code is included in the connection information. Then, the connection information is transmitted to the users of the electronic blackboards 2b and 2c by telephone or electronic mail by the user of the electronic blackboard 2a. If there is the connection destination management table 440, even if the connection information does not include the IP address of the hosting device, the participating device can make a participation request.
  • the remote participation processing unit 62 in the client unit 20 of each electronic blackboard 2b and 2c Based on the IP address, a participation request is made by transmitting a pass code to the communication control unit 70 in the server unit 90 of the electronic blackboard 2a via the communication network 9 (steps S23 and S24).
  • the remote connection request receiving unit 71 of the communication control unit 70 receives the participation request (including the passcode) from each of the electronic blackboards 2 b and 2 c and outputs this passcode to the remote connection processing unit 81.
  • the remote connection processing unit 81 authenticates the passcode received from each of the electronic blackboards 2b and 2c using the passcode managed by the passcode management unit 810 (step S25).
  • the remote connection result transmission unit 72 notifies the authentication result to the client units 20 of the electronic blackboards 2b and 2c (steps S26 and S27).
  • step S25 When it is determined that the electronic blackboards 2b and 2c are legitimate electronic blackboards 2 by the authentication in step S25, remote sharing processing between the electronic blackboard 2a as the hosting device and the electronic blackboards 2b and 2c as the participating devices is performed. Communication is established. Then, the remote participation processing unit 62 in the client unit 20 of each of the electronic blackboards 2b and 2c enables the start of remote sharing processing with other electronic blackboards 2 (steps S28 and S29).
  • the electronic blackboard 2b displays the output image (C) on the display 3b (step S30). Specifically, the image acquisition unit 31 of the electronic blackboard 2b receives the data of the output image (C) displayed on the notebook PC 6b from the notebook PC 6b via the video acquisition unit 21, and the received data is displayed on the display superimposing unit 36. And the display 3b displays the output image (C) by transmitting to the display 3b via the video superimposing unit 28.
  • the image processing unit 30 including the image acquisition unit 31 of the electronic blackboard 2b transmits the data of the output image (C) to the remote image transmission unit 63, whereby the communication control unit 60 including the remote image transmission unit 63 is communicated with the communication network.
  • the data of the output image (C) is transmitted to the communication control unit 70 of the electronic blackboard 2a which is the hosting device (step S31).
  • the remote image receiving unit 73 of the electronic blackboard 2a receives the output image (C) data and outputs it to the remote image processing unit 82.
  • the remote image processing unit 82 stores the output image (C) data in the image data storage unit 830.
  • the electronic blackboard 2a which is the hosting device, displays the output image (C) on the display 3a (step S32).
  • the remote image processing unit 82 of the electronic blackboard 2 a outputs the output image (C) data received from the remote image receiving unit 73 to the remote image transmitting unit 74.
  • the remote image transmission unit 74 outputs the output image (C) data to the remote image reception unit 64 in the client unit 20.
  • the remote image receiving unit 64 outputs the data of the output image (C) to the display superimposing unit 36.
  • the display superimposing unit 36 outputs the output image (C) data to the video superimposing unit 28.
  • the video superimposing unit 28 outputs the data of the output image (C) to the display 3a. Thereby, the display 3a displays the output image (C).
  • the output image (C) data is transmitted to the control unit 60 via the communication network 9 (step S33).
  • the remote image receiving unit 64 of the electronic blackboard 2c which is a participating device receives the data of the output image (C).
  • the electronic blackboard 2c displays the output image (C) on the display 3c (step S34).
  • the remote image receiving unit 64 of the electronic blackboard 2c outputs the data of the output image (C) received in step S33 to the display superimposing unit 36 of the electronic blackboard 2c.
  • the display superimposing unit 36 outputs the output image (C) data to the video superimposing unit 28.
  • the video superimposing unit 28 outputs the data of the output image (C) to the display 3c. Thereby, the display 3c displays the output image (C).
  • the display superimposing unit 36 superimposes the image (A , B, and C) are generated, and the video superimposing unit 28 outputs the data of the superimposed images (A, B, and C) to the display 3c.
  • video conferencing video (E) data is sent from the video conference terminal 7 to the video superimposing unit 28, the video superimposing unit 28 adds picture-in-picture to the superimposed images (A, B, and C).
  • the video (E) data for video conference is superimposed by the function and output to the display 3c.
  • the user draws a stroke image (B) on the electronic blackboard 2b using the electronic pen 4b (step S41).
  • the display superimposing unit 36 of the electronic blackboard 2b superimposes the stroke image (B) on the UI image (A) and the output image (C) as shown in FIG.
  • the superimposed images (A, B, and C) superimposed on the display 3b of the electronic blackboard 2b are displayed (step S42).
  • the stroke processing unit 32 of the electronic blackboard 2b receives the data of the stroke image (B) as the operation data from the coordinate detection unit 22 and the contact detection unit 24 via the event distribution unit 25, and displays the display superimposition unit. 36.
  • the display superimposing unit 36 can superimpose the stroke image (B) on the UI image (A) and the output image (C), and the video superimposing unit 28 superimposes the superimposed image (on the display 3b of the electronic blackboard 2b ( A, B and C) can be displayed.
  • the image processing unit 30 including the stroke processing unit 32 of the electronic blackboard 2 b transmits the stroke image (B) data to the remote operation transmission unit 65, so that the remote operation transmission unit 65 of the electronic blackboard 2 b is connected to the communication network 9.
  • the stroke image (B) data is transmitted to the communication control unit 70 of the electronic blackboard 2a, which is the hosting device (step S43).
  • the remote operation receiving unit 75 of the electronic blackboard 2a receives the data of the stroke image (B) and outputs it to the remote operation processing unit 83.
  • the remote operation processing unit 83 outputs the stroke image (B) data to the operation composition processing unit 84.
  • the data of the stroke image (B) is data transmitted for each stroke data ID shown in Table 2 and the like. Therefore, for example, as described above, when the user draws the alphabet letter “T” with the electronic pen 4, the stroke image (B) indicated by each of the two stroke data IDs is written in two strokes. Sent sequentially.
  • the electronic blackboard 2a which is the hosting device, has a superimposed image (A, B) including a stroke image (B) indicated by the data of the stroke image (B) sent from the electronic blackboard 2b on the display 3a. And C) are displayed (step S44).
  • the operation composition processing unit 84 of the electronic blackboard 2 a synthesizes the data of a plurality of stroke images (B) sequentially sent via the remote operation processing unit 83 and stores them in the operation data storage unit 840. At the same time, it returns to the remote operation processing unit 83.
  • the remote operation processing unit 83 outputs the combined stroke image (B) data received from the operation synthesis processing unit 84 to the remote operation transmission unit 76.
  • the remote operation transmitting unit 76 outputs the combined stroke image (B) data to the remote operation receiving unit 66 in the client unit 20 of the electronic blackboard 2a which is the hosting device.
  • the remote operation receiving unit 66 outputs the combined stroke image (B) data to the display superimposing unit 36 in the image processing unit 30.
  • the display superimposing unit 36 superimposes the combined stroke image (B) on the UI image (A) and the output image (C).
  • the video superimposing unit 28 displays the superimposed images (A, B, and C) superimposed by the display superimposing unit 36 on the display 3a.
  • the combined stroke image (B) data is transmitted to the control unit 60 via the communication network 9 (step S45).
  • the remote operation receiving part 66 of the electronic blackboard 2c which is a participating apparatus receives the data of the synthesized stroke image (B).
  • the electronic blackboard 2c displays superimposed images (A, B, and C) on the display 3c (step S46).
  • the remote operation receiving unit 66 of the electronic blackboard 2c outputs the combined stroke image (B) data received in step S45 to the image processing unit 30 of the electronic blackboard 2c.
  • the display superimposing unit 36 of the image processing unit 30 superimposes each data of the UI image (A) and the output image (C) and the data of the combined stroke image (B), and the superimposed image (A, B and C). Data is output to the video superimposing unit 28.
  • the video superimposing unit 28 outputs the data of the superimposed images (A, B, and C) to the display 3c.
  • the display 3c displays superimposed images (A, B, and C).
  • the output image (C) is displayed on the display 3, but a background image (D) may be displayed instead of the output image (C).
  • a background image (D) may be displayed instead of the output image (C).
  • the exclusive relationship between the output image (C) and the background image (D) may be stopped, and both the output image (C) and the background image (D) may be simultaneously displayed on the display 3.
  • the remote participation processing unit 62 participates in the communication control unit 70 in the server unit 90 of the electronic blackboard 2a as a hosting device.
  • An end request is made (step S47).
  • the remote connection request receiving unit 71 of the communication control unit 70 receives the participation end request from the electronic blackboard 2c, and outputs the participation end request together with the IP address of the electronic blackboard 2c to the remote connection processing unit 81.
  • the remote connection processing unit 81 of the electronic blackboard 2a is provided with the IP address of the electronic blackboard 2c and the electronic blackboard 2c that have requested termination of participation based on the IP address sent from the remote connection request receiving unit 71.
  • the name of the site is deleted from the participating site management table 820, and the remote connection result transmission unit 72 outputs the IP address of the electronic blackboard 2c and a notification to the effect that it has been deleted.
  • the communication control unit 70 including the remote connection result transmission unit 72 instructs the communication control unit 60 in the client unit 20 of the electronic blackboard 2c to end participation via the communication network 9 (step S48).
  • the remote participation processing unit 62 of the communication control unit 60 in the electronic blackboard 2c performs participation termination processing by disconnecting the communication of the remote sharing processing. As a result, participation in the electronic blackboard 2c ends (step S49).
  • the electronic blackboard 2 determines whether the version of the program on the electronic blackboard 2 is the same as the version of the program on the electronic blackboard 2 immediately above. Then, the program upgrade process is performed. In this way, each electronic blackboard 2 having the electronic blackboard 2 immediately above repeats the program upgrade process, so that all the electronic blackboards 2 included in the network structure can upgrade the program.
  • the electronic blackboard 2 acquires setting information from the upper electronic blackboard 2 when the version of the program of the electronic blackboard 2 matches the version of the program of the electronic blackboard 2 immediately above.
  • Each electronic blackboard 2 having the electronic blackboard 2 directly above repeats this process, so that all the electronic blackboards 2 included in the network structure can synchronize the setting information with each other.
  • FIG. 11 is an example of a diagram illustrating a network structure of the image processing system 1.
  • the electronic blackboards 2 are connected to each other via a communication network 9.
  • the network structure of FIG. 11 is a diagram for explaining a multi-level hierarchical structure related to program upgrade processing and setting information synchronization processing, and one electronic blackboard 2 is an image of both the electronic blackboard 2 other than the electronic blackboard 2 directly above. It is possible to communicate data and the like.
  • the program upgrade process and the setting information synchronization process according to this embodiment are executed in a tree-structured network structure as shown in FIG.
  • the two electronic blackboards 2 that are directly above and below each other may be connected by a USB cable or the like instead of the communication network 9. Further, the two electronic blackboards 2 that are directly above and below each other may be connected by wire or wirelessly.
  • the setting manager PC 500 shown in FIG. 11 is a PC operated by a setting manager who sets and manages setting information on the electronic blackboard 2.
  • the setting manager is a person in charge at a company or the like where the electronic blackboard 2 is installed, but the service engineer of the electronic blackboard 2 may be the setting manager.
  • the setting manager operates the setting manager PC 500 to set a new version program and setting information to be described later in the parent device 2p.
  • a new version of the program and setting information are set in the master unit 2p, all the electronic blackboards 2 in the master unit 2p, the slave unit layer C, and the grandchild unit layer G are synchronized with each other so that the program versions are the same.
  • the same setting information is set in all the electronic blackboards 2 of the child device layer C and the grandchild device layer G.
  • the program may be downgraded, but the following description is given on the assumption that a new version of the program is set.
  • the setting manager PC 500 browser software operates, and the browser software communicates with the parent device 2p to acquire screen information described in HTML (HyperText Markup Language) or JavaScript (registered trademark) from the parent device 2p.
  • the setting manager PC 500 displays a “setting information setting screen” described later on the display. Using the setting information setting screen displayed on the display of the setting manager PC 500, the setting manager can input the setting information and set the input setting information in the parent device 2p.
  • the base unit 2p may access a server that distributes the program to obtain a new version of the program.
  • the setting manager may set the setting information in the server, and the parent device 2p may acquire the setting information from the server.
  • the setting manager operates the setting manager PC 500 to set communication information, which will be described later, on the electronic blackboard 2 of each of the child device layer C and the grandchild device layer G.
  • the communication information is information for the electronic blackboard 2 to communicate with the electronic blackboard 2 directly above. Therefore, the setting manager PC 500 displays a “communication information setting screen” to be described later on the display. Using the communication information setting screen, the setting manager can set communication information for the electronic blackboard 2 to communicate with the electronic blackboard 2 directly above.
  • FIG. 12 is an example of a diagram illustrating an outline of each function that operates in the parent device 2p, the child device 2c, and the grandchild device 2g.
  • the program providing unit 170 operates in the parent device 2p, and the program management unit 160 and the program providing unit 170 operate in the child device 1.
  • the program management unit 160 operates on the electronic blackboard 2 of the child device layer C.
  • the program providing unit 170 operates on the electronic blackboard 2 of the child device layer C.
  • the program providing unit 170 of the electronic blackboard 2 provides a new version of the program to the electronic blackboard 2 immediately below in response to a request from the electronic blackboard 2 directly below.
  • the program management unit 160 of the electronic blackboard 2 determines whether the version of the program is the same as that of the electronic blackboard 2 directly above, and if it is different, acquires the program from the electronic blackboard 2 directly above and upgrades the version.
  • the setting providing unit 150 operates in the parent device 2p, and the setting providing unit 150 and the setting acquisition unit 180 operate in the child device 1.
  • the setting acquisition unit 180 operates on the electronic blackboard 2 of the child device layer C.
  • the setting providing unit 150 operates on the electronic blackboard 2 of the child device layer C. The same applies to the relationship between the grandchild machine layer G and the great-grandchild machine layer (not shown).
  • FIG. 13 is an example of a hardware configuration diagram of the setting manager PC 500.
  • the setting manager PC 500 includes a CPU 201, a ROM 202, a RAM 203, and an auxiliary storage device 204. Furthermore, the setting manager PC 500 includes an input unit 205, a display I / F (InterFace) 206, and a communication I / F 207. Note that the units of the setting manager PC 500 are connected to each other via a bus 208. Therefore, the setting manager PC 500 has a function as an information processing apparatus.
  • the CPU 201 executes various programs and OS stored in auxiliary storage device 204.
  • the ROM 202 is a nonvolatile memory.
  • the ROM 202 stores programs, data, and the like necessary for the CPU 201 to execute.
  • the RAM 203 is a main storage device such as a DRAM (Dynamic Random Access Memory) or an SRAM (Static Random Access Memory).
  • Various programs stored in the auxiliary storage device 204 are written into the RAM 203 when executed by the CPU 201, and the RAM 203 becomes a work area of the CPU 201.
  • the auxiliary storage device 204 stores various programs executed by the CPU 201 and various information used when the various programs are executed by the CPU 201.
  • the auxiliary storage device 204 is a nonvolatile memory such as an HDD (Hard Disk Drive) or an SSD.
  • the input unit 205 is an interface for an operator to input various instructions to the setting manager PC 500.
  • a keyboard for example, a keyboard, a mouse, a touch panel, a voice input device, and the like.
  • the input unit 205 may further include a mounting unit for a recording medium such as a USB I / F.
  • the display I / F 206 displays various information held by the setting manager PC 500 on the display 210 in the form of a cursor, menu, window, character, image, or the like in response to a request from the CPU 201.
  • the display I / F 206 is, for example, a graphic chip or a display I / F.
  • the communication I / F 207 is a network I / F that communicates with the electronic blackboard 2 via the network.
  • FIG. 14 is an example of a detailed functional block diagram of the program providing unit 170 and the program management unit 160.
  • the program management unit 160 of the electronic blackboard 2 directly above and the program providing unit 170 of the electronic blackboard 2 directly below are not shown for convenience of explanation. Has been.
  • the program providing unit 170 includes a communication unit 171, a program information providing unit 172, and a storage reading unit 179. Each of these functional units is realized by the CPU 101 executing a program stored in the SSD 104 shown in FIG. 4 (that is, a program already installed) and controlling any of the components shown in FIG. Function or means to be performed.
  • the program providing unit 170 can access the storage unit 2000 constructed by any one or more of the SSD 104, the ROM 102, and the RAM 103 shown in FIG.
  • the storage unit 2000 stores “installed version” 2004 and “program file” 2005.
  • “Installed version 2004” is information indicating the version of the program currently installed on the electronic blackboard 2.
  • a program file 2005 is a file in which a program is stored.
  • the “program file” 2005 generally has a form in which a plurality of parts (sometimes referred to as modules, for example) are stored in one folder, or a plurality of parts are stored hierarchically.
  • the program file 2005 may be compressed or may be an execution format.
  • a version is described in one of a plurality of parts of the program file 2005 in the form of text data or the like, and the electronic blackboard 2 can read the version that the program file 2005 has.
  • the version of the program included in the program file 2005 and the “installed version” 2004 may be the same or different.
  • the version of the program included in the program file 2005 and the “installed version” 2004 are the same.
  • the server that distributes the program, or the like stores the program file 2005 in the storage unit 2000, the program file 2005 is used until the electronic blackboard 2 installs the program using the program file 2005.
  • the version of the program included in is different from the “installed version” 2004.
  • the communication unit 171 is realized by the CPU 101, the network controller 105, or the like shown in FIG. 4 and transmits / receives various information to / from the electronic blackboard 2 directly below. In the following description, even when the program information providing unit 172 communicates with the electronic blackboard 2 directly below by the communication unit 171, the description “via the communication unit 171” may be omitted.
  • the program information providing unit 172 When the program information providing unit 172 receives an inquiry about the version of the installed program from the electronic blackboard 2 directly below, the program information providing unit 172 reads the “installed version” 2004 from the storage unit 2000 via the storage reading unit 179 and reads the electronic version directly below. Send to blackboard 2. Further, when the program information providing unit 172 is requested by the electronic blackboard 2 directly below, the program information provision unit 172 reads the program file 2005 from the storage unit 2000 via the storage reading unit 179 and transmits it to the electronic blackboard 2 directly below.
  • the memory reading unit 179 reads various types of information stored in the storage unit 2000, and stores various types of information in the storage unit 2000. In the following description, even when the storage reading unit 179 reads various types of information from the storage unit 2000 or stores various types of information in the storage unit 2000, for convenience of explanation, May be omitted.
  • the program management unit 160 includes a communication unit 161, a version confirmation unit 162, a program installation unit 163, an immediately upper version determination unit 164, a program acquisition unit 165, and a storage reading unit 169.
  • Each of these functional units is a function or means realized by the CPU 101 executing a program stored in the SSD 104 shown in FIG. 4 and controlling any of the components shown in FIG.
  • the program management unit 160 can access the storage unit 5000 constructed by any one or more of the SSD 104, the ROM 102, and the RAM 103 shown in FIG.
  • the storage unit 5000 stores an “installed version” 5004 and a program file 5005, and further builds a communication information storage unit 5002.
  • the “installed version” 5004 and the program file 5005 are the same as the “installed version” 2004 and the program file 2005 in the electronic blackboard 2 immediately above.
  • a program file 5005 in the storage unit 5000 is a program file 2005 transmitted from the electronic blackboard 2 directly above. Information stored in the communication information storage unit 5002 will be described later together with Table 14 and the like.
  • the communication unit 161 is realized by the CPU 101, the network controller 105, or the like shown in FIG. 4, and transmits / receives various information to / from the electronic blackboard 2 directly above. In the following description, even when the electronic blackboard 2 communicates with the electronic blackboard 2 directly above by the communication unit 161, the description “via the communication unit 161” may be omitted.
  • the version confirmation unit 162 compares the version of the program included in the program file 5005 stored in the storage unit 5000 with the “installed version” 5004. When the program included in the program file 5005 is different from the “installed version” 5004, the version confirmation unit 162 determines that “the program in the program file 5005 needs to be installed”. The version confirmation unit 162 may determine that “the program of the program file 5005 needs to be installed” only when the version of the program included in the program file 5005 is newer than the “installed version” 5004.
  • the program installation unit 163 installs the program of the program file 5005 in the electronic blackboard 2 when the version confirmation unit 162 determines that “the program of the program file 5005 needs to be installed”.
  • the directly upper version determination unit 164 acquires the version of the program installed on the electronic blackboard 2 immediately above (“installed version” 2004) from the electronic blackboard 2 directly above.
  • the immediately upper version determination unit 164 determines whether the acquired “installed version” 2004 is the same as the version of the program installed in the electronic blackboard 2 (“installed version” 5004). By this determination, it can be determined whether or not the electronic blackboard 2 directly above and the setting information can be synchronized.
  • the directly upper version determining unit 164 determines “same”
  • the directly upper version determining unit 164 permits the setting request unit 183 described later to synchronize setting information.
  • the program acquisition unit 165 acquires the program file 2005 from the electronic blackboard 2 directly above and stores it in the storage unit 5000 as the program file 5005.
  • the program file 5005 is already stored in the storage unit 5000, the acquired program file 2005 is overwritten on the program file 5005 already stored as a new program file 5005.
  • the memory reading unit 169 reads various types of information stored in the storage unit 5000, and stores various types of information in the storage unit 5000. In the following description, even when the storage reading unit 169 reads various types of information from the storage unit 5000 or stores various types of information in the storage unit 5000, for convenience of explanation, “via the storage reading unit 169”. May be omitted.
  • FIG. 15 is an example of a detailed functional block diagram of the setting acquisition unit 180 and the setting providing unit 150.
  • the electronic blackboard 2 directly below also has a setting providing unit 150, but is not shown for convenience of explanation.
  • the electronic blackboard 2 directly above also has a setting acquisition unit 180, but is not shown for convenience of explanation.
  • the setting providing unit 150 includes a communication unit 151, a setting receiving unit 152, an MD generating unit 153, an information providing unit 154, and a storage reading unit 155.
  • Each of these functional units is a function or means realized by the CPU 101 executing a program stored in the SSD 104 shown in FIG. 4 and controlling any of the components shown in FIG.
  • the setting providing unit 150 can access the storage unit 2000 constructed by any one or more of the SSD 104, the ROM 102, and the RAM 103 shown in FIG.
  • the storage unit 2000 includes a setting information storage unit 2001, an authentication information storage unit 2002, and an MD storage unit 2003. First, information stored in the storage unit 2000 will be described.
  • the storage unit 2000 in FIG. 15 is the same as the storage unit 2000 in FIG. 14, but may be different.
  • the setting information storage unit 2001 is the same as the setting file storage unit 430 in FIG.
  • Table 11 is a diagram showing an example of authentication information stored in the authentication information storage unit 2002.
  • a passcode is included as authentication information.
  • the electronic blackboard 2 authenticates the electronic blackboard 2 immediately below by determining whether or not the passcode transmitted by the electronic blackboard 2 directly below matches the passcode stored in the authentication information storage unit 2002.
  • the authentication method may be an authentication method that uses an electronic certificate instead of using a passcode.
  • Table 12 is a diagram showing an example of information related to setting information stored in the setting information storage unit 2001.
  • “information about setting information” includes a setting information type, setting information setting date and time, and a file name.
  • the setting information whose setting information type is “for main body operation” shown in Table 12 is currently valid setting information.
  • the setting information setting date and time indicates the date and time when the setting information was set on the electronic blackboard 2.
  • the file name is a file name of a file in which setting information is stored. “Information relating to setting information” shown in Table 12 is stored in the setting information storage unit 2001 as part of the setting information.
  • Table 13 shows an example of a hash value (Message Digest) stored in the MD storage unit 2003.
  • the MD storage unit 2003 stores a message digest of setting information for “main body operation”.
  • a hash value is generally used as the message digest, but may be other information having a property that changes when the setting information changes slightly.
  • the electronic blackboard 2 When the setting information is set, the electronic blackboard 2 generates a hash value from the setting information and stores it in the MD storage unit 2003. The hash value is used by the electronic blackboard 2 immediately below to determine whether the setting information needs to be synchronized.
  • the communication unit 151 of the setting providing unit 150 is realized by the CPU 101, the network controller 105, or the like illustrated in FIG. 4 and transmits / receives various information to / from the electronic blackboard 2 and the setting manager PC 500 directly below.
  • the screen information of the “setting information setting screen” is transmitted to the setting manager PC 500, and the setting information is transmitted to the electronic blackboard 2 directly below.
  • HTTP HyperText Transfer Protocol
  • HTTP / 2, SPDY pronounced SPEEDY
  • any communication protocol may be used. Further, in the following description, even when the setting providing unit 150 communicates with the setting acquisition unit 180 by the communication unit 151, the description “via the communication unit 151” may be omitted.
  • the setting reception unit 152 is realized by the CPU 101 shown in FIG. 4 and functions as a Web server and a Web application, and the screen information of the “setting information setting screen” transmitted to the setting manager PC 500 is HTML, JavaScript (registered trademark), or the like. Generate with
  • the MD generation unit 153 is realized by the CPU 101 or the like illustrated in FIG. 4, generates a message digest from the setting information, and stores the message digest in the MD storage unit 2003 via the storage reading unit 155.
  • the information providing unit 154 is realized by the CPU 101 or the like shown in FIG. 4 and provides setting information to the electronic blackboard 2 immediately below in response to a request from the electronic blackboard 2 directly below.
  • the storage / reading unit 155 is realized by the CPU 101, the SSD 104, the RAM 103, and the like illustrated in FIG. 4 and performs processing for storing various types of information in the storage unit 2000 and reading various types of information from the storage unit 2000.
  • the setting providing unit 150 executes a process of storing various types of information in the storage unit 2000 or reading out various types of information from the storage unit 2000, it is referred to as “via the storage reading unit 155”. The description may be omitted.
  • the setting acquisition unit 180 includes a communication unit 181, a setting reception unit 182, a setting request unit 183, an MD comparison unit 184, a storage reading unit 185, an information acquisition unit 186, an MD generation unit 187, and an error code display unit 188. Yes.
  • Each of these functional units is a function or means realized by the CPU 101 executing a program stored in the SSD 104 shown in FIG. 4 and controlling any of the components shown in FIG.
  • the setting acquisition unit 180 can access the storage unit 5000 constructed by any one or more of the SSD 104, the ROM 102, and the RAM 103 shown in FIG.
  • the storage unit 5000 includes a setting information storage unit 5001, a communication information storage unit 5002, and an MD storage unit 5003.
  • the setting information stored in the setting information storage unit 5001 and the message digest (hash value) stored in the MD storage unit 5003 are the same as the setting information and message digest in the electronic blackboard 2 directly above.
  • the storage unit 5000 in FIG. 15 is the same as the storage unit 5000 in FIG. 14, but may be different.
  • Table 14 is a diagram showing an example of communication information stored in the communication information storage unit 5002.
  • the communication information is information for the electronic blackboard 2 having the communication information storage unit 5002 to communicate with the electronic blackboard 2 directly above.
  • an IP address and a password are stored as communication information.
  • the setting manager operates the setting manager PC 500 to set the communication information in each electronic blackboard 2 (excluding the electronic blackboard 2 serving as the parent device 2p).
  • the setting manager assumes a multi-stage (three or more layers) tree structure network structure as shown in FIG. 11, and each electronic blackboard 2 has an IP address of the electronic blackboard 2 immediately above the electronic device 2, and Set a password.
  • the communication information illustrated is merely an example, and the communication information may include a port number or the like.
  • the communication unit 181 is realized by the CPU 101, the network controller 105, and the like shown in FIG. 4, and transmits and receives various types of information to and from the electronic blackboard 2 and the setting manager PC 500.
  • the screen information of the “communication information setting screen” is transmitted to the setting manager PC 500 and the setting information is received from the electronic blackboard 2 immediately above.
  • a communication protocol used by the communication unit 181 HTTP, HTTP / 2, SPDY, or the like is used, but any protocol may be used. In the following description, even when the setting acquisition unit 180 communicates with the setting providing unit 150 through the communication unit 181, the description “via the communication unit 181” may be omitted.
  • the setting reception unit 182 is realized by the CPU 101 shown in FIG. 4 and functions as a Web server and a Web application, and the screen information of the “communication information setting screen” transmitted to the setting manager PC 500 is HTML, JavaScript (registered trademark), or the like. Generate with
  • the setting request unit 183 is realized by the CPU 101 or the like illustrated in FIG. 4.
  • the immediately upper version determination unit 164 determines that the version of the installed electronic blackboard 2 and the installed program are the same, the setting request unit 183 Start the process of synchronizing information.
  • the timing for starting the synchronization is set as the synchronization timing in Table 15 described later. Further, when the setting request unit 183 starts communication, the setting request unit 183 acquires a hash value from the electronic blackboard 2 immediately above.
  • the MD comparison unit 184 is realized by the CPU 101 shown in FIG. 4 and the like, and compares the hash value stored in the MD storage unit 5003 of the storage unit 5000 with the hash value acquired from the electronic blackboard 2 immediately above.
  • the information acquisition unit 186 is realized by the CPU 101 shown in FIG. 4 or the like, and acquires setting information from the electronic blackboard 2 immediately above when hash values differ as a result of comparison by the MD comparison unit 184.
  • the information acquisition unit 186 stores the acquired setting information in the setting information storage unit 5001 of the storage unit 5000 via the storage reading unit 185.
  • the MD generation unit 187 is realized by the CPU 101 shown in FIG. 4 or the like.
  • a message digest is generated from the setting information.
  • the MD generation unit 187 stores the generated message digest in the MD storage unit 5003 via the storage reading unit 185.
  • the error code display unit 188 is realized by the CPU 101 or the like shown in FIG. 4 and displays an error code or the like related to the setting information synchronization processing on the display 3 or the setting manager PC 500.
  • the storage / reading unit 185 is realized by the CPU 101, the SSD 104, the RAM 103, and the like illustrated in FIG. 4, and performs processing for storing various types of information in the storage unit 5000 and reading various types of information from the storage unit 5000.
  • the setting acquisition unit 180 executes a process of storing various types of information in the storage unit 5000 or reading out various types of information from the storage unit 5000, it is referred to as “via the storage reading unit 185”. The description may be omitted.
  • the setting manager PC 500 includes a communication unit 221, an operation reception unit 222, a display control unit 223, and a storage reading unit 229. Each of these functional units is a function or means realized by the CPU 201 executing browser software 7001 stored in the auxiliary storage device 204 and controlling any of the components shown in FIG.
  • the setting manager PC 500 can access the storage unit 7000 constructed by any one or more of the auxiliary storage device 204, the ROM 202, and the RAM 203 shown in FIG.
  • the storage unit 7000 stores browser software 7001. Note that an application having a communication function similar to that of the browser software 7001 may be stored in the storage unit 7000.
  • the communication unit 221 is realized by the CPU 201 and the communication I / F 207 shown in FIG. 13 and transmits / receives various information to / from the electronic blackboard 2.
  • the communication unit 221 transmits setting information and communication information input by the setting manager to the electronic blackboard 2.
  • the setting manager uses the setting manager PC 500 to set the setting information in the main board 2p of the electronic blackboard 2.
  • all the electronic blackboards 2 of the parent device 2p and the child device layer C and the grandchild device layer G are synchronized with each other, and the same setting information is set in all the electronic blackboards 2 of the child device layer C and the grandchild device layer G. Is done.
  • the operation accepting unit 222 is realized by the CPU 201 and the input unit 205 shown in FIG. 13, and accepts various operations of the setting manager. Specifically, the operation reception unit 222 receives input of setting information, communication information, and the like.
  • the display control unit 223 is realized by the CPU 201 and the display I / F 206 shown in FIG. 13 and displays a “setting information setting screen” and a “communication information setting screen” on the display 210. Specifically, the display control unit 223 interprets screen information described in HTML, JavaScript (registered trademark), or the like transmitted from the electronic blackboard 2, and displays these screens.
  • the storage / reading unit 229 is realized by the CPU 201, the ROM 202, the RAM 203, and the like illustrated in FIG. 13, and performs processing for storing various types of information in the storage unit 7000 and reading various types of information from the storage unit 7000.
  • FIG. 16A is a diagram showing an example of a “setting information setting screen” 501 displayed on the display 210 of the setting manager PC 500.
  • a system setting button 502 On the setting information setting screen 501, a system setting button 502, a security setting button 503, a network setting button 504, and a “date and date setting” button 505 are displayed.
  • the numbers “1 to 4” are item numbers.
  • the setting manager performs detailed settings by pressing each button.
  • setting information set by each button will be described.
  • the setting manager can set the site name, automatic shut-out time, automatic restart time, automatic standby time, settings related to synchronization, and the like.
  • the setting manager can enter the domain of the mail address that can be input by the user or the domain of the mail address that is restricted by the user (when both are set, the inputable domain becomes valid. ), Prohibition of direct input of email address, minimum number of digits of password, password generation timing, password display restriction, etc. can be set.
  • “password generation timing” refers to a generation timing (at the time of activation), a generation time, and the like when the electronic blackboard 2 automatically generates a password. That is, the electronic blackboard 2 can automatically generate a password and can be arbitrarily set by a setting manager.
  • the setting manager can set IP address, subnet mask, default gateway, DNS settings, and the like.
  • the setting manager can set the time zone, the presence / absence of synchronization with the time server, and the like.
  • the “automatic restart time” is set by pressing the system setting button 502.
  • the setting manager can set the synchronization timing.
  • an arbitrary time may be set as the synchronization timing. Since the synchronization timing is included in the setting information and is shared among the electronic blackboards 2, the electronic blackboard 2 can acquire the setting information from the electronic blackboard 2 immediately above at a common timing.
  • FIG. 16A only shows an example of setting information, and the setting manager can set many other items.
  • information that can be set on the setting information setting screen 501 is included in the setting information, but information that is not preferable for synchronization is exceptionally excluded from the target of synchronization.
  • the network setting includes an IP address and a subnet mask, but if the IP address is synchronized, all the electronic blackboards 2 hold the same IP address and are excluded from synchronization. Since the subnet mask is not necessarily the same for all electronic blackboards 2, it is excluded from the synchronization target.
  • the setting manager PC 500 receives the setting contents set by the setting manager, and transmits the received setting contents to the electronic blackboard 2 on which the setting information setting screen 501 is displayed.
  • the setting providing unit 150 of the electronic blackboard 2 stores the setting information in the setting information storage unit 2001 based on the transmitted setting content.
  • the setting manager uses the setting manager PC 500 to set the setting information in the main board 2p of the electronic blackboard 2. Therefore, the electronic blackboard 2 in this case means the master unit 2p (the electronic blackboard 2 directly above in FIG. 15).
  • the setting reception unit 152 of the electronic blackboard 2 directly above displays the setting information setting screen 501 as shown in FIG. 16A on the setting manager PC 500 instead of the display 3 of the electronic blackboard 2 itself. It is also possible to accept the setting from the setting manager.
  • FIG. 16B is a diagram showing an example of a system setting screen 601 displayed on the display of the setting manager PC 500.
  • the system setting screen 601 is displayed when the system setting button 502 shown in FIG. 16A is pressed.
  • a message “Synchronize device settings” is displayed on the system setting screen 601 together with a check box 602.
  • the setting manager When the setting manager synchronizes the setting information with the electronic blackboard 2 directly above the electronic blackboard 2, the setting manager turns on the check box 602 (that is, depresses the check box 602 and puts a check mark in the check box 602, and so on).
  • the parent device 2p When the setting manager turns on the check box 602 of the parent device 2p (the electronic blackboard 2 immediately above in FIG. 15) using the system setting screen 601, the parent device 2p provides setting information to the child device 2c. It becomes possible.
  • the setting manager can set the “synchronization item” 6021 and the “synchronization timing” 6022.
  • the “synchronization item” 6021 is displayed in a state where the item numbers in FIG. 16A can be individually selected.
  • As “synchronization timing” 6022, “when restarting”, “when power is off”, and columns for inputting time are displayed in a selectable state.
  • the setting of the check box 602 is reflected in the item “Synchronization” in Table 15 described later.
  • the setting of “synchronization item” 6021 is also reflected in the item of “synchronization item”.
  • the setting of “synchronization timing” 6022 is also reflected in the item of “synchronization timing”.
  • a message “automatic upgrade” is displayed on the system setting screen 601 together with a check box 607.
  • the setting manager sets the check box 607 to ON when the electronic blackboard 2 acquires a program file from the electronic blackboard 2 directly above and upgrades the program. As described above, it may be necessary to upgrade the program in order to synchronize the setting information, but the user may not want to upgrade the program. In this case, the setting manager can set the check box 607 to OFF.
  • the setting administrator can set the check box 608 of “version upgrade permission display”. Even if the setting manager sets the check box 607 to ON, if the check box 608 is ON, the electronic blackboard 2 displays a dialog shown in FIG. . Thereby, it is possible to confirm whether or not the user upgrades before upgrading.
  • the parent device 2p When the setting manager turns on the check box 608 of the parent device 2p (the electronic blackboard 2 immediately above in FIG. 15) using the system setting screen 601, the parent device 2p does not provide the program file 2005 to the child device 2c. Can be selected.
  • the setting manager When setting the system setting to the electronic blackboard 2, the setting manager presses the OK button 620. On the other hand, when the system setting is not set in the electronic blackboard 2, the setting manager presses the cancel button 621.
  • the OK button 620 When the OK button 620 is pressed, the setting manager PC 500 receives the setting contents set by the setting manager and transmits the received setting contents to the electronic blackboard 2 on which the system setting screen 601 is displayed.
  • the setting providing unit 150 of the electronic blackboard 2 that has received the setting content stores the setting information in the setting information storage unit 2001 based on the received setting content.
  • the setting manager uses the setting manager PC 500 to set the setting information in the main board 2p of the electronic blackboard 2. Therefore, the electronic blackboard 2 in this case means the master unit 2p (the electronic blackboard 2 directly above in FIG. 15).
  • the setting reception unit 152 of the electronic blackboard 2 immediately above displays the system setting screen 601 as shown in FIG. 16B on the display 3 of the electronic blackboard 2 instead of displaying it on the setting manager PC 500. It is also possible to accept settings from a setting manager.
  • Table 15 schematically shows an example of the contents of the setting information set by the setting manager (that is, a specific example of the setting information described above together with Table 12).
  • the setting information includes items and contents for each item number.
  • the setting information of “system setting” includes items of “synchronization”, “synchronization timing”, and “synchronization item” as setting items related to synchronization of the setting information.
  • the item of “synchronization” ON is set when synchronization processing is performed, and OFF is set when synchronization is not performed.
  • the item “synchronization timing” a timing at which the electronic blackboard 2 is synchronized is set.
  • the item of “synchronization item” the number of the item to be synchronized among some items of the setting information is set.
  • the item of “synchronization timing”, “at the time of restart”, “immediately after power off”, “predetermined time (for example, 4 o'clock every day)” or the like can be set.
  • items of “automatic version upgrade” and “version upgrade permission display” are included as setting items related to program upgrade.
  • the system setting screen 601 shown in FIG. 16B is an item of setting information items of system settings that can be set by the setting manager by pressing the system setting button 502 shown in FIG. Among these, it is a system setting screen for setting setting information related to synchronization and setting information related to program upgrade.
  • the setting information items of the system setting that can be set by the setting manager by pressing the system setting button 502
  • items other than those described above that is, setting of the site name, automatic shut-out time, automatic restart time, and automatic standby time
  • the system setting screen is prepared as a screen on the next page of the system setting screen in FIG. 16B.
  • FIG. 17 is a diagram showing an example of a “communication information setting screen” 701 displayed on the display of the setting manager PC 500.
  • an IP address input field 702 and a password input field 703 are displayed.
  • the setting manager inputs the IP address of the electronic blackboard 2 immediately above the electronic blackboard 2 displaying the communication information setting screen 701 in the IP address input field 702.
  • the setting manager inputs a password in the password input field 703.
  • the setting manager When setting the input communication information in the electronic blackboard 2, the setting manager presses an OK button 704. When the communication information is not set in the electronic blackboard 2, the setting manager presses a cancel button 705. When the OK button 704 is pressed, the setting manager PC 500 receives the input communication information and transmits the received communication information to the electronic blackboard 2 on which the system setting screen 601 is displayed. The setting reception unit 182 of the electronic blackboard 2 that has received the communication information causes the communication information storage unit 5002 to store the communication information based on the received setting content.
  • the setting reception unit 182 of the electronic blackboard 2 displays a communication information setting screen 701 as shown in FIG. 17 on the display manager 3 of the electronic blackboard 2 itself instead of displaying it on the setting manager PC 500 and receives settings from the setting manager. It is also possible.
  • FIG. 18 is an example of a sequence diagram illustrating a procedure in which the image processing system 1 synchronizes a new version of a program.
  • processing is performed by an arbitrary child device 2 c in the child device layer C and an arbitrary grandchild device 2 g in the child device layer G.
  • step S1 the setting manager operates the setting manager PC 500 to set a new version of the program file 2005 in the parent device 2p.
  • the setting manager may attach the USB memory storing the program file 2005 to the parent device 2p and copy the program file 2005 to the storage unit 2000.
  • the parent device 2p may download the program file 2005 from a server that distributes the program.
  • step S2 the master unit 2p stores the program file 2005 in the storage unit 2000, and the program of the program file 2005 is installed in the master unit 2p itself at the next startup.
  • the parent device 2p installs the program of the program file 2005
  • a situation occurs in which the versions of the programs of the parent device 2p and the child device 2c are different. It is also possible for the setting manager to forcibly install the program of the program file 2005 in the parent device 2p.
  • step S3 the “directly upper version determination unit” 164 of the slave unit 2c checks the version of the program of the master unit 2p when the slave unit 2c is activated. That is, it is determined whether the version of the program installed in the parent device 2p and the “installed version” 2004 are the same as the version of the program installed in the child device 2c (“installed version 5004”). . In FIG. 18, it is assumed that the determination result is “program versions are different”.
  • step S4 the program acquisition unit 165 of the slave unit 2c requests the master unit 2p for the program file 2005. At that time, the slave unit 2c logs in by transmitting the password stored in the communication information storage unit 5002 to the master unit 2p.
  • step S5 the program information providing unit 172 of the parent device 2p transmits the program file 2005 stored in the storage unit 2000 to the child device 2c.
  • step S6 the program acquisition unit 165 of the child device 2c stores the program file 2005 acquired from the parent device 2p as the program file 5005 in the storage unit 5000.
  • the program installation unit 163 installs the program of the program file 5005 in the child device 2c.
  • the grandchild machine 2g can upgrade the program in the same manner as described above.
  • processing in subsequent steps S7 to S10 may be the same as that in steps S3 to S6 described above.
  • FIG. 19 is an example of a flowchart for explaining in detail the procedure by which the electronic blackboard 2 other than the parent device upgrades the program.
  • the process of FIG. 19 starts when the electronic blackboard 2 is activated. This activation may be either when the system is restarted by setting an automatic restart time by pressing the system setting button 502 or when the user is activated.
  • the version confirmation unit 162 of the electronic blackboard 2 determines whether the version of the program installed in the electronic blackboard 2 itself is the same as the program version of the program file 5005 stored in the storage unit 5000 (S51). ).
  • the version of the program installed in the electronic blackboard 2 itself is “installed version” 5004 stored in the storage unit 5000.
  • step S51 determines whether or not to display a dialog as shown in FIG. 21 (S52). That is, it is determined whether the check box 608 is checked on the setting screen of FIG. 16B.
  • step S52 If the determination result in step S52 is No, the program of the program file 5005 is installed without displaying the dialog shown in FIG. 21 (S54).
  • step S52 the program installation unit 163 displays a dialog as shown in FIG. 21, and determines whether or not an operation for pressing the “update” button 803 is received from the user (S30). Specifically, the event distribution unit 25 determines that the coordinates detected by the coordinate detection unit 22 in the state where the dialog of FIG. 21 is displayed are UI operations. The operation processing unit 26 can accept an operation of pressing an “update” button 803 from the user based on the coordinates operated by the UI.
  • the electronic blackboard 2 enters a standby state when the standby time elapses or is shut down when the shutdown time elapses.
  • step S53 If the determination result in step S53 is No, the program is not installed, so the electronic blackboard 2 activates other non-activated functions (continues the activation process). Thereafter, the processing shifts to the processing in FIG.
  • step S53 the program installation unit 163 of the electronic blackboard 2 installs the program using the program file 5005 stored in the storage unit 5000 (S54).
  • the program file 5005 is copied from the storage unit 5000 to the storage unit 2000 so that the program file 5005 can be provided to the electronic blackboard 2 directly below (S55).
  • the program file 5005 of the storage unit 5000 may be provided to the electronic blackboard 2 directly below, and in that case, step S55 may not be performed.
  • step S56 When the program is installed, the electronic blackboard 2 is restarted (S56). This is to replace a file that cannot be replaced during startup, like a normal computer. By restarting, the process returns to step S51, but after restarting, it is determined Yes in step S51.
  • step S57 the electronic blackboard 2 generates a thread for program download processing (S57).
  • This thread describes a program download procedure, for example. By creating the thread, the electronic blackboard 2 can repeatedly execute the thread until the program can be downloaded.
  • FIG. 20 is an example of a diagram illustrating processing performed after the electronic blackboard 2 is activated.
  • the process of FIG. 20 is executed when a necessary function is activated on the electronic blackboard 2 after the process of FIG.
  • the “directly upper version determination unit” 164 of the electronic blackboard 2 determines whether or not the program version of the electronic blackboard 2 itself is the same as that of the electronic blackboard 2 directly above (S110). That is, the immediately upper version determination unit 164 communicates with the electronic blackboard 2 immediately above using the communication information stored in the communication information storage unit 5002 and acquires “installed version 2004” from the electronic blackboard 2 immediately above. The directly upper version determination unit 164 determines whether the acquired “installed version” 2004 of the electronic blackboard 2 directly above and the “installed version” 5004 of the electronic blackboard 2 having the immediately above version determination unit 164 are the same.
  • step S110 When the determination result in step S110 is Yes (that is, when the program versions match), the setting information may be acquired from the electronic blackboard 2 directly above, so the setting acquisition unit 180 of the electronic blackboard 2 synchronizes the setting information. (S160). Details of the synchronization of the setting information will be described later with reference to FIG.
  • the electronic blackboard 2 shuts down (S170).
  • the setting can be validated.
  • step S110 determines whether the program versions do not match. If the determination result in step S110 is No (that is, if the program versions do not match), the program acquisition unit 165 needs to match the program versions before synchronizing the setting information. A download processing thread of the generated program is executed (S120).
  • the program acquisition unit 165 determines whether a program file can be downloaded from the electronic blackboard 2 directly above (S130). Examples of conditions to be determined in step S130 include the following conditions (i), (ii), and (iii). (i) The electronic blackboard 2 immediately above holds the program file 2005. (ii) The electronic blackboard 2 immediately above has enabled the synchronization setting. (iii) The electronic blackboard 2 immediately above has enabled the program update setting.
  • the reason for determining the condition (i) is that the electronic blackboard 2 cannot acquire the program file unless the electronic blackboard 2 immediately above holds the program file 2005.
  • the reason for determining the condition (ii) is that the electronic blackboard 2 cannot acquire the program file 2005 when the electronic blackboard 2 immediately above is set not to provide the setting information.
  • the reason for determining the condition (iii) is that the electronic blackboard 2 cannot acquire the program file 2005 if the electronic blackboard 2 immediately above is set not to provide the program file 2005.
  • the conditions (ii) and (iii) may be omitted, and the program acquisition unit 165 may determine that the program file can be downloaded from the electronic blackboard 2 immediately above if the condition (i) is satisfied.
  • step S130 the program acquisition unit 165 periodically repeats the determination in step S130. Thereby, without increasing the load on the two electronic blackboards 2 that are directly above and below each other, when the electronic blackboard 2 can be downloaded, the program file can be downloaded from the electronic blackboard 2 immediately above.
  • the time interval for repeating the determination in the case of repeating the determination periodically does not have to be fixed. For example, the determination is repeated at time intervals of several minutes to one hour. Further, the determination may not be repeated at an accurate interval, or the determination may be repeated at an irregular interval.
  • step S130 the program acquisition unit 165 downloads the program file 2005 from the electronic blackboard 2 immediately above (S140).
  • the downloaded program file 2005 is stored in the storage unit 5000 as a program file 5005, and is installed in the electronic blackboard 2 having the storage unit 5000 at the next activation.
  • the setting information can be synchronized when the “installed version” 5004 of the electronic blackboard 2 is the same as the “installed version” 2004 of the electronic blackboard 2 immediately above.
  • the electronic blackboard 2 downloads the program file 5005 from the electronic blackboard 2 directly above and downloads it to the electronic blackboard 2 itself. Can be installed.
  • the setting information can be synchronized with the electronic blackboard 2 directly above.
  • FIG. 21 is a diagram illustrating an example of a dialog 801 displayed on the display 3 of the electronic blackboard 2 when the check box 608 is ON in the system setting screen 601.
  • the dialog 801 displays a description 802 “A new program is available. Do you want to update the program?”, An “Update” button 803 and a “Do not update” button 804.
  • step S53 of FIG. 19 When the user presses the “update” button 803, “Yes” is determined in step S53 of FIG. 19, and the electronic blackboard 2 upgrades the program.
  • the user presses the “not update” button 804 it is determined No in step S53 of FIG. 19, and the electronic blackboard 2 does not upgrade the program.
  • FIG. 22 is an example of a sequence diagram illustrating a procedure in which the image processing system 1 synchronizes setting information.
  • processing of an arbitrary child device 2c in the child device layer C and an arbitrary child device 2g in the child device layer G is assumed.
  • step S201 the setting manager operates the “setting information setting screen” as described above with reference to FIGS. 16A and 16B to set the setting information in the parent device 2p.
  • step S202 the setting reception unit 152 of the parent device 2p receives the setting information set in step S201 and stores it in the setting information storage unit 2001 as setting information for main body operation.
  • the setting reception unit 152 of the parent device 2p updates the setting information setting date and time.
  • step S203 the MD generation unit 153 of the parent device 2p generates a message digest (hash value) from the setting information for main body operation, and stores the generated message digest in the MD storage unit 2003. As a result, the parent device 2p can transmit a message digest (hash value) to the child device 2c.
  • step S204 when the setting request unit 183 of the child device 2c detects that it is the timing to synchronize the setting information because the electronic blackboard 2 itself has restarted, for example, the IP address stored in the communication information storage unit 5002 Communicate with the parent device 2p and send the password to the parent device 2p to log in. If the login is successful, the setting request unit 183 requests a hash value from the parent device 2p.
  • the master unit 2p and the slave unit 2c need to operate in synchronization procedures that are consistent with each other. Such a synchronization procedure is referred to as a protocol.
  • a version is defined for the protocol, and it is preferable that the slave unit 2c performs synchronization processing using the same version protocol as that of the master unit 2p. From the above, when the protocol version and the password match, the hash value is transmitted from the parent device 2p to the child device 2c. In the process of step S204, it is assumed that the protocol version and the password match.
  • the child device 2c cannot acquire the hash value from the parent device 2p.
  • the setting request unit 183 of the handset 2c records an error. Details will be described later with reference to FIG.
  • step S205 the communication unit 151 of the parent device 2p transmits the message digest (hash value) stored in the MD storage unit 2003 to the child device 2c.
  • the setting request unit 183 of the child device 2c receives the message digest (hash value) transmitted from the parent device 2p, and the MD comparison unit 184 stores the hash value of the parent device 2p and the MD storage unit 5003. Compare the hash value that has been set. By comparing hash values, the communication load can be reduced as compared with the entire setting information. Here, it is assumed that the two hash values do not match. The fact that the two hash values do not match indicates that the setting information for main unit operation of the parent device 2p has been updated (newer than the setting information of the child device 2c). For example, the serial numbers of the setting information may be compared instead of the hash value.
  • the master unit 2p or the setting manager gives a serial number to the setting information
  • the slave unit 2c also synchronizes the serial number when the setting information is synchronized. If the serial numbers do not match, the child device 2c can determine that the setting information of the parent device 2p has been updated. Alternatively, the setting information itself may be compared instead of the hash value. In this case, if the setting information is different from each other, the child device 2c can update the setting information of the child device 2c itself using the setting information of the parent device 2p as it is.
  • the parent device 2p may acquire the hash value of the child device 2c and compare it with the hash value of the parent device 2p itself. In this case, if the load on the parent device 2p increases, but the comparison of hash values is not so large, the parent device 2p can also compare the hash values.
  • step S207 if the hash values do not match as a result of the comparison in step S206, the information acquisition unit 186 of the child device 2c requests setting information from the parent device 2p. If the hash values match, the slave unit 2c does not request the setting information, and therefore it is possible to suppress an increase in the load on the master unit 2p and the slave unit 2c.
  • step S208 the communication unit 151 of the parent device 2p transmits the setting information for main body operation read from the setting information storage unit 2001 to the child device 2c.
  • step S209 the communication unit 181 of the child device 2c receives setting information from the parent device 2p, and the information acquisition unit 186 stores the setting information received from the parent device 2p in the setting information storage unit 5001 as setting information for main body operation.
  • the information acquisition unit 186 updates the setting information setting date and time.
  • the child device 2c copies the setting information from the storage unit 5000 to the setting information storage unit 2001 so that the setting information can be transmitted to the grandchild device 2g.
  • the setting information in the setting information storage unit 5001 may be transmitted to the grandchild machine 2g, and in this case, it is not necessary to perform the copying.
  • the setting information storage unit 5001 is the same as the setting file storage unit 430 in FIG.
  • step S210 the MD generation unit 187 of the child device 2c generates a message digest (hash value) from the setting information acquired from the parent device 2p, and stores the generated message digest in the MD storage unit 5003. Thereby, the subunit
  • the message digest is copied from the MD storage unit 5003 to the MD storage unit 2003 so that the child device 2c can transmit the message digest to the grandchild device 2g.
  • the message digest of the MD storage unit 5003 may be transmitted to the grandchild machine 2g, and in this case, the above-mentioned copying may not be performed.
  • the setting information is synchronized between the parent device 2p and the child device 2c by the processing as described above.
  • the setting request unit 183 of the grandchild machine 2g detects that it is the timing to synchronize the setting information
  • the grandchild machine 2g executes the same processing as the child machine 2c, as shown in steps S11 to S17.
  • the electronic blackboard 2 directly below may perform a process of updating the setting information of the electronic blackboard 2 itself.
  • the load on the electronic blackboard 2 can be reduced as compared with the setting information set in the plurality of electronic blackboards 2 immediately below.
  • the timing at which the grandchild machine 2g acquires the setting information is delayed by one cycle from the child machine 2c. This is because when the grandchild machine 2g is activated, since the slave machine 2c is in the process of synchronizing the setting information, the hash values match each other, and the grandchild machine 2g determines that synchronization is not necessary. Accordingly, for example, if the synchronization timing is once a day (the electronic blackboard 2 is restarted once a day), the grandchild device 2g acquires the setting information one day more than the child device 2c. Be late.
  • the electronic blackboard 2 does not need to synchronize the setting information of the electronic blackboard 2 itself and transmit the setting information to the electronic blackboard 2 directly below at the same timing because the timing is synchronized in this way. Therefore, it is easy to suppress an increase in load. If such a delay is inconvenient, the setting manager sets the number of automatic restarts to multiple times a day, or the user or setting manager manually restarts the system as appropriate. It is possible to reduce the delay.
  • FIG. 23 is an example of a flowchart illustrating a procedure in which the electronic blackboard 2 updates the setting information.
  • the processing in step S204 in FIG. 22 will be mainly described.
  • the setting request unit 183 of the child device 2c requests a hash value from the parent device 2p (step S310).
  • the communication unit 151 of the parent device 2p transmits a hash value or an error code corresponding to the content of the error to the child device 2c. Therefore, the subunit
  • the setting request unit 183 of the child device 2c determines whether or not the hash value has been acquired (step S320). When the hash value can be acquired (Yes in step S320), the information acquisition unit 186 of the child device 2c acquires the setting information as described above (step S330).
  • the setting request unit 183 of the slave unit 2c records the error code in the storage unit 5000 (Step S340).
  • error codes There are the following types of error codes. ⁇ 400 ... Protocol version does not match ⁇ 401 ... Password does not match
  • the setting request unit 183 of the slave unit 2c means no response when the master unit 2p does not respond (due to power off, etc.)
  • the error code 402 is recorded.
  • the error code display unit 188 can display the error code on the display 3 of the electronic blackboard 2 or the setting manager PC 500.
  • FIG. 24A is a diagram showing an example of a “setting information setting screen” 501 displayed on the display of the setting manager PC 500 when an error code is recorded in step S340 of FIG.
  • the error code display unit 188 displays the “setting information setting date” 506 and the synchronization status 507 stored in the setting information storage unit 5001 on the setting information setting screen 501. Since an error is displayed as the synchronization status, the setting manager can grasp that synchronization could not be performed. Further, since the error code (error content) is further displayed as the synchronization status, the reason why the synchronization could not be understood.
  • FIG. 24B is a diagram showing an example of an error code displayed on the display 3 of the electronic blackboard 2.
  • a tool icon column 511 such as “handwriting” or “eraser”, a page tool column 512 for switching pages, and the like are displayed.
  • the error code display unit 188 of the electronic blackboard 2 displays the “setting information setting date and time” 506 and the synchronization status 507 stored in the “setting information storage unit” 5001 on the upper right side of the display 3, for example.
  • the setting manager can grasp that the synchronization has failed and can further investigate the reason why the synchronization cannot be performed.
  • each electronic blackboard 2 repeats synchronizing the setting information with the electronic blackboard 2 directly above, thereby synchronizing the setting information of all the electronic blackboards 2. Can do.
  • the setting manager may set setting information on the electronic blackboard 2 that is relatively lower than the parent device 2p, in addition to setting setting information on the electronic blackboard 2 at the top of the tree structure (that is, the parent device 2p). .
  • the electronic blackboard 2 that is lower than the electronic blackboard 2 on which the setting manager has set the setting information can synchronize the setting information.
  • Two or more parent devices 2p may exist in the hierarchy of the parent device 2p. In this case, the setting manager sets the setting information for each of the two parent devices 2p.
  • the synchronization processing has been described by using the setting information of the electronic blackboard 2 as an example. Also good.
  • the present invention can be applied to projectors, image forming apparatuses (copiers, printers, scanner apparatuses, MFPs (Multi-Function Peripherals), etc.), video conference terminals, and the like.
  • the setting information is not limited to the information described above.
  • print settings for printing with a printer connected to the electronic blackboard 2 print authentication presence / absence, password, encryption / non-encryption, etc.
  • region and language settings registration (memory) data management settings (electronic Settings regarding restrictions on reading and writing of information held by the blackboard 2)
  • color profile settings color profile settings
  • user information of the user of the electronic blackboard 2 user name, email address, etc.
  • Etc. may be included in the setting information.
  • devices other than the electronic blackboard 2 synchronize information
  • information unique to the device may be synchronized.
  • the processing of the electronic blackboard 2 is divided into processing units according to main functions in order to facilitate understanding of the processing by the electronic blackboard 2.
  • the present invention is not limited by the method of dividing the processing unit or the name.
  • the processing of the electronic blackboard 2 can be divided into more processing units according to the processing content. Further, the processing of the electronic blackboard 2 can be divided so that one processing unit includes more processing.
  • one or more of the storage units included in the storage units 2000 and 5000 illustrated in FIGS. 14 and 15 may exist on the network.
  • the communication information storage unit 5002 is an example of a communication information storage unit
  • the communication unit 161 and the immediately upper version determination unit 164 are examples of a first determination unit
  • the communication unit 181 and the information acquisition unit 186 are setting information acquisition units. It is an example.
  • the program acquisition unit 165 is an example of a software acquisition unit
  • the storage unit 5000 is an example of a file storage unit
  • the program installation unit 163 is an example of an installation unit.
  • the version confirmation unit 162 is an example of a second determination unit.
  • a dialog 801 is an example of a screen for accepting whether to install.
  • the setting request unit 183 is an example of a message digest acquisition unit.
  • the MD generation unit 187 is an example of a generation unit, and the MD comparison unit 184 is an example of a third determination unit.
  • the setting manager PC 500 is an example of an external device
  • the image processing system 1 is an example of an information processing system
  • the electronic blackboard 2 directly above is an example of another information processing apparatus
  • the electronic blackboard 2 directly below is “More” Is an example of an “information processing apparatus”.
  • the information processing method performed by the image processing system 1 is an example of an information processing method.
  • the error code display unit 188 is an example of display processing means.
  • the display 3 is an example of a display device.
  • the setting information storage unit 5001 and the setting information storage unit 2001 are examples of setting information storage means.
  • the program information providing unit 172 is an example of software providing means
  • the information providing unit 154 is an example of providing means.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Facsimiles In General (AREA)
  • Stored Programmes (AREA)

Abstract

情報処理装置は、インストールされているソフトウェアにより機能を提供し、動作に関する設定情報に基づいて動作し、他の情報処理装置と通信するための通信情報が記憶された通信情報記憶手段と、前記通信情報を用いて前記他の情報処理装置と通信し、自機にインストールされている前記ソフトウェアのバージョンと、前記他の情報処理装置にインストールされている前記ソフトウェアのバージョンが一致するか否かを判定する第一の判定手段と、ソフトウェアのバージョンが一致すると前記第一の判定手段が判定した場合、前記通信情報を用いて前記他の情報処理装置と通信し、前記設定情報を前記他の情報処理装置から取得する設定情報取得手段と、を有する。

Description

情報処理装置、通信システム及び情報処理方法
 本発明は、情報処理装置、通信システム及び情報処理方法に関する。
 大型のフラットパネルディスプレイにタッチパネルが搭載された電子黒板が知られている。電子黒板は黒板の役割をする画面を表示し、タッチパネルを介して電子ペンや指等の軌跡を取り込んで、軌跡を手書き内容として画面に描画する。したがって、ユーザは画面を黒板のように使用することができる。また、パソコンと接続することができる電子黒板では、パソコンと同じ画面を表示して手書き内容を重畳して描画したり、電子黒板がタッチパネルから入力された情報にしたがってパソコンを操作したりすることができる。
 従来から、複数の機器に同じ設定を効率的に行う技術が考案されている(例えば、特許文献1参照)。特許文献1には第一の装置と第二の装置とを有するネットワーク同期システムが開示されている。第一の装置はユーザごとの個人設定情報を複製して記憶する同期用共有記憶手段を有する。第二の装置は、ユーザごとの個人設定情報を記憶する設定情報手段と、設定情報手段により記憶されたユーザごとの個人設定情報をユーザごとに最新の個人設定情報に更新する同期制御手段とを有する。同期制御手段は同期用共有記憶手段に記憶される複数の情報処理装置間で共通の更新情報を取得する。
 ところで、電子黒板では各種の機能を実現するためのソフトウェアが動作しているが、機能の追加や修正等によりソフトウェアはメーカによってバージョンアップされる。電子黒板の管理者等はバージョンアップされたソフトウェアを入手して電子黒板にインストールすることができる。
 ここで、ソフトウェアのバージョンが異なることによって電子黒板の動作に関する設定内容も異なる状況が生じる場合がある。設定内容が異なる場合に複数の電子黒板間で設定を同期することは好ましくない。また、電子黒板の数が多くなると、設定の同期のために管理者がそれら全てのソフトウェアをバージョンアップする場合、管理者の負担が大きい。上述の従来技術では、第二の装置が第一の装置と個人設定情報を同期する際に、ソフトウェアのバージョンについて考慮されていないという問題がある。
 本発明は、上記課題に鑑み、設定の同期に際してソフトウェアのバージョンを考慮することが可能な情報処理装置を提供することを目的とする。
 上記課題に鑑み、本発明は、インストールされているプログラムにより機能を提供し、動作に関する設定情報に基づいて動作する情報処理装置であって、他の情報処理装置と通信するための通信情報が記憶された通信情報記憶手段と、前記通信情報を用いて前記他の情報処理装置と通信し、前記情報処理装置にインストールされている前記プログラムのバージョンと、前記他の情報処理装置にインストールされている前記プログラムのバージョンが一致するか否かを判定する第一の判定手段と、ソフトウェアのバージョンが一致すると前記第一の判定手段が判定した場合、前記通信情報を用いて前記他の情報処理装置と通信し、前記設定情報を前記他の情報処理装置から取得する設定情報取得手段と、を有する。
 設定の同期に際してソフトウェアのバージョンを考慮することが可能な情報処理装置を提供することができる。
画像処理システムのネットワーク構造を説明する図の一例である。 比較例の画像処理システムのネットワーク構造を説明する図である。 設定情報の同期の際にプログラムのバージョンを考慮する処理について模式的に説明する図の一例である。 画像処理システムの全体構成図の一例である。 電子黒板のハードウェア構成図の一例である。 電子黒板の機能ブロック図の一例である。 ファイル処理部の機能ブロック図の一例である。 サーバ部とクライアント部の機能ブロック図の一例である。 各画像レイヤの構成図の一例である。 各電子黒板の処理を示したシーケンス図の一例である。 各電子黒板の処理を示したシーケンス図の一例である。 画像処理システムのネットワーク構造を説明する図の一例である。 親機、子機及び孫機で動作する機能の概略を説明する図の一例である。 設定管理者PCのハードウェア構成図の一例である。 プログラム提供部とプログラム管理部の詳細な機能ブロック図の一例である。 設定取得部と設定提供部の詳細な機能ブロック図の一例である。 設定情報設定画面の一例を示す図である。 システム設定画面の一例を示す図である。 通信情報設定画面の一例を示す図である。 画像処理システムが新しいバージョンのプログラムを同期する手順を示すシーケンス図の一例である。 親機以外の電子黒板がプログラムをバージョンアップする手順を詳細に説明するフローチャートの一例である。 電子黒板が起動後に行う処理を説明する図の一例である。 ディスプレイに表示されるダイアログの一例を示す図である。 画像処理システムが設定情報を同期する手順を示すシーケンス図の一例である。 電子黒板が設定情報を更新する手順を示すフローチャート図の一例である。 エラーコードが表示された設定情報設定画面の一例を示す図である。 電子黒板のディスプレイに表示されるエラーコードの一例を示す図である。
 以下、本発明を実施するための形態について図面を参照しながら説明する。
 <本実施形態のネットワーク構造>
 図1Aは、本実施形態の画像処理システム1のネットワーク構造を説明する図の一例である。画像処理システム1は木構造のネットワーク構造を有している。すなわち、複数の電子黒板2p(親機)、2c(子機)及び2g(孫機)が段階的に層をなす階層構造を形成している。以下図1Aあるいは図1Bの説明において、電子黒板2p、2c及び2gのうちの任意の電子黒板を示す場合には「電子黒板2」と称する。木構造は、階層構造の一種であり、ノード(電子黒板2)からノード(電子黒板2)へと枝分かれを繰り返す構造をいう。
 本実施形態では、子機1~3(符号は2c)がそれぞれ親機2pとの通信を開始して親機2pが有する設定情報を子機1が取得し子機1自体に設定する。子機2、3についても同様である。また、孫機1~3(符号は2g)は子機1との通信を開始して子機1が有する設定情報を取得し孫機1自体に設定する。孫機2、3についても同様である。
 図1Bは、本実施形態のネットワーク構造と比較される比較例を示す図である。図1Bでは親機2pが子機1~3に設定情報を設定し、子機1が孫機1~3に設定情報を設定する。このような構成では、親機2pは子機1~3に設定情報を設定しなければならず、子機1は設定情報を孫機1~3に設定しなければならず、1台の電子黒板2が負う負荷が大きい。
 これに対し、図1Aに示す本実施形態の同期方法では、1台の電子黒板2は自分から見て直上の電子黒板2とだけ通信して設定情報を取得すればよいので、各電子黒板2が設定情報を同期する際の負荷を抑制することができる。また、それぞれの電子黒板2は自分から見て直下の電子黒板の設定情報の更新に関する情報を有する必要がない。「直上の電子黒板」及び「直下の電子黒板」の意味については後述する。また、設定情報を提供する電子黒板2は直下の電子黒板2からの要求に応じて設定情報を送信するという比較的、負荷が低い処理を行えばよいので、複数の電子黒板2(図では3台)を直下に持つことができる。すなわち、電子黒板2を直列に接続する(デイジーチェーン)必要がない。これにより、比較的小さい負荷で、かつ、比較的短時間に全ての電子黒板2が設定情報を同期することができる。
 <プログラムのバージョンの考慮>
 図2は、設定情報の同期の際にプログラムのバージョンを考慮する処理について模式的に説明する図の一例である。本実施形態の電子黒板2は、設定情報を同期する前にプログラムのバージョンが直上の電子黒板2と同じかどうかチェックする。以下、同期までの手順を簡単に説明する。
(1)電子黒板2は、設定情報を同期する前にプログラムのバージョンが直上の電子黒板2と同じかどうかチェックする。
(2)バージョンが異なる場合、電子黒板2は直上の電子黒板2からプログラムのファイルをダウンロードする。
(3)電子黒板2は新しいプログラムをインストールする(バージョンアップする)。
(4)バージョンが同じ場合、又は、インストールによりバージョンが同じになると、電子黒板2は設定情報を同期させる。
 したがって、本実施形態の電子黒板2によれば、プログラムのバージョンが異なることで仮に異なる項目を有する設定情報を直上の電子黒板2が有していても、電子黒板2が異なる項目を有する設定情報を同期させることを防止できる。また、直上の電子黒板2とプログラムのバージョンが異なる電子黒板2は、プログラムをバージョンアップさせてから設定情報を同期させることができる。
 さらに、本実施形態の画像処理システム1によれば、各電子黒板2が設定情報だけでなくプログラムのバージョンを同期させることができる。したがって、管理者等が親機のプログラムをバージョンアップすれば、全ての電子黒板2がプログラムをバージョンアップできる。
 <用語について>
 ソフトウェアとはコンピュータの運用に関する手順やコンピュータが処理する情報をいう。プログラムはソフトウェアと称されるものの1つである。プログラムは、電子黒板2が実現すべき機能をコンピュータが解読できる言語で指示する情報であり、プログラムは機能指示記述情報ということができる。プログラムは、具体的には、アプリケーションプログラム、ファームウェア、OS(Operating System)等と呼ばれる場合があるが、これらに限られない。ソフトウェアとプログラムは厳密に区別しなくてもよいが、本実施形態の説明では便宜上ソフトウェア及びプログラムについてプログラムという言葉を用いる。
 また、1台の電子黒板2で例えばOSとアプリケーションプログラムのように複数のプログラムが動作する場合がある。本実施形態では、複数のプログラムを区別せずに、全てのプログラムがバージョンアップされてもよいし、一部のプログラムがバージョンアップされてもよいものとする。
 また、設定情報とは電子黒板2の動作に関する設定の内容を示す情報をいう。設定情報は、例えば、電子黒板2が適切に動作するための設定の内容を示す情報、電子黒板2の動作を許可又は制限するための設定の内容を示す情報、各機能のオン/オフの設定の内容を示す情報、ネットワークを介してインターネットや他の機器と通信するための設定の内容を示す情報等を含む。設定情報の具体的内容は図16A及び図16B等を用いて後述する。
 木構造のネットワーク構造は少なくとも三階層以上であることが好ましいが、二階層でもよい。三階層以上とは、木構造に含まれる最も深い階層が三階層以上であればよく、木構造に2階層以下の枝が存在してもよい。また、1つの階層に含まれる電子黒板2の数は3つに限られず、1つの階層に含まれる電子黒板2の数は、電子黒板2の数と階層の深さを考慮して適宜決定される。
 以下では、説明の便宜上、子機1~3の層を子機層C、孫機1~3の層を孫機層Gと称する。また、子機1から見た親機2pのように直接的に上位の電子黒板2を「直上の電子黒板2」と称し、親機2pからみた子機1のように直接的に下位の電子黒板2を「直下の電子黒板2」と称する。
 また、例えば親機2pから見た子機1~3及び孫機1~3(更に下位の電子黒板を含む)を「相対的に下位の電子黒板2」と称する。例えば孫機1からみた子機1及び親機2pの電子黒板2を「相対的に上位の電子黒板2」と称する。
  <システムの概要>
 図3は、本実施形態の画像処理システム1の全体構成図である。なお、図3では、説明を簡略化するために、2台の電子黒板2a及び2b、並びにこれらに付随する電子ペン4a及び4b等を示しているのであって、本実施形態の画像処理システム1において、3台以上の電子黒板や電子ペン等を利用してもよい。
 図3に示されているように、画像処理システム1は、複数の電子黒板2a及び2b、複数の電子ペン4a及び4b、USB(Universal Serial Bus)メモリ5a及び5b、ノートPC(Personal Computer)6a及び6b、テレビ(ビデオ)会議端末7a及び7b、並びにPC8を有する。また、電子黒板2a及び2b、並びにPC8は、通信ネットワーク9を介して通信可能に接続されている。更に、複数の電子黒板2a,2bには、それぞれディスプレイ3a及び3bが設けられている。
 また、電子黒板2aは、電子ペン4aによって生じたイベント(ディスプレイ3aに対する電子ペン4aのペン先、又は、電子ペン4aのペン尻のタッチ)によって描画された画像を、ディスプレイ3aに表示させることができる。なお電子黒板2aは、電子ペン4a、ユーザの手Ha等によって生じたイベント(拡大、縮小、ページめくり等のジェスチャ)に基づいて、ディスプレイ3a上に表示されている画像を変更することもできる。
 また、電子黒板2aには、USBメモリ5aが接続可能であり、電子黒板2aはUSBメモリ5aからPDF(Portable Document Format)等の電子ファイルを読み出したり、USBメモリ5aに電子ファイルを記録したりすることができる。また、電子黒板2aには、DisplayPort(登録商標)、DVI(Digital Visual Interface)、HDMI(登録商標。High-Definition Multimedia Interface)及びVGA(Video Graphics Array)等の規格による通信が可能なケーブル10a1を介してノートPC6aが接続されている。そして、電子黒板2aは、ディスプレイ3aに対する接触によってイベントを発生させ、このイベントを示すイベント情報を、マウスやキーボード等の入力装置からのイベントと同様に、ノートPC6aに送信する。同じく、電子黒板2aには、上記規格による通信が可能なケーブル10a2を介してテレビ(ビデオ)会議端末7aが接続されている。なお、ノートPC6a及びテレビ会議端末7aは、Bluetooth(登録商標)等の各種無線通信プロトコルに準拠した無線通信によって電子黒板2aと通信してもよい。
 一方、電子黒板2bが設置されている他の拠点では、上記と同様に、ディスプレイ3bを備えた電子黒板2b、電子ペン4b、USBメモリ5b、ノートPC6b、テレビ会議端末7b、ケーブル10b1及びケーブル10b2が利用される。更に電子黒板2bは、ユーザの手Hb等によって生じたイベントに基づいて、ディスプレイ3b上に表示されている画像を変更することもできる。
 これにより、一の拠点で電子黒板2aのディスプレイ3a上に描画された画像は、他の拠点で電子黒板2bのディスプレイ3b上にも表示され、逆に他の拠点で電子黒板2bのディスプレイ3b上に描画された画像は、一の拠点で電子黒板2aのディスプレイ3a上に表示される。このように、画像処理システム1では、遠隔地と同じ画像を共有する遠隔共有処理を行うことができるため、遠隔地との会議等に用いると非常に便利である。
 なお、以下では、複数の電子黒板のうち任意の電子黒板を示す場合には「電子黒板2」と称する。複数のディスプレイのうち任意のディスプレイを示す場合には「ディスプレイ3」と称する。複数の電子ペンのうち任意の電子ペンを示す場合には「電子ペン4」と称する。複数のUSBメモリのうち任意のUSBメモリを示す場合には「USBメモリ5」と称する。複数のノートPCのうち任意のノートPCを示す場合には「ノートPC6」と称する。複数のテレビ会議端末のうち任意のテレビ会議端末を示す場合には「テレビ会議端末7」と称する。また、複数のユーザの手のうち任意の手を示す場合には「手H」と称する。複数のケーブルのうち任意のケーブルを示す場合には「ケーブル10」と称する。
 また、本実施形態では、画像処理装置の一例として、電子黒板を説明するが、画像処理装置は電子黒板に限られない。画像処理装置の他の例として、電子看板(デジタルサイネージ)、スポーツや天気予報等で利用されるテレストレータ、及び遠隔画像(映像)診断装置等が挙げられる。また、情報処理端末の一例として、ノートPC6を説明するが、情報処理端末はノートPCに限られない。情報処理端末の他の例として、デスクトップ型PCやタブレット型PC、PDA(Personal Digital Assistant)、デジタルビデオカメラ、デジタルカメラ、ゲーム機等の、画像フレームを供給可能な端末が挙げられる。更に、通信ネットワーク9は、インターネット、LAN(Local Area Network)、携帯電話通信網等のうちのいずれであってもよいし、いずれかの組み合わせであってもよい。また、本実施形態では、記録媒体の一例として、USBメモリを説明するが、記録媒体はUSBメモリに限られない、記録媒体の他の例として、SDカード等の各種記録メディアが挙げられる。
 <電子黒板のハードウェア構成>
 続いて、図4を用いて、本実施形態の電子黒板2のハードウェア構成を説明する。なお、図4は、電子黒板のハードウェア構成図の一例である。
 図4に示されているように、電子黒板2は、電子黒板2全体の動作を制御するCPU(Central Processing Unit)101、IPL(Initial Program Loader)等のCPU101の駆動に用いられるプログラムを記憶したROM(Read-Only Memory)102、CPU101のワークエリアとして使用されるRAM(Random Access Memory)103、電子黒板2用のプログラム等の各種データを記憶するSSD(Solid State Drive)104、通信ネットワーク9との通信を制御するネットワークコントローラ105、及び、USBメモリ5との通信を制御する外部記憶コントローラ106を備えている。
 また、電子黒板2は、ノートPC6のディスプレイに対して映像情報を静止画又は動画として表示させるキャプチャデバイス111、グラフィクスを専門に扱うGPU(Graphics Processing Unit)112、及び、GPU112からの出力画像をディスプレイ3やテレビ会議端末7へ出力するために画面表示の制御及び管理を行うディスプレイコントローラ113を備えている。
 更に、電子黒板2は、接触センサ115の処理を制御するセンサコントローラ114、及びディスプレイ3に電子ペン4やユーザの手H等が接触したことを検知する接触センサ115を備えている。この接触センサ115は、赤外線遮断方式による座標の入力及び座標の検出を行う。この座標の入力及び座標の検出を行う方法は、ディスプレイ3の上側両端部に設置された2つ受発光装置がディスプレイ3に平行して複数の赤外線を放射し、ディスプレイ3の周囲に設けられた反射部材によって赤外線が反射されて、放射した赤外線の光路と同一の光路上を戻って来る光を受光素子が受光する方法である。接触センサ115は、物体によって遮断された、2つの受発光装置が放射した赤外線のID(Identification)をセンサコントローラ114に出力し、センサコントローラ114が物体の接触位置である座標位置を特定する。なお、以下に示す全ての各IDは、識別情報の一例である。
 また、接触センサ115は赤外線遮断方式のセンサに限られない。接触センサ115の他の例として、静電容量の変化を検知することにより接触位置を特定する静電容量方式のタッチパネル、対向する2の抵抗膜の電圧変化によって接触位置を特定する抵抗膜方式のタッチパネル、接触物体が表示部に接触することによって生じる電磁誘導を検知して接触位置を特定する電磁誘導方式のタッチパネル等の種々の検出手段が挙げられる。
 また、電子黒板2は電子ペンコントローラ116を備えている。この電子ペンコントローラ116は、電子ペン4と通信することで、ディスプレイ3へのペン先のタッチやペン尻のタッチの有無を判定する。なお、電子ペンコントローラ116が、電子ペン4のペン先及びペン尻だけでなく、電子ペン4のユーザが握る部分や、その他の電子ペンの部分のタッチの有無を判定するようにしてもよい。
 更に、電子黒板2は、CPU101、ROM102、RAM103、SSD104、ネットワークコントローラ105、外部記憶コントローラ106、キャプチャデバイス111、GPU112、センサコントローラ114、及び電子ペンコントローラ116を、図3に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン120を備えている。
 なお、電子黒板2用のプログラムは、CD-ROM等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
 <電子黒板の機能構成>
 続いて、図5~図8を用いて、電子黒板2の機能構成について説明する。なお、先ずは、図5を用いて、電子黒板2の全体的な機能構成について説明する。図5は、電子黒板2の機能ブロック図の一例である。
 電子黒板2は、図4に示されているハードウェア構成及びプログラムによって、図5に示されている各機能構成を実現する。電子黒板2は、最初に遠隔共有処理を開始する「主催装置」となり得ると共に、既に開始されている遠隔共有処理に後から参加する「参加装置」にもなり得る。また、電子黒板2は、大きく分けて、クライアント部20及びサーバ部90の両方を含む。クライアント部20及びサーバ部90は、電子黒板2の1台の筐体内で実現される機能である。そして、電子黒板2が主催装置となる場合には、この電子黒板2では、クライアント部20とサーバ部90が実現される。また、電子黒板2が参加装置となる場合には、この電子黒板2では、クライアント部20は実現されるが、サーバ部90は実現されない。即ち、例えば、図3において、電子黒板2aが主催装置で、電子黒板2bが参加装置となる場合、電子黒板2aのクライアント部20は、電子黒板2a内に実現されたサーバ部90を介して他の電子黒板2bのクライアント部20と通信を行う。一方、電子黒板2bのクライアント部20は、他の電子黒板2a内に実現されたサーバ部90を介して他の電子黒板2aのクライアント部と通信を行う。
〔クライアント部20の機能構成〕
 続いて、主に図5~図7を用いて、クライアント部20の機能構成について説明する。クライアント部20は、映像取得部21、座標検知部22、自動調整部23、接触検知部24、イベント振分部25、操作処理部26、ジェスチャ処理部27、映像重畳部28、画像処理部30及び通信制御部60を有する。
 このうち、映像取得部21は、ケーブル10に接続された映像出力機器の出力画像を取得する。映像取得部21は、映像出力機器から画像信号を受信すると、この画像信号を解析して、この画像信号によって生成される映像出力機器の表示画像である画像フレームの解像度や、この画像フレームの更新頻度等の画像情報を導出し、画像取得部31に出力する。
 座標検知部22は、ディスプレイ3上でユーザによって生じたイベント(ディスプレイ3にユーザの手Hがタッチされた動作等)の座標位置を検出する。また、座標検知部22は、タッチされた面積も検出する。
 自動調整部23は、電子黒板2の起動時(再起動時と表現してもよい)に起動され、座標検知部22が適切な値を出力できるように、光センサ方式により座標を検知する座標検知部22がセンサーカメラの画像を処理する際のパラメータを調整する。
 接触検知部24は、ユーザによって生じたイベント(ディスプレイ3に電子ペン4のペン先又は電子ペン4のペン尻が押下(タッチ)された動作等)を検出する。
 イベント振分部25は、座標検知部22によって検知されたイベントの座標位置と接触検知部24によって検出された検出結果を、ストローク描画、UI(User Interface)操作、及びジェスチャ操作の各イベントに振り分ける。ここで、「ストローク描画」は、ディスプレイ3に図8に示されている後述のストローク画像(B)が表示されている場合に、ユーザがディスプレイ3に電子ペン4を接触させ、この接触した状態で電子ペン4を移動させ、最終的にディスプレイ3から電子ペン4を離すまでのイベントである。このストローク描画により、例えば、アルファベット文字「S」や「T」等がディスプレイ3に描画される。なお、この「ストローク描画」には、画像を描画するだけでなく、既に描画された画像を削除したり、描画された画像を編集したりするイベントも含まれる。
 「UI操作」は、ディスプレイ3に図8に示されている後述のUI画像(A)が表示されている場合に、ユーザが電子ペン4又は手Hによって所定の位置に接触するイベントである。このUI操作により、例えば、電子ペン4により描画される線の色や幅等が設定される。
 「ジェスチャ操作」は、ディスプレイ3に図8に示されている後述のストローク画像(B)が表示されている場合に、ユーザが手Hでディスプレイ3にタッチしたり移動させたりするイベントである。このジェスチャ操作により、例えば、ユーザがディスプレイ3に手Hをタッチさせた状態で手Hを移動させることで、画像の拡大(若しくは縮小)、表示領域の変更、又は、ページ切り換え等を行うことができる。
 操作処理部26は、イベント振分部25によってUI操作と判定されたイベントに基づき、イベントが発生されたUIの要素にしたがって各種操作を実行する。このUIの要素としては、例えば、ボタン、リスト、チェックボックス、テキストボックス等が挙げられる。ジェスチャ処理部27は、イベント振分部25によってジェスチャ操作と判定されたものに対応した操作を実行する。
 映像重畳部28は、後述の表示重畳部36で重畳された画像を映像として表示部29に表示する。表示部29はディスプレイ3により実現される表示機能を奏する。また、映像重畳部28は、映像出力機器(ノートPC6等)からの映像に加えて、他の映像出力機器(テレビ会議端末7等)から送られて来た映像をいわゆるピクチャーインピクチャー機能によって表示する。更に、映像重畳部28は、ピクチャーインピクチャー機能によって表示部29の一部に表示された映像を表示部29の全体に表示させるための切り替えを行う。
 画像処理部30は、図8に示されているような各画像レイヤを重畳する重畳処理等を行う。この画像処理部30は、画像取得部31、ストローク処理部32、UI画像生成部33、背景生成部34、レイアウト管理部35、表示重畳部36、ページ処理部37、ファイル処理部40、ページデータ記憶部300及び遠隔ライセンス管理テーブル310を有している。
 このうち、画像取得部31は、映像取得部21で取得された映像から各フレームを画像として取得する。画像取得部31は、この画像のデータをページ処理部37に出力する。この画像は、図8に示されている映像出力機器(ノートPC6等)からの出力画像(C)に相当する。
 ストローク処理部32は、イベント振分部25によって割り振られたストローク描画に係るイベントに基づいて、画像を描画したり、描画された画像を削除したり、描画された画像を編集する。このストローク描画による画像は、図8に示されているストローク画像(B)に相当する。また、このストローク描画に基づく画像の描画、削除、編集の各結果は、後述の操作データとして操作データ記憶部840に記憶される。
 UI画像生成部33は電子黒板2に予め設定されているUI画像を生成する。このUI画像は図8に示されているUI画像(A)に相当する。背景生成部34は、ページ処理部37がページデータ記憶部300から読み出したページデータのうちのメディアデータをページ処理部37から受信する。背景生成部34はこの受信したメディアデータを表示重畳部36に出力する。また、このメディアデータによる画像は図8に示されている背景画像(D)に相当する。背景画像(D)のパターンは、無地、グリッド表示等である。
 レイアウト管理部35は、表示重畳部36に対し画像取得部31、ストローク処理部32及びUI画像生成部33(又は背景生成部34)から出力された各画像のレイアウトを示すレイアウト情報を管理している。これにより、レイアウト管理部35は、表示重畳部36に対して、出力画像(C)及びストローク画像(B)を、UI画像(A)及び背景画像(D)内のどの位置に表示させるか又は非表示にさせるかを指示することができる。
 表示重畳部36は、レイアウト管理部35から出力されたレイアウト情報に基づき、画像取得部31、ストローク処理部32及びUI画像生成部33(背景生成部34)から出力された各画像のレイアウトを行う。
 ページ処理部37は、ストローク画像(B)のデータと出力画像(C)のデータを1つのページデータにまとめてページデータ記憶部300に記憶する。ストローク画像(B)のデータは、後述する表1に示されているストローク配列データIDで示されるストローク配列データ(各ストロークデータ)としてページデータの一部を成す。出力画像(C)のデータは、表1に示されているメディアデータIDで示されているメディアデータとしてページデータの一部を成す。そして、このメディアデータは、ページデータ記憶部300から読み出されると、背景画像(D)のデータとして取り扱われる。
 また、ページ処理部37は、一旦記憶されたページデータのうちのメディアデータを、背景生成部34を介して表示重畳部36に送信することで、映像重畳部28が背景画像(D)をディスプレイ3に再表示させることができる。また、ページ処理部37は、ページデータのうちのストローク配列データ(各ストロークデータ)をストローク処理部32に戻すことで、ストロークの再編集ができる状態にすることができる。更に、ページ処理部37はページデータを削除したり複製したりすることもできる。
 即ち、ページ処理部37がページデータ記憶部300にページデータを記憶する時点でディスプレイ3に表示されている出力画像(C)のデータは、一旦ページデータ記憶部300に記憶され、その後にページデータ記憶部300から読み出される際には背景画像(D)を示すメディアデータとして読み出される。そして、ページ処理部37は、ページデータ記憶部300から読み出したページデータのうち、ストローク画像(B)を示すストローク配列データをストローク処理部32に出力する。また、ページ処理部37は、ページデータ記憶部300から読み出したページデータのうち、背景画像(D)を示すメディアデータを背景生成部34に出力する。
 表示重畳部36は、画像取得部31からの出力画像(C)、ストローク処理部32からのストローク画像(B)、UI画像生成部33からのUI画像(A)、及び背景生成部34からの背景画像(D)を、レイアウト管理部35によって指定されたレイアウトにしたがって重畳する。これにより、図8に示されているように、各画像が重なってもユーザから見える順に、UI画像(A)、ストローク画像(B)、出力画像(C)、及び背景画像(D)が重畳するレイヤ構成が得られる。
 また、表示重畳部36は、図8に示されている画像(C)と画像(D)を切り替えて、画像(A)及び画像(B)に対して排他的に重畳することも可能である。例えば、当初、画像(A)、画像(B)及び画像(C)が表示されている状態で、電子黒板2と映像出力機器(ノートPC6等)との間のケーブル10が抜かれた場合には、レイアウト管理部35の指定によって、画像(C)を重畳対象から外し、画像(D)を表示させることができる。この場合に、また、表示重畳部36は、表示の拡大、表示の縮小、表示領域の移動処理も行う。
 ページデータ記憶部300は、表1に示されているようなページデータを記憶する。
Figure JPOXMLDOC01-appb-T000001
 表1はページデータを概念的に示す。ページデータは、ディスプレイ3に表示される1ページ分のデータ(ストローク配列データ(各ストロークデータ)及びメディアデータ)を含む。なお、ページデータに含まれるパラメータの種類が多いため、ここでは、表1~表4に分けて、ページデータの内容を説明する。
 ページデータは、表1に示されているように、任意の1ページを識別するためのページデータID、このページの表示を開始した時刻を示す開始時刻、ストロークやジェスチャ等によるページの内容の書き換えが行われなくなった時刻を示す終了時刻、電子ペン4やユーザの手Hによるストロークによって生じたストローク配列データを識別するためのストローク配列データID、及びメディアデータを識別するためのメディアデータIDを含む。これらページデータID、開始時刻、終了時刻、ストローク配列データID及びメディアデータIDが相互に関連付けて記憶される。ストローク配列データは、図8に示されているストローク画像(B)がディスプレイ3に表示されるためのデータである。メディアデータは、図8に示されている背景画像(D)がディスプレイ3に表示されるためのデータである。
 このようなページデータにより、例えば、ユーザが電子ペン4によってアルファベット文字「S」を描く場合は一筆書きとなるため、1つのストロークデータIDで一文字のアルファベット文字[S]のストロークデータが識別される。他方、ユーザが電子ペン4によってアルファベット文字「T」を描く場合、文字「T」が二筆書きとなるため、2つのストロークデータIDで一文字のアルファベット文字「T」のストロークデータが識別されることになる。
Figure JPOXMLDOC01-appb-T000002
 また、ストローク配列データは表2に示されているように詳細な情報を有する。表2は、複数のストローク配列データst001,st002,st003,...のうちの1つのストロークデータを概念的に示す。上記の如く、1つのストローク配列データは複数のストロークデータを有する。そして、1つのストロークデータは、このストロークデータを識別するためのストロークデータID、1つのストロークの書き始めの時刻を示す開始時刻、1つのストロークの書き終わりの時刻を示す終了時刻、ストロークの色、ストロークの幅、及び、ストロークの通過点の配列を示す座標配列データを識別するための座標配列データIDを有する。
Figure JPOXMLDOC01-appb-T000003
 この座標配列データは、表3に示されているように詳細な情報を有する。表3は、複数の座標配列データc001,c002,c003,...のうちの1つの座標配列データを概念的に示す。表3に示されているように、1つの座標配列データは複数の通過点のデータを有する。そして、1つの通過点のデータは、ディスプレイ3上の1点(X座標値、Y座標値)、この1点を通過したときのストロークの開始時刻からの差分の時刻(ms)、及び、この1点における電子ペン4の筆圧の各情報を有する。即ち、表3に示されている1つの座標配列データ(例えば座標配列データID、c001の座標配列データ)で示される複数の通過点の集まりが、表2に示されている1つの座標配列データID、c001で識別される座標配列データとして示されている。例えば、ユーザが電子ペン4によってアルファベット文字「S」を描く場合、一筆書きとなるが、「S」を描き終えるまでに複数の通過点を通過するため、座標配列データはこれら複数の通過点の情報を有する。
 また、表1に示されているページデータのうちのメディアデータは、表4に示されているように詳細な情報を有する。
Figure JPOXMLDOC01-appb-T000004
 表4はメディアデータを概念的に示す。表4に示されているように、メディアデータは、表1に示されているページデータにおけるメディアデータID、メディアデータのデータ種類、ページ処理部37からページデータ記憶部300にページデータが記憶された記録時刻、ページデータによってディスプレイ3に表示される画像の位置(X座標値、Y座標値)及び画像のサイズ(幅、高さ)、並びにメディアデータの内容を示すデータを含む。これらメディアデータID、データ種類、記録時刻、X座標値、Y座標値、幅、高さ及びデータが相互に関連付けられる。このうち、ページデータによってディスプレイ3に表示される画像の位置(X座標値、Y座標値)は、ディスプレイ3の左上端の座標を(X座標値,Y座標値)=(0,0)とした場合に、ページデータによって表示される画像の左上端の位置を示している。
 また、図5に戻って説明を続ける。遠隔ライセンス管理テーブル310は遠隔共有処理を実行するために必要なライセンスデータを管理する。この遠隔ライセンス管理テーブル310では、表5に示されているように、電子黒板2のプロダクトID、認証に用いられるライセンスID、及びライセンスの有効期限が相互に関連付けて管理されている。
Figure JPOXMLDOC01-appb-T000005


 (ファイル処理部40の機能構成)
 続いて、図6を用いて、図5に示されているファイル処理部40の機能構成を説明する。なお、図6は、ファイル処理部の機能ブロック図の一例である。ファイル処理部40は、リカバリ処理部41、ファイル入力部42a、ファイル出力部42b、ファイル変換部43、ファイル送信部44、アドレス帳入力部45、バックアップ処理部46、バックアップ出力部47、設定管理部48、設定ファイル入力部49a、設定ファイル出力部49b及びアドレス帳入力部50を有している。更に、ファイル処理部40は、アドレス帳管理テーブル410、バックアップデータ記憶部420、設定ファイル記憶部430及び接続先管理テーブル440を有している。
 このうち、リカバリ処理部41は、電子黒板2が異常終了した後に、異常終了を検知し、未保存のページデータを復旧する。例えば、正常終了の場合は、ページデータがPDFファイルとしてファイル処理部40を介してUSB5に記録されるが、電源がダウンしたこと等による異常終了の場合は、ページデータがページデータ記憶部300に記録されたままになっている。そのため、再び、電源がオンされた際に、リカバリ処理部41は、ページデータ記憶部300からページデータを読み出すことでページデータを復旧する。
 ファイル入力部42aはUSBメモリ5からPDFファイルを読み込み、各ページをページデータとしてページデータ記憶部300に記憶する。ファイル変換部43は、ページデータ記憶部300に記憶されているページデータをPDF形式のファイルに変換する。
 ファイル出力部42bはファイル変換部43によって出力されたPDFファイルをUSBメモリ5に記録する。
 ファイル送信部44はファイル変換部43によって生成されたPDFファイルを電子メールに添付して送信する。このファイルの送信先は以下のようにして決定される。表示重畳部36がディスプレイ3にアドレス帳管理テーブル410の内容を表示し、ユーザがタッチパネル等の入力装置を操作して宛先を選択すると、ファイル送信部44が宛先の選択を受け付ける。このようにしてファイルの送信先が決定される。アドレス帳管理テーブル410には、表6に示されているように、宛先の名前及び宛先の電子メールのメールアドレスが相互に関連付けて管理されている。
Figure JPOXMLDOC01-appb-T000006
 またファイルの送信先は以下のようにして決定されてもよい。ユーザがタッチパネル等の入力装置を操作して宛先としてのメールアドレスを入力すると、宛先としてのメールアドレスの入力をファイル送信部44が受け付ける。このようにしてファイルの送信先を決定するようにしても良い。
 アドレス帳入力部45はUSBメモリ5から電子メールアドレスの一覧ファイルを読み込み、読み込んだ電子メールアドレスの一覧ファイルをアドレス帳管理テーブル410で管理する。
 バックアップ処理部46はファイル出力部42bによって出力されたファイルやファイル送信部44によって送信されたファイルをバックアップデータ記憶部420に記憶することでバックアップする。なお、ユーザがバックアップ設定をしない場合はバックアップの処理は行われない。バックアップされたファイルは表7に示されているようにPDF形式で記憶される。
Figure JPOXMLDOC01-appb-T000007
 バックアップ出力部47はバックアップされたファイルをUSBメモリ5に記憶する。この記憶の際には、セキュリティのために、ユーザによるタッチパネル等の入力装置の操作によってパスコードが入力される。
 設定管理部48は、電子黒板2の各種設定情報を設定ファイル記憶部430に記憶したり読み出したりして管理する。この各種設定情報としては、例えば、ネットワーク設定、日付や時刻の設定、地域や言語の設定、メールサーバの設定、アドレス帳の設定、接続先リストの設定、及びバックアップに関する設定が挙げられる。なお、ネットワーク設定は、例えば、電子黒板2のIPアドレスの設定、ネットマスクの設定、デフォルトゲートウェイの設定、又はDNS(Domain Name System)の設定等である。なお設定情報については更に後述する。
 設定ファイル出力部49bは電子黒板2の各種設定情報を設定ファイルとしてUSBメモリ5に記録させる。なお、セキュリティ機能により、ユーザは設定ファイルの中身を見ることができない。
 設定ファイル入力部49aはUSBメモリ5に記憶されている設定ファイルを読み込み、各種設定情報を電子黒板2の各種設定に反映させる。
 アドレス帳入力部50はUSBメモリ5から遠隔共有処理の接続先IPアドレスの一覧ファイルを読み込み、読み込んだ遠隔共有処理の接続先IPアドレスの一覧ファイルを接続先管理テーブル440に管理する。接続先管理テーブル440の一例を表8に示す。
Figure JPOXMLDOC01-appb-T000008
 接続先管理テーブル440は、参加装置としての電子黒板2のユーザが、主催装置としての電子黒板2のIPアドレスを予め管理しておくためのテーブルである。主催装置としての電子黒板2のIPアドレスを予め管理しておくことにより、電子黒板2が遠隔共有処理に参加しようとする参加装置である場合に、参加装置のユーザが主催装置としての電子黒板2のIPアドレスを入力する手間を削減することができる。この接続先管理テーブル440では、主催装置として使用可能な電子黒板2が設置されている拠点の名称、及び主催装置としての電子黒板2のIPアドレスが相互に関連付けて管理されている。
 なお、接続先管理テーブル440は無くてもよい。但し、その場合には、参加装置のユーザは、主催装置との間で遠隔要求処理の開始するために、タッチパネル等の入力装置によって主催装置のIPアドレスを入力する必要がある。そのため、参加装置のユーザは、電話や電子メール等によって、主催装置のユーザから主催装置のIPアドレスを知得する。
 (通信制御部60の機能構成)
 次に、図7を用いて通信制御部60の機能構成について説明する。図7はサーバ部90とクライアント部20の機能ブロック図の一例である。通信制御部60は、通信ネットワーク9を介して他の電子黒板2と行う通信や、サーバ部90における後述の通信制御部70と行う通信を制御する。そのため、通信制御部60は、遠隔開始処理部61、遠隔参加処理部62、遠隔画像送信部63、遠隔画像受信部64、遠隔操作送信部65、遠隔操作受信部66及び参加拠点管理テーブル610を有している。
 このうち、遠隔開始処理部61は、当該遠隔開始処理部61を有する電子黒板2のサーバ部90に対して新たに遠隔共有処理を開始する要求を行い、サーバ部90から要求に対する結果を受信する。この場合、遠隔開始処理部61は遠隔ライセンス管理テーブル310を参照する。その結果、ライセンス情報(プロダクトID、ライセンスID及び有効期限)が遠隔ライセンス管理テーブル310で管理されている場合、遠隔開始処理部61は遠隔共有処理の開始を要求することができる。他方、ライセンス情報が遠隔ライセンス管理テーブル310で管理されていない場合、遠隔開始処理部61は遠隔共有処理の開始を要求することができない。
 参加拠点管理テーブル610は、電子黒板2が主催装置である場合に、現在遠隔共有処理に参加している参加装置としての電子黒板2を管理するテーブルである。参加拠点管理テーブル610の一例を表9に示す。
Figure JPOXMLDOC01-appb-T000009
 この参加拠点管理テーブル610では、参加中の電子黒板2が設置されている拠点の名称及び当該電子黒板2のIPアドレスが相互に関連付けて管理されている。
 遠隔参加処理部62は、既に遠隔共有処理を開始している主催装置としての電子黒板2のサーバ部90における遠隔接続要求受信部71に対し、通信ネットワーク9を介して遠隔共有処理への参加要求を行う。この場合も、遠隔参加処理部62は遠隔ライセンス管理テーブル310を参照する。また、既に開始されている遠隔共有処理に参加する場合、遠隔参加処理部62は接続先管理テーブル440を参照し、参加先の遠隔共有処理を実行している電子黒板2のIPアドレスを取得する。なお、遠隔参加処理部62によって接続先管理テーブルが参照されず、参加先の遠隔共有処理を実行している電子黒板2のIPアドレスがユーザによるタッチパネル等の入力装置の操作により入力されてもよい。
 遠隔画像送信部63は映像取得部21から画像取得部31を介して送られて来た出力画像(C)をサーバ部90に送信する。
 遠隔画像受信部64は、サーバ部90から他の電子黒板2に接続された映像出力機器からの画像データを受信して表示重畳部36に出力することで遠隔共有処理の実行を可能にする。
 遠隔操作送信部65は遠隔共有処理に必要な各種操作データをサーバ部90に送信する。この各種操作データとしては、例えば、ストロークの追加、ストロークの削除、ストロークの編集(拡大、縮小又は移動)、ページデータの記憶、ページデータの生成、ページデータの複製、ページデータの削除、表示されているページの切り替え等に関するデータが挙げられる。また、遠隔操作受信部66は、サーバ部90から他の電子黒板2で入力された操作データを受信して画像処理部30に出力することで遠隔共有処理を行う。
 〔サーバ部の機能構成〕
 続いて、図7を用いてサーバ部90の機能構成について説明する。サーバ部90は各電子黒板2に設けられており、いずれの電子黒板2であってもサーバ部としての役割を果たすことができる。そのためサーバ部90は、通信制御部70及びデータ管理部80を有している。
(通信制御部70の機能構成)
 次に、図7を用いて通信制御部70の機能構成について説明する。
 通信制御部70は、当該通信制御部70を有する電子黒板2内のクライアント部20における通信制御部60及び通信ネットワーク9を介して行う、他の電子黒板2内のクライアント部20における通信制御部60との通信を制御する。データ管理部80は操作データや画像データ等を管理する。
 更に詳細に説明すると、通信制御部70は、遠隔接続要求受信部71、遠隔接続結果送信部72、遠隔画像受信部73、遠隔画像送信部74、遠隔操作受信部75及び遠隔操作送信部76を有している。
 このうち、遠隔接続要求受信部71は、遠隔開始処理部61からの遠隔共有処理の開始要求を受信したり、遠隔参加処理部62からの遠隔共有処理に対する参加要求を受信したりする。遠隔接続結果送信部72は、遠隔開始処理部61へ遠隔共有処理の開始要求の結果を送信したり、遠隔参加処理部62へ遠隔共有処理に対する参加要求の結果を送信したりする。
 遠隔画像受信部73は遠隔画像送信部63からの画像データ(出力画像(C)のデータ)を受信して後述の遠隔画像処理部82に送信する。遠隔画像送信部74は遠隔画像処理部82から画像データを受信し、受信した画像データを遠隔画像受信部64に送信する。
 遠隔操作受信部75は遠隔操作送信部65からの操作データ(ストローク画像(B)等のデータ)を受信して後述の遠隔操作処理部83に送信する。遠隔操作送信部76は遠隔操作処理部83から操作データを受信し、受信した操作データを遠隔操作受信部66に送信する。
 (データ管理部の機能構成)
 次に、図7を用いてデータ管理部80の機能構成について説明する。データ管理部80は、遠隔接続処理部81、遠隔画像処理部82、遠隔操作処理部83、操作合成処理部84、及びページ処理部85を有している。更に、データ管理部80は、パスコード管理部810、参加拠点管理テーブル820、画像データ記憶部830、操作データ記憶部840及びページデータ記憶部850を有している。
 このうち、遠隔接続処理部81は、遠隔共有処理の開始及び遠隔共有処理の終了を行う。また、遠隔接続処理部81は、遠隔接続要求受信部71が遠隔開始処理部61から遠隔共有処理の開始要求と共に受信したライセンス情報、又は、遠隔参加処理部62から遠隔共有処理の参加要求と共に受信したライセンス情報に基づいて、ライセンスの有無やライセンスの期間内であるかを確認する。更に、遠隔接続処理部81は、クライアント部としての他の電子黒板2からの参加要求が予め定められた参加可能数を超えていないかを確認する。
 更に、遠隔接続処理部81は、他の電子黒板2から遠隔共有処理に対する参加要求があった際に送られて来たパスコードがパスコード管理部810で管理されているパスコードと同じであるか否かを判定し、同じである場合には遠隔共有処理への参加を許可する。なお、このパスコードは、新たに遠隔共有処理を開始する際に遠隔接続処理部81によって発行され、遠隔共有処理に参加しようとする参加装置としての電子黒板2のユーザが主催装置としての電子黒板2のユーザから電話や電子メール等により伝えられる。そして遠隔共有処理に参加しようとする参加装置のユーザがタッチパネル等の入力装置によって参加装置にパスコードを入力して参加要求することで参加が許可されることになる。なお、セキュリティよりもユーザの使い勝手を優先する場合、ライセンス状況の確認だけを行い、パスコードの確認は省略してもよい。
 また、電子黒板2が主催装置の場合、遠隔接続処理部81は参加装置の遠隔参加処理部62から通信ネットワーク9を介して送られて来た参加要求に含まれる参加拠点情報をサーバ部90の参加拠点管理テーブル820に記憶する。そして遠隔接続処理部81は参加拠点管理テーブル820に記憶されている遠隔拠点情報を読み出して遠隔接続結果送信部72に送信する。遠隔接続結果送信部72はクライアント部20における遠隔開始処理部61に遠隔拠点情報を送信する。遠隔開始処理部61は遠隔拠点情報を参加拠点管理テーブル610に記憶する。これにより、主催装置では、クライアント部20及びサーバ部90の両方で遠隔拠点情報を管理することになる。
 遠隔画像処理部82は、遠隔共有処理中の各電子黒板2のクライアント部(当該主催装置としての電子黒板2のクライアント部を含む)に接続された映像出力機器(ノートPC6等)からの画像データ(出力画像(C))を受信して画像データ記憶部830に記憶する。遠隔画像処理部82は更に、当該主催装置としての電子黒板2のサーバ部90に届いた時間順にしたがって遠隔共有処理すべき画像データの表示順を決定する。また、遠隔画像処理部82は、参加拠点管理テーブル820を参照し、遠隔共有処理に参加中の全ての電子黒板2のクライアント部20(当該主催装置としての電子黒板2のクライアント部を含む)に対し、上記決定した順番で画像データを、通信制御部70(遠隔画像送信部74)を介して送信する。
 遠隔操作処理部83は、遠隔共有処理中の各電子黒板2のクライアント部(当該主催装置としての電子黒板2のクライアント部を含む)で描画されたストローク画像等の各種操作データ(ストローク画像(B)等)を受信し、当該主催装置としての電子黒板2のサーバ部90に届いた時間順にしたがって遠隔共有処理すべき画像の表示順を決定する。なお、当該各種操作データは上記した各種操作データと同じである。また、遠隔操作処理部83は参加拠点管理テーブル820を参照し、遠隔共有処理中の全ての電子黒板2のクライアント部20(当該主催装置としての電子黒板2のクライアント部を含む)に操作データを送信する。
 操作合成処理部84は遠隔操作処理部83から出力された各電子黒板2の操作データを合成し、合成結果としての操作データを操作データ記憶部840に記憶すると共に遠隔操作処理部83に戻す。この操作データは、遠隔操作送信部76から、当該主催装置としての電子黒板2のクライアント部、及び参加装置である電子黒板2のクライアント部のそれぞれに送信される。その結果、各電子黒板2で同じ操作データに係る画像が表示される。操作データの一例を表10に示す。
Figure JPOXMLDOC01-appb-T000010
 操作データには、表10に示されているように、SEQ(Sequence)、操作データの操作名、操作データの送信元である電子黒板2のIPアドレス及びクライアント部(サーバ部)のPort No.、操作データの送信先である電子黒板2のIPアドレス及びクライアント部(サーバ部)のPort No,、操作データの操作種類、操作データの操作対象、並びに操作データの内容を示すデータが相互に関連付けられて含まれている。例えば、操作データSEQ"1"には、主催装置である電子黒板2(IPアドレス:192.0.0.1)のクライアント部(Port No.:50001)でストロークが描画された結果、同じ電子黒板2(IPアドレス:192.0.0.1)のサーバ部(Port No.:50000)に操作データが送られたことが示されている。この場合の操作種類は「STROKE」、操作対象はページデータID「p005」、及び、操作データの内容を示すデータはストロークを示すデータ(ストロークデータ)である。また、操作データSEQ"2"には、主催装置である電子黒板2(IPアドレス:192.0.0.1)のサーバ部(Port No.:50000)から、参加装置である他の電子黒板2(IPアドレス:192.0.0. 2)のクライアント部(Port No.:50001)に、操作データが送られたことが示されている。
 なお、操作合成処理部84は、この操作合成処理部84に操作データが入力された順に合成を行うため、通信ネットワーク9が混雑していなければ、各電子黒板2のユーザによるストローク描画順に、遠隔共有処理中の全ての電子黒板2のディスプレイ3にストローク画像(B)が表示される。
 ページ処理部85はクライアント部20の画像処理部30におけるページ処理部37と同様の機能を有し、サーバ部90でもクライアント部20と同様に、表1から表3に示されているページデータをページデータ記憶部850に記憶する。なお、ページデータ記憶部850は画像処理部30におけるページデータ記憶部300と同じ内容であるため、その説明を省略する。
 <実施形態の処理又は動作>
 続いて、図9及び図10を用いて本実施形態の処理又は動作について説明する。図9及び図10は各電子黒板2の処理を示したシーケンス図である。図9及び図10に示す実施形態では、電子黒板2aが遠隔共有処理を主催する主催装置(サーバ部及びクライアント部)としての役割を果たし、電子黒板2b,2cが遠隔共有処理に参加する参加装置(クライアント部)としての役割を果たす場合を想定している。また、ここでは、電子黒板2a,2b及び2cにはそれぞれディスプレイ3a,3b及び3cが接続され、更に、それぞれノートPC6a,6b及び6cが接続されている。また、電子黒板2a,2b及び2cでは、それぞれ電子ペン4a,4b及び4cが使用される。
 (参加の処理)
 まずは、図9を用いて、電子黒板2b及び2cが遠隔共有処理に参加するための処理について説明する。
 ユーザが電子黒板2aの電源スイッチをオンにすると、電子黒板2aのクライアント部20が起動する。そしてユーザがタッチパネル等の入力装置によってサーバ部90を起動させる操作をすると、クライアント部20の遠隔開始処理部61が電子黒板2aのサーバ部90における遠隔接続要求受信部71にサーバ部90の処理を開始させる指示を出力する。これにより電子黒板2aでは、クライアント部20だけでなくサーバ部90も各種処理を開始可能となる(ステップS21)。
 次に、電子黒板2aのクライアント部20におけるUI画像生成部33が他の電子黒板2が電子黒板2aとの接続を確立するための接続情報を生成し、映像重畳部28がUI画像生成部33から表示重畳部36を介して得た接続情報をディスプレイ3aに表示させる(ステップS22)。
 この接続情報には主催装置のIPアドレス、及び今回の遠隔共有処理のために生成されたパスコードが含まれている。この場合、パスコード管理部810に記憶されているパスコードが図7に示されている遠隔接続処理部81によって読み出され、遠隔接続結果送信部72及び遠隔開始処理部61の順に送信される。更に、パスコードは遠隔開始処理部61を含む通信制御部60から図5に示されている画像処理部30に送信され、最終的にUI画像生成部33に入力される。これにより接続情報にパスコードが含まれる。そして、接続情報は、電子黒板2aのユーザによって、電話や電子メールにより、電子黒板2b及び2cのユーザに伝えられる。なお、接続先管理テーブル440があれば、接続情報には、主催装置のIPアドレスが含まれていなくても、参加装置は参加要求を行うことができる。
 次に、電子黒板2b及び2cは、各ユーザによるタッチパネル等の入力装置の操作によって接続情報の入力を受け付けると、各電子黒板2b及び2cのクライアント部20における遠隔参加処理部62が、接続情報のIPアドレスに基づき、通信ネットワーク9を介して、電子黒板2aのサーバ部90における通信制御部70に対してパスコードを送信して参加要求を行う(ステップS23,S24)。これにより、通信制御部70の遠隔接続要求受信部71は、各電子黒板2b及び2cから参加要求(パスコードを含む)を受信し、このパスコードを遠隔接続処理部81に出力する。
 次に、遠隔接続処理部81は各電子黒板2b及び2cから受信したパスコードに対し、パスコード管理部810で管理されているパスコードを用いて認証を行う(ステップS25)。
 そして遠隔接続結果送信部72が各電子黒板2b及び2cのクライアント部20に認証結果を通知する(ステップS26,S27)。
 ステップS25の認証により各電子黒板2b及び2cが正当な電子黒板2であると判定された場合には、主催装置である電子黒板2aと参加装置である電子黒板2b及び2cとの遠隔共有処理の通信が確立される。そして各電子黒板2b及び2cのクライアント部20における遠隔参加処理部62が、それぞれ他の電子黒板2との間の遠隔共有処理の開始を可能にする(ステップS28,S29)。
 (出力画像の表示)
 続いて、図9を用いて、遠隔共有処理における出力画像(C)が表示される処理について説明する。
 まず、電子黒板2bは、ディスプレイ3bに出力画像(C)を表示する(ステップS30)。具体的には、電子黒板2bの画像取得部31がノートPC6bから映像取得部21を介してノートPC6bで表示されている出力画像(C)のデータを受信し、受信したデータを表示重畳部36及び映像重畳部28を介してディスプレイ3bに送信することで、ディスプレイ3bは出力画像(C)を表示する。
 次に電子黒板2bの画像取得部31を含む画像処理部30が遠隔画像送信部63に出力画像(C)のデータを送信することで、遠隔画像送信部63を含む通信制御部60が通信ネットワーク9を介して主催装置である電子黒板2aの通信制御部70に出力画像(C)のデータを送信する(ステップS31)。これにより電子黒板2aの遠隔画像受信部73は出力画像(C)のデータを受信して遠隔画像処理部82に出力する。その結果、遠隔画像処理部82が画像データ記憶部830に出力画像(C)のデータを記憶する。
 次に主催装置である電子黒板2aはディスプレイ3aに出力画像(C)を表示する(ステップS32)。具体的には、電子黒板2aの遠隔画像処理部82は遠隔画像受信部73から受信した出力画像(C)のデータを遠隔画像送信部74に出力する。遠隔画像送信部74はクライアント部20における遠隔画像受信部64に出力画像(C)のデータを出力する。遠隔画像受信部64は表示重畳部36に出力画像(C)のデータを出力する。表示重畳部36は映像重畳部28に出力画像(C)のデータを出力する。映像重畳部28はディスプレイ3aに出力画像(C)のデータを出力する。これによりディスプレイ3aは出力画像(C)を表示する。
 次に、主催装置としての電子黒板2aのサーバ部90における遠隔画像送信部74を含む通信制御部70は、出力画像(C)のデータの送信元である電子黒板2b以外の電子黒板2cの通信制御部60に通信ネットワーク9を介して出力画像(C)のデータを送信する(ステップS33)。これにより参加装置である電子黒板2cの遠隔画像受信部64は出力画像(C)のデータを受信する。
 次に電子黒板2cはディスプレイ3cに出力画像(C)を表示する(ステップS34)。具体的には、電子黒板2cの遠隔画像受信部64が上記ステップS33によって受信された出力画像(C)のデータを電子黒板2cの表示重畳部36に出力する。表示重畳部36は映像重畳部28に出力画像(C)のデータを出力する。映像重畳部28はディスプレイ3cに出力画像(C)のデータを出力する。これによりディスプレイ3cは出力画像(C)を表示する。
 なお、出力画像(C)のデータだけでなく、UI画像(A)及びストローク画像(B)の各データが映像重畳部28に入力されている場合には、表示重畳部36により重畳画像(A,B及びC)が生成され、映像重畳部28はディスプレイ3cに重畳画像(A,B及びC)のデータを出力する。またテレビ会議端末7から映像重畳部28にテレビ会議用の映像(E)のデータが送られて来ている場合には、映像重畳部28は重畳画像(A,B及びC)にピクチャーインピクチャー機能によりテレビ会議用の映像(E)のデータを重畳してディスプレイ3cに出力する。
 (重畳画像の表示)
 続いて、図10を用いて、遠隔共有処理における重畳画像が表示される処理について説明する。
 まず、ユーザが電子ペン4bを用いて電子黒板2bにストローク画像(B)を描画する(ステップS41)。
 次に、電子黒板2bの表示重畳部36は、図8に示されているようにUI画像(A)及び出力画像(C)に対してストローク画像(B)を重畳し、映像重畳部28が電子黒板2bのディスプレイ3b上に重畳された重畳画像(A,B及びC)を表示させる(ステップS42)。具体的には、電子黒板2bのストローク処理部32が座標検知部22及び接触検知部24からイベント振分部25を介して操作データとしてのストローク画像(B)のデータを受信して表示重畳部36に送信する。これにより、表示重畳部36はUI画像(A)及び出力画像(C)に対してストローク画像(B)を重畳することができ、映像重畳部28が電子黒板2bのディスプレイ3b上に重畳画像(A,B及びC)を表示させることができる。
 次に、電子黒板2bのストローク処理部32を含む画像処理部30が遠隔操作送信部65にストローク画像(B)のデータを送信することで、電子黒板2bの遠隔操作送信部65は通信ネットワーク9を介して主催装置である電子黒板2aの通信制御部70にストローク画像(B)のデータを送信する(ステップS43)。
 これにより、電子黒板2aの遠隔操作受信部75は、ストローク画像(B)のデータを受信して遠隔操作処理部83に出力する。その結果、遠隔操作処理部83が操作合成処理部84にストローク画像(B)のデータを出力する。このようにして、電子黒板2bで描画されたストローク画像(B)のデータは描画される度に主催装置である電子黒板2aの遠隔操作処理部83に順次送信される。このストローク画像(B)のデータは、表2等に示されているストロークデータIDごとに送信されるデータである。よって、例えば、上記したように、ユーザが電子ペン4によってアルファベット文字「T」を描く場合は、二筆書きとなるため、2つのストロークデータIDのそれぞれで示されるストローク画像(B)のデータが順次送信される。
 次に、主催装置である電子黒板2aは、ディスプレイ3aに、電子黒板2bから送られて来たストローク画像(B)のデータで示されるストローク画像(B)が含まれた重畳画像(A,B及びC)を表示する(ステップS44)。具体的には、電子黒板2aの操作合成処理部84は遠隔操作処理部83を介して順次送られて来た複数のストローク画像(B)のデータを合成し、操作データ記憶部840に記憶すると共に遠隔操作処理部83に戻す。これにより遠隔操作処理部83は、操作合成処理部84から受信した合成後のストローク画像(B)のデータを遠隔操作送信部76に出力する。遠隔操作送信部76は主催装置である電子黒板2aのクライアント部20における遠隔操作受信部66に合成後のストローク画像(B)のデータを出力する。遠隔操作受信部66は画像処理部30における表示重畳部36に合成後のストローク画像(B)のデータを出力する。表示重畳部36はUI画像(A)及び出力画像(C)に対し合成後のストローク画像(B)を重畳する。最後に映像重畳部28が表示重畳部36によって重畳された重畳画像(A,B及びC)をディスプレイ3a上に表示させる。
 次に、主催装置としての電子黒板2aのサーバ部90における遠隔操作送信部76を含む通信制御部70は、ストローク画像(B)のデータの送信元である電子黒板2b以外の電子黒板2cの通信制御部60に合成後のストローク画像(B)のデータを、通信ネットワーク9を介して送信する(ステップS45)。これにより、参加装置である電子黒板2cの遠隔操作受信部66は合成後のストローク画像(B)のデータを受信する。
 次に電子黒板2cはディスプレイ3cに重畳画像(A,B及びC)を表示する(ステップS46)。具体的には、電子黒板2cの遠隔操作受信部66が上記ステップS45によって受信された合成後のストローク画像(B)のデータを電子黒板2cの画像処理部30に出力する。画像処理部30の表示重畳部36はUI画像(A)及び出力画像(C)の各データと合成後のストローク画像(B)のデータとを重畳し、重畳画像(A,B及びC)のデータを映像重畳部28に出力する。映像重畳部28はディスプレイ3cに重畳画像(A,B及びC)のデータを出力する。ディスプレイ3cは重畳画像(A,B及びC)を表示する。
 なお、上記処理ではディスプレイ3に出力画像(C)が表示されているが、出力画像(C)に代えて背景画像(D)を表示してもよい。また、出力画像(C)と背景画像(D)との排他的な関係をやめて、出力画像(C)と背景画像(D)との両方を同時にディスプレイ3に表示させてもよい。
 (参加の終了)
 続いて、図10を用いて、参加装置が遠隔共有処理への参加を終了する処理について説明する。図10に示す実施形態では、電子黒板2cが参加を終了する場合を想定している。
 まず、電子黒板2cが、ユーザによるタッチパネル等の入力装置の操作によって参加の終了要求を受け付けると、遠隔参加処理部62が主催装置としての電子黒板2aのサーバ部90における通信制御部70に参加の終了要求を行う(ステップS47)。通信制御部70の遠隔接続要求受信部71は電子黒板2cからの参加の終了要求を受信し、遠隔接続処理部81に電子黒板2cのIPアドレスと共に参加の終了要求を出力する。電子黒板2aの遠隔接続処理部81は遠隔接続要求受信部71から送られて来たIPアドレスに基づいて、参加の終了要求を行った電子黒板2cのIPアドレス及び電子黒板2cが設置されている拠点の名称を参加拠点管理テーブル820から削除し、遠隔接続結果送信部72に電子黒板2cのIPアドレス及び削除した旨の通知を出力する。
 次に遠隔接続結果送信部72を含む通信制御部70が通信ネットワーク9を介し電子黒板2cのクライアント部20における通信制御部60に参加の終了を指示する(ステップS48)。電子黒板2cにおける通信制御部60の遠隔参加処理部62は遠隔共有処理の通信を切断することで参加の終了処理を行う。その結果電子黒板2cの参加が終了する(ステップS49)。
 本実施例では、木構造のネットワーク構造において、電子黒板2が当該電子黒板2のプログラムのバージョンが直上の電子黒板2のプログラムのバージョンと同じかどうかを判定し、同じでなければプログラムファイルを取得してプログラムのバージョンアップ処理を行う。このようにして直上の電子黒板2を有する各電子黒板2がそれぞれプログラムのバージョンアップ処理を繰り返すことで、ネットワーク構造に含まれる全ての電子黒板2がプログラムをバージョンアップできる。
 また、電子黒板2は当該電子黒板2のプログラムのバージョンが直上の電子黒板2のプログラムのバージョンと一致している場合、上位の電子黒板2から設定情報を取得する。直上の電子黒板2を有する各電子黒板2がこの処理を繰り返すことで、ネットワーク構造に含まれる全ての電子黒板2が設定情報を相互に同期させることができる。
 図11は、画像処理システム1のネットワーク構造を説明する図の一例である。各電子黒板2は通信ネットワーク9を介して相互に接続されている。図11のネットワーク構造は、プログラムのバージョンアップ処理及び設定情報の同期処理に関する多段の階層構造を説明するための図であり、1つの電子黒板2は直上の電子黒板2以外の電子黒板2とも画像データ等を通信することが可能である。しかしながら本実施形態によるプログラムのバージョンアップ処理及び設定情報の同期処理は、図11に示すように木構造のネットワーク構造において実行される。
 なお、相互に直上及び直下の関係を有する2台の電子黒板2同士は通信ネットワーク9ではなくUSBケーブル等で接続されていてもよい。また、相互に直上及び直下の関係を有する2台の電子黒板2同士は有線で接続されていても無線で接続されていてもよい。
 図11に示す設定管理者PC500は、電子黒板2に設定情報を設定し管理する設定管理者が操作するPCである。設定管理者は電子黒板2が設置されている企業等の担当者であるが、電子黒板2のサービスエンジニアが設定管理者でもよい。
 設定管理者は設定管理者PC500を操作して新しいバージョンのプログラム及び後述する設定情報を親機2pに設定する。親機2pに新しいバージョンのプログラム及び設定情報が設定されると、親機2pと子機層C及び孫機層Gの全ての電子黒板2が相互に同期してプログラムのバージョンが同じになり、同じ設定情報が子機層C及び孫機層Gの全ての電子黒板2に設定される。なお、プログラムのバージョンアップの他、プログラムをバージョンダウンしてもよいが、以下では新しいバージョンのプログラムが設定されることを前提として説明を行う。
 設定管理者PC500ではブラウザソフトウェアが動作し、ブラウザソフトウェアが親機2pと通信してHTML(HyperText Markup Language)やJavaScript(登録商標)で記述された画面情報を親機2pから取得する。設定管理者PC500は後述する「設定情報設定画面」をディスプレイに表示する。設定管理者PC500のディスプレイに表示された設定情報設定画面を用いて設定管理者は設定情報を入力し、入力した設定情報を親機2pに設定することができる。
 また、プログラムを配信するサーバに親機2pがアクセスして新しいバージョンのプログラムを取得してもよい。設定情報についても同様に、設定管理者がサーバに設定情報を設定し、親機2pがサーバから設定情報を取得してもよい。
 また、設定管理者は設定管理者PC500を操作して後述する通信情報を子機層C及び孫機層Gのそれぞれの電子黒板2に設定する。通信情報は電子黒板2が直上の電子黒板2と通信するための情報である。このため設定管理者PC500は後述する「通信情報設定画面」をディスプレイに表示する。通信情報設定画面を用いて設定管理者は電子黒板2が直上の電子黒板2と通信するための通信情報を設定することができる。
 図12は、親機2p、子機2c及び孫機2gで動作するそれぞれの機能の概略を説明する図の一例である。親機2pではプログラム提供部170が動作し、子機1ではプログラム管理部160とプログラム提供部170が動作する。子機層Cの電子黒板2が親機2pから新しいバージョンのプログラムを取得する場合、子機層Cの電子黒板2でプログラム管理部160が動作する。孫機層Gの電子黒板2から新しいバージョンのプログラムを要求された場合、子機層Cの電子黒板2でプログラム提供部170が動作する。孫機層Gと、図示されていない曾孫機層との関係においても同様である。
 なお、電子黒板2のプログラム提供部170は、直下の電子黒板2からの要求に応じて新しいバージョンのプログラムを直下の電子黒板2に提供する。電子黒板2のプログラム管理部160は、直上の電子黒板2とプログラムのバージョンが同じかどうかを判定し、異なっている場合に直上の電子黒板2からプログラムを取得してバージョンアップする。
 また、親機2pでは設定提供部150が動作し、子機1では設定提供部150と設定取得部180が動作する。子機層Cの電子黒板2が親機2pから設定情報を取得する場合、子機層Cの電子黒板2で設定取得部180が動作する。子機層Cの電子黒板2が孫機層Gの電子黒板2から設定情報を要求された場合は子機層Cの電子黒板2で設定提供部150が動作する。孫機層Gと、図示されていない曾孫機層との関係においても同様である。
 図13は、設定管理者PC500のハードウェア構成図の一例である。設定管理者PC500は、CPU201、ROM202、RAM203及び補助記憶装置204を備える。更に、設定管理者PC500は、入力部205、ディスプレイI/F(InterFace)206及び通信I/F207を備える。なお、設定管理者PC500の各部はバス208を介して相互に接続されている。したがって設定管理者PC500は情報処理装置としての機能を有する。
 CPU201は補助記憶装置204に格納された各種プログラム及びOSを実行する。ROM202は不揮発性メモリである。ROM202はCPU201が実行するために必要なプログラム、データ等を格納する。
 RAM203は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)等の主記憶装置である。補助記憶装置204に格納された各種プログラムが、CPU201によって実行される際にRAM203に書き込まれ、RAM203はCPU201の作業領域となる。
 補助記憶装置204は、CPU201により実行される各種プログラム、及び各種プログラムがCPU201により実行される際に利用する各種情報を記憶する。補助記憶装置204は例えばHDD(Hard Disk Drive)やSSD等の不揮発性メモリである。
 入力部205はオペレータが設定管理者PC500に各種指示を入力するためのインタフェースである。例えば、キーボード、マウス、タッチパネル、音声入力装置等である。入力部205は更に、USB I/F等、記録媒体等の装着部を有していてもよい。
 ディスプレイI/F206は、CPU201からの要求により、設定管理者PC500が有する各種情報をカーソル、メニュー、ウィンドウ、文字、又は画像等の形態でディスプレイ210に表示する。ディスプレイI/F206は例えばグラフィックチップやディスプレイI/Fである。
 通信I/F207はネットワークを介して電子黒板2と通信を行うネットワークI/Fである。
 <プログラム管理部とプログラム提供部の機能について>
 図14はプログラム提供部170とプログラム管理部160の詳細な機能ブロック図の一例である。なお、相互に直上と直下の関係にある2台の電子黒板2のうち、直上の電子黒板2のプログラム管理部160と直下の電子黒板2のプログラム提供部170は、それぞれ説明の便宜上図示が省略されている。
 <<プログラム提供部>>
 プログラム提供部170は通信部171、プログラム情報提供部172及び記憶読出部179を有している。これら各機能部は図4に示されるSSD104に格納されているプログラム(すなわち、すでにインストールされているプログラム)をCPU101が実行して図4に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
 また、プログラム提供部170は、図4に示されるSSD104、ROM102又はRAM103のいずれか1つ以上により構築される記憶部2000にアクセス可能である。記憶部2000には、「インストール済みバージョン」2004及び「プログラムファイル」2005が記憶されている。「インストール済みバージョン2004」とは、電子黒板2に現在インストールされているプログラムのバージョンを示す情報である。プログラムファイル2005はプログラムが格納されたファイルである。「プログラムファイル」2005は、一般には、複数の部品(例えばモジュールと呼ばれる場合がある)が1つのフォルダーに格納された形態、あるいは複数の部品が階層的に格納された形態を有している。プログラムファイル2005は圧縮されていてもよいし、実行形式でもよい。プログラムファイル2005の複数の部品の1つにはテキストデータ等の形態でバージョンが記述されており、電子黒板2はプログラムファイル2005が有するバージョンを読み出すことができる。
 記憶部2000にプログラムファイル2005が記憶される場合として以下の場合が考えられる。すなわち設定管理者が記憶部2000にプログラムファイル2005を記憶させる場合、プログラムを配信するサーバから記憶部2000にプログラムファイル2005がダウンロードされる場合、及び記憶部2000に対し、直上の電子黒板2からプログラムファイル2005が送信される場合である。
 プログラムファイル2005が有するプログラムのバージョンと「インストール済みバージョン」2004は同じ場合と異なっている場合がある。プログラムファイル2005を用いてプログラムが電子黒板2にインストールされた場合、プログラムファイル2005が有するプログラムのバージョンと「インストール済みバージョン」2004は同じである。他方、設定管理者やプログラムを配信するサーバ等がプログラムファイル2005を記憶部2000に記憶させた直後から、電子黒板2がこのプログラムファイル2005を用いてプログラムをインストールするまでの間は、プログラムファイル2005が有するプログラムのバージョンと「インストール済みバージョン」2004とは異なっている。
 (プログラム提供部170の機能について)
 通信部171は、図4に示したCPU101やネットワークコントローラ105等により実現され、直下の電子黒板2と各種情報の送受信を行う。なお、以降の説明では、プログラム情報提供部172が通信部171により直下の電子黒板2と通信する場合でも、「通信部171を介して」という記載を省略する場合がある。
 プログラム情報提供部172は、直下の電子黒板2から、インストールされているプログラムのバージョンの問い合わせを受けると、記憶読出部179を介して「インストール済みバージョン」2004を記憶部2000から読み出して直下の電子黒板2に送信する。また、プログラム情報提供部172は、直下の電子黒板2からプログラムファイル2005を要求されると、記憶読出部179を介してプログラムファイル2005を記憶部2000から読み出して直下の電子黒板2に送信する。
 記憶読出部179は記憶部2000に記憶されている各種の情報を読み出したり、各種の情報を記憶部2000に記憶させたりする。なお、以下の説明では、記憶読出部179が記憶部2000から各種の情報を読み出したり、各種の情報を記憶部2000に記憶させたりする場合でも、説明の便宜上、「記憶読出部179を介して」という説明を省略する場合がある。
 <<プログラム管理部>> 
 プログラム管理部160は、通信部161、バージョン確認部162、プログラムインストール部163、直上バージョン判定部164、プログラム取得部165、及び記憶読出部169を有している。これら各機能部は、図4に示されるSSD104に格納されているプログラムをCPU101が実行して図4に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
 また、プログラム管理部160は、図4に示されるSSD104、ROM102又はRAM103のいずれか1つ以上により構築される記憶部5000にアクセス可能である。記憶部5000には、「インストール済みバージョン」5004及びプログラムファイル5005が記憶され、更に通信情報記憶部5002が構築されている。「インストール済みバージョン」5004及びプログラムファイル5005は、直上の電子黒板2における「インストール済みバージョン」2004及びプログラムファイル2005とそれぞれ同じである。記憶部5000のプログラムファイル5005は、直上の電子黒板2から送信されたプログラムファイル2005である。通信情報記憶部5002が記憶している情報については表14等と共に後述する。
 (プログラム管理部160の機能について)
 通信部161は、図4に示したCPU101やネットワークコントローラ105等により実現され、直上の電子黒板2と各種情報の送受信を行う。なお、以降の説明では、電子黒板2が通信部161により直上の電子黒板2と通信する場合でも、「通信部161を介して」という記載を省略する場合がある。
 バージョン確認部162は、記憶部5000に記憶されているプログラムファイル5005が有するプログラムのバージョンと「インストール済みバージョン」5004とを比較する。プログラムファイル5005が有するプログラムと「インストール済みバージョン」5004とが異なっている場合にバージョン確認部162は「プログラムファイル5005のプログラムをインストールの必要がある」と判定する。なおバージョン確認部162は、プログラムファイル5005が有するプログラムのバージョンの方が「インストール済みバージョン」5004より新しい場合にだけ「プログラムファイル5005のプログラムをインストールの必要がある」と判定してもよい。
 プログラムインストール部163は、バージョン確認部162が「プログラムファイル5005のプログラムをインストールする必要がある」と判定した場合に、プログラムファイル5005のプログラムを電子黒板2にインストールする。
 直上バージョン判定部164は、直上の電子黒板2にインストールされているプログラムのバージョン(「インストール済みバージョン」2004)を直上の電子黒板2から取得する。直上バージョン判定部164は、取得した「インストール済みバージョン」2004が電子黒板2にインストールされているプログラムのバージョン(「インストール済みバージョン」5004)と同じかどうかを判定する。この判定により、直上の電子黒板2と設定情報を同期してよいか否かを判定できる。直上バージョン判定部164が「同じ」と判定した場合、直上バージョン判定部164は後述する設定要求部183に設定情報の同期を許可する。
 プログラム取得部165は直上の電子黒板2からプログラムファイル2005を取得して記憶部5000にプログラムファイル5005として記憶させる。すでにプログラムファイル5005が記憶部5000に記憶されている場合は、上記取得したプログラムファイル2005を新たな当該プログラムファイル5005として既に記憶されているプログラムファイル5005に上書きする。
 記憶読出部169は記憶部5000に記憶されている各種の情報を読み出したり、各種の情報を記憶部5000に記憶させたりする。なお、以下の説明では、記憶読出部169が記憶部5000から各種の情報を読み出したり、各種の情報を記憶部5000に記憶させたり場合でも、説明の便宜上、「記憶読出部169を介して」という説明を省略する場合がある。
 <<設定提供部の機能について>>
 図15は、設定取得部180と設定提供部150の詳細な機能ブロック図の一例である。相互に直上と直下の関係にある2台の電子黒板2のうち、直下の電子黒板2も設定提供部150を有するが説明の便宜上図示が省略されている。また直上の電子黒板2も設定取得部180を有するが説明の便宜上図示が省略されている。
 設定提供部150は、通信部151、設定受付部152、MD生成部153、情報提供部154及び記憶読出部155を有している。これら各機能部は、図4に示されるSSD104に格納されているプログラムをCPU101が実行して図4に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
 また、設定提供部150は、図4に示されるSSD104、ROM102又はRAM103のいずれか1つ以上により構築される記憶部2000にアクセス可能である。記憶部2000には、設定情報記憶部2001、認証情報記憶部2002及びMD記憶部2003が含まれている。まず記憶部2000に記憶されている情報について説明する。なお、図15の記憶部2000は図14の記憶部2000と同じものであるが異なっていてもよい。また設定情報記憶部2001は、図6の設定ファイル記憶部430と同じものである。
Figure JPOXMLDOC01-appb-T000011
 表11は認証情報記憶部2002に記憶されている認証情報の一例を示す図である。表11の例では、認証情報としてパスコードが含まれる。電子黒板2は直下の電子黒板2が送信したパスコードが認証情報記憶部2002に記憶されているパスコードと一致するか否かを判定することによって直下の電子黒板2を認証する。なお、認証方法としては、パスコードを用いるのでなく、電子証明書を使用して認証する認証方法であってもよい。
Figure JPOXMLDOC01-appb-T000012
 表12は設定情報記憶部2001に記憶される設定情報に関する情報一例を示す図である。表12の例では、「設定情報に関する情報」として、設定情報種類、設定情報設定日時及びファイル名が含まれる。表12に示されている設定情報種類が「本体動作用」の設定情報は現在有効な設定情報である。設定情報設定日時は設定情報が電子黒板2に設定された日時を示す。ファイル名は設定情報が格納されたファイルのファイル名である。表12に示す「設定情報に関する情報」は、設定情報の一部として設定情報記憶部2001に記憶される。
Figure JPOXMLDOC01-appb-T000013
 表13はMD記憶部2003に記憶されているハッシュ値(メッセージダイジェスト:Message Digest)の一例を示す図である。MD記憶部2003には「本体動作用」の設定情報のメッセージダイジェストが記憶される。メッセージダイジェストとしてはハッシュ値が一般的であるが、設定情報がわずかでも変わると変わる性質を有する他の情報であってもよい。電子黒板2は設定情報が設定されると設定情報からハッシュ値を生成しMD記憶部2003に記憶させる。ハッシュ値は設定情報の同期が必要かどうかを直下の電子黒板2が判定するために使用される。
 (設定提供部150の機能について)
 設定提供部150の通信部151は、図4に示したCPU101やネットワークコントローラ105等により実現され、直下の電子黒板2及び設定管理者PC500と各種情報の送受信を行う。例えば、設定管理者PC500に「設定情報設定画面」の画面情報を送信し、直下の電子黒板2に設定情報を送信する。なお、通信部151が用いる通信プロトコルとしては、HTTP(HyperText Transfer Protocol)、HTTP/2、又はSPDY(SPeeDYと発音される)等が用いられるが、どのようなものであってもよい。また、以降の説明では、設定提供部150が通信部151により設定取得部180と通信する場合でも、「通信部151を介して」という記載を省略する場合がある。
 設定受付部152は図4に示したCPU101等により実現され、Webサーバ及びWebアプリとして機能し、設定管理者PC500に送信する「設定情報設定画面」の画面情報をHTMLやJavaScript(登録商標)等で生成する。
 MD生成部153は図4に示したCPU101等により実現され、設定情報からメッセージダイジェストを生成し記憶読出部155を介してMD記憶部2003に記憶させる。
 情報提供部154は図4に示したCPU101等により実現され、直下の電子黒板2からの要求に応じて設定情報を直下の電子黒板2に提供する。
 記憶読出部155は図4に示したCPU101、SSD104、RAM103等により実現され、記憶部2000に各種情報を記憶させたり、記憶部2000から各種情報を読み出したりする処理を行う。なお、以降の説明では、記憶部2000に各種情報を記憶させたり、記憶部2000から各種情報を読み出したりする処理を設定提供部150が実行する場合でも、「記憶読出部155を介して」という記載を省略する場合がある。
 <<設定取得部180の機能について>>
 設定取得部180は、通信部181、設定受付部182、設定要求部183、MD比較部184、記憶読出部185、情報取得部186、MD生成部187、及びエラーコード表示部188を有している。これら各機能部は図4に示されるSSD104に格納されているプログラムをCPU101が実行して図4に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
 また、設定取得部180は、図4に示されるSSD104、ROM102又はRAM103のいずれか1つ以上により構築される記憶部5000にアクセス可能である。記憶部5000には、設定情報記憶部5001、通信情報記憶部5002及びMD記憶部5003が含まれている。設定情報記憶部5001に記憶される設定情報及びMD記憶部5003に記憶されるメッセージダイジェスト(ハッシュ値)は、直上の電子黒板2における設定情報及びメッセージダイジェストとそれぞれ同じである。なお、図15の記憶部5000は図14の記憶部5000と同じものであるが異なっていてもよい。
Figure JPOXMLDOC01-appb-T000014
 表14は通信情報記憶部5002に記憶されている通信情報の一例を示す図である。通信情報は当該通信情報記憶部5002を有する電子黒板2が直上の電子黒板2と通信するための情報である。本実施形態ではIPアドレスとパスワードが通信情報として記憶されている。この通信情報は図16A及び図16Bと共に後述するように設定管理者が設定管理者PC500を操作して各電子黒板2(親機2pとなる電子黒板2を除く)に設定する。設定管理者は図11のような多段階(三階層以上)の木構造のネットワーク構造を想定し、各電子黒板2には、当該電子機器2から見て直上の電子黒板2のIPアドレスと、パスワードを設定する。なお、図示する通信情報は一例に過ぎず、通信情報にはポート番号等が含まれていてもよい。
 (設定取得部180の機能について)
 通信部181は図4に示したCPU101やネットワークコントローラ105等により実現され、直上の電子黒板2及び設定管理者PC500と各種情報の送受信を行う。例えば設定管理者PC500に「通信情報設定画面」の画面情報を送信し、直上の電子黒板2から設定情報を受信する。なお、通信部181が用いる通信プロトコルとしてはHTTP、HTTP/2、又はSPDY等が用いられるが、どのようなものであってもよい。また、以降の説明では、設定取得部180が通信部181により設定提供部150と通信する場合でも、「通信部181を介して」という記載を省略する場合がある。
 設定受付部182は図4に示したCPU101等により実現され、Webサーバ及びWebアプリとして機能し、設定管理者PC500に送信する「通信情報設定画面」の画面情報をHTMLやJavaScript(登録商標)等で生成する。
 設定要求部183は図4に示したCPU101等により実現され、直上バージョン判定部164が直上の電子黒板2とインストールされているプログラムのバージョンが同じであると判定すると、直上の電子黒板2と設定情報を同期する処理を開始する。同期を開始するタイミングは後述する表15の同期タイミングとして設定される。また、設定要求部183は通信を始めると直上の電子黒板2からハッシュ値を取得する。
 MD比較部184は図4に示したCPU101等により実現され、記憶部5000のMD記憶部5003に記憶されているハッシュ値と直上の電子黒板2から取得したハッシュ値とを比較する。
 情報取得部186は図4に示したCPU101等により実現され、MD比較部184による比較の結果ハッシュ値が異なる場合、直上の電子黒板2から設定情報を取得する。情報取得部186は取得した設定情報を記憶部5000の設定情報記憶部5001に記憶読出部185を介して記憶させる。
 MD生成部187は図4に示したCPU101等により実現され、記憶部5000の設定情報記憶部5001に本体動作用の設定情報が記憶されると、設定情報からメッセージダイジェストを生成する。MD生成部187は生成したメッセージダイジェストをMD記憶部5003に記憶読出部185を介して記憶させる。
 エラーコード表示部188は図4に示したCPU101等により実現され、設定情報の同期処理に関するエラーコード等をディスプレイ3又は設定管理者PC500に表示させる。
 記憶読出部185は図4に示したCPU101、SSD104、RAM103等により実現され、記憶部5000に各種情報を記憶させたり、記憶部5000から各種情報を読み出したりする処理を行う。なお、以降の説明では、記憶部5000に各種情報を記憶させたり、記憶部5000から各種情報を読み出したりする処理を設定取得部180が実行する場合でも、「記憶読出部185を介して」という記載を省略する場合がある。
 <<設定管理者PCの機能について>>
 設定管理者PC500は、通信部221、操作受付部222、表示制御部223、及び記憶読出部229を有している。これら各機能部は、補助記憶装置204に格納されているブラウザソフトウェア7001をCPU201が実行して図13に示される各構成要素のいずれかを制御することで実現される機能又は手段である。
 また、設定管理者PC500は、図13に示される補助記憶装置204、ROM202又はRAM203のいずれか1つ以上により構築される記憶部7000にアクセス可能である。記憶部7000にはブラウザソフトウェア7001が記憶されている。なお、ブラウザソフトウェア7001と同様の通信機能を備えたアプリケーションが記憶部7000に記憶されていてもよい。
 (設定管理者PCの機能について)
 通信部221は図13に示したCPU201や通信I/F207等により実現され、電子黒板2と各種情報の送受信を行う。例えば、通信部221は設定管理者が入力した設定情報や通信情報を電子黒板2に送信する。なお、上記の如く、設定管理者は設定管理者PC500を用いて電子黒板2のうち親機2pに設定情報を設定する。その結果、親機2pと子機層C及び孫機層Gの全ての電子黒板2が相互に同期して、同じ設定情報が子機層C及び孫機層Gの全ての電子黒板2に設定される。
 操作受付部222は図13に示したCPU201や入力部205等により実現され、設定管理者の各種の操作を受け付ける。具体的には、操作受付部222は設定情報や通信情報等の入力を受け付ける。
 表示制御部223は図13に示したCPU201やディスプレイI/F206等により実現され、ディスプレイ210に「設定情報設定画面」や「通信情報設定画面」を表示させる。具体的には、表示制御部223は電子黒板2から送信される、HTMLやJavaScript(登録商標)等で記述された画面情報を解釈し、これらの画面を表示する。
 記憶読出部229は図13に示したCPU201、ROM202、RAM203等により実現され、記憶部7000に各種情報を記憶させたり、記憶部7000から各種情報を読み出したりする処理を行う。
 <設定情報設定画面>
 図16Aは設定管理者PC500のディスプレイ210に表示される「設定情報設定画面」501の一例を示す図である。設定情報設定画面501にはシステム設定ボタン502、セキュリティ設定ボタン503、ネットワーク設定ボタン504、及び「日付と日時設定」ボタン505が表示される。「1~4」の数字は項目番号である。設定管理者はそれぞれのボタンを押下して詳細な設定を行う。以下、各ボタンで設定される設定情報について説明する。
 システム設定ボタン502を押下することによって、設定管理者は、拠点名、自動シャットアウト時間、自動再起動時刻、自動スタンバイ時間、同期に関する設定等を設定することができる。
 セキュリティ設定ボタン503を押下することによって、設定管理者は、ユーザが入力可能なメールアドレスのドメイン又はユーザによる入力が制限されるメールアドレスのドメイン(両方が設定されると入力可能ドメインが有効になる)、メールアドレスの直接入力の禁止、パスワードの最小桁数、パスワードの生成タイミング、パスワードの表示制限等を設定することができる。補足すると「パスワードの生成タイミング」とは電子黒板2がパスワードを自動で生成する場合に、生成するタイミング(起動時)や生成する時刻等をいう。すなわち、電子黒板2はパスワードを自動で生成できる他、設定管理者が任意に設定できる。
 ネットワーク設定ボタン504を押下することにより、設定管理者は、IPアドレス、サブネットマスク、デフォルトゲートウェイ、DNSに関する設定等を設定することができる。
 「日付と日時設定」ボタン505を押下することにより、設定管理者は、タイムゾーン、時刻サーバとの同期の有無等を設定することができる。
 後述する図16Bに示すシステム設定画面601で設定可能な「同期タイミング」が電子黒板2の「再起動時」である場合、システム設定ボタン502を押下することよって「自動再起動時刻」を設定することで、設定管理者は同期タイミングを設定できる。この他、同期タイミングとして任意の時刻を設定もしてよい。同期タイミングは設定情報に含まれ各電子黒板2の間で共有されるので、電子黒板2は共通のタイミングで直上の電子黒板2から設定情報を取得できる。
 なお、図16Aは設定情報の一例を示したに過ぎず、設定管理者は他にも数多くの項目を設定可能である。原則的に設定情報設定画面501で設定可能な情報は設定情報に含まれるが、同期が好ましくない情報は例外的に同期の対象から除かれる。例えば、ネットワーク設定はIPアドレスやサブネットマスクを含むが、IPアドレスを同期させると全ての電子黒板2が同じIPアドレスを保持してしまうため同期の対象から除かれる。サブネットマスクも全ての電子黒板2で同じとは限らないので同期の対象から除かれる。
 設定管理者PC500は設定管理者によって設定された設定内容を受け付け、受け付けた設定内容を、当該設定情報設定画面501を表示させている電子黒板2に送信する。電子黒板2の設定提供部150は送信された設定内容に基づいて設定情報記憶部2001に設定情報を記憶させる。なお、上記の如く、設定管理者は設定管理者PC500を用いて電子黒板2のうち親機2pに設定情報を設定する。したがってこの場合の電子黒板2は親機2p(図15中、直上の電子黒板2)を意味する。
 なお、図15中、直上の電子黒板2(すなわち親機2p)の設定受付部152は図16Aのような設定情報設定画面501を設定管理者PC500に表示させる代わりに電子黒板2自体のディスプレイ3に表示して設定管理者からの設定を受け付けることも可能である。
 <<システム設定画面>>
 図16Bは、設定管理者PC500のディスプレイに表示されるシステム設定画面601の一例を示す図である。システム設定画面601は図16Aに示されるシステム設定ボタン502が押下されると表示される。システム設定画面601には、チェックボックス602と共に「機器設定を同期する」というメッセージが表示される。設定管理者は電子黒板2に直上の電子黒板2と設定情報を同期させる場合、チェックボックス602をONにする(すなわちチェックボックス602を押下してチェックボックス602にチェックマークを入れる。以下同様)。
 設定管理者がシステム設定画面601を用いて親機2p(図15中、直上の電子黒板2)のチェックボックス602をONにすることにより、親機2pが子機2cに対し設定情報を提供することが可能になる。
 チェックボックス602がONになると、「同期項目」6021と「同期タイミング」6022を設定管理者が設定可能になる。「同期項目」6021としては、図16Aの項目番号が個別に選択可能な状態で表示される。「同期タイミング」6022としては、「再起動時」、「電源オフ時」、及び時刻を入力する欄が選択可能な状態で表示される。
 チェックボックス602の設定は後述する表15の「同期」の項目に反映される。「同期項目」6021の設定は同じく「同期項目」の項目に反映される。「同期タイミング」6022の設定は同じく「同期タイミング」の項目に反映される。
 また、システム設定画面601には、チェックボックス607と共に「自動バージョンアップする」というメッセージが表示される。設定管理者は電子黒板2に直上の電子黒板2からプログラムファイルを取得してプログラムをバージョンアップさせる場合にチェックボックス607をONに設定する。上記のように設定情報を同期させるためにプログラムをバージョンアップさせる必要が生じる場合があるが、ユーザがプログラムをバージョンアップさせたくない場合もありうる。この場合、設定管理者はチェックボックス607をOFFに設定することができる。
 チェックボックス607がONになると、「バージョンアップ許可表示」のチェックボックス608を設定管理者が設定可能になる。設定管理者がチェックボックス607をONに設定した場合でも、チェックボックス608がONであることで、プログラムのバージョンアップの前に電子黒板2は後述する図21に示されるダイアログをディスプレイ3に表示させる。これにより、バージョンアップの前にユーザがバージョンアップするかどうかを確認できる。
 設定管理者がシステム設定画面601を用いて親機2p(図15中、直上の電子黒板2)のチェックボックス608をONにすることにより、親機2pが子機2cにプログラムファイル2005を提供しないことが選択可能になる。
 システム設定を電子黒板2に設定する場合、設定管理者はOKボタン620を押下する。他方、システム設定を電子黒板2に設定しない場合、設定管理者はキャンセルボタン621を押下する。OKボタン620が押下された場合、設定管理者PC500は設定管理者によって設定された設定内容を受け付け、受け付けた設定内容を、当該システム設定画面601を表示させている電子黒板2に送信する。設定内容を受信した電子黒板2の設定提供部150は受信した設定内容に基づいて設定情報記憶部2001に設定情報を記憶させる。なお、上記の如く、設定管理者は設定管理者PC500を用いて電子黒板2のうち親機2pに設定情報を設定する。したがってこの場合の電子黒板2は親機2p(図15中、直上の電子黒板2)を意味する。
 なお、図15中、直上の電子黒板2(すなわち親機2p)の設定受付部152が図16Bのようなシステム設定画面601を設定管理者PC500に表示させる代わりに電子黒板2のディスプレイ3に表示して設定管理者からの設定を受け付けることも可能である。
Figure JPOXMLDOC01-appb-T000015
 表15は、設定管理者により設定された設定情報の内容の一例(すなわち表12と共に上記した設定情報の具体例)を模式的に示す。表15の例では、設定情報として、項目番号ごとに項目と内容が含まれる。
 このうち「システム設定」の設定情報には、設定情報の同期に関する設定の項目として、「同期」、「同期タイミング」及び「同期項目」の各項目が含まれる。「同期」の項目としては、同期処理を行う場合にON、同期しない場合にOFFが設定される。「同期タイミング」の項目としては、電子黒板2が同期するタイミングが設定される。「同期項目」の項目としては、設定情報が有するいくつかの項目のうち同期する項目の番号が設定される。「同期タイミング」の項目としては、「再起動時」の他、「電源オフの直後」又は「予め定められた時刻(例えば、毎日4時)」等が設定可能である。
 また、プログラムのバージョンアップに関する設定の項目として「自動バージョンアップ」及び「バージョンアップ許可表示」の各項目が含まれる。「自動バージョンアップ」の項目としては、バージョンアップを自動で行う場合にON、バージョンアップしない場合にOFFが設定される。「バージョンアップ許可表示」の項目としては、後述する図21に示されるダイアログが表示される場合にONが設定され、ダイアログが表示されない場合にOFFが設定される。
 なお、図16Bに示されているシステム設定画面601は、表15に示されている、図16Aのシステム設定ボタン502を押下することによって設定管理者が設定可能なシステム設定の設定情報の項目のうち、同期に関する設定情報及びプログラムのバージョンアップに関する設定情報を設定するためシステム設定画面である。システム設定ボタン502を押下することによって設定管理者が設定可能なシステム設定の設定情報の項目のうちの上記以外の項目、すなわち拠点名、自動シャットアウト時間、自動再起動時刻及び自動スタンバイ時間の設定のためのシステム設定画面は、例えば図16Bのシステム設定画面の次頁の画面として用意される。
 <<通信情報設定画面>>
 図17は、設定管理者PC500のディスプレイに表示される「通信情報設定画面」701の一例を示す図である。通信情報設定画面701にはIPアドレス入力欄702とパスワード入力欄703が表示される。設定管理者は通信情報設定画面701を表示させている電子黒板2からみて直上の電子黒板2のIPアドレスをIPアドレス入力欄702に入力する。同様に設定管理者はパスワード入力欄703にパスワードを入力する。
 入力した通信情報を電子黒板2に設定する場合、設定管理者はOKボタン704を押下する。通信情報を電子黒板2に設定しない場合、設定管理者はキャンセルボタン705を押下する。OKボタン704が押下された場合、設定管理者PC500は入力された通信情報を受け付け、システム設定画面601を表示させている電子黒板2に受け付けた通信情報を送信する。通信情報を受信した電子黒板2の設定受付部182は受信した設定内容に基づいて通信情報記憶部5002に通信情報を記憶させる。
 なお、電子黒板2の設定受付部182は図17のような通信情報設定画面701を設定管理者PC500に表示させる代わりに電子黒板2自体のディスプレイ3に表示して設定管理者からの設定を受け付けることも可能である。
 <インストール手順>
 図18は、画像処理システム1が新しいバージョンのプログラムを同期する手順を示すシーケンス図の一例である。なお、図18では、子機層Cの任意の子機2cと孫機層Gの任意の孫機2gの処理を前提としている。
 ステップS1では、設定管理者は設定管理者PC500を操作して新しいバージョンのプログラムファイル2005を親機2pに設定する。プログラムファイル2005が格納されたUSBメモリを設定管理者が親機2pに装着してプログラムファイル2005を記憶部2000にコピーしてもよい。あるいはプログラムを配信するサーバから親機2pがプログラムファイル2005をダウンロードしてもよい。
 次にステップS2にて、親機2pはプログラムファイル2005を記憶部2000に記憶させておき、次回の起動時、プログラムファイル2005のプログラムを親機2p自体にインストールする。親機2pがプログラムファイル2005のプログラムをインストールすることで、親機2pと子機2cのプログラムのバージョンが異なる状況が生じる。設定管理者が強制的にプログラムファイル2005のプログラムを親機2pにインストールすることも可能である。
 次にステップS3にて、子機2cの「直上バージョン判定部」164は、子機2cが起動すると親機2pのプログラムのバージョンをチェックする。すなわち、親機2pにインストールされているプログラムのバージョンと(「インストール済みバージョン」2004)が、子機2cにインストールされているプログラムのバージョン(「インストール済みバージョン5004」)と同じかどうかを判定する。図18では、判定結果が「プログラムのバージョンが異なる」であった場合を想定している。
 次にステップS4にて、子機2cのプログラム取得部165はプログラムファイル2005を親機2pに要求する。なおその際、子機2cは通信情報記憶部5002に記憶されているパスワードを親機2pに送信してログインする。
 次にステップS5にて、親機2pのプログラム情報提供部172は記憶部2000に記憶されているプログラムファイル2005を子機2cに送信する。
 次にステップS6にて、子機2cのプログラム取得部165は親機2pから取得したプログラムファイル2005を記憶部5000にプログラムファイル5005として記憶させておく。次回の起動時、プログラムインストール部163がプログラムファイル5005のプログラムを子機2cにインストールする。プログラムをインストールすることで子機2cと孫機2gとの間でプログラムのバージョンが異なる状況が生じる。孫機2gも上記同様にしてプログラムをバージョンアップできる。
 したがって以降のステップS7~S10の処理は、それぞれ上述したステップS3~S6と同様でよい。
 <<プログラムのバージョンアップ処理>>
 図19は、親機以外の電子黒板2がプログラムをバージョンアップする手順を詳細に説明するフローチャートの一例である。図19の処理は電子黒板2が起動することでスタートする。この起動は、システム設定ボタン502を押下することによって自動再起動時刻を設定することにより再起動した場合、又は、ユーザが起動させた場合のいずれであってもよい。
 まず、電子黒板2のバージョン確認部162は、電子黒板2自体にインストールされているプログラムのバージョンと、記憶部5000に記憶されているプログラムファイル5005のプログラムのバージョンが同じかどうかを判定する(S51)。電子黒板2自体にインストールされているプログラムのバージョンとは、記憶部5000に記憶されている「インストール済みバージョン」5004である。
 ステップS51の判定結果がNoの場合、バージョンアップすべきなので、プログラムインストール部163は図21に示すようなダイアログを表示するか否かを判定する(S52)。すなわち、図16Bの設定画面でチェックボックス608がチェックされているかどうかを判定する。
 ステップS52の判定結果がNoの場合、図21に示すようなダイアログを表示せずにプログラムファイル5005のプログラムのインストールが行われる(S54)。
 ステップS52の判定結果がYesの場合、プログラムインストール部163は図21に示すようなダイアログを表示し、ユーザから「アップデートする」ボタン803を押下する操作を受け付けたか否かを判定する(S30)。具体的には、図21のダイアログが表示されている状態で座標検知部22が検知した座標をイベント振分部25がUI操作と判定する。操作処理部26はUI操作された座標に基づきユーザから「アップデートする」ボタン803の押下という操作を受け付けることができる。
 なお、ダイアログが表示されたがユーザがなんら操作を行わないと、電子黒板2はスタンバイ時間の経過によりスタンバイ状態になるか、又は、シャットダウン時間の経過によりシャットダウンされる。
 ステップS53の判定結果がNoの場合、プログラムがインストールされないので、電子黒板2は、その他の起動していない機能を起動させる(起動処理を継続する)。この後、処理は図20の処理に移行する。
 ステップS53の判定結果がYesの場合、電子黒板2のプログラムインストール部163は記憶部5000に記憶されているプログラムファイル5005を用いてプログラムのインストールを行う(S54)。
 次いで、直下の電子黒板2にプログラムファイル5005を提供できるように、プログラムファイル5005を記憶部5000から記憶部2000にコピーする(S55)。なお、記憶部5000のプログラムファイル5005を直下の電子黒板2に提供してもよく、その場合ステップS55を行わなくてもよい。
 プログラムをインストールすると電子黒板2は再起動する(S56)。これは、通常のコンピュータと同様に、起動中は置き換えられないファイルを置き換えるためである。再起動により、処理はステップS51に戻るが、再起動後はステップS51でYesと判定される。
 一方、ステップS51の判定結果がYesの場合、電子黒板2はプログラムのダウンロード処理のスレッドを生成する(S57)。このスレッドは、例えばプログラムのダウンロードの手順が記述されたものである。スレッドを生成しておくことで電子黒板2はプログラムをダウンロードできるまで繰り返しスレッドを実行できる。
 続いて図20を用いて、プログラムのダウンロード処理、及び設定情報の同期処理について説明する。図20は、電子黒板2が起動後に行う処理を説明する図の一例である。図20の処理は、図19の処理の終了後、電子黒板2において必要な機能が起動すると実行される。
 まず、電子黒板2の「直上バージョン判定部」164は、電子黒板2自体のプログラムのバージョンが直上の電子黒板2と同じかどうかを判定する(S110)。すなわち、直上バージョン判定部164は通信情報記憶部5002に記憶されている通信情報を用いて直上の電子黒板2と通信し、「インストール済みバージョン2004」を直上の電子黒板2から取得する。直上バージョン判定部164は取得した直上の電子黒板2の「インストール済みバージョン」2004と、当該直上バージョン判定部164を有する電子黒板2の「インストール済みバージョン」5004とが同じかどうか判定する。
 ステップS110の判定結果がYesの場合(すなわちプログラムのバージョンが一致する場合)、直上の電子黒板2から設定情報を取得してよいので、電子黒板2の設定取得部180が設定情報の同期を行う(S160)。設定情報の同期の詳細については図22と共に後述する。
 設定情報を同期した場合、電子黒板2はシャットダウンする(S170)。シャットダウンにより、設定情報のうち再起動しないと有効にならない設定がある場合に該設定を有効にすることができる。
 ステップS110の判定結果がNoの場合(すなわちプログラムのバージョンが一致しない場合)、設定情報の同期の前にプログラムのバージョンを一致させる必要があるため、プログラム取得部165は、図19のステップS57で生成されたプログラムのダウンロード処理のスレッドを実行する(S120)。
 まず、プログラム取得部165は直上の電子黒板2からプログラムファイルをダウンロードできるかどうかを判定する(S130)。ステップS130で判断すべき条件として、例えば以下の条件(i)、(ii)及び(iii)が挙げられる。
(i)直上の電子黒板2がプログラムファイル2005を保持している。
(ii)直上の電子黒板2が同期設定を有効にしている。
(iii)直上の電子黒板2がプログラムの更新設定を有効にしている。
 条件(i)を判断する理由は、電子黒板2は、直上の電子黒板2がプログラムファイル2005を保持していないとプログラムファイルを取得することができないためである。条件(ii)を判断する理由は、電子黒板2は、直上の電子黒板2が設定情報を提供しないように設定されている場合は、プログラムファイル2005を取得することができないためである。条件(iii)を判断する理由は、電子黒板2は、直上の電子黒板2がプログラムファイル2005を提供しないように設定されている場合は、プログラムファイル2005を取得できないからである。なお、条件(ii)及び(iii)は省いてもよく、条件(i)さえ満たせば、プログラム取得部165は直上の電子黒板2からプログラムファイルをダウンロードできると判定してよい。
 ステップS130の判定結果がNoの場合、プログラム取得部165は定期的にステップS130の判定を繰り返す。これにより、相互に直上及び直下の関係にある2台の電子黒板2の負荷を大きくすることなく、電子黒板2はダウンロードが可能になると直上の電子黒板2からプログラムファイルをダウンロードできる。なお、定期的に判定を繰り返す場合の判定を繰り返す時間間隔は固定でなくてよい。例えば数分~1時間等の時間間隔で判定を繰り返す。また、正確な間隔で判定が繰り返されなくてもよいし、不定期な間隔で判定が繰り返されてもよい。
 ステップS130の判定結果がYesの場合、プログラム取得部165は直上の電子黒板2からプログラムファイル2005をダウンロードする(S140)。ダウンロードしたプログラムファイル2005は記憶部5000にプログラムファイル5005として記憶され、次回の起動時に当該記憶部5000を有する電子黒板2にインストールされる。
 以上のように、電子黒板2の「インストール済みバージョン」5004が直上の電子黒板2の「インストール済みバージョン」2004と同じ場合には設定情報を同期できる。電子黒板2の「インストール済みバージョン」5004が直上の電子黒板2の「インストール済みバージョン」2004と異なる場合には電子黒板2は直上の電子黒板2からプログラムファイル5005をダウンロードして電子黒板2自体にインストールすることができる。これにより、電子黒板2は、直上の電子黒板2との間でインストールされているプログラムのバージョンが同じになるので、直上の電子黒板2との間で設定情報を同期できる。
 <<ダイアログ>>
 図21は、システム設定画面601でチェックボックス608がONの場合に電子黒板2のディスプレイ3に表示されるダイアログ801の一例を示す図である。ダイアログ801は、「新しいプログラムを利用可能です。プログラムをアップデートしますか?」という記述802と、「アップデートする」ボタン803及び「アップデートしない」ボタン804が表示されている。
 ユーザが「アップデートする」ボタン803を押下すると、図19のステップS53でYesと判定され、電子黒板2はプログラムをバージョンアップする。ユーザが「アップデートしない」ボタン804を押下すると、図19のステップS53でNoと判定され、電子黒板2はプログラムをバージョンアップしない。
 <設定情報の同期手順>
 続いて、設定情報の同期手順を説明する。図22は、画像処理システム1が設定情報を同期する手順を示すシーケンス図の一例である。なお、図22では、子機層Cの任意の子機2cと孫機層Gの任意の孫機2gの処理を想定している。
 まずステップS201で、図16A及び図16Bと共に上記したように設定管理者が「設定情報設定画面」を操作して設定情報を親機2pに設定する。
 次にステップS202で、親機2pの設定受付部152は、ステップS201で設定された設定情報を受け付け、本体動作用の設定情報として設定情報記憶部2001に記憶させる。また、親機2pの設定受付部152は設定情報設定日時を更新する。
 次にステップS203で、親機2pのMD生成部153は本体動作用の設定情報からメッセージダイジェスト(ハッシュ値)を生成し、生成したメッセージダイジェストをMD記憶部2003に記憶させる。これにより、親機2pが子機2cにメッセージダイジェスト(ハッシュ値)を送信できる。
 次にステップS204で、子機2cの設定要求部183は、例えば電子黒板2自体が再起動したため設定情報を同期するタイミングであることを検出すると、通信情報記憶部5002に記憶されているIPアドレスの親機2pと通信しパスワードを親機2pに送信してログインする。ログインできた場合、設定要求部183は親機2pにハッシュ値を要求する。
 なお、親機2pと子機2cは互いに整合性がとれた同期手順で動作する必要がある。このような同期手順をプロトコルと称することにする。プロトコルにはバージョンが定められており、子機2cは親機2pと同じバージョンのプロトコルで同期処理することが好ましい。以上から、プロトコルのバージョン及びパスワードが一致している場合に親機2pから子機2cにハッシュ値が送信される。ステップS204の処理では、プロトコルのバージョン及びパスワードが一致したものと想定している。
 また、当然ながら、親機2pの電源がOFFであったり、親機2pに何らかの不具合が生じていたりする場合、子機2cは親機2pからハッシュ値を取得できない。その結果、子機2cが親機2pから設定情報を取得できない場合、子機2cの設定要求部183はエラーを記録する。詳細は図23と共に後述する。
 次にステップS205で、親機2pの通信部151はMD記憶部2003に記憶されているメッセージダイジェスト(ハッシュ値)を子機2cに送信する。
 次にS206で、子機2cの設定要求部183は、親機2pから送信されたメッセージダイジェスト(ハッシュ値)を受信し、MD比較部184が親機2pのハッシュ値とMD記憶部5003に記憶されているハッシュ値とを比較する。ハッシュ値同士を比較することで設定情報の全体を比較するよりも通信負荷を低減できる。ここでは2つのハッシュ値が一致しないものと想定する。2つのハッシュ値が一致しないことは、親機2pの本体動作用の設定情報が更新されていること(子機2cの設定情報よりも新しいこと)を示す。ハッシュ値でなく例えば、設定情報のシリアル番号同士を比較してもよい。この場合、親機2p又は設定管理者が設定情報にシリアル番号を付与しておき、子機2cは設定情報の同期の際、シリアル番号も同期しておく。シリアル番号が一致しない場合、子機2cは親機2pの設定情報が更新されていると判定できる。あるいは、ハッシュ値でなく設定情報そのものを比較してもよい。この場合、設定情報が相互に異なっていれば、子機2cは親機2pの設定情報をそのまま用いて子機2c自体の設定情報を更新できる。
 なお、親機2pが子機2cのハッシュ値を取得して親機2p自体のハッシュ値と比較してもよい。この場合、親機2pの負荷が増大するがハッシュ値の比較がそれほど大きな負荷とはならない場合、親機2pがハッシュ値を比較することも可能である。
 次にステップS207で、ステップS206の比較の結果ハッシュ値が一致しない場合、子機2cの情報取得部186は親機2pに対し設定情報を要求する。ハッシュ値が一致すれば子機2cは設定情報を要求しないので、親機2pと子機2cの負荷が増大することを抑制できる。
 次にステップS208で、親機2pの通信部151は、設定情報記憶部2001から読み出された本体動作用の設定情報を子機2cに送信する。
 次にS209で、子機2cの通信部181は親機2pから設定情報を受信し、情報取得部186は親機2pから受信した設定情報を設定情報記憶部5001に本体動作用の設定情報として記憶させる。また、情報取得部186は設定情報設定日時を更新する。
 次いで、子機2cは、孫機2gに設定情報を送信できるように、設定情報を記憶部5000から設定情報記憶部2001にコピーする。なお、設定情報記憶部5001の設定情報を孫機2gに送信してもよく、その場合上記コピーは行う必要がない。但しこの場合、親機2p以外の電子黒板2において、設定情報記憶部5001を図6の設定ファイル記憶部430と同じものとする。
 次にステップS210で、子機2cのMD生成部187は親機2pから取得した設定情報からメッセージダイジェスト(ハッシュ値)を生成し、生成したメッセージダイジェストをMD記憶部5003に記憶させる。これにより、子機2cが孫機2gにメッセージダイジェスト(ハッシュ値)を送信できる。なおこの場合、子機2cが孫機2gにメッセージダイジェストを送信できるように、メッセージダイジェストをMD記憶部5003からMD記憶部2003にコピーする。但しMD記憶部5003のメッセージダイジェストを孫機2gに送信してもよく、その場合、上記コピーを行わなくてもよい。
 以上のような処理により、親機2pと子機2cとの間で設定情報が同期される。次に、孫機2gの設定要求部183が、設定情報を同期するタイミングであることを検出すると、ステップS11~S17に示すように、孫機2gが子機2cと同じ処理を実行する。
 このように、相互に直上及び直下の関係を有する2台の電子黒板2のうち、直下の電子黒板2は当該電子黒板2自体の設定情報を更新するという処理を行えばよく、直上の電子黒板2が直下の複数の電子黒板2に設定情報を設定するよりも電子黒板2の負荷を低減できる。
 なお、孫機2gが設定情報を取得するタイミングは子機2cよりも1サイクル遅れることになる。これは、孫機2gが起動した時、子機2cは設定情報を同期している途中であるため相互にハッシュ値が一致し、孫機2gは同期の必要がないと判定するためである。したがって、例えば、同期のタイミングが1日に1回(電子黒板2の再起動が1日に1回)であるとすると、孫機2gが設定情報を取得するタイミングは子機2cよりも1日遅れる。しかし、このようにタイミングが遅れて同期するので、各電子黒板2は電子黒板2自体の設定情報の同期と直下の電子黒板2への設定情報の送信を同じタイミングで行う必要がない。よって、負荷が高くなることを抑制しやすい。このような遅れに不都合がある場合、自動的な再起動の回数を1日に複数回に設定管理者が設定しておくこと、あるいはユーザや設定管理者が手動で再起動すること等によって適宜遅れを縮めることが可能である。
 <<子機の動作手順>>
 図23は、電子黒板2が設定情報を更新する手順を示すフローチャート図の一例である。図23の処理の説明では、主に図22のステップS204の処理について説明する。
 上記のように子機2cの設定要求部183は親機2pに対しハッシュ値を要求する(ステップS310)。この要求に対し、親機2pの通信部151はハッシュ値、又はエラーの内容に応じたエラーコードを子機2cに送信する。したがって子機2cはハッシュ値又はエラーコードを取得できる。
 子機2cの設定要求部183はハッシュ値を取得できたか否かを判定する(ステップS320)。ハッシュ値を取得できた場合(ステップS320のYes)、上記のように子機2cの情報取得部186が設定情報を取得する(ステップS330)。
 ハッシュ値を取得できない場合(ステップS320のNo)、子機2cの設定要求部183はエラーコードを記憶部5000に記録する(ステップS340)。エラーコードには以下のような種類がある。
・400…プロトコルのバージョンが一致していない
・401…パスワードが一致していない
 また、子機2cの設定要求部183は親機2pが応答しない場合(電源オフ等のため)、応答なしを意味する402のエラーコードを記録する。これにより、エラーコード表示部188がエラーコードを電子黒板2のディスプレイ3又は設定管理者PC500に表示させることができる。
 <エラーコードの表示>
 図24Aは、上記した図23のステップS340でエラーコードが記録された場合の、設定管理者PC500のディスプレイに表示される「設定情報設定画面」501の一例を示す図である。なお、図24Aを用いた説明では、図16Aとの相違点について主に説明する。エラーコード表示部188は設定情報記憶部5001に記憶されている「設定情報設定日時」506と同期状況507を設定情報設定画面501に表示する。同期状況としてエラーと表示されるため、設定管理者は同期できなかったことを把握できる。また、同期状況として更にエラーコード(エラーの内容)が表示されるので同期できなかった理由も把握できる。
 図24Bは電子黒板2のディスプレイ3に表示されるエラーコードの一例を示す図である。電子黒板2のディスプレイ3には、「手書き」や「消しゴム」等のツールアイコン欄511、ページの切り替え等を行うためのページツール欄512等が表示される。これらと共に、電子黒板2のエラーコード表示部188は、ディスプレイ3の例えば右上等に「設定情報記憶部」5001に記憶されている「設定情報設定日時」506と同期状況507を表示する。
 エラーコードを表示するタイミングとしては、電子黒板2の起動直後の数秒間程度とすることで、ユーザが電子黒板2を使用することを阻害しにくい。ユーザはエラーコードが表示されたことを設定管理者に知らせるので、設定管理者は同期できなかったことを把握し、更に同期できない理由を調査できる。
 以上説明したように、本実施例の画像処理システム1では、各電子黒板2が直上の電子黒板2と設定情報を同期することを繰り返すことで、全ての電子黒板2の設定情報を同期させることができる。
 なお、設定管理者は木構造の頂点の電子黒板2(すなわち親機2p)に設定情報を設定する他、親機2pよりも相対的に下位の電子黒板2に設定情報を設定してもよい。この場合、設定管理者が設定情報を設定した電子黒板2よりも下位の電子黒板2が設定情報を同期できる。また、親機2pの階層に2台以上の親機2pが存在してもよい。この場合、設定管理者は2台の親機2pにそれぞれ設定情報を設定する。
 <その他の適用例>
 以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
 本実施形態の説明では、電子黒板2の設定情報を例にして同期処理を説明したが、電子黒板2以外の装置が設定情報を更新する際の設定情報の同期処理に本発明を適用してもよい。例えば本発明は、プロジェクター、画像形成装置(複写機、プリンター、スキャナ装置、MFP(Multi-Function Peripherals)等)、テレビ会議端末等にも適用できる。
 また、本実施形態の説明では同期される設定情報の一例を説明したが、設定情報は上記した情報に限られない。例えば、電子黒板2と接続されているプリンターで印刷する場合の印刷設定(印刷認証の有無、パスワード、暗号化の有無等)、地域と言語の設定、登録(記憶)データの管理に関する設定(電子黒板2が有する情報の読み出しと書き出しの制限に関する設定)、カラープロファイルの設定、及び、電子黒板2のユーザのユーザ情報(ユーザ名、メールアドレス等、電子黒板2がメールを送信する際の宛先等)等が設定情報に含まれていてもよい。また、電子黒板2以外の装置が情報を同期する場合は、装置に特有の情報を同期してもよい。
 また、図14及び15等に示した構成例では、電子黒板2による処理の理解を容易にするために、主な機能に応じて電子黒板2の処理を処理単位に分割して示している。しかしながら、処理単位の分割の仕方や名称によって本発明が制限されることはない。電子黒板2の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように電子黒板2の処理を分割することもできる。
 また、図14及び15に示した記憶部2000及び5000に含まれる各記憶部のうちの1つ以上はネットワーク上に存在していてもよい。
 なお、通信情報記憶部5002は通信情報記憶手段の一例であり、通信部161及び直上バージョン判定部164は第一の判定手段の一例であり、通信部181及び情報取得部186は設定情報取得手段の一例である。プログラム取得部165はソフトウェア取得手段の一例であり、記憶部5000はファイル記憶手段の一例であり、プログラムインストール部163はインストール手段の一例である。またバージョン確認部162は第二の判定手段の一例である。ダイアログ801はインストールするか否かを受け付ける画面の一例である。設定要求部183はメッセージダイジェスト取得手段の一例である。MD生成部187は生成手段の一例であり、MD比較部184は第三の判定手段の一例である。設定管理者PC500は外部機器の一例であり、画像処理システム1は情報処理システムの一例であり、直上の電子黒板2は他の情報処理装置の一例であり、直下の電子黒板2は「更に他の情報処理装置」の一例である。画像処理システム1が行う情報処理の方法は情報処理方法の一例である。エラーコード表示部188は表示処理手段の一例である。ディスプレイ3は表示装置の一例である。設定情報記憶部5001及び設定情報記憶部2001は設定情報記憶手段の一例である。プログラム情報提供部172はソフトウェア提供手段の一例であり、情報提供部154は提供手段の一例である。
 本発明は特定の実施形態および変形例を参照しながら説明されてきたが、各実施形態および変形例は単なる例示に過ぎず、当業者は様々な変形例、修正例、代替例、置換例等を理解するであろう。説明の便宜上、本発明の実施形態に従った装置は機能的なブロック図を用いて説明されたが、そのような装置はハードウェア、ソフトウェア、又はそれらの組み合わせで実現されてもよい。本発明は上記実施形態に限定されず、本発明の精神から逸脱することなく、本発明の範囲内で様々な変形例、修正例、代替例、置換例等が実現され得る。
 本国際出願は2015年11月2日に出願した日本国特許出願第2015-216038号に基づく優先権を主張するものであり、日本国特許出願第2015-216038号の全内容を本国際出願に援用する。
 1   画像処理システム
 2   電子黒板
 3   ディスプレイ
 4   電子ペン
 20  クライアント部
 90  サーバ部
 150 設定提供部
 154 情報提供部
 160 プログラム管理部
 162 バージョン確認部
 163 プログラムインストール部
 164 直上バージョン判定部
 165 プログラム取得部
 172 プログラム情報提供部
 180 設定取得部
 183 設定要求部
 184 MD比較部
 187 MD生成部
 500 設定管理者PC
 801 ダイアログ
 2000 記憶部
 2001 設定情報記憶部
 5000 記憶部
 5001 設定情報記憶部
 5002 通信情報記憶部
特許第4942686号公報

Claims (13)

  1.  インストールされているソフトウェアにより機能を提供し、動作に関する設定情報に基づいて動作する情報処理装置であって、
     他の情報処理装置と通信するための通信情報が記憶された通信情報記憶手段と、
     前記通信情報を用いて前記他の情報処理装置と通信し、前記情報処理装置にインストールされている前記ソフトウェアのバージョンと、前記他の情報処理装置にインストールされている前記ソフトウェアのバージョンとが一致するか否かを判定する第一の判定手段と、
     ソフトウェアのバージョンが一致すると前記第一の判定手段が判定した場合、前記通信情報を用いて前記他の情報処理装置と通信し、前記設定情報を前記他の情報処理装置から取得する設定情報取得手段と、を有する情報処理装置。
  2.  前記第一の判定手段が一致しないと判定した場合、前記他の情報処理装置から前記ソフトウェアのファイルを取得するソフトウェア取得手段と、
     前記ソフトウェア取得手段が取得した前記ファイルが記憶されるファイル記憶手段と、
     前記ファイル記憶手段に記憶されている前記ファイルを用いて前記ソフトウェアを前記情報処理装置にインストールするインストール手段と、
     を有する請求項1に記載の情報処理装置。
  3.  前記ファイル記憶手段に記憶されている前記ファイルが有するバージョンと前記情報処理装置にインストール済みの前記ソフトウェアのバージョンとが一致するかどうか判定する第二の判定手段を更に有し、
     前記インストール手段は、前記第二の判定手段が2つのバージョンが一致しないと判定した場合、前記ファイル記憶手段に記憶されている前記ファイルを用いて前記ソフトウェアを前記情報処理装置にインストールする請求項2に記載の情報処理装置。
  4.  前記第二の判定手段が2つのバージョンが一致すると判定した場合に、前記第一の判定手段が前記判定を行う請求項3に記載の情報処理装置。
  5.  前記ソフトウェア取得手段が前記ファイルを前記他の情報処理装置から取得する際、予め定められた条件を満たすことで前記ファイルを前記他の情報処理装置から取得することが可能になるまで、時間間隔を置いて前記条件が満たされたかどうかを判定することを繰り返す請求項2に記載の情報処理装置。
  6.  前記インストール手段は前記ソフトウェアを前記情報処理装置にインストールする前にインストールするか否かを受け付ける画面を表示装置に表示し、
     インストールするという入力を受け付けた場合に、前記インストール手段は前記ファイル記憶手段に記憶されている前記ファイルを用いて前記ソフトウェアを前記情報処理装置にインストールする請求項2に記載の情報処理装置。
  7.  前記情報処理装置は前記他の情報処理装置とは異なる更に他の情報処理装置と接続されており、
     前記更に他の情報処理装置にインストールされている前記ソフトウェアのバージョンと前記情報処理装置にインストールされている前記ソフトウェアのバージョンとが一致すると判定した前記更に他の情報処理装置から前記ファイルを要求された場合、前記ファイル記憶手段に記憶されている前記ファイルを前記更に他の情報処理装置に提供するソフトウェア提供手段を更に有する請求項2に記載の情報処理装置。
  8.  設定を受け付けた前記設定情報を記憶する前記他の情報処理装置、及び更に他の情報処理装置と接続されており、
     前記設定情報取得手段が取得した前記設定情報が記憶される設定情報記憶手段と、
     前記更に他の情報処理装置から前記設定情報を要求された場合、前記設定情報記憶手段に記憶されている前記設定情報を前記更に他の情報処理装置に提供する提供手段と、
     を更に有する請求項1に記載された情報処理装置。
  9.  前記他の情報処理装置から前記設定情報に関する情報を取得して前記設定情報が更新されたか否かを判定する第三の判定手段を更に有し、
     前記設定情報取得手段は、前記第三の判定手段が前記他の情報処理装置の前記設定情報が更新されたと判定した場合に、前記他の情報処理装置から前記設定情報を取得する請求項8に記載の情報処理装置。
  10.  前記他の情報処理装置が前記設定情報から生成したメッセージダイジェストを取得するメッセージダイジェスト取得手段と、
     前記設定情報記憶手段に記憶されている前記設定情報からメッセージダイジェストを生成する生成手段と、を更に有し、
     前記メッセージダイジェスト取得手段が取得したメッセージダイジェストと前記生成手段が生成したメッセージダイジェストとを前記第三の判定手段が比較して2つのメッセージダイジェストが一致しないと判定した場合に、前記設定情報取得手段が前記他の情報処理装置から前記設定情報を取得する請求項9に記載の情報処理装置。
  11.  前記他の情報処理装置から前記設定情報を取得できた場合、前記設定情報取得手段は取得した日時を記録し、前記他の情報処理装置から前記設定情報を取得できなかった場合、前記設定情報取得手段は取得できなかった理由を記録しておき、
     前記情報処理装置に接続された外部機器又は前記情報処理装置の表示装置に前記日時又は前記理由を表示させる表示処理手段を更に有する請求項8に記載の情報処理装置。
  12.  インストールされているソフトウェアにより機能を提供し、動作に関する設定情報に基づいて動作する情報処理装置が他の情報処理装置と通信する情報処理システムであって、
     前記情報処理装置は、
     前記他の情報処理装置と通信するための通信情報が記憶された通信情報記憶手段と、
     前記通信情報を用いて前記他の情報処理装置と通信し、前記情報処理装置にインストールされている前記ソフトウェアのバージョンと前記他の情報処理装置にインストールされている前記ソフトウェアのバージョンが一致するか否かを判定する第一の判定手段と、
     ソフトウェアのバージョンが一致すると前記第一の判定手段が判定した場合、前記通信情報を用いて前記他の情報処理装置と通信し、前記設定情報を前記他の情報処理装置から取得する設定情報取得手段と、を有する情報処理システム。
  13.  インストールされているソフトウェアにより機能を提供し、動作に関する設定情報に基づいて動作する情報処理装置によって行われる情報処理方法であって、
     第一の判定手段が、通信情報記憶手段に記憶されている他の情報処理装置と通信するための通信情報を用いて前記他の情報処理装置と通信し、前記情報処理装置にインストールされている前記ソフトウェアのバージョンと前記他の情報処理装置にインストールされている前記ソフトウェアのバージョンが一致するか否かを判定するステップと、
     ソフトウェアのバージョンが一致すると前記第一の判定手段が判定した場合、前記通信情報を用いて前記他の情報処理装置と通信し、設定情報取得手段が前記設定情報を前記他の情報処理装置から取得するステップと、を有する情報処理方法。
PCT/JP2016/081627 2015-11-02 2016-10-25 情報処理装置、通信システム及び情報処理方法 WO2017077907A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201680062888.9A CN108351774A (zh) 2015-11-02 2016-10-25 信息处理装置、通信系统和信息处理方法
EP16861969.0A EP3373135A4 (en) 2015-11-02 2016-10-25 INFORMATION PROCESSING DEVICE, COMMUNICATION SYSTEM AND INFORMATION PROCESSING METHOD
JP2017548717A JP6610674B2 (ja) 2015-11-02 2016-10-25 情報処理装置、通信システム及び情報処理方法
US15/955,841 US10705724B2 (en) 2015-11-02 2018-04-18 Information processing apparatus, communication system, and method for processing information

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015216038 2015-11-02
JP2015-216038 2015-11-02

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/955,841 Continuation US10705724B2 (en) 2015-11-02 2018-04-18 Information processing apparatus, communication system, and method for processing information

Publications (1)

Publication Number Publication Date
WO2017077907A1 true WO2017077907A1 (ja) 2017-05-11

Family

ID=58661964

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/081627 WO2017077907A1 (ja) 2015-11-02 2016-10-25 情報処理装置、通信システム及び情報処理方法

Country Status (5)

Country Link
US (1) US10705724B2 (ja)
EP (1) EP3373135A4 (ja)
JP (1) JP6610674B2 (ja)
CN (1) CN108351774A (ja)
WO (1) WO2017077907A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019029814A (ja) * 2017-07-28 2019-02-21 株式会社リコー 通信システム、通信方法、電子機器

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6874405B2 (ja) * 2017-02-07 2021-05-19 株式会社リコー 情報処理装置、プログラム、システム
CN109408078B (zh) * 2018-11-01 2022-03-08 西北工业大学 一种机器的更新方法及装置
CN109348167B (zh) * 2018-12-17 2020-09-22 厦门亿联网络技术股份有限公司 基于视频会议系统的无线辅流数据传输方法及系统
US11132122B2 (en) 2019-04-11 2021-09-28 Ricoh Company, Ltd. Handwriting input apparatus, handwriting input method, and non-transitory recording medium
US11551480B2 (en) 2019-04-11 2023-01-10 Ricoh Company, Ltd. Handwriting input apparatus, handwriting input method, program, and input system
US11733830B2 (en) 2019-11-20 2023-08-22 Ricoh Company, Ltd. Display apparatus for displaying handwritten data with displayed operation menu
JP2022049600A (ja) 2020-09-16 2022-03-29 株式会社リコー 情報処理装置、プログラム及び情報処理システム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS617942A (ja) * 1984-06-22 1986-01-14 Nec Corp マイクロプログラムロ−ド方式
JPH1124934A (ja) * 1997-06-30 1999-01-29 Hitachi Software Eng Co Ltd クライアント・サーバシステムにおけるクライアントプログラムの配布管理方法
JP2003092602A (ja) * 2001-09-18 2003-03-28 Fujitsu Ltd ネットワーク装置
JP2009064177A (ja) * 2007-09-05 2009-03-26 Ricoh Co Ltd 画像形成装置、情報同期システム、情報設定方法
JP2014056403A (ja) * 2012-09-12 2014-03-27 Hitachi Kokusai Electric Inc 基板処理装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE756569A (fr) 1969-09-30 1971-03-01 Siemens Ag Commande de magnetophone, en particulier pour des compteurs-enregistreurs a distance
WO2003029971A1 (en) * 2001-10-04 2003-04-10 Accretive Technology Group, Inc. Incentive system for distributing software over a computer network
JP4021407B2 (ja) * 2003-12-16 2007-12-12 シャープ株式会社 情報処理装置
GB0427540D0 (en) * 2004-12-15 2005-01-19 Ibm A system for maintaining data
US7880719B2 (en) * 2006-03-23 2011-02-01 International Business Machines Corporation Recognition and capture of whiteboard markups in relation to a projected image
US20070245333A1 (en) * 2006-03-27 2007-10-18 Ferlitsch Andrew R Methods and Systems for Managing Firmware
JP4942686B2 (ja) 2008-03-18 2012-05-30 株式会社リコー ネットワーク同期システム及び情報処理装置
JP5206317B2 (ja) * 2008-03-18 2013-06-12 株式会社リコー ネットワーク同期システム及び情報処理装置
JP2010157134A (ja) * 2008-12-27 2010-07-15 Canon Inc 情報処理装置、情報処理方法及び情報処理システム
US9672022B2 (en) * 2010-06-23 2017-06-06 Microsoft Technology Licensing, Llc Applications including multiple experience modules
CA2851249C (en) * 2011-10-05 2020-11-24 Hartigen Solutions, Llc Integrated software development and deployment architecture and high availability client-server systems generated using the architecture
US9047300B2 (en) * 2012-05-24 2015-06-02 Microsoft Technology Licensing, Llc Techniques to manage universal file descriptor models for content files
US10126927B1 (en) * 2013-03-15 2018-11-13 Study Social, Inc. Collaborative, social online education and whiteboard techniques
US9489114B2 (en) * 2013-06-24 2016-11-08 Microsoft Technology Licensing, Llc Showing interactions as they occur on a whiteboard
JP5991333B2 (ja) * 2014-02-18 2016-09-14 コニカミノルタ株式会社 情報処理装置、該装置における設定値の更新方法及び設定値の更新プログラム
US9723064B1 (en) * 2014-09-02 2017-08-01 Amazon Technologies, Inc. Hybrid quorum policies for durable consensus in distributed systems
US10250600B2 (en) * 2015-07-27 2019-04-02 International Business Machines Corporation Updating database drivers for client applications through a database server push

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS617942A (ja) * 1984-06-22 1986-01-14 Nec Corp マイクロプログラムロ−ド方式
JPH1124934A (ja) * 1997-06-30 1999-01-29 Hitachi Software Eng Co Ltd クライアント・サーバシステムにおけるクライアントプログラムの配布管理方法
JP2003092602A (ja) * 2001-09-18 2003-03-28 Fujitsu Ltd ネットワーク装置
JP2009064177A (ja) * 2007-09-05 2009-03-26 Ricoh Co Ltd 画像形成装置、情報同期システム、情報設定方法
JP2014056403A (ja) * 2012-09-12 2014-03-27 Hitachi Kokusai Electric Inc 基板処理装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3373135A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019029814A (ja) * 2017-07-28 2019-02-21 株式会社リコー 通信システム、通信方法、電子機器

Also Published As

Publication number Publication date
JP6610674B2 (ja) 2019-12-04
CN108351774A (zh) 2018-07-31
EP3373135A1 (en) 2018-09-12
US20180232138A1 (en) 2018-08-16
US10705724B2 (en) 2020-07-07
JPWO2017077907A1 (ja) 2018-08-02
EP3373135A4 (en) 2019-05-22

Similar Documents

Publication Publication Date Title
JP6610674B2 (ja) 情報処理装置、通信システム及び情報処理方法
JP6620494B2 (ja) 通信システム、情報処理装置、通信方法、プログラム
JP6658157B2 (ja) 情報処理装置、システム、プログラム、処理方法
JP6536686B2 (ja) 電子黒板、プログラム、情報処理方法
JP6724358B2 (ja) 電子黒板、プログラム、データ表示方法、画像処理システム
US10649754B2 (en) Image processing device and electronic whiteboard
JP6402826B2 (ja) 情報処理装置、画像表示方法、プログラム
JP6459545B2 (ja) 画像処理装置、画像処理システム及び画像処理方法
JP6504256B2 (ja) 電子黒板、電子黒板の画像処理方法、及び電子黒板のプログラムを記録した記録媒体
JP6143100B2 (ja) 画像処理装置及び画像処理システム
JP2017076207A (ja) 画像処理装置及び画像処理システム
JP6036621B2 (ja) システム、情報処理装置
JP6863162B2 (ja) 通信システム、通信方法、電子機器
JP2018067018A (ja) 電子黒板、画像処理方法、画像処理プログラム、及び画像処理システム
JP7020317B2 (ja) 共有端末、設定情報同期方法、プログラム、設定情報同期システム
JP7363064B2 (ja) 画像処理装置、方法、およびプログラム
JP2015056038A (ja) 画像処理装置及びプログラム
JP2017129890A (ja) 座標検知装置、画像処理装置、座標検知方法及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16861969

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017548717

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2016861969

Country of ref document: EP