WO2014106882A1 - デバイス制御システム、印刷装置、及び、デバイス制御システムの制御方法 - Google Patents
デバイス制御システム、印刷装置、及び、デバイス制御システムの制御方法 Download PDFInfo
- Publication number
- WO2014106882A1 WO2014106882A1 PCT/JP2013/007625 JP2013007625W WO2014106882A1 WO 2014106882 A1 WO2014106882 A1 WO 2014106882A1 JP 2013007625 W JP2013007625 W JP 2013007625W WO 2014106882 A1 WO2014106882 A1 WO 2014106882A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- device control
- request
- terminal
- printer
- control
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/209—Specified transaction journal output feature, e.g. printed receipt or voice output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1204—Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1205—Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1207—Improving or facilitating administration, e.g. print management resulting in the user being informed about print result after a job submission
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1209—Improving or facilitating administration, e.g. print management resulting in adapted or bridged legacy communication protocols, e.g. emulation, protocol extension
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1236—Connection management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
- G06F3/1246—Job translation or job parsing, e.g. page banding by handling markup languages, e.g. XSL, XML, HTML
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1253—Configuration of print job parameters, e.g. using UI at the client
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1279—Controller construction, e.g. aspects of the interface hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1284—Local printer device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
- G06F3/1286—Remote printer device, e.g. being remote from client or server via local network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1291—Pool of printer devices: self-managing printing devices in a network, e.g. without a server
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1292—Mobile client, e.g. wireless printing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1293—Printer information exchange with computer
- G06F3/1294—Status or feedback related to information exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1297—Printer code translation, conversion, emulation, compression; Configuration of printer parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1297—Printer code translation, conversion, emulation, compression; Configuration of printer parameters
- G06F3/1298—Printer language recognition, e.g. programme control language, page description language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/202—Interconnection or interaction of plural electronic cash registers [ECR] or to host computer, e.g. network details, transfer of information from host to ECR or from ECR to ECR
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/208—Input by product or record sensing, e.g. weighing or scanner processing
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/12—Cash registers electronically operated
- G07G1/14—Systems including one or more distant stations co-operating with a central processing unit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00326—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a data reading, recognizing or recording apparatus, e.g. with a bar-code apparatus
- H04N1/00328—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a data reading, recognizing or recording apparatus, e.g. with a bar-code apparatus with an apparatus processing optically-read information
- H04N1/00334—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a data reading, recognizing or recording apparatus, e.g. with a bar-code apparatus with an apparatus processing optically-read information with an apparatus processing barcodes or the like
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
Definitions
- the present invention relates to a device control system for controlling a device, a printing apparatus, and a control method for the device control system.
- a device serving as a controller has been prepared for controlling the device.
- An advantage of some aspects of the invention is that it provides a device control system, a printing apparatus, and a device control system control method capable of controlling a device by a network-connected terminal.
- a device control system of the present invention includes a device, a connection unit connected to the device, and a device control apparatus including a device control unit that controls the device connected to the connection unit; A terminal that is connected to the device control apparatus and that operates a web browser that executes a device application program interface that displays a web application and controls the device.
- a device connected to a device control apparatus can be controlled by a web browser of a terminal.
- the device application program interface has an object corresponding to the device, and the web application calls the object and transmits a request to the device control apparatus.
- the device control apparatus executes a device control script that controls the device, and the device control script receives the request transmitted from the terminal by connecting to the object. Then, the device connected to the connection unit is controlled.
- the device control script includes a device connection object that transmits / receives data to / from the device and a client connection object that transmits data to the device API.
- the request is a control start request that designates the device connected to the device control apparatus and instructs the start of control of the device.
- a control start command for instructing start of control and when the terminal transmits the control start request to the device control apparatus, the device control apparatus sends the control start command to the device specified in the control start request. And the device can be controlled by the terminal.
- a second terminal for operating a web browser that is connected to the device control apparatus and displays a second web application and executes a second device application program interface for controlling the device.
- the second device application program interface has a second object corresponding to the device.
- the device control apparatus sets the device to an exclusive lock state, and the second web application calls the second object to the device control apparatus.
- the control of the device with the second request is not executed.
- the device control apparatus uses the second terminal as the device Send a notification that it is in progress.
- the device is a printer that performs printing, and when the second terminal transmits the second request to the device control apparatus when the printer can be controlled by the terminal, the device control apparatus Based on the second request, the device control script enables the printer to be controlled by the second terminal.
- the web application of the terminal calls the object, transmits a control end request that instructs the device control apparatus to specify the device and terminates control of the device, and the terminal sends the control end request to the device.
- the device control device transmits a second command instructing the end of control by the device control script to the device specified by the control end request, and controls the device at the terminal. End.
- the device control apparatus Based on the request, the device control script enables the device to be controlled by the second terminal.
- the device application program interface detects a connection between the object and a device control script of the device control apparatus.
- the object calls an event included in the device control script.
- the device is a display for displaying
- the request is a display request for requesting display of the display by designating the display
- the terminal transmits the display request to the device control apparatus
- the device control apparatus transmits a display command for requesting display by the device control script to the display designated by the display request.
- the display on the display requested by the display request is a time display.
- the request is a registration request that specifies the device and requests the device to register image data.
- the terminal transmits the registration request to the device control apparatus, the device control apparatus A registration command for instructing registration of the image by the device control script is transmitted to the device specified by the request.
- the terminal transmits the image data to the device control apparatus, and the device control script converts the image data into the raster image data.
- the request is an encryption request that designates the device and instructs setting of necessity of encryption of data transmitted / received between the device and the terminal.
- the printing apparatus includes: a connection unit that connects to the device; a device control unit that executes the device control script that controls the device and controls the device connected to the connection unit; And a printing section for performing printing.
- the device control system control method of the present invention includes a terminal that operates a web browser, a device, and a device control apparatus that is connected to the device, and an object corresponding to the device in a web application that operates on the web browser. , Send a request to the device controller, execute a device control script that controls the device with the device controller, and configure the device with the device control script based on the request received by the device controller. A command to be controlled is transmitted to the device, and control of the device at the terminal is established.
- the request is a control start request that designates the device connected to the device control apparatus and instructs the start of control of the device, and the terminal transmits the control start request to the device control apparatus At this time, the device control apparatus transmits the control command to the device, and causes the device to start control at the terminal.
- FIG. 1 is a configuration diagram of a device control system according to a first embodiment of the present invention. It is a block diagram of the device control system which concerns on the 2nd Embodiment of this invention. It is a block diagram of the device control system which concerns on the 3rd Embodiment of this invention. It is a figure which shows the example of a connection of the device connected to an intelligent printer. 1 is an external perspective view of an intelligent printer. It is a figure which shows a connector panel. It is a figure which shows the example of a connection of a wireless LAN unit. It is a figure which shows the functional structure of a device control system. It is a figure which shows the example of the key code which can be acquired from a keyboard.
- FIG. 1 is a diagram illustrating a configuration example of a device control system 100 including an application server 2 according to a first embodiment to which the present invention is applied.
- the device control system 100 includes an application server 2, a terminal 3, and a printer 5 (intelligent printer).
- the application server 2, the terminal 3, and the printer 5 are connected via a communication network.
- the device control system 100 includes a wireless LAN access point 11, and the application server 2, the printer 5, and the wireless LAN access point 11 are connected by a wired LAN.
- the wireless LAN access point 11 connects the terminal 3 to the wired LAN. Accordingly, the terminal 3 can be used as long as it can communicate with the wireless LAN access point 11.
- a network printer 7, customer display 8, and barcode scanner 9 are connected to the printer 5 as devices to be controlled.
- the network printer 7 is connected to the printer 5 via a network.
- the customer display 8 and the barcode scanner 9 are connected via a USB interface described later.
- These devices are generally referred to as peripherals, but are referred to as devices in the following description.
- the device connected to the printer 5 is not limited to the device shown in FIG. For example, a display and a key input device such as a keyboard are included. Also included are a device that can be controlled by an OS standard HID (Human interface device) driver, a serial communication device that can be operated by an OS standard serial communication driver, and a USB device that can be controlled in the same manner as the serial communication device.
- OS standard HID Human interface device
- the terminal 3 has a web browser that can be connected to a network, and the device connected to the printer 5 can be controlled by the web browser.
- the terminal 3 may be a web browser-equipped terminal that can be connected to a network.
- a known tablet can be used as shown in FIG.
- the operation of the device control system 100 is as follows. (1) A web application is arranged on the application server 2. (2) A web application is displayed by the web browser of the terminal 3. (3) The web browser of the terminal 3 transmits a request message to the printer 5. (4) The printer 5 receives the request message. The printer 5 transmits data to a device that can be controlled by the printer 5 based on the received request message. (5) The network printer 7, the customer display 8, and the barcode scanner 9 connected to the printer 5 are controlled. (6) The printer 5 returns a response to the web application.
- FIG. 2 is a diagram illustrating a configuration example of a device control system 200 including the application server 2 according to the second embodiment to which the present invention is applied.
- the device control system 200 includes a terminal 3 and a printer 5.
- the application server 2 is connected to the terminal 3 via a remote communication network such as the Internet.
- the customer display 8 is connected to the printer 5.
- the operation of the device control system 200 is as follows. (1) A web application is arranged on the application server 2. (2) A web application is displayed by the web browser of the terminal 3. (3) The web browser of the terminal 3 transmits a request message to the printer 5. (4) The printer 5 receives the request message. The printer 5 transmits data to a device that can be controlled by the printer 5 based on the received request message. (5) The network printer 7, the customer display 8, and the barcode scanner 9 connected to the printer 5 are controlled. (6) The printer 5 returns a response to the web application.
- FIG. 3 is a diagram showing a device control system 300 according to the third embodiment to which the present invention is applied.
- the device control system 300 is an example used as an application server.
- the terminal 3 is connected to the printer 5.
- the operation of the device control system 300 is as follows. (1) A web application is arranged on the printer 5. (2) A web application is displayed by the web browser of the terminal 3. (3) The web browser of the terminal 3 transmits a request message to the printer 5. (4) The printer 5 receives the request message. The printer 5 transmits data to a device that can be controlled by the printer 5 based on the received request message. (5) The network printer 7, the customer display 8, and the barcode scanner 9 connected to the printer 5 are controlled. (6) The printer 5 returns a response to the web application.
- the terminal 3 equipped with the web browser can display the web application and control the device connected to the printer 5.
- the printer 5 includes a CPU, a RAM, a flash ROM, an NV (nonvolatile memory), a video controller, an auxiliary storage device (SSD: solidstate drive), an interface, and a local printer (printing unit).
- the printer 5 may include a speaker.
- the local printer is a thermal printer that prints on roll paper of 80 mm width or 58 mm width.
- a POS (pointofsales) system can be installed in the printer 5.
- the OS (operating system) of the printer 5 is based on, for example, Windows (registered trademark) and is stored in the auxiliary storage device.
- the printer 5 includes a device control program that is software for the terminal 3 to control a device connected to the printer 5. For this reason, the terminal 3 does not require a driver program.
- the printer 5 includes a local printer included in the printer 5 and a Windows (registered trademark) standard device driver program (APD), a UPOS driver, an OPOS driver, and the like, which are software for controlling the device.
- a web application can be installed in the printer 5. Thereby, as shown in FIG. 3, the printer 5 can be used as an application server.
- the web application can use PHP and Perl server-side scripts and SQL Lite database access (server-side scripts).
- FIG. 4 is a diagram illustrating a connection example of devices connected to the printer 5.
- the printer 5 can be connected to the network printer 7, customer display 8, and barcode scanner 9 described above.
- a display 12, a cash drawer 13, and a keyboard 14 can be connected to the printer 5.
- FIG. 5 is an external perspective view of the printer 5.
- a roll paper cover 51 is provided on the top of the printer 5. The roll paper cover is opened by pressing the cover open button 52, and the roll paper can be taken in and out.
- a discharge port for discharging the roll paper after printing has a manual cutter 53 for manually cutting the roll paper and a cutter cover 54.
- the cutter cover 54 is opened when a paper jam occurs in the local printer of the printer 5 and when the roll paper cover 51 is not opened.
- the printer 5 includes a power switch 56B, a reset button 56A, an LED display unit 57, and a control panel 58.
- the LED display unit 57 includes a disk access LED indicating access to the auxiliary storage device and a status LED.
- the status LED notifies a high temperature warning of the CPU during the operating state of the OS, the standby mode of the OS, the power off state, and the OS startup sequence.
- the control panel 58 includes a power LED, an error LED, a roll paper LED, and a feed button.
- the power LED lights up when power is supplied.
- the error LED is turned off during normal operation, and is turned on when resetting, and when the end of the roll paper is detected and printing is stopped.
- the paper LED is turned off when the remaining amount of roll paper is sufficient, is turned on when the remaining amount is low, and blinks when the self-diagnosis function is executed.
- the feed button is pressed, the roll paper is conveyed line by line or continuously.
- FIG. 6 is a view showing the connector panel 60.
- the connector panel 60 includes a drawer kick connector 61, an Ethernet connector 62, a USB connector 63, a VGA connector 64, a COM connector 65, a line output 66, and a DC input 67.
- the connector panel 60 corresponds to the connection portion of the present invention.
- the device of the printer 5 includes a local printer 55 provided in the main body of the printer 5. Therefore, the connection unit includes the connector panel 60 and the interface inside the printer 5.
- the cash drawer 13 or an optional buzzer is connected to the drawer kick connector 61.
- the Ethernet connector 62 is connected to the network.
- the USB connector 63 has six USB ports.
- a customer display 8, a barcode scanner 9, a keyboard 14 and other devices are connected to the USB connector 63.
- the display 12 is connected to the VGA connector 64.
- a serial interface of a device that performs serial communication is connected to the COM connector 65.
- the line output 66 is connected to an external speaker.
- FIG. 7 is a diagram illustrating a connection example of the wireless LAN unit 17.
- the wireless LAN unit 17 is inserted into the USB extension cable 15, and the USB extension cable 15 is inserted into the USB connector 63. Thereby, the printer 5 can be connected to the wireless LAN.
- FIG. 8 is a diagram illustrating a functional configuration of the device control system 100.
- the terminal 3 displays the web application 32 provided by the application server 2 by the web browser 31.
- the web application 32 calls a device application program interface (API) 33 included in the web browser 31.
- the device API 33 is, for example, a Java (registered trademark) script, and generates an object for controlling a device connected to the printer 5 as described later.
- the web application 32 calls an object of the device API 33 (APICall).
- the device API 33 transmits a request to the printer 5 by the function of the called object (Request).
- the device service interface 501 receives the request and controls the device control script 502.
- the device control script 502 controls the key input device 18 and the serial communication device 19.
- the device control script 502 acquires data input by the key input device 18 and outputs the data to the device service interface 501.
- the device control script 502 executes data communication with the serial communication device 19 and outputs data received from the serial communication device 19 to the device service interface 501.
- the key input device 18 includes the keyboard 14, and the serial communication device 19 includes the barcode scanner 9 and the cash drawer 13.
- the device service interface 501 transmits / receives data to / from the local printer 55.
- the local printer 55 is a local printer provided in the printer 5.
- the device service interface 501 transmits and receives data to and from the network printer 7 and the customer display 8.
- the device service interface 501 outputs a device event and a response from the device to the device API 33.
- the device API 33 outputs a response (Callback) to the web application 32.
- the device control system 100 controls the device connected to the printer 5 by the terminal 3.
- the present invention is used when a device (peripheral device) connected to the printer 5 is controlled in a multi-platform environment. If this system is used, the device can be controlled using a personal computer equipped with a web browser, a smartphone, or a tablet computer.
- the device API 33 has the following features. -Communication contents with the device can be encrypted.
- a device that operates with the OS standard driver of the printer 5 can be used in the device control script 502 without installing the driver in the printer 5. Since the device control script 502 is written in JavaScript (trademark), it can be developed in the same language as the web application 32.
- JavaScript trademark
- the device is automatically locked exclusively. For this reason, control is not mixed even if simultaneous access is made from a plurality of terminals.
- the terminal 3 that has controlled the device releases the device, this device can be controlled from the other terminals 3.
- the device API 33 has the following features.
- the command for printing ruled lines can be used when the local printer 55 of the printer 5 or the network printer 7 supports the “ruled line command”.
- the buzzer function can be used when the buzzer is connected to the printer 5 or the network printer 7.
- the key code that can be acquired from the keyboard 14 is limited. The key codes that can be acquired from the keyboard 14 are as shown in FIG.
- FIG. 10 shows an environment construction workflow.
- Network settings Configure network settings for the system and printer 5. This setting can be performed in the same procedure as the Windows (registered trademark) network setting.
- Web content is registered in the printer 5 from a web browser.
- the printer 5 can register web content as a web server.
- the registered web content can be viewed from the web browser 31 of the terminal 3.
- the registered web content is made by compressing all the content files into one zip file.
- the zip file name can be specified arbitrarily. Use half-width alphanumeric characters (ASCII characters) for the zip file name and subfolder name. Web content cannot be added and all files are overwritten.
- the URL to be referenced differs depending on the folder structure of the zip file. Specific examples are shown in [1] and [2] in FIG.
- the connectable devices are the customer display 8, the barcode scanner 9, the display 12, the cash drawer 13, the keyboard 14, and the like. Furthermore, a device that can be controlled by an OS standard HID driver, a serial communication device that can be operated by an OS standard serial communication driver, and a USB device that can be controlled in the same manner as the serial communication device are included.
- the connector panel 60 of FIG. 6 has only one COM connector 65, a serial-USB conversion cable and a driver program corresponding to serial-USB conversion can connect a plurality of serial communication devices. 4).
- Registration of Device Control Script When a device other than a product supported by the printer 5 is controlled by the printer 5, a device control script prepared by the user is registered. Registration is done from a web browser. 5. Registration of Device A device connected to the printer 5 is registered in the software of the printer 5. Registration is done from a web browser. Procedure 1.
- the web browser used in -5 includes a web browser 31.
- the registration method of web contents of is shown in detail.
- the web content registration file is registered by displaying TMNetWebConfig with a web browser as shown in FIG.
- the registration procedure is as follows. (1) Combine Web contents to be registered into one zip file. (2) Turn on the printer 5. (3) Start a web browser and enter the URL (http: // IP address of printer 5 / TMNetWebConfig /). (4) TMNetWebConfig starts. Click [Web Service Settings]-[Update Settings] on the screen in FIG. (5) The “Web content update settings” screen is displayed. Click [Browse] in [Web content file], and select the zip file containing the web content prepared in (1). (6) Click [Upload].
- Procedure 4 Details of device control script registration.
- the device control script prepared by the user is registered by displaying TMNetWebConfig with a web browser as shown in FIG.
- the registration procedure is as follows. (1) Prepare a customized device control script. (2) Turn on the printer 5. (3) Start a web browser and enter the URL (http: // IP address of printer 5 / TMNetWebConfig /). (4) Start TMNetWebConfig. Click [Web Service Settings]-[Register / Delete] on the screen in FIG. (5) The “control script” screen is displayed. Click [Browse] in [Control script to be registered], and select the device control script to be registered. (6) Click [Register]. Device control scripts are registered and listed in [Registered Control Scripts] at the bottom of the screen.
- TMNetWebConfig is displayed with a web browser to register the device.
- the registration procedure is as follows. (1) Start a web browser and enter the URL (http: // IP address of printer 5 / TMNetWebConfig /). (2) Start TMNetWebConfig. Click [Web Service Settings]-[Device Registration] on the screen of FIG. 14 according to the type of device to be registered.
- the device list 301 is displayed in [Device registration]. Click the type of device to be registered from the device list 301.
- the device type is selected from five types: a printer, a display, a key input device, a serial communication device, and others. Details of the device types are as shown in FIG.
- the device API 33 is incorporated as follows. In order to use the device control function of this system from the client side JavaScript, a device API 33 is prepared.
- the device API 33 is provided by JavaScript.
- the file name is “device-*. Js”.
- device-*. Js By incorporating it into the application.
- device-*. Js is arranged on the Web server in order to use the device API 33.
- FIG. 21 A programming flow is shown in FIG. “Applications” in FIG. 21 corresponds to the web application 32, “DeviceControl” corresponds to a device control function (device API 33 and device service interface 501), and “Device” indicates a device to be controlled.
- the web application 32 transmits a “newEpsonDevice ()” command, and a device object is generated.
- the device service interface 501 transmits a “Cmd ()” command to the device.
- the device returns “Deviceopen”.
- the web application 32 acquires the device object by the procedure from 3 to 4.1.
- the web application 32 registers callback according to the device.
- 6 The web application 32 calls a method corresponding to the device.
- 6.1 A “Cmd ()” command is sent to the device. 6.1.1: The device executes.
- 5.1 The device returns the execution result.
- 7 The web application 32 transmits “deleteDevice (Object)” to release the device object.
- 7.1: A “Cmd ()” command is sent to the device.
- 8 The device returns device close.
- 8.1 Return “callback ('OK”) ”by the device control function.
- 9 The web application 32 transmits a “disconnect ()” command to block the communication path with the device service interface 501.
- the device API 33 will be described in detail. The following objects are prepared in the device API 33.
- -Device object Figure 22
- -Common to device objects Figure 23
- Display object Figure 24
- -Keyboard object Figure 25
- -Printer object Figure 25
- -Printer object Figure 25
- Figure 27 SimpleSerial object
- connection path A connection path with the device service interface 501 is established.
- connect ipAddress, port, callback
- Parameter ipAddress: Object type: (String) Specify the IP address of printer 5.
- -Port Object type: (Number) Specify 8008 (port number of device service interface 501).
- -Callback Object type: (Function) -Specify the callback that receives the processing results.
- the character string shown in FIG. 28 is returned as the first parameter of the callback.
- IsConnect Method Gets the established state of the communication path connected by connect. [syntax] isConnect (); [Return value] As shown in FIG. 30, the return value is a communication path establishment state.
- the deviceAP object will be described in detail.
- CreateDevice method Get a device object that interfaces with the device. If execution of this method is successful, the specified device is locked exclusively, and “DEVICE_IN_USE” is returned when createDevice is called from another browser. Since the printer is not locked exclusively, device objects can be acquired from multiple browsers using createDevice. If createDevice is executed immediately in the return processing of the ondisconnect event, “DEVICE_IN_USE” is generated. In this case, retry will be performed until something other than “DEVICE_IN_USE” can be acquired.
- deviceType Object type: (String) One of the device types shown in FIG. 31 is designated.
- crypto Object type: (Boolean) Specify whether communication data encryption is necessary.
- callback Object type: (Function) Specify the callback that receives the processing result. If the second parameter of the callback is “OK”, the device object is returned to the first parameter. The second parameter returns the character string shown in FIG.
- the installation location information set in the printer 5 is acquired.
- the installation location string can be set with TMNetWebConfig. [syntax] getLocation (); [Return value] String of installation location (String)
- EventEvent method An arbitrary event on the device control script 502 side corresponding to the device object is called. Details of the event of the device control script 502 will be described later in the description of the device control script 502. [syntax] callEvent (eventName, data); [parameter] eventName: Object type: (String) Specify the event name on the device control script side. data: Object type: (Object) Specify the data to be passed to the event to be called. Simple JSON data consisting of property name and value set can be specified.
- the Display object will be described. "Reset method” The initialization setting of the customer display 8 is added to the command buffer. By initialization, the following status is obtained. ⁇ All displayed characters are deleted and all registered windows are discarded. • The cursor returns to the default state and moves to the display origin. ⁇ Display blinks and display brightness returns to default. [syntax] reset (); [Return value] Display object
- “CreateWindow Method” Add window settings to the command buffer. Windows are defined so that they do not overlap defined windows. Also, the size that fits within the display size (20 digits x 2 lines) is specified. [syntax] createWindow (number, x, y, width, height, scrollMode); [parameter] number: Object type: (Number) Specify the window number. It is specified from 1 to 4. x: Object type: (Number) Specifies the x coordinate on the display of the window origin. It is specified from 1 to 20. -Y: Object type: (Number) Specifies the y coordinate on the display of the window origin. 1 or 2 is specified.
- SetCurrentWindow Method Add changes to the current window to the command buffer. Makes the specified window the current window, and moves the cursor to the origin position of the current window. [syntax] setCurrentWindow (number); [parameter] number: Object type: (Number) Specify the destination window number. It is specified from 1 to 4. [Return value] Display object
- SetCursorPosition Method Add the cursor position setting to the command buffer.
- x Object type: (Number) Specify the x coordinate to move to. Specify from 1 to 20.
- y Object type: (Number) Specify the y coordinate to move to. Specify 1 or 2.
- Return value Display object
- SetCursorType Method Add the cursor display setting to the command buffer. [syntax] setCursorType (type); [parameter] type: Object type: (String) Specify how to display the cursor. Select from the parameters in FIG. [Return value] Display object
- repeatCount Object type: (Number) Specify the number of times to repeat the string display. Possible values are 0 to 127. If 0 is specified, it repeats indefinitely.
- lang Object type: (String) Specify the display language of the string. It is specified from the character string shown in FIG. [Return value] Display object
- SetBlink Method Add screen blink setting to command buffer.
- setBlink (interval);
- Object type: (Number) Specify the blinking time (ms). Specify from 0 to 12700. The set value is rounded to 50ms. If 0 is specified, it is lit. [Return value] Display object
- SetBrightness Method Add display brightness setting to command buffer. [syntax] setBrightness (brightness); [parameter] brightness: Object type: (Number) Specifies the brightness value of the display. It is selected from the parameters in FIG. [Return value] Display object
- ShowClock Method Add time display to instruction buffer. When the time is displayed, all displayed character strings are deleted. If another command is transmitted during the time display, the time display is terminated. [syntax] showClock (); [Return value] Display object
- setPrefix method When keyboard input is received as a character string, a key code is set to determine the beginning of the character string. [syntax] setPrefix (data); [parameter] data: Object type: (Array) Specifies an array of key codes.
- the key codes are, for example, as shown in the key code list shown in FIG.
- AddTextLineSpace Method Add line feed amount setting to command buffer. [syntax] addTextLineSpace (linespc); [parameter] linespc: (required parameter, object type: Number) Specify the amount of line breaks (in dots). Specify an integer value between 0 and 255. The return value is shown in FIG. 46A and the exception is shown in FIG. 46B.
- AddTextRotate Method Add the inverted print setting to the command buffer. This API setting is also applied to barcodes and 2D symbols. When the printing mode is set to page mode and inverted printing is set, it is set not by this API but by the “addPageDirection method” described later. [syntax] addTextRotate (rotate); [parameter] rotate (required parameter, object type: Boolean) Specify whether to use inverted printing. The set value is shown in FIG. 47A, the return value is shown in FIG. 47B, and the exception is shown in FIG. 47C.
- AddText Method Add character printing to the command buffer. After printing text, when printing something other than text, a line feed or paper feed is executed. In the page mode, the character is developed at the current print position based on the baseline dot of the character (“Appendix” on page 141). [syntax] addText (data); [parameter] data (required parameter, object type: String) Specify the character string to be printed. Horizontal tab / line feed uses the escape sequence of FIG. 48A. The return value is shown in FIG. 48B and the exception is shown in FIG. 48C.
- AddTextSize Method Add the character scaling setting to the command buffer. [syntax] addTextSize (width, height); [parameter] width: (Optional parameter, Object type: Number) Specifies the horizontal magnification of characters. The set values are shown in FIG. 53A. height (optional parameter, object type: Number) Specify the vertical magnification of characters. The set values are shown in FIG. 53B. The return value is shown in FIG. 53C and the exception is shown in FIG. 53D.
- addFeedUnit Method Add paper feed in dots to the command buffer.
- addFeedLine Method Add line-by-line paper feed to the command buffer.
- addFeedLine line
- x: (required parameter, object type: Number) Specifies the horizontal start position of the print range. Specify an integer value between 0 and 65535.
- y (required parameter, object type: Number) Specify the vertical start position of the print range. Specify an integer value between 0 and 65535.
- hri Optional parameter, Object type: String
- the constants are shown in FIG. 60F. font (optional parameter, object type: String) Specify the HRI font.
- the constants are shown in FIG. 60G.
- width (optional parameter, object type: Number) Specify the width of one module in dots. Specify an integer value between 2 and 6.
- height (optional parameter, object type: Number) Specify the height of the barcode in dots. Specify an integer value between 1 and 255.
- the return value is shown in FIG. 60H and the exception is shown in FIG. 60I.
- level (optional parameter, object type: String) Specify the error correction level.
- the constants are shown in FIG. 61E.
- the level is selected according to the type of 2D symbol. For MaxiCode, 2D GS1DataBar, LEVEL_DEFAULT is selected.
- width (optional parameter, object type: Number) Specify the width of the module. Specify an integer value between 0 and 255. MaxiCode is ignored.
- height (optional parameter, object type: Number) Specifies the height of the module. Specify an integer value between 0 and 255. QRCode and MaxiCode are ignored.
- size (optional parameter, object type: Number) Specifies the maximum size of a 2D symbol. Specify an integer value between 0 and 65535. QRCode and MaxiCode are ignored.
- the return value is shown in FIG. 61F and the exception is shown in FIG. 61G.
- “AddHLine method” Add horizontal ruled line printing to the command buffer. Draw a horizontal ruled line. Cannot be used in page mode. [syntax] addHLine (x1, x2, style); [parameter] x1: (Required parameter, Object type: Number) Specifies the drawing start position (in dots) of the horizontal ruled line. Specify an integer value between 0 and 65535. x2: (Required parameter, Object type: Number) Specifies the drawing end position (in dots) of the horizontal ruled line. Specify an integer value between 0 and 65535. style: (Optional parameter, Object type: String) Specifies the type of ruled line. The constants are shown in FIG. 62A. The return value is shown in FIG. 62B and the exception is shown in FIG. 62C.
- addVLineBegin Method Add the start of a vertical rule to the command buffer. Start drawing vertical ruled lines. Cannot be used in page mode. The vertical ruled line is drawn until the end is specified by the addVLineEnd method described later. This API is used together with addVLineEnd. [syntax] addVLineBegin (x, style); [parameter] x (required parameter, object type: Number) Specifies the drawing start position (in dots) of the vertical ruled line. Specify an integer value between 0 and 65535. style (optional parameter, object type: String) Specifies the type of ruled line. The constants are shown in FIG. 63A. The return value is shown in FIG. 63B and the exception is shown in FIG. 63C.
- addVLineEnd Method Add end of vertical rule to command buffer. Finish drawing vertical ruled lines. Cannot be used in page mode.
- This API is used together with the addVLineBegin method described above.
- addVLineEnd x, style
- [parameter] x Specifies the position (in dots) where drawing of vertical ruled lines ends. Specify an integer value between 0 and 65535.
- style optionally parameter, object type: String
- Add page mode print area to command buffer Specify the page mode print area (coordinates). After this API, specify the print data API such as the addText method. The print area is specified according to the print contents. When the print data exceeds the print area, the print data is cut off halfway. This API is used between the addPageBegin method and the PageEnd method. [syntax] addPageArea (x, y, width, height); [parameter] x (required parameter, object type: Number) Specifies the horizontal origin (in dots). Specify an integer value between 0 and 65535. 0 is the left edge of the printable area of the printer.
- y (required parameter, object type: Number) Specify the vertical origin (in dots). Specify an integer value between 0 and 65535. 0 is a position where no paper is fed.
- width (required parameter, object type: Number) Specifies the width (in dots) of the print area. Specify an integer value between 0 and 65535.
- height (required parameter, object type: Number) Specifies the height (in dots) of the print area. Specify an integer value between 0 and 65535.
- the width and height of the print area are determined according to the print direction setting. Print data may be cut off. The return value is shown in FIG. 67A and the exception is shown in FIG. 67B.
- Add page mode print direction setting to command buffer Specify the print direction of page mode. It can be omitted if it is not rotated.
- This API is used between the above addPageBegin method and PageEnd method. [syntax] addPageDirection (dir); [parameter] dir (required parameter, object type: String) Specify the print direction of page mode. The constants are shown in FIG. 68A. The return value is shown in FIG. 68B and the exception is shown in FIG. 68C.
- addPagePosition method Add the page mode print position setting area to the command buffer. Specify the print start position (coordinates) within the area specified by the addPageArea method. This API is used between the above addPageBegin method and PageEnd method. [syntax] addPagePosition (x, y); [parameter] x: (required parameter, object type: Number) Specify the horizontal print position (in dots). Specify an integer value between 0 and 65535. y: (required parameter, object type: Number) Specify the vertical print position (in dots). Specify an integer value between 0 and 65535. The print start position (coordinates) is designated according to the print contents. Refer to the following.
- addPageLine method Add page mode line drawing to the command buffer. Draw a straight line in page mode. Diagonal lines cannot be drawn.
- This API is used between the above addPageBegin method and PageEnd method.
- addPageLine (x1, y1, x2, y2, style);
- x1 (required parameter, object type: Number) Specifies the horizontal drawing start position (in dots). Specify an integer value between 0 and 65535.
- y1 (required parameter, object type: Number) Specifies the drawing start position (in dots) in the vertical direction. Specify an integer value between 0 and 65535.
- x2 (required parameter, object type: Number) Specifies the horizontal drawing end position (in dots).
- addPageRectangle Method Add page mode rectangle drawing to the command buffer. Draw a rectangle in page mode.
- This API is used between the above addPageBegin method and PageEnd method.
- addPageRectangle (x1, y1, x2, y2, style);
- x1 (required parameter, object type: Number) Specifies the horizontal drawing start position (in dots). Specify an integer value between 0 and 65535.
- y1 (required parameter, object type: Number) Specifies the drawing start position (in dots) in the vertical direction. Specify an integer value between 0 and 65535.
- x2 (required parameter, object type: Number) Specifies the horizontal drawing end position (in dots).
- AddPulse Method Add a drawer kick to the command buffer. Set the drawer kick. Cannot be used in page mode. The drawer cannot be used with a buzzer. [syntax] addPulse (drawer, time); [parameter] drawer (optional parameter, object type: String) Specify the drawer kick connector. The set values are shown in FIG. 73A. time (optional parameter, object type: String) Specify the on time of the drawer kick signal. The set values are shown in FIG. 73B. The return value is shown in FIG. 73C and the exception is shown in FIG. 73D.
- Print method Print a print image drawn with HTML5Canvas. Convert the specified range of RGBA full color image of HTML5Canvas to raster image data according to the settings of halftone property and brightness property. One pixel of the image corresponds to one dot of the printer. If a transparent color is included, the background of the image is considered white. HTML5Canvas containing images downloaded from different domains cannot be printed. Security error occurs due to the same origin policy of JavaScript. [syntax] print (canvas, cut, mode); [parameter] canvas (required parameter, object type: canvas) Specifies the HTML5Canvas object to be printed. Cut (optional parameter, object type: Boolean) Set whether or not to cut paper. The set values are shown in FIG. 76A. mode (optional parameter, object type: String) Specify the color mode. The set values are shown in FIG. 76B. Example harm is shown in FIG. 76C.
- StartMonitor Method Enable status events. Notify the printer status by event. The status is updated at the interval specified by the interval property. [syntax] startMonitor ();
- Halftone property Specifies the halftone processing method to be applied for monochrome (two-tone) printing.
- the initial value is HALFTONE_DITHER.
- Object type String The set values are shown in FIG.
- Brightness property Specify the brightness correction value within the range of gamma value 0.1 to 10.0. The initial value is 1.0.
- Object type Number
- Timeout property Specify the timeout (ms) for messages sent by the send method described above.
- the initial value is 10,000.
- Object type Number
- Neval Property Specify the interval for updating the status.
- Object type Number [Explanation] Specify the status update interval in milliseconds. Initial value: 3000 (3 seconds) Minimum value: 1000 (1 second or more) If an invalid value is specified, 3000 is assumed.
- the SimpleSerial object will be described. API specifications can be customized by creating device control scripts. "SendCommand” Send any command. [syntax] sendCommand (data); [parameter] data Object type: (String) Specify the command as a hexadecimal string. The command string is specified by delimiting with " ⁇ x". ⁇ Example> When transmitting 0x020x1F0x03, the character string “ ⁇ x02 ⁇ x1F ⁇ x03” is specified.
- FIG. 81 is an explanatory diagram regarding the use of a device control script.
- the device control script 502 provided by the device control function of the present invention, it is possible to customize data processing of a device or use a new device from a web application.
- the device control script 502 has a device connection 503 and a client connection 504.
- the devices of the printer 5 are collectively shown as a device 20.
- the device service interface 501 on the printer 5 When the above-described “createDevice method” of the Device object is executed, the device service interface 501 on the printer 5 generates an object so that a device control script corresponding to the requested device can be used. The device can be controlled by the generated object.
- the device control script 502 can communicate with the web application 32 and the device 20, as shown in FIG.
- the device connection 503 is an object that performs data transmission / reception with the device 20.
- the client connection 504 is an object that transmits data to the device object on the web browser 31 side, and accesses the device service interface 501.
- the function using the object of the device control script will be described.
- the following functions can be used using API for device control script.
- -Arbitrary events of the device object on the browser side can be called.
- -Data can be sent to the device.
- -Data generated from the device can be received.
- the configuration of the device control script will be described.
- the device control script is coded to satisfy the following conditions. -Code required for device control is described in one file. (When setting up a device using TMNetWebConfig, only one file can be registered.) -The name of the file name up to the first dot "." Is the same as the constructor name.
- Constructor name: Keyboard_Generic Keyboard_Generic Declare exports for external references to constructors.
- exports.Keyboard_Generic Keyboard_Generic;
- the device control script has the properties shown in FIGS. 83 and 84. Appropriate names are set in the constructor.
- DEVICE_TYPE property object type: String
- DEVICE_GROUP property Object type: String
- a configuration example of the device control script 502 is shown in FIG.
- the device control script API will be described. The following objects are prepared in the device control script API.
- Client connection object FIG. 86 shows a list of APIs
- Device connection object API list is shown in FIG. 87
- Device control script name object FIG. 88 shows a list of APIs
- the ClientConnection object will be described.
- This object is an object passed to the first parameter of the constructor of the device control script 502.
- the API “send” sends data to the device object that runs in the browser. [syntax] send (event, data); [parameter] -Event: Object type: (String) Set the event name of the device object. -Data: Object type: (Object) Specifies the data to pass to the device object event. An example is shown in FIG. In this example, the onkeypress event of the device object is called and the data parameter of the onkeypress event is used to obtain 49 from data.keycode and '1' from data.ascii.
- the DeviceConnection object will be described. This object is an object passed to the second parameter of the constructor of the device control script 502.
- the API “send” transmits data to the serial communication device. In the case of an input device that can operate with the HID driver, it is not transmitted. [syntax] send (data); [parameter] data: Object type: (Buffer) Specify the data to send to the device.
- OnDeviceData event (input device that can operate with HID driver) This event is an event for receiving data detected from the key input device.
- the event is described in this format.
- a list of values is shown in FIG. keycode: Object type: (Number) Receive key code. Examples of key codes are shown in the key code list of FIG. ascii: Object type: (String) Receives the character corresponding to the operated key. If there is no character corresponding to the key code (eg F1 key), it will be undefined.
- OnDeviceData event (serial communication device) This event is an event for receiving data from the serial communication device.
- OnDeviceData event (serial communication device) This event is an event for receiving data from the serial communication device.
- onDeviceData data
- Parameter] data Object type: (Buffer) Receives data received from a serial communication device.
- FIG. 91 shows an example of a sample POS terminal.
- FIG. 92 shows an example of a printer sample program.
- the operating environment necessary for operating the sample program is as follows. (1) Necessary devices (Sample programs can be used without preparing all devices) ⁇ Printer 5 ⁇ Customer display 8 ⁇ POS keyboard ⁇ Barcode scanner (2) Items necessary for printer 5 operation ⁇ Display ⁇ Keyboard ⁇ Mouse (3) Other ⁇ LAN cable ⁇ Sample program
- FIG. 93 shows the environment setting flow of the sample program. If the "Windows Security" screen is displayed while using TMNet TMNetWebConfig, enter the user name and password. 1. Connect the LAN cable Connect the LAN cable to the printer 5. 2. Registering the sample program Register the sample program (device_API_J_Sample.zip) to the printer 5. 3. Device connection A device to be used is connected to the printer 5. 4). Device settings TMNet Set using TMNetWebConfig.
- FIG. 94 is a screen for registering a sample program. Register the sample program (device_API_UM_J_Sample.zip) in the printer 5 using TMNet TMNetWebConfig.
- TMNet TMNetWebConfig follows the procedure below. 1. Turn on the printer 5. 2. Start TMNet TMNetWebConfig from the shortcut on the desktop.
- [Web service setting]-[Web content]-[Update setting] indicated by [2] is selected.
- a “Web content update setting” screen is displayed. Click the [Browse] button indicated by [3] in FIG. 94 to set the sample program. 4). Next, an “upload” button indicated by “4” in FIG. 94 is clicked to register the sample program in the printer 5.
- FIG. 95 shows a screen for setting a customer display.
- [Web service setting]-[Device management]-[Display] indicated by [1] in FIG. 95 is selected.
- the “customer display setting” screen shown in FIG. 95 is displayed.
- [Use] shown in [2] in FIG. 95 is selected and the [Set] button is clicked.
- FIG. 96 shows a screen for setting the POS keyboard / barcode scanner.
- the “key input device” screen of FIG. 96 is displayed.
- An example of the setting is shown in FIG. Registration is performed one device at a time. 4).
- the registered device is displayed in [Registered Key Input Device] in [4] of FIG.
- the activation of the sample program will be described.
- Start the sample program (device_API_UM_J_Sample.zip) as follows: 1. Start the web browser and enter the IP address of the printer 5 in the address bar. The initial value of the IP address of the printer 5 is “192.168.192.168”. 2. A sample program is displayed. FIG. 98 shows a display example. If the sample program is not displayed, check whether the LAN cable is connected.
- the sample program has the following items. Selecting each item moves to the corresponding screen. Details of each sample program will be described later. ⁇ POS Terminal Sample ⁇ Customer Display Sample ⁇ Keyboard Sample ⁇ Printer Sample ⁇ Barcode Scanner Sample
- Customer Display Sample is used in the following procedure. 1. Start the sample program. In FIG. 98, [Customer Display Sample] is selected. 2. The “Customer Display Sample” screen in FIG. 99A is displayed. Click the [Connect] button on this screen. If the connection is successful, the following message is displayed in the Console. In addition, the customer display changes. Note that there is no need to change the [Device Setting] setting. However, if the IP address has been changed, change the [Device Setting] setting according to the changed value. 3. Set the function you want to operate on the screen of FIG. 99B and click the [Add] button. 4). The source of the function added in step 3 is displayed in [Display Object sample code] in FIG. 99C. Can be copied and used. 5. When the [Send] button on the screen in FIG. 99C is clicked, the display changes according to the function added in step 3.
- Printer Sample is used in the following procedure. 1. Start the sample program. In FIG. 98, [Printer Sample] is selected. 2. The “Printer Sample” screen in FIG. 101A is displayed. Click the [Connect] button. If the connection is successful, the following message is displayed in the Console. Note that there is no need to change the [Device Setting] setting. However, if the IP address has been changed, change the [Device Setting] setting according to the changed value. 3. A function to be operated is set, and the [Add] button on the screen of FIG. 101B is clicked. 4). The source of the function added in step 3 is displayed in [printer-Print API sample code] on the screen in FIG. 101C. Can be copied and used. 5. Clicking the [Send] button prints a test print according to the function added in step 3.
- Barcode Scanner Sample is used in the following procedure. 1. Start the sample program. In FIG. 98, [Barcode Scanner Sample] is selected. 2. The “Barcode Scanner Sample” screen in FIG. 102A is displayed. Click the [Connect] button. If the connection is successful, the following message is displayed in the Console. Note that there is no need to change the [Device Setting] setting. However, if the IP address has been changed, change the [Device Setting] setting according to the changed value. 3. When the barcode scanner is read, the read information is displayed in [ePOS Device API Scanner Object] on the screen of FIG. 102B.
- POS Terminal Sample The details of POS Terminal Sample are explained.
- This sample program can be operated like a POS system.
- the POS Terminal Sample is used in the following procedure. First, preparations are made. In this preparation, the sample program is started and each device is set. 1. Start the sample program. [POS Terminal Sample] in FIG. 98 is selected. 2. The “POS Terminal Sample” screen in FIG. 103A is displayed. Click the [Set] button. 3. The “setting” screen in FIG. 103B is displayed. You can set the IP address / port / device ID on this setting screen. If the settings have been changed, click the [Connect] button and check if the status changes to [OK]. Close the screen after confirmation. Usually, there is no need to change the setting.
- the procedure from reading a product to issuing a receipt is as follows. 1. Enter products using a barcode scanner or POS keyboard. After entering the product, click the [Subtotal] button on the screen of FIG. 104A. ⁇ Click the [Cancel] button to delete the selected product. In addition, when the [Cancel All Items] button is pressed, all products are deleted. ⁇ To change the quantity, click the [Quantity] button after entering the product and enter the number. Click the [Total] button to confirm the quantity. 2. Enter the deposit amount on the screen of FIG. 104B. After entering the amount, click the [Current Total] button. 3. The change is displayed as shown in the screen of FIG. 104C, and a receipt is printed from the printer.
- the device control system 100 includes the application server 2 that provides the web application 32 and the web browser that is connected to the application server 2 via the network and displays the web application 32. And a printer 5 having a connector panel 60 to which a device is connected and controlling the device connected to the connector panel 60.
- the terminal 3 calls an object that the device API 33 that controls the device by the web application 32 has corresponding to the device, transmits a request to the printer 5, and the printer 5 executes a device control script 502 that controls the device, A request transmitted via the API 33 is received and a device connected to the connector panel 60 is controlled.
- the printer 5 has the function of the application server 2 (FIG. 1).
- the device control script 502 includes a DeviceConnection object that transmits / receives data to / from the device, and a ClientConnection object that transmits data to the device control API.
- the terminal 3 designates a device connected to the printer 5 and transmits a request for instructing to start control of the device to the printer 5.
- the printer 5 sends a device to the device designated by the request.
- a command is transmitted by the control script 502, and the device shifts to a controllable state.
- the first terminal 3 designates a device connected to the printer 5, and issues a request for instructing device control start to the printer
- the printer 5 shifts to a state in which the device designated by the request can be controlled, the device enters an exclusive lock state that cannot be controlled by the request transmitted by the second terminal 3.
- the printer 5 notifies the second terminal 3 that the device is being used.
- the local printer or the network printer 7 can be controlled by the device control script 502 according to the request transmitted by the second terminal 3.
- the terminal 3 designates a device connected to the printer 5 and transmits a request for instructing the end of control of the device to the printer 5.
- the printer 5 sends a device to the device designated by the request.
- a command is transmitted by the control script 502, and the state in which the device can be controlled is terminated.
- the terminal 3 designates a device connected to the printer 5 and transmits a request for instructing the end of control of the device to the printer 5.
- the printer 5 sends a device to the device designated by the request.
- a command is transmitted by the control script 502, and the state in which the device can be controlled is terminated.
- the device can be controlled by the request transmitted from the second terminal 3 by the printer 5.
- the terminal 3 detects the connection state between the object included in the device API 33 and the device control script 502 of the printer 5 using the device API 33.
- the terminal 3 controls an object included in the device API 33 by the web application 32 and calls an event of the device control script 502.
- a customer display is connected as a device to the printer 5, the terminal 3 transmits a request for displaying the customer display, and the printer 5 controls the display of the customer display by the device control script 502 according to the request. .
- a customer display is connected to the printer 5 as a device, the terminal 3 transmits a request for displaying the customer display, and the printer 5 causes the device control script 502 to display the time on the customer display according to the request.
- the second request is transmitted during the time display, the time display is stopped.
- the device connected to the printer 5 is a printer
- the terminal 3 transmits a request for registering image data to the printer by the device control API object
- the printer 5 is the printer specified by the request.
- the image data is registered in the printer, and the printer prints the registered image data.
- color image data drawn by HTML5Canvas is converted into raster image data according to a request transmitted from the terminal 3, and is registered in the printer.
- the terminal 3 transmits a request that designates a device by an object of the device control API and instructs setting of necessity of encryption of data transmitted / received between the device and the terminal 3. .
- the terminal 3 includes an application server 2 that provides a web application 32 and a connector panel 60 to which a device is connected.
- the terminal 3 is connected to a printer 5 that controls the device connected to the connector panel 60 via a network.
- a device control that includes a web browser 31 that displays a web application 32, calls an object that the device API 33 that controls the device by the web application 32 has corresponding to the device, sends a request to the printer 5, and controls the device to the printer 5.
- the script 502 is executed.
- the present invention is useful for a device control system for controlling a device, and can be applied to device control and a printing apparatus used in a POS system.
- Connector panel 61 ... Drawer kick connector, 62 ... Ethernet connector, 63 ... USB connector, 64 ... VGA connector, 65 ... COM connector, 100 ... Device control system, 200 ... Device control system, 300 ... Device control system , 301 ... Device list, 501 ... Device service interface, 502 ... Device control script, 503 ... Device connection, 504 ... Client connection.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Facsimiles In General (AREA)
- User Interface Of Digital Computer (AREA)
- Telephonic Communication Services (AREA)
- Selective Calling Equipment (AREA)
Abstract
Description
本発明は、上述した事情に鑑みてなされたものであり、ネットワーク接続された端末によりデバイスを制御できるデバイス制御システム、印刷装置、及び、デバイス制御システムの制御方法を提供することを目的とする。
本発明によれば、端末のウェブブラウザーによって、デバイス制御装置に接続されたデバイスを制御できる。
また、前記オブジェクトは、前記デバイス制御スクリプトに含まれるイベントを呼び出す。
また、前記端末は、前記イメージデータを前記デバイス制御装置に送信し、前記デバイス制御スクリプトは、前記イメージデータを前記ラスターイメージデータに変換する。
また、前記リクエストは、前記デバイスを指定して、前記デバイスと前記端末との間で送受信されるデータの暗号化の要否の設定を指示する暗号化リクエストである。
また、前記リクエストは、前記デバイス制御装置に接続された前記デバイスを指定して前記デバイスの制御の開始を指示する制御開始リクエストであり、前記端末が前記制御開始リクエストを前記デバイス制御装置に送信した時、前記デバイス制御装置は前記制御コマンドを前記デバイスに送信し、前記デバイスを前記端末での制御を開始させる。
図1は、本発明を適用した第1の実施形態であり、アプリケーションサーバー2を備えたデバイス制御システム100の構成例を示す図である。
デバイス制御システム100は、アプリケーションサーバー2、端末3、及び、プリンター5(インテリジェントプリンター)を備えている。デバイス制御システム100では、アプリケーションサーバー2、端末3及びプリンター5が通信ネットワークを介して接続される。図1の例では、デバイス制御システム100は、無線LANアクセスポイント11を有し、アプリケーションサーバー2、プリンター5及び無線LANアクセスポイント11は有線LANにより接続される。無線LANアクセスポイント11は端末3を有線LANに接続する。これにより、端末3は無線LANアクセスポイント11と通信可能な範囲であれば使用できる。
プリンター5に接続するデバイスは図1に示す機器に限定されない。例えば、ディスプレイ、及び、キーボード等のキー入力デバイスを含む。また、OS標準のHID(Human interface device)ドライバーで制御可能なデバイス、OS標準のシリアル通信ドライバーで動作可能なシリアル通信デバイス、及び、シリアル通信デバイスと同様に制御可能なUSBデバイスを含む。
端末3は、ネットワーク接続可能なウェブブラウザー搭載端末であればよく、例えば、図1に示すように周知のタブレットを用いることができる。デバイス制御システム100では、デバイスの制御用に、別途、コントローラーとなる機器(コンピューターなど)を用意する必要がない。
(1)アプリケーションサーバー2にウェブアプリケーションを配置する。
(2)端末3のウェブブラウザーにより、ウェブアプリケーションを表示する。
(3)端末3のウェブブラウザーがプリンター5に対し、リクエストメッセージを送信する。
(4)プリンター5がリクエストメッセージを受信する。プリンター5は、受信したリクエストメッセージに基づいて、プリンター5によって制御可能なデバイスにデータを送信する。
(5)プリンター5に接続されるネットワークプリンター7、カスタマーディスプレイ8及びバーコードスキャナー9が制御される。
(6)プリンター5がウェブアプリケーションにレスポンスを返す。
(1)アプリケーションサーバー2にウェブアプリケーションを配置する。
(2)端末3のウェブブラウザーにより、ウェブアプリケーションを表示する。
(3)端末3のウェブブラウザーがプリンター5に対し、リクエストメッセージを送信する。
(4)プリンター5がリクエストメッセージを受信する。プリンター5は、受信したリクエストメッセージに基づいて、プリンター5によって制御可能なデバイスにデータを送信する。
(5)プリンター5に接続されているネットワークプリンター7、カスタマーディスプレイ8及びバーコードスキャナー9が制御される。
(6)プリンター5がウェブアプリケーションにレスポンスを返す。
デバイス制御システム300の動作は、次の通りである。
(1)プリンター5にウェブアプリケーションを配置する。
(2)端末3のウェブブラウザーにより、ウェブアプリケーションを表示する。
(3)端末3のウェブブラウザーがプリンター5に対し、リクエストメッセージを送信する。
(4)プリンター5がリクエストメッセージを受信する。プリンター5は、受信したリクエストメッセージに基づいて、プリンター5によって制御可能なデバイスにデータを送信する。
(5)プリンター5に接続されているネットワークプリンター7、カスタマーディスプレイ8及びバーコードスキャナー9が制御される。
(6)プリンター5がウェブアプリケーションにレスポンスを返す。
プリンター5は、CPU、RAM、フラッシュROM、NV(不揮発性メモリー)、ビデオコントローラー、補助記憶装置(SSD:solidstatedrive)、インターフェース、及び、ローカルプリンター(印刷部)を備えている。プリンター5は、スピーカーを備えていてもよい。ローカルプリンターは、80mm幅または58mm幅のロール紙に印刷するサーマルプリンターである。
プリンター5にはPOS(pointofsales)システムをインストールできる。プリンター5のOS(operatingsystem)は、例えばWindows(登録商標)ベースであり、補助記憶装置に記憶される。
プリンター5は、プリンター5が備えるローカルプリンター、及び、デバイスを制御するソフトウェアである、Windows(登録商標)標準のデバイスドライバープログラム(APD)、UPOSドライバー、OPOSドライバー等を備えている。
プリンター5には、ウェブアプリケーションをインストールできる。これにより、図3に示すようにプリンター5をアプリケーションサーバーとして利用できる。ウェブアプリケーションは、例えば、PHP及びPerlのサーバーサイドスクリプト、SQLiteデータベースアクセス(サーバーサイドスクリプト)が可能である。
プリンター5には、上述したネットワークプリンター7、カスタマーディスプレイ8及びバーコードスキャナー9を接続できる。プリンター5にディスプレイ12、キャッシュドロワー13、及びキーボード14を接続できる。
図5は、プリンター5の外観斜視図である。
プリンター5の上部には、ロール紙カバー51が設けられる。ロール紙カバーはカバーオープンボタン52を押すと開き、ロール紙を出し入れできる。印刷後のロール紙を排出する排出口には、手動でロール紙をカットするマニュアルカッター53、及び、カッターカバー54を有する。カッターカバー54はプリンター5のローカルプリンターで紙ジャムが発生した場合及びロール紙カバー51が開かない場合に開かれる。カッターカバー54を開くとマニュアルカッター53のブレードが基準位置に戻る。プリンター5は、電源スイッチ56B、リセットボタン56A、LED表示部57、及び、コントロールパネル58を備える。LED表示部57は、補助記憶装置のアクセスを示すディスクアクセスLED、及び、ステータスLEDを備える。ステータスLEDは、OSの動作状態、OSのスタンバイモード、電源オフ状態、OSの起動シーケンス中、CPUの高温警告を通知する。
コントロールパネル58はパワーLED、エラーLED、ロール紙LED、及び送りボタンを備える。パワーLEDは電源が供給されている場合に点灯する。エラーLEDは通常動作時は消灯し、リセットされたとき、及び、ロール紙の末端が検出されて印刷が停止したときに点灯する。ペーパーLEDはロール紙の残量が十分なときは消灯し、残量がすくなくなると点灯し、自己診断機能の実行時に点滅する。送りボタンを押すと1行ずつ、または連続してロール紙が搬送される。
図6はコネクターパネル60を示す図である。コネクターパネル60は、ドロワーキックコネクター61、イーサネットコネクター62、USBコネクター63、VGAコネクター64、COMコネクター65、ライン出力66、及びDC入力67を有する。コネクターパネル60は、本発明の接続部に相当する。但し、プリンター5のデバイスには、プリンター5本体が備えるローカルプリンター55が含まれる。従って、接続部は、コネクターパネル60、及び、プリンター5内部のインターフェースを含む。
ドロワーキックコネクター61には、キャッシュドロワー13またはオプションのブザーが接続される。イーサネットコネクター62はネットワークに接続される。USBコネクター63は6個のUSBポートを有する。USBコネクター63にはカスタマーディスプレイ8、バーコードスキャナー9、キーボード14及びその他のデバイスが接続される。VGAコネクター64にはディスプレイ12が接続される。COMコネクター65にはシリアル通信を行うデバイスのシリアルインターフェースが接続される。ライン出力66は外部のスピーカーに接続される。
図7は、無線LANユニット17の接続例を示す図である。無線LANユニット17は、USB延長ケーブル15に差し込まれ、USB延長ケーブル15はUSBコネクター63に差し込まれる。これにより、プリンター5を無線LAN接続することができる。
図8は、デバイス制御システム100の機能的構成を示す図である。
端末3は、アプリケーションサーバー2によって提供されるウェブアプリケーション32を、ウェブブラウザー31により表示する。ウェブアプリケーション32は、ウェブブラウザー31が有するデバイスアプリケーションプログラムインターフェース(API)33を呼び出す。デバイスAPI33は、例えばJava(登録商標)スクリプトであり、後述するように、プリンター5に接続されたデバイスを制御するオブジェクトを生成する。ウェブアプリケーション32はデバイスAPI33のオブジェクトを呼び出す(APICall)。デバイスAPI33は、呼び出されたオブジェクトの機能により、プリンター5に対してリクエストを送信する(Request)。
このように、本発明は、プリンター5に接続されたデバイス(周辺機器)をマルチプラットフォーム環境で制御するときに用いられる。このシステムを利用すれば、ウェブブラウザーを搭載したパーソナルコンピューター、スマートフォン、あるいはタブレットコンピューターを用いてデバイスを制御できる。
・デバイスとの通信内容を暗号化できる。
・プリンター5のOS標準のドライバーで動作するデバイスは、プリンター5にドライバーをインストールせずに、デバイス制御スクリプト502で使用できる。デバイス制御スクリプト502はJavaScript(商標)で記述するため、ウェブアプリケーション32と同じ言語で開発できる。
・デバイスAPI33を使ってデバイスにアクセスすると、デバイスは自動的に、排他ロックされる。このため、複数端末から同時アクセスしても、制御が混在しない。デバイス制御していた端末3がデバイスを解放すると、このデバイスは他の端末3から制御可能となる。
・罫線を印刷するコマンドは、プリンター5のローカルプリンター55またはネットワークプリンター7が「罫線コマンド」をサポートしている場合に使用できる。
・ブザーの機能は、プリンター5またはネットワークプリンター7にブザーが接続されている場合に使用できる。
・キーボード14から取得できるキーコードに制限がある。キーボード14から取得可能なキーコードは、図9の通りである。
図10は、環境の構築のワークフローを示す。
1.ネットワーク設定
システム及びプリンター5のネットワーク設定をする。この設定は、Windows(登録商標)のネットワーク設定と同じ手順で行うことができる。
ウェブブラウザーからプリンター5に、ウェブコンテンツを登録する。
プリンター5はウェブサーバーとして、ウェブコンテンツを登録できる。登録されたウェブコンテンツは、端末3のウェブブラウザー31から閲覧できる。
登録されるウェブコンテンツは、コンテンツのファイルすべてを1つにまとめてzipファイル形式に圧縮した形式にされる。zipファイル名は任意に指定できる。zipファイル名およびサブフォルダー名は、半角英数字(ASCII文字)を使用する。
ウェブコンテンツは追加登録ができず、すべてのファイルが上書き登録される。プリンター5に登録したウェブコンテンツに、端末3などからアクセスする場合、zipファイルのフォルダー構成によって、参照するURLが異なる。具体的な例を図11の[1]、[2]に示す。
プリンター5にデバイスを接続する。接続可能なデバイスは、上述したように、カスタマーディスプレイ8、バーコードスキャナー9、ディスプレイ12、キャッシュドロワー13、キーボード14等である。さらに、OS標準のHIDドライバーで制御可能なデバイス、OS標準のシリアル通信ドライバーで動作可能なシリアル通信デバイス、及び、シリアル通信デバイスと同様に制御可能なUSBデバイスを含む。図6のコネクターパネル60には、COMコネクター65が1つしかないが、シリアル-USB変換ケーブル、及び、シリアル-USB変換に対応したドライバープログラムがあれば、複数のシリアル通信デバイスを接続できる。
4.デバイス制御スクリプトの登録
プリンター5が対応した製品以外のデバイスをプリンター5で制御する場合、ユーザーが用意したデバイス制御スクリプトを登録する。登録は、ウェブブラウザーから行う。
5.デバイスの登録
プリンター5に接続するデバイスをプリンター5のソフトウェアに登録する。登録は、ウェブブラウザーから行う。
手順1.~5で使用するウェブブラウザーはウェブブラウザー31を含む。
ウェブコンテンツの登録ファイルは、図12に示すように、ウェブブラウザーでTMNetWebConfigを表示して登録する。
登録の手順は以下の通りである。
(1)登録するWebコンテンツをzipファイルで1つにまとめる。
(2)プリンター5の電源をオンにする。
(3)ウェブブラウザーを起動し、URL(http://プリンター5のIPアドレス/TMNetWebConfig/)を入力する。
(4)TMNetWebConfigが起動する。図11の画面の[Webサービス設定]-[更新設定]をクリックする。
(5)“Webコンテンツの更新設定”画面が表示される。
[Webコンテンツファイル]の[参照]をクリックし、(1)で用意したWebコンテンツをまとめたzipファイルを選択する。
(6)[アップロード]をクリックする。
ユーザーが用意したデバイス制御スクリプトは、図13に示すように、ウェブブラウザーでTMNetWebConfigを表示して登録する。この方法では、ユーザーが用意したデバイスをプリンター5に接続して制御し、または、デバイスデータ処理のカスタマイズをする場合に、ユーザーがデバイス制御スクリプトを開発して登録できる。
登録の手順は以下の通りである。
(1)カスタマイズしたデバイス制御スクリプトを用意する。
(2)プリンター5の電源をオンにする。
(3)ウェブブラウザーを起動し、URL(http://プリンター5のIPアドレス/TMNetWebConfig/)を入力する。
(4)TMNetWebConfigを起動する。図12の画面の[Webサービス設定]-[登録と削除]をクリックする。
(5)“制御スクリプト”画面が表示される。
[登録する制御スクリプト]の[参照]をクリックし、登録するデバイス制御スクリプトを選択する。
(6)[登録]をクリックする。
デバイス制御スクリプトが登録され、画面下の[登録済み制御スクリプト]に一覧表示される。
図14に示すように、ウェブブラウザーでTMNetWebConfigを表示してデバイスを登録する。
登録の手順は以下の通りである。
(1)ウェブブラウザーを起動し、URL(http://プリンター5のIPアドレス/TMNetWebConfig/)を入力する。
(2)TMNetWebConfigを起動する。図14の画面の[Webサービス設定]-[デバイス登録]より登録するデバイスの種類にしたがってクリックする。図14の画面で[デバイス登録]にはデバイス一覧301が表示される。デバイス一覧301から登録するデバイスの種類をクリックする。本実施形態ではデバイスの種類は、図15に示すように、プリンター、ディスプレイ、キー入力デバイス、シリアル通信デバイス、その他、の5種類から選択される。デバイスの種類の詳細は図15に示す通りである。
(3-1)プリンターを登録する場合
プリンター5の本体が備えるローカルプリンターが登録されていることを、以下の手順で確認する。
(3-1-1)図14の画面で[登録済みプリンター]のデバイスID”local_printer”に、”プリンター5”が登録されていることを確認する。
(3-1-2)[テスト印字]をクリックする。ローカルプリンターにより「TEST_PRINT」が印字されることを確認する。
(3-1-3)接続しているネットワークプリンター7を登録する。
以下の手順で登録する。
(3-1-3-1)図16に示す項目(デバイスID、タイプ、型番、IPアドレス、リトライ間隔)を設定し、[登録]をクリックする。
(3-1-3-2)[登録済みプリンター]に追加されたことを確認したら、[テスト印字]をクリックする。登録したネットワークプリンター7により「TEST_PRINT」が印字されることを確認する。
(3-2)ディスプレイ(カスタマーディスプレイ8)を登録する場合。
カスタマーディスプレイのデバイスIDは、"local_display"固定である。接続しているカスタマーディスプレイ8を、以下の手順で登録する。
(3-2-1)図14の画面で[使用する]を選択する。
(3-2-2)図17の項目(通信設定、輝度)を設定し、[登録]をクリックする。
(3-2-3)[テスト表示]をクリックする。カスタマーディスプレイ8に文字が表示されることを確認する。
(3-3)キー入力デバイス18を登録する場合
接続しているキー入力デバイス18を、以下の手順で登録する。
(3-3-1)図18の項目(デバイスID、デバイス名、制御スクリプト)を設定し、[登録]をクリックする。
(3-3-2)[登録済みキー入力デバイス]に追加されたことを確認したら、[動作テスト]をクリックする。
(3-3-3)ウェブブラウザーにより画面が表示される。キー入力デバイス18を操作し、操作したとおりの結果が表示されることを確認する。
(3-4)シリアル通信デバイス19を登録する場合
接続しているシリアル通信デバイス19を、以下の手順で登録する。
(3-4-1)接続しているシリアル通信デバイス19について、図19の項目(デバイスID、デバイス名、制御スクリプト、通信速度、データビット、パリティ、ストップビット、フリー制御)を設定し、[登録]をクリックする。
(3-4-2)[登録済みシリアル通信デバイス]に追加されたことを確認する。
(3-5)その他のデバイスを登録する場合
接続しているデバイスを、以下の手順で登録する。
(3-5-1)接続しているデバイスについて、図20の項目(デバイスID、制御スクリプト)を設定し、[登録]をクリックする。
(3-5-2)[登録済みその他デバイス]に追加されたことを確認する。
デバイスAPI33の組み込みは、次の通りである。
本システムのデバイス制御機能をクライアントサイドJavaScriptから利用するために、デバイスAPI33が用意されている。デバイスAPI33はJavaScriptで提供される。例えばファイル名は「device-*.js」である。
準備として、デバイスAPI33を利用するために、Webサーバーにdevice-*.jsを配置する。
続いて、Webページへの組み込みを行う。HTMLの<script>タグでWebページにスクリプトを組み込む。
(組み込み例)
<scripttype="text/javascript"src="device-1.0.0.js"></script>
図21の”Applications”はウェブアプリケーション32に相当し、”DeviceControl”はデバイス制御機能(デバイスAPI33とデバイスサービスインターフェース501)に相当し、”Device”は制御されるデバイスを示す。
2:ウェブアプリケーション32が”Connect()”コマンドを送信し、デバイス制御機能との間の通信パスを確立する。
2.1:デバイス制御機能によりは”Callback(OK)”を返す。
3:ウェブアプリケーション32が”CreateDevice(DEVICE_TYPE_PRINTER)”コマンドを送信する。
3.1:デバイスサービスインターフェース501によりデバイスに”Cmd()”コマンドが送信される。
4:デバイスは”Deviceopen”を返す。
4.1:デバイス制御機能により”callback(Object,'OK')”を返す。
3~4.1の手順によりウェブアプリケーション32がデバイスオブジェクトを取得する。
5:ウェブアプリケーション32がデバイスに応じたcallbackの登録を行う。
6:ウェブアプリケーション32がデバイスに応じたメソッドを呼び出す。
6.1:デバイスに”Cmd()”コマンドが送信される。
6.1.1:デバイスが実行する。
5.1:デバイスが実行結果を返す。
5.2:デバイス制御機能により”callback('success')”を返す。
7:ウェブアプリケーション32が”deleteDevice(Object)”を送信し、デバイスオブジェクトを開放する。
7.1:デバイスに”Cmd()”コマンドが送信される。
8:デバイスがデバイスクローズを返す。
8.1:デバイス制御機能により”callback('OK')”を返す。
9:ウェブアプリケーション32が”disconnect()”コマンドを送信し、デバイスサービスインターフェース501との通信経路を遮断する。
デバイスAPI33には、以下のオブジェクトが用意されている。
・Deviceオブジェクト(図22)
・デバイスオブジェクト共通(図23)
・Displayオブジェクト(図24)
・Keyboardオブジェクト(図25)
・Printerオブジェクト(図26A、図26B、図26C)
・Scannerオブジェクト(図27)
・SimpleSerialオブジェクト(図28)
「コンストラクター」Deviceオブジェクトのコンストラクターであり、Deviceオブジェクトを新しく作成し、初期化する。
[構文]
Device();
[戻り値]
Deviceオブジェクト
デバイスサービスインターフェース501との接続経路を確立する。
[構文]
connect(ipAddress,port,callback);
[パラメーター]
ipAddress:オブジェクト種類:(String)
プリンター5のIPアドレスを指定する。
・port:オブジェクト種類:(Number)
・8008(デバイスサービスインターフェース501のポート番号)を指定する。
・callback:オブジェクト種類:(Function)
・処理結果を受け取るコールバックを指定する。コールバックの第1パラメーターに図28の文字列が返る。
connectによって接続された通信経路を切断する。
[構文]
disconnect();
connectによって接続された通信経路の確立状態を取得する。
[構文]
isConnect();
[戻り値]
図30に示すように、戻り値は通信経路の確立状態である。
「createDeviceメソッド」
デバイスとのインターフェースとなるデバイスオブジェクトを取得する。
本メソッドの実行に成功すると、指定デバイスは排他的にロックされ、他のブラウザーからcreateDeviceを呼び出すと”DEVICE_IN_USE”が返るようになる。なお、プリンターは排他ロックされないので、複数ブラウザーからcreateDeviceによるデバイスオブジェクトの取得が可能である。
ondisconnectイベント発生の復帰処理で、すぐにcreateDeviceを実行すると、”DEVICE_IN_USE”が発生する。この場合、”DEVICE_IN_USE”以外が取得できるまで、再試行を行うことになる。
[構文]
createDevice(deviceId,deviceType,crypto,callback);
[パラメーター]
deviceId:オブジェクト種類:(String)
デバイスIDを指定する。
第2パラメーター(deviceType)にDEVICE_TYPE_DISPLAYを指定する場合、"local_display"を指定する。
deviceType:オブジェクト種類:(String)
図31のいずれかのデバイス種類を指定する。
crypto:オブジェクト種類:(Boolean)
通信データの暗号化の要否を指定する。
callback:オブジェクト種類:(Function)
処理結果を受け取るコールバックを指定する。コールバックの第2パラメーターが”OK”の場合、第1パラメーターにデバイスオブジェクトが返る。第2パラメーターは図32の文字列が返る。
デバイスを解放し、他のクライアントから使用可能な状態にする。
[構文]
deleteDevice(deviceObject,callback);
[パラメーター]
deviceObject:オブジェクト種類:(Object)
デバイスオブジェクトを指定する。
callback:オブジェクト種類:(Function)
処理結果を受け取るコールバックを指定する。コールバックのパラメーターに図33の文字列が返る。
プリンター5に設定された管理者名を取得する。(管理者名はTMNetWebConfigによって設定できる。)
[構文]
getAdmin();
[戻り値]
・管理者名の文字列(String)
プリンター5に設定された設置場所情報を取得する。設置場所の文字列はTMNetWebConfigで設定できる。
[構文]
getLocation();
[戻り値]
設置場所の文字列(String)
再接続処理が失敗したことを受け取る。本イベントが発生した場合、再度接続を確立するなど、ネットワーク切断対策のための処理を行うことになる。
[構文]
Function()
「callEventメソッド」
デバイスオブジェクトに対応するデバイス制御スクリプト502側の任意イベントを呼び出す。デバイス制御スクリプト502のイベントの詳細は、デバイス制御スクリプト502の説明において後述する。
[構文]
callEvent(eventName,data);
[パラメーター]
eventName:オブジェクト種類:(String)
デバイス制御スクリプト側のイベント名を指定する。
data:オブジェクト種類:(Object)
呼び出すイベントに渡すデータを指定する。
プロパティ名と値のセットからなる、単純なJSONデータが指定可能である。
「resetメソッド」
カスタマーディスプレイ8の初期化設定を命令バッファーに追加する。初期化により、以下の状態になる。
・表示文字が全て消去され、登録された全てのウィンドウが破棄される。
・カーソルはデフォルト状態に戻り、ディスプレイ原点に移動する。
・表示点滅、表示輝度がデフォルト状態に戻る。
[構文]
reset();
[戻り値]
Displayオブジェクト
ウィンドウ設定を命令バッファーに追加する。ウィンドウは定義済ウィンドウと重ならないように定義される。また、ディスプレイのサイズ(20桁×2行)に収まる大きさが指定される。
[構文]
createWindow(number,x,y,width,height,scrollMode);
[パラメーター]
number:オブジェクト種類:(Number)
ウィンドウ番号を指定する。1~4から指定される。
x:オブジェクト種類:(Number)
ウインドウ原点のディスプレイ上でのx座標を指定する。1~20から指定される。・y:オブジェクト種類:(Number)
ウインドウ原点のディスプレイ上でのy座標を指定する。1か2を指定される。
width:オブジェクト種類:(Number)
ウィンドウの幅を指定する。
height:オブジェクト種類:(Number)
ウィンドウの高さを指定する。
scrollMode:オブジェクト種類:(String)
ウィンドウのスクロールモードの指定をする。図34に示すパラメーターから選択する。
[戻り値]
Displayオブジェクト
定義済ウィンドウの破棄設定を命令バッファーに追加する。
[構文]
destroyWindow(number);
[パラメーター]
number:オブジェクト種類:(Number)
破棄するウィンドウ番号を指定する。1~4から指定される。
[戻り値]
Displayオブジェクト
カレントウィンドウの変更設定を命令バッファーに追加する。指定ウィンドウをカレントウィンドウとし、カーソルをカレントウィンドウの原点位置に移動させる。
[構文]
setCurrentWindow(number);
[パラメーター]
number:オブジェクト種類:(Number)
移動先のウィンドウ番号を指定する。1~4から指定される。
[戻り値]
Displayオブジェクト
カレントウィンドウ内の表示消去を命令バッファーに追加する。
[構文]
clearWindow();
[戻り値]
Displayオブジェクト
カーソル位置設定を命令バッファーに追加する。
[構文]
setCursorPosition(x,y);
[パラメーター]
x:オブジェクト種類:(Number)
移動先となるx座標を指定する。1~20から指定する。
y:オブジェクト種類:(Number)
移動先となるy座標を指定する。1か2を指定する。
[戻り値]
Displayオブジェクト
カレントウィンドウ内でのカーソル位置設定を命令バッファーに追加する。
[構文]
moveCursorPosition(position);
[パラメーター]
position:オブジェクト種類:(String)
カレントウィンドウ内でのカーソルの移動先を指定する。図35のパラメーターから選択する。
[戻り値]
Displayオブジェクト
カーソル表示設定を命令バッファーに追加する。
[構文]
setCursorType(type);
[パラメーター]
type:オブジェクト種類:(String)
カーソルの表示方法を指定する。図36のパラメーターから選択する。
[戻り値]
Displayオブジェクト
文字列の表示を命令バッファーに追加する。
[構文]
addText(data);
addText(data,lang);
addText(data,x,y);
addText(data,x,y,lang);
[パラメーター]
data:オブジェクト種類:(String)
表示文字列を指定する。
lang:オブジェクト種類:(String)
文字列の表示言語を指定する。図37の文字列から指定する。
x:オブジェクト種類:(Number)
表示位置のx座標を指定する。1~20から指定する。
y:オブジェクト種類:(Number)
表示位置のy座標を指定する。1か2を指定する。
[戻り値]
Displayオブジェクト
反転文字列の表示を命令バッファーに追加する。
[構文]
addReverseText(data);
addReverseText(data,lang);
addReverseText(data,x,y);
addReverseText(data,x,y,lang);
[パラメーター]
data:オブジェクト種類:(String)
表示文字列を指定する。
lang:オブジェクト種類:(String)
文字列の表示言語を指定する。図38の文字列から指定する。
x:オブジェクト種類:(Number)
表示位置のx座標を指定する。1~20から指定する。
y:オブジェクト種類:(Number)
表示位置のy座標を指定する。1か2を指定する。
[戻り値]
Displayオブジェクト
マーキー表示を命令バッファーに追加する。マーキー表示は、表示ウィンドウのスクロールモード設定とは無関係に、1行の水平スクロールモードで表示される。
[構文]
addMarquee(data,format,unitWait,repeatWait,repeatCount,lang);
[パラメーター]
data:オブジェクト種類:(String)
表示文字列を指定する。
format:オブジェクト種類:(String)
文字列の表示方法を指定する。図39から選択する。
unitWait:オブジェクト種類:(Number)
1文字ごとの表示間隔(ms)を指定する。指定可能な値は1~2000である。
repeatWait:オブジェクト種類:(Number)
文字列表示の繰り返し間隔(ms)を指定する。指定可能な値は1~2000である。
repeatCount:オブジェクト種類:(Number)
文字列表示の繰り返し回数を指定する。指定可能な値は0~127である。0を指定すると無制限に繰り返す。
lang:オブジェクト種類:(String)
文字列の表示言語を指定する。図40の文字列から指定する。
[戻り値]
Displayオブジェクト
画面の点滅設定を命令バッファーに追加する。
[構文]
setBlink(interval);
[パラメーター]
interval:オブジェクト種類:(Number)
点滅時間(ms)を指定する。0~12700から指定する。設定値は50ms単位に丸められる。0を指定すると点灯状態となる。
[戻り値]
Displayオブジェクト
ディスプレイの輝度設定を命令バッファーに追加する。
[構文]
setBrightness(brightness);
[パラメーター]
brightness:オブジェクト種類:(Number)
ディスプレイの輝度値を指定する。図41のパラメーターから選択される。
[戻り値]
Displayオブジェクト
時刻の表示を命令バッファーに追加する。
時刻表示を行うと、表示中の文字列はすべて消去される。また、時刻表示中に他の命令を送信すると、時刻表示を終了する。
[構文]
showClock();
[戻り値]
Displayオブジェクト
コマンドを命令バッファーに追加する。
[構文]
addCommand(data);
[パラメーター]
data:オブジェクト種類:(String)
ESC/POSコマンドを文字列で指定する。コマンドの文字列は、”\x”で区切って指定される。例:“\x1B\x40”
[戻り値]
Displayオブジェクト
命令バッファー内の命令を送信する。
[構文]
send();
命令の実行結果を受け取る。
[構文]
Function(response);
[コールバック関数のパラメーター]
response:オブジェクト種類:(Object)
命令の実行結果を受け取る。図42Aに示すプロパティが含まれる。successの値は図42Bに示す通りであり、codeの値は図42Cに示す。
「setPrefixメソッド」
キーボード入力を文字列としてまとめて受け取る際、文字列の始まりと判断するためのキーコードを設定する。
[構文]
setPrefix(data);
[パラメーター]
data:オブジェクト種類:(Array)
キーコードの配列を指定する。キーコードは、例えば図9に示すキーコード一覧の通りである。
キー押下イベントを受け取る。
[構文]
Function(data);
[コールバック関数のパラメーター]
data:オブジェクト種類:(Object)
図43に示すプロパティを受け取る。
setPrefixで指定した文字群のいずれかで始まり、Enterキーを検出するまでの間に検出した文字入力を文字列として受け取る。
[構文]
Function(data);
[コールバック関数のパラメーター]
data:オブジェクト種類:(Object)
図44に示すプロパティを受け取る。
「addTextAlignメソッド」
位置揃え設定を命令バッファーに追加する。
本APIの設定は、バーコード/2次元シンボルにも適用される。
印字モードがページモードで倒立印字を設定する場合、本APIではなく、後述する「addPageDirectionメソッド」で設定される。
[構文]
addTextAlign(align);
[パラメーター]
align(必須パラメーター,オブジェクト種類:String)
位置揃えを指定する。
定数を図45Aに、戻り値を図45Bに、例外を図45Cに示す。
改行量設定を命令バッファーに追加する。
[構文]
addTextLineSpace(linespc);
[パラメーター]
linespc:(必須パラメーター,オブジェクト種類:Number)
改行量(ドット単位)を指定する。0~255の整数値で指定する。
戻り値を図46Aに、例外を図46Bに示す。
倒立印字設定を命令バッファーに追加する。
本APIの設定は、バーコード/2次元シンボルにも適用される。
印字モードがページモードで倒立印字を設定する場合、本APIではなく、後述する「addPageDirectionメソッド」で設定される。
[構文]
addTextRotate(rotate);
[パラメーター]
rotate(必須パラメーター,オブジェクト種類:Boolean)
倒立印字の有無を指定する。
設定値を図47Aに示す、戻り値を図47Bに、例外を図47Cに示す。
文字の印字を命令バッファーに追加する。
テキストの印字後、テキスト以外を印字する場合、改行または紙送りを実行される。
ページモードでは、文字のベースラインドット(141ページ「付録」)を基準として、現在の印字位置に文字を展開する。
[構文]
addText(data);
[パラメーター]
data(必須パラメーター,オブジェクト種類:String)
印字する文字列を指定する。水平タブ/改行は、図48Aのエスケープシーケンスを使用する。
戻り値を図48Bに示し、例外を図48Cに示す。
言語設定を命令バッファーに追加する。
[構文]
addTextLang(lang);
[パラメーター]
lang:(必須パラメーター,オブジェクト種類:String)
対象言語を図49Aのようにう指定する。印字できる文字コードはプリンターの仕様による。
戻り値を図49Bに示し、例外を図49Cに示す。
文字のフォント設定を命令バッファーに追加する。
[構文]
addTextFont(font);
[パラメーター]
font:(必須パラメーター,オブジェクト種類:String)
図50Aに示すように、フォントを指定する。
戻り値を図50Bに示し、例外を図50Cに示す。
スムージング設定を命令バッファーに追加する。
[構文]
addTextSmooth(smooth);
[パラメーター]
smooth:(必須パラメーター,オブジェクト種類:Boolean)
スムージングの有無を指定する。
戻り値を図51Bに示し、例外を図51Cに示す。
文字の倍角設定を命令バッファーに追加する。
[構文]
addTextDouble(dw,dh);
[パラメーター]
dw:(省略可能パラメーター,オブジェクト種類:Boolean)
文字の横倍角を指定する。設定値を図52Aに示す。
dh(省略可能パラメーター,オブジェクト種類:Boolean)文字の縦倍角を指定する。
dwとdhのパラメーターの両方をture/1にした場合、4倍角の文字が印字される。設定値を図52Bに示す。
戻り値を図52Cに、例外を図52Dに示す。
文字の倍率設定を命令バッファーに追加する。
[構文]
addTextSize(width,height);
[パラメーター]
width:(省略可能パラメーター,オブジェクト種類:Number)
文字の横倍率を指定する。設定値を図53Aに示す。
height(省略可能パラメーター,オブジェクト種類:Number)
文字の縦倍率を指定する。設定値を図53Bに示す。
戻り値を図53Cに、例外を図53Dに示す。
文字の装飾設定を命令バッファーに追加する。
[構文]
addTextStyle(reverse,ul,em,color);
[パラメーター]
reverse:(省略可能パラメーター,オブジェクト種類:Boolean)
白黒反転文字を指定する。設定値を図54Aに示す。
ul(省略可能パラメーター,オブジェクト種類:Boolean)
アンダーラインを指定する。設定値を図54Bに示す。
em(省略可能パラメーター,オブジェクト種類:Boolean)
太字を指定する。設定値を図54Cに示す。
color(省略可能パラメーター,オブジェクト種類:String)
色を指定する。設定値を図53Dに示す。
戻り値を図54Eに、例外を図54Fに示す。
横方向の印字開始位置を命令バッファーに追加する。
[構文]
addTextPosition(x);
[パラメーター]
x:(必須パラメーター,オブジェクト種類:Number)
横方向の印字開始位置(ドット単位)を指定する。0~65535の整数値で指定する。
戻り値を図55Aに、例外を図55Bに示す。
ドット単位の紙送りを命令バッファーに追加する。
[構文]
addFeedUnit(unit);
[パラメーター]
unit:(必須パラメーター,オブジェクト種類:Number)
紙送り量(ドット単位)を指定する。0~255の整数値で指定する。
戻り値を図56Aに、例外を図56Bに示す。
行単位の紙送りを命令バッファーに追加する。
[構文]
addFeedLine(line);
[パラメーター]
line:(必須パラメーター,オブジェクト種類:Number)
紙送り量(行単位)を指定する。0~255の整数値で指定する。
戻り値を図57Aに、例外を図57Bに示す。
ラスターイメージの印字を命令バッファーに追加する。
HTML5Canvasの描画したグラフィックを印字する。
HTML5CanvasのRGBAフルカラー画像のうち、指定範囲をhalftoneプロパティとbrightnessプロパティの設定にしたがって、ラスターイメージデータに変換する。画像の1ピクセルがプリンターの1ドットに相当する。透明色が含まれている場合、画像の背景を白とみなす。
ラスターイメージを高速に印字する場合、上述のaddTextAlignメソッドをALIGN_LEFTに指定し、本APIのwidthパラメーターの値を、プリンターの用紙幅を超えない8の倍数に指定する。
ページモードでは、ラスターイメージの左下ドットを基準として、現在の印字位置にラスターイメージを展開する。印字位置は移動しない。
異なるドメインからダウンロードした画像が含まれたHTML5Canvasは印刷できない。JavaScriptの同一ポリシーにより、セキュリティーエラーが発生する。
[構文]
addImage(context,x,y,width,height,color,mode);
[パラメーター]
context:(必須パラメーター,オブジェクト種類:Context)
HTML5Canvasの2Dコンテキストを指定する。
x:(必須パラメーター,オブジェクト種類:Number)
印字範囲の横方向の開始位置を指定する。0~65535の整数値で指定する。
y:(必須パラメーター,オブジェクト種類:Number)
印字範囲の縦方向の開始位置を指定する。0~65535の整数値で指定する。
width:(必須パラメーター,オブジェクト種類:Number)
印字範囲の幅を指定する。0~65535の整数値で指定する。
height:(必須パラメーター,オブジェクト種類:Number)
印字範囲の高さを指定する。0~65535の整数値で指定する。
color:(省略可能パラメーター,オブジェクト種類:String)
色を指定する。設定値を図58Aに示す。
mode(省略可能パラメーター,オブジェクト種類:String)
カラーモードを指定する。設定値を図58Bに示す。
戻り値を図58Cに、例外を図58Dに示す。
NV(不揮発性メモリー)に記憶されたロゴの印字を命令バッファーに追加する。
プリンターのNVメモリーに登録されているロゴを印字する。
ロゴは、機種専用ユーティリティーやロゴ登録ユーティリティー(TMFLogo)を使って、あらかじめプリンターに登録される。
ページモードでは、ロゴの左下ドットを基準として、現在の印字位置にロゴを展開する。
[構文]
addLogo(key1,key2);
[パラメーター]
key1(必須パラメーター,オブジェクト種類:Number)
NVロゴのキーコード1を指定する。0~255の整数値で指定する。
key2(必須パラメーター,オブジェクト種類:Number)
NVロゴのキーコード2を指定する。0~255の整数値で指定する。
戻り値を図59Aに、例外を図59Bに示す。
バーコード印字を命令バッファーに追加する。
ページモードでは、バーコードの左下ドット(HRIを除く)を基準として、現在の印字位置にバーコードを展開する。
[構文]
addBarcode(data,type,hri,font,width,height);
[パラメーター]
data(必須パラメーター,オブジェクト種類:String)
バーコードデータを文字列で指定する。バーコードタイプを図60A、図60B、図60Cに示す。
文字列で表現できないバイナリーデータを指定する場合、図60Dのエスケープシーケンスで指定する。
type(必須パラメーター,オブジェクト種類:String)
バーコードの種類を指定する。定数を図60Eに示す。
hri(省略可能パラメーター,オブジェクト種類:String)
HRIの位置を指定する。定数を図60Fに示す。
font(省略可能パラメーター,オブジェクト種類:String)
HRIフォントを指定する。定数を図60Gに示す。
width(省略可能パラメーター,オブジェクト種類:Number)
1モジュールの幅をドット単位で指定する。2~6の整数値で指定する。
height(省略可能パラメーター,オブジェクト種類:Number)
バーコードの高さをドット単位で指定する。1~255の整数値で指定する。
戻り値を図60Hに、例外を図60Iに示す。
2次元シンボル印字を命令バッファーに追加する。
ページモードでは、2次元シンボルの左上ドットを基準として、現在の印字位置にバーコードを展開する。
[構文]
addSymbol(data,type,level,width,height,size);
[パラメーター]
data(必須パラメーター,オブジェクト種類:String)
2次元シンボルデータを文字列で指定する。2次元コードタイプを図61A、図61Bに示す。
文字列で表現できないバイナリーデータを指定する場合、図61Cのエスケープシーケンスで指定する。
type(必須パラメーター,オブジェクト種類:String)
2次元シンボルの種類を指定する。定数を図61Dに示す。
level(省略可能パラメーター,オブジェクト種類:String)
エラー訂正レベルを指定する。定数を図61Eに示す。
レベルは2次元シンボルの種類に合わせて選択される。MaxiCode,2次元GS1DataBarの場合、LEVEL_DEFAULTを選択される。
width(省略可能パラメーター,オブジェクト種類:Number)
モジュールの幅を指定する。0~255の整数値で指定する。MaxiCodeは無視される。
height(省略可能パラメーター,オブジェクト種類:Number)
モジュールの高さを指定する。0~255の整数値で指定する。QRCodeとMaxiCodeは無視される。
size(省略可能パラメーター,オブジェクト種類:Number)
2次元シンボルの最大サイズを指定する。0~65535の整数値で指定する。QRCodeとMaxiCodeは無視される。
戻り値を図61Fに、例外を図61Gに示す。
横罫線印字を命令バッファーに追加する。横罫線の描画をする。ページモードでは使用できない。
[構文]
addHLine(x1,x2,style);
[パラメーター]
x1:(必須パラメーター,オブジェクト種類:Number)
横罫線の描画開始位置(ドット単位)を指定する。0~65535の整数値で指定する。
x2:(必須パラメーター,オブジェクト種類:Number)
横罫線の描画終了位置(ドット単位)を指定する。0~65535の整数値で指定する。
style:(省略可能パラメーター,オブジェクト種類:String)
罫線の種類を指定する。定数を図62Aに示す。
戻り値を図62Bに、例外を図62Cに示す。
縦罫線の開始を命令バッファーに追加する。縦罫線の描画を開始する。ページモードでは使用できない。縦罫線は、後述するaddVLineEndメソッドで終了を指定するまで描画する。本APIはaddVLineEndと一緒に使用される。
[構文]
addVLineBegin(x,style);
[パラメーター]
x(必須パラメーター,オブジェクト種類:Number)
縦罫線の描画開始位置(ドット単位)を指定する。0~65535の整数値で指定する。
style(省略可能パラメーター,オブジェクト種類:String)
罫線の種類を指定する。定数を図63Aに示す。
戻り値を図63Bに、例外を図63Cに示す。
縦罫線の終了を命令バッファーに追加する。縦罫線の描画を終了する。ページモードでは使用できない。本APIは前述のaddVLineBeginメソッドと一緒に使用される。
[構文]
addVLineEnd(x,style);
[パラメーター]
x(必須パラメーター,オブジェクト種類:Number)
縦罫線の描画を終了する位置(ドット単位)を指定する。0~65535の整数値で指定する。
style(省略可能パラメーター,オブジェクト種類:String)
描画を終了する罫線の種類を指定する。定数を図64Aに示す。
戻り値を図64Bに、例外を図64Cに示す。
ページモード開始を命令バッファーに追加する。ページモードの処理が開始する。
縦罫線は、次に説明するPageEndメソッドで終了を指定するまでページモードで処理する。本APIはPageEndメソッドと一緒に使用される。
[構文]
addPageBegin();
戻り値を図65に示す。
ページモード終了を命令バッファーに追加する。ページモードの処理が終了する。本APIは前述のaddPageBeginメソッドと一緒に使用される。
[構文]
addPageEnd();
戻り値を図66に示す。
ページモード印字領域を命令バッファーに追加する。
ページモード印字領域(座標)を指定する。本APIに続けて、addTextメソッドなど印刷データのAPIを指定する。
印字内容に合わせて印字領域を指定される。印字データが印字領域をはみ出た場合、印字データが途中で切れた印字結果になる。本APIは上述のaddPageBeginメソッドと上述のPageEndメソッドに挟んで使用される。
[構文]
addPageArea(x,y,width,height);
[パラメーター]
x(必須パラメーター,オブジェクト種類:Number)
横方向の原点(ドット単位)を指定する。0~65535の整数値で指定する。0はプリンターの印字可能領域の左端になる。
y(必須パラメーター,オブジェクト種類:Number)
縦方向の原点(ドット単位)を指定する。0~65535の整数値で指定する。0は紙送りをしていない位置である。
width(必須パラメーター,オブジェクト種類:Number)
印字領域の幅(ドット単位)を指定する。0~65535の整数値で指定する。
height(必須パラメーター,オブジェクト種類:Number)
印字領域の高さ(ドット単位)を指定する。0~65535の整数値で指定する。
印字領域の幅と高さは、印字方向の設定に合わせて確定される。印字データが切れてしまう場合がある。
戻り値を図67Aに、例外を図67Bに示す。
ページモード印字方向設定を命令バッファーに追加する。ページモードの印字方向を指定する。回転させない場合は、省略できる。本APIは上述のaddPageBeginメソッドとPageEndメソッドに挟んで使用される。
[構文]
addPageDirection(dir);
[パラメーター]
dir(必須パラメーター,オブジェクト種類:String)
ページモードの印字方向を指定する。定数を図68Aに示す。
戻り値を図68Bに、例外を図68Cに示す。
ページモードの印字位置設定領域を命令バッファーに追加する。
addPageAreaメソッドで指定したエリア内での、印字開始位置(座標)を指定する。本APIは上述のaddPageBeginメソッドとPageEndメソッドに挟んで使用される。
[構文]
addPagePosition(x,y);
[パラメーター]
x:(必須パラメーター,オブジェクト種類:Number)
横方向の印字位置(ドット単位)を指定する。0~65535の整数値で指定する。
y:(必須パラメーター,オブジェクト種類:Number)
縦方向の印字位置(ドット単位)を指定する。0~65535の整数値で指定する。
印字開始位置(座標)は、印字内容に合わせて指定される。以下を参考にされる。
・文字列を印字する場合
最初の文字のベースライン左端を指定する。
標準の大きさで、左詰めで印字する場合は省略可能である。高さが2倍の文字を印刷する場合は、yを42以上に指定する。
・バーコードを印字する場合
シンボルの左下を指定する。yにバーコードの高さを指定される。
・グラフィック/ロゴを印字する場合
グラフィックデータの左下を指定する。yにグラフィックデータの高さを指定される。
・2次元シンボルを印字する場合
シンボルの左上を指定する。左上から印字する場合は、省略可能である。
戻り値を図69Aに、例外を図69Bに示す。
ページモードの直線描画を命令バッファーに追加する。ページモードで直線を描画する。斜線は描画できない。本APIは上述のaddPageBeginメソッドとPageEndメソッドに挟んで使用される。
[構文]
addPageLine(x1,y1,x2,y2,style);
[パラメーター]
x1(必須パラメーター,オブジェクト種類:Number)
横方向の描画開始位置(ドット単位)を指定する。0~65535の整数値で指定する。
y1(必須パラメーター,オブジェクト種類:Number)
縦方向の描画開始位置(ドット単位)を指定する。0~65535の整数値で指定する。
x2(必須パラメーター,オブジェクト種類:Number)
横方向の描画終了位置(ドット単位)を指定する。0~65535の整数値で指定する。
y2(必須パラメーター,オブジェクト種類:Number)
縦方向の描画終了位置(ドット単位)を指定する。0~65535の整数値で指定する。
style(省略可能パラメーター,オブジェクト種類:String)
罫線の種類を指定する。定数を図70Aに示す。
戻り値を図70Bに、例外を図70Cに示す。
ページモードの四角形描画を命令バッファーに追加する。ページモードで四角形を描画する。本APIは上述のaddPageBeginメソッドとPageEndメソッドに挟んで使用される。
[構文]
addPageRectangle(x1,y1,x2,y2,style);
[パラメーター]
x1(必須パラメーター,オブジェクト種類:Number)
横方向の描画開始位置(ドット単位)を指定する。0~65535の整数値で指定する。
y1(必須パラメーター,オブジェクト種類:Number)
縦方向の描画開始位置(ドット単位)を指定する。0~65535の整数値で指定する。
x2(必須パラメーター,オブジェクト種類:Number)
横方向の描画終了位置(ドット単位)を指定する。0~65535の整数値で指定する。
y2(必須パラメーター,オブジェクト種類:Number)
縦方向の描画終了位置(ドット単位)を指定する。0~65535の整数値で指定する。
style(省略可能パラメーター,オブジェクト種類:String)
線の種類を指定する。定数を図71Aに示す。
戻り値を図71Bに、例外を図71Cに示す。
用紙カットを命令バッファーに追加する。用紙カットを設定する。ページモードでは使用できない。
[構文]
addCut(type);
[パラメーター]
type(省略可能パラメーター,オブジェクト種類:String)
用紙カット方法を指定する。設定値を図72Aに示す。
戻り値を図72Bに、例外を図72Cに示す。
ドロアーキックを命令バッファーに追加する。ドロアーキックを設定する。ページモードでは使用できない。ドロアーは、ブザーと一緒に使用できない。
[構文]
addPulse(drawer,time);
[パラメーター]
drawer(省略可能パラメーター,オブジェクト種類:String)
ドロアーキックコネクターを指定する。設定値を図73Aに示す。
time(省略可能パラメーター,オブジェクト種類:String)
ドロアーキック信号のオン時間を指定する。設定値を図73Bに示す。
戻り値を図73Cに、例外を図73Dに示す。
ブザーの鳴動を命令バッファーに追加する。ブザーを設定する。
ページモードでは使用できない。
ブザーの機能は、ドロアーと一緒に使用できない。
本APIはプリンターにブザーが付いてなければ使用できない。
[構文]
addSound(pattern,repeat);
[パラメーター]
pattern:(省略可能パラメーター,オブジェクト種類:String)
ブザーの音色を指定する。設定値を図74Aに示す。
repeat(省略可能パラメーター,オブジェクト種類:String)
繰り返し回数を指定する。設定値を図74Bに示す。
repeatに"0"を指定後、ブザーを停止したい場合、本APIを再度実行し、patternにPATTERN_NONEを指定する。
戻り値を図74Cに示し、例外を図74Dに示す。
コマンドを命令バッファーに追加する。ESC/POSコマンドを送信する。
addCommandメソッドで、コマンドの命令バッファーを送信する場合、コマンドデータの文字列は、”\x”で区切って指定される。
例:“\x1B\x40”
[構文]
addCommand(data);
[パラメーター]
data(省略可能パラメーター,オブジェクト種類:String)
ESC/POSコマンドを文字列で指定する。
戻り値を図75Aに示し、例外を図75Bに示す。
命令バッファーを送信する。
[構文]
send();
HTML5Canvasで描画したプリントイメージを印刷する。
HTML5CanvasのRGBAフルカラー画像のうち、指定範囲をhalftoneプロパティとbrightnessプロパティの設定にしたがって、ラスターイメージデータに変換する。画像の1ピクセルがプリンターの1ドットに相当する。透明色が含まれている場合、画像の背景を白とみなす。
異なるドメインからダウンロードした画像が含まれたHTML5Canvasは印刷できない。JavaScriptの同一出身ポリシーにより、セキュリティーエラーが発生する。
[構文]
print(canvas,cut,mode);
[パラメーター]
canvas(必須パラメーター,オブジェクト種類:canvas)
印刷するHTML5Canvasオブジェクトを指定する。
cut(省略可能パラメーター,オブジェクト種類:Boolean)
用紙カットの有無を設定する。設定値を図76Aに示す。
mode(省略可能パラメーター,オブジェクト種類:String)
カラーモードを指定する。設定値を図76Bに示す。
例害を図76Cに示す。
ステータスイベントを有効化する。プリンターのステータスをイベントで通知する。intervalプロパティで指定した間隔でステータスを更新する。
[構文]
startMonitor();
ステータスイベントを無効化する。
[構文]
stopMonitor();
モノクロ(2階調)印刷で適用するハーフトーン処理方法を指定する。初期値はHALFTONE_DITHERである。
オブジェクト種類:String
設定値を図77に示す。
明るさ補正値をガンマー値0.1~10.0の範囲で指定する。初期値は1.0である。
オブジェクト種類:Number
上述したsendメソッドで送信するメッセージのタイムアウト(ms)を指定する。初期値は10,000である。
オブジェクト種類:Number
ステータスを更新する間隔を指定する。
オブジェクト種類:Number
[説明]
ステータスを更新する間隔をミリ秒単位で指定する。
初期値:3000(3秒)
最小値:1000(1秒以上)
不正な値を指定した場合、3000とみなされる。
コールバック関数を登録して、応答ドキュメント受信イベントを取得する。
[構文]
Function(response)
[コールバック関数のパラメーター]
パラメーター:response(後述する「responseオブジェクトのプロパティ」を参照)
名称:応答ドキュメント
オブジェクト種類:Object
[responseオブジェクトのプロパティ]
図78Aにプロパティの一覧を示す。
[successの値]
図78Bに、successの値の一覧を示す。
[codeの値]
図78Cに、codeの値の一覧を示す。
[statusの値]
図78Dに、statusの値の一覧を示す。
コールバック関数を登録して、通信エラーイベントを取得する。
[構文]
Function(error)
[コールバック関数のパラメーター]
パラメーター:error(後述する「errorオブジェクトのプロパティ」を参照)
名称:通信エラー情報
オブジェクト種類:Object
[errorオブジェクトのプロパティ]
errorオブジェクトのプロパティの一覧を図79に示す。
コールバック関数を登録して、ステータス変更イベントを取得する。
[構文]
Function(status)
[コールバック関数のパラメーター]
パラメーター:status
名称:ステータス
オブジェクト種類:Number
コールバック関数を登録して、オンラインイベントを取得する。
オブジェクト種類:Function()
コールバック関数を登録して、オフラインイベントを取得する。
オブジェクト種類:Function()
コールバック関数を登録して、無応答イベントを取得する。
オブジェクト種類:Function()
コールバック関数を登録して、カバークローズイベントを取得する。
オブジェクト種類:Function()
コールバック関数を登録して、カバーオープンイベントを取得する。
オブジェクト種類:Function()
コールバック関数を登録して、用紙ありイベントを取得する。
オブジェクト種類:Function()
コールバック関数を登録して、用紙ニアエンドイベントを取得する。
オブジェクト種類:Function()
コールバック関数を登録して、用紙エンドイベントを取得する。
オブジェクト種類:Function()
コールバック関数を登録して、ドロアークローズイベントを取得する。
オブジェクト種類:Function()
コールバック関数を登録して、ドロアーオープンイベントを取得する。
オブジェクト種類:Function()
「ondataイベント」
バーコード情報の読み取りイベントを受け取る。
[構文]
Function(data);
[コールバック関数のパラメーター]
data
オブジェクト種類:(Object)
図80に示すプロパティを受け取る。
API仕様はデバイス制御スクリプトの作成により、カスタマイズすることができる。
「sendCommand」
任意のコマンドを送信する。
[構文]
sendCommand(data);
[パラメーター]
data
オブジェクト種類:(String)
コマンドを16進数文字列で指定する。
コマンドの文字列は、”\x”で区切って指定される。
<例>
0x020x1F0x03を送信する場合は、文字列”\x02\x1F\x03”を指定する。
デバイスからの応答イベントを受け取る。
[構文]
Function(data);
[コールバック関数のパラメーター]
data
オブジェクト種類:(String)
応答データの16進数文字列を受け取る。
受け取る16進数文字列は、”\x”で区切られている。例:“\x1B\x40”
まず、プログラミングについて説明する。
図81は、デバイス制御スクリプトの使用に関する説明図である。
本発明のデバイス制御機能で提供するデバイス制御スクリプト502を使うことにより、デバイスのデータ処理のカスタマイズをしたり、新たなデバイスをウェブアプリケーションから使用したりすることができる。図81に示すように、デバイス制御スクリプト502は、デバイスコネクション503と、クライアントコネクション504とを有する。この図81ではプリンター5のデバイスを総称してデバイス20として示す。
これらのデバイスコネクション503及びクライアントコネクション504を使うことで、図81に示したように、デバイス制御スクリプト502はウェブアプリケーション32およびデバイス20と通信することができる。デバイスコネクション503は、デバイス20とのデータ送受信を行うオブジェクトである。クライアントコネクション504は、ウェブブラウザー31側のデバイスオブジェクトにデータ送信を行うオブジェクトであり、デバイスサービスインターフェース501にアクセスする。
デバイス制御スクリプト用APIを使って以下の機能を使用できる。
・ブラウザー側のデバイスオブジェクトの任意のイベントを呼び出し可能である。
・デバイスにデータを送信可能である。
・デバイスから発生したデータを受信可能である。
デバイス制御スクリプトは以下の条件を満たすようにコーディングされる。
・デバイス制御に必要なコードは、1つのファイルにまとめて記述される。
(TMNetWebConfigを使ってデバイスの設定をする際、1つのファイルしか登録できないこととする。)
・ファイル名の最初のドット"."までの名称と、コンストラクター名称を同じにする。
(例)ファイル名:Keyboard_Generic.ver1.0.js→コンストラクターの名称:Keyboard_Generic
・コンストラクターの外部参照のために、exports宣言する。
(例)exports.Keyboard_Generic=Keyboard_Generic;
・デバイス制御スクリプトには、図83及び図84に示すプロパティを持たせる。コンストラクターで適切な名称を設定される。
DEVICE_TYPEプロパティ(オブジェクト種類:String)
設定値の一覧を図83に示す。
DEVICE_GROUPプロパティ(オブジェクト種類:String
設定値の一覧を図84に示す。
・デバイスで発生したデータを受け取るためonDeviceDataメソッドを用意する。詳細は、後述する「デバイス制御スクリプト名オブジェクト」で説明する。
・ウェブブラウザー31側で動作するデバイスオブジェクトのメソッドに対応するメソッドを用意する。詳細は、後述する「任意イベント」で説明する。
デバイス制御スクリプト502の構成例を、図85に示す。
デバイス制御スクリプトAPIには、次のオブジェクトが用意されている。
・クライアント接続(ClientConnection)オブジェクト(図86にAPIの一覧を示す。)
・デバイス接続(DeviceConnection)オブジェクト(図87にAPIの一覧を示す。)
・デバイス制御スクリプト名オブジェクト(図88にAPIの一覧を示す。)
このオブジェクトは、デバイス制御スクリプト502のコンストラクターの第1パラメーターに渡されるオブジェクトである。
API「send」は、ブラウザーで動作するデバイスオブジェクトにデータを送信する。
[構文]
send(event,data);
[パラメーター]
・event:オブジェクト種類:(String)
デバイスオブジェクトのイベント名を設定する。
・data:オブジェクト種類:(Object)
デバイスオブジェクトのイベントに渡すデータを指定する。
例を図89に示す。この例では、デバイスオブジェクトのonkeypressイベントが呼び出され、onkeypressイベントのdataパラメーターを使い、data.keycodeから49、data.asciiから'1'を取得する。
このオブジェクトは、デバイス制御スクリプト502のコンストラクターの第2パラメーターに渡されるオブジェクトである。
API「send」は、シリアル通信デバイスにデータを送信する。
なお、HIDドライバーで動作可能な入力デバイスの場合には、送信されない。
[構文]
send(data);
[パラメーター]
data:オブジェクト種類:(Buffer)
デバイスに送信するデータを指定する。
「onDeviceDataイベント」(HIDドライバーで動作可能な入力デバイス)
このイベントは、キー入力デバイスから検出されたデータを受信するイベントである。
キー入力デバイス用のデバイス制御スクリプト502の場合、この形式でイベントが記述される。
[構文]
onDeviceData(event,keycode,ascii);
[パラメーター]
event:オブジェクト種類:(Number)
キー操作の方向を受け取る。値の一覧を図90に示す。
keycode:オブジェクト種類:(Number)
キーコードを受け取る。キーコードの例は図9のキーコード一覧に示した。
ascii:オブジェクト種類:(String)
操作されたキーに対応する文字を受け取る。
キーコードに対応する文字がない場合(F1キーなど)、undefinedになる。
このイベントはシリアル通信デバイスからデータを受信するイベントである。
シリアル通信用のデバイス制御スクリプト502の場合、この形式でイベントが記述される。
[構文]
onDeviceData(data);
[パラメーター]
data:オブジェクト種類:(Buffer)
シリアル通信デバイスから受信したデータを受け取る。
ブラウザーで動作するデバイスオブジェクトのAPI実行結果を受信するイベントである。
[構文]
callEventで指定した名称(data);
[パラメーター]
data:オブジェクト種類:(Object)
デバイスオブジェクトのcallEventでパラメーター指定したオブジェクトを受け取る。
以下に説明するサンプルプログラムは、POSシステムのような使い方をすることが可能である。また、デバイス毎のデバイスAPI33のサンプルコードを作成できる。
図91には、POS端末のサンプルの一例を示す。図92には、プリンターのサンプルプログラムの一例を示す。
サンプルプログラムを動作させるのに必要な動作環境は、次の通りである。
(1)必要なデバイス(全てのデバイスを準備しなくても、サンプルプログラムを使用する事は可能である)
・プリンター5
・カスタマーディスプレイ8
・POSキーボード
・バーコードスキャナー
(2)プリンター5の操作に必要なもの
・ディスプレイ
・キーボード
・マウス
(3)その他
・LANケーブル
・サンプルプログラム
なお、TMNet TMNetWebConfig使用中に、“Windowsセキュリティ”画面が表示された場合、ユーザー名とパスワードを入力する。
1.LANケーブルの接続
プリンター5にLANケーブルを接続する。
2.サンプルプログラムの登録
サンプルプログラム(device_API_J_Sample.zip)をプリンター5に登録する。
3.デバイスの接続
使用するデバイスを、プリンター5に接続する。
4.デバイスの設定
TMNet TMNetWebConfigを使って、設定する。
図94は、サンプルプログラムを登録する画面である。サンプルプログラム(device_API_UM_J_Sample.zip)を、TMNet TMNetWebConfigを使ってプリンター5に登録する。
以下の手順で登録する。
1.プリンター5の電源をオンにする。
2.デスクトップにあるショートカットから、TMNet TMNetWebConfigを起動する。
図94中に[2]で示す[Webサービス設定]-[Webコンテンツ]-[更新設定]を選択する。
3.図94の右側のフレームに示すように、“Webコンテンツの更新設定”画面が表示される。図94中に[3]で示す[参照]ボタンをクリックし、サンプルプログラムを設定する。
4.次に図94中に[4]で示す[アップロード]ボタンをクリックし、サンプルプログラムをプリンター5に登録する。
ここでは、TMNet TMNetWebConfigを使って、以下のデバイスを設定する。
・カスタマーディスプレイ
・POSキーボード
・バーコードスキャナー
図95は、カスタマーディスプレイを設定する画面を示す。
以下の手順で登録する。
1.デスクトップにあるショートカットから、TMNet TMNetWebConfigを起動する。
図95に[1]で示す[Webサービス設定]-[デバイス管理]-[ディスプレイ]を選択する。
2.図95の“カスタマーディスプレイの設定”画面が表示される。図95に[2]で示す[使用する]を選択し、[設定]ボタンをクリックする。ここで、設定値を変更する必要はない。
図96は、POSキーボード/バーコードスキャナーを設定する画面を示す。
以下の手順で登録する。
1.POSキーボード/MSR/バーコードスキャナーが、プリンター5に接続されているか確認する。
2.デスクトップにあるショートカットから、TMNet TMNetWebConfigを起動する。
図96の[2]に示す[Webサービス設定]-[デバイス管理]-[キー入力デバイス] を選択する。
3.図96の“キー入力デバイス”画面が表示される。図96の[3]の箇所にデバイスID/デバイス名/制御スクリプトを設定し、[登録]ボタンをクリックする。設定の例を図97に示す。登録は、1デバイスずつ登録する。
4.登録したデバイスが、図96の[4]の[登録済みキー入力デバイス]に表示される。
次のようにサンプルプログラム(device_API_UM_J_Sample.zip)を起動する。
1.Webブラウザーを起動し、アドレスバーにプリンター5のIPアドレスを入力する。プリンター5のIPアドレスの初期値は、"192.168.192.168"である。
2.サンプルプログラムが表示される。図98に表示例を示す。サンプルプログラムが表示されない場合、LANケーブルが接続されているか確認する。
サンプルプログラムには、以下の項目がある。各項目を選択すると対応する画面に移動する。各サンプルプログラムの詳細は後述する。
・POS Terminal Sample
・Customer Display Sample
・Keyboard Sample
・Printer Sample
・Barcode Scanner Sample
このサンプルプログラムにより、カスタマーディスプレイを動作させたり、カスタマーディスプレイのサンプルコードを生成したりすることが可能になる。
Customer Display Sampleは以下の手順で使用される。
1.サンプルプログラムを起動する。図98で[Customer Display Sample]を選択する。
2.図99Aの"Customer Display Sample"画面が表示される。この画面の[接続]ボタンをクリックする。
接続に成功すると、[Console]に以下のメッセージが表示される。また、カスタマーディスプレイの表示が変わる。
なお、[Device Setting]の設定を変更する必要はない。ただし、IPアドレスなどを変更している場合、変更した値に合わせて[Device Setting]の設定を変更する。
3.図99Bの画面で動作させたい機能を設定し、[追加]ボタンをクリックする。
4.図99Cの[Display Objectサンプルコード]に、手順3で追加した機能のソースが表示される。コピーして使用することができる。
5.図99Cの画面の[送信]ボタンをクリックすると、手順3で追加した機能に合わせてディスプレイの表示が変わる。
このサンプルプログラムにより、POSキーボードからの入力を取得することができる。
は以下の手順で使用される。
1.サンプルプログラムを起動する。図98で[Keyboard Sample]を選択する。
2.図100Aの"Keyboard Sample"画面が表示される。[接続]ボタンをクリックする。接続に成功すると、[Console]に以下のメッセージが表示される。
なお、[Device Setting]の設定を変更する必要はない。ただし、IPアドレスなどを変更している場合、変更した値に合わせて[Device Setting]の設定を変更する。
3.文字列の始まりと判断するキーを選択し、[登録]ボタンをクリックする。
この設定には、あらかじめPOSキーボード側の登録が必要である。
例:F1+指定文字列+Enter
4.POSキーボードから入力すると、入力結果が図100Cの[ePOS Device API Keyboard Object]に表示される。入力と結果の例を図100Bに示す。
このサンプルプログラムにより、プリンターを動作させたり、プリンターのサンプルコードを生成したりすることができる。
Printer Sampleは以下の手順で使用される。
1.サンプルプログラムを起動する。図98で[Printer Sample]を選択する。
2.図101Aの"Printer Sample"画面が表示される。[接続]ボタンをクリックする。接続に成功すると、[Console]に以下のメッセージが表示される。
なお、[Device Setting]の設定を変更する必要はない。ただし、IPアドレスなどを変更している場合、変更した値に合わせて[Device Setting]の設定を変更する。
3.動作させたい機能を設定し、図101Bの画面の[追加]ボタンをクリックする。
4.図101Cの画面の[printer-Print APIサンプルコード]に、手順3で追加した機能のソースが表示される。コピーして使用することができる。
5.[送信]ボタンをクリックすると、手順3で追加した機能に合わせてテスト印字される。
このサンプルプログラムにより、バーコードスキャナーからの入力を取得することができる。
Barcode Scanner Sampleは以下の手順で使用される。
1.サンプルプログラムを起動する。図98で[Barcode Scanner Sample]を選択する。
2.図102Aの"Barcode Scanner Sample"画面が表示される。[接続]ボタンをクリックする。接続に成功すると、[Console]に以下のメッセージが表示される。
なお、[Device Setting]の設定を変更する必要はない。ただし、IPアドレスなどを変更している場合、変更した値に合わせて[Device Setting]の設定を変更する。
3.バーコードスキャナーにバーコードを読み込ませると、読み込まれた情報が図102Bの画面の[ePOS Device API Scanner Object]に表示される。
このサンプルプログラムにより、POSシステムのような動作をさせることができる。
POS Terminal Sampleは以下の手順で使用される。
まず、準備が行われる。この準備では、サンプルプログラムを起動し、各デバイスを設定する。
1.サンプルプログラムを起動する。図98の[POS Terminal Sample]を選択する。
2.図103Aの"POS Terminal Sample"画面が表示される。[設定]ボタンをクリックする。
3.図103Bの"設定"画面が表示される。この設定画面でIPアドレス/ポート/デバイスIDを設定できる。設定を変更した場合、[接続]ボタンをクリックしステータスが[OK]になるか確認する。確認後、画面を閉じる。なお、通常、設定を変更する必要はない。
商品の読み込みから、レシート発行までの手順は下記のとおりである。
1.バーコードスキャナーまたは、POSキーボードから商品を入力する。
商品入力後、図104Aの画面で[小計]ボタンをクリックする。
・[商品取消]ボタンをクリックすると、選択中の商品が削除される。また、[商品全取消]ボタンを押すと全ての商品を削除する。
・数量を変更する場合、商品入力後に[数量]ボタンをクリックし、数字を入力する。数量を確定する時は[現計]ボタンをクリックする。
2.図104Bの画面で預かり金額を入力する。金額入力後、[現計]ボタンをクリックする。
3.図104Cの画面に示すように釣り銭が表示され、プリンターからレシートが印刷される。
ここで、デバイス制御システム100に限らず、デバイス制御システム200、300においても同様の構成とすることができる。デバイス制御システム300では、プリンター5がアプリケーションサーバー2(図1)の機能を具備する。
この場合、第2の端末3が、デバイスAPI33が有するデバイスに対応するオブジェクトを呼び出してリクエストを送信した場合に、プリンター5は第2の端末3に対しデバイスの使用中を通知する。
また、デバイス制御システム100において、プリンター5に接続されたデバイスがローカルプリンターまたはネットワークプリンター7であり、プリンター5がリクエストで指定されたデバイスを制御可能な状態に移行した場合に、ローカルプリンターまたはネットワークプリンター7は第2の端末3が送信するリクエストに従ってデバイス制御スクリプト502により制御可能である。
Claims (21)
- デバイスと、
前記デバイスと接続する接続部、及び前記接続部に接続された前記デバイスを制御するデバイス制御部を有するデバイス制御装置と、
前記デバイス制御装置と接続し、ウェブアプリケーションの表示及び前記デバイスを制御するデバイスアプリケーションプログラムインターフェースを実行させるウェブブラウザーを動作させる端末と、
を備えることを特徴とするデバイス制御システム。 - 前記デバイスアプリケーションプログラムインターフェースは、前記デバイスに対応するオブジェクトを有し、
前記ウェブアプリケーションは前記オブジェクトを呼び出し、前記デバイス制御装置にリクエストを送信する請求項1に記載のデバイス制御システム。 - 前記デバイス制御装置は、
前記デバイスを制御するデバイス制御スクリプトを実行し、
前記デバイス制御スクリプトは、前記オブジェクトと接続し、前記端末で送信された前記リクエストを受信して前記接続部に接続された前記デバイスを制御する請求項2に記載のデバイス制御システム。 - 前記デバイス制御スクリプトは、前記デバイスとデータを送受信するデバイス接続オブジェクト、及び前記デバイスAPIにデータを送信するクライアント接続オブジェクトを有する請求項3に記載のデバイス制御システム。
- 前記リクエストは、前記デバイス制御装置に接続された前記デバイスを指定して前記デバイスの制御の開始を指示する制御開始リクエストであり、
前記コマンドは、前記デバイスの制御の開始を指示する制御開始コマンドであり、
前記端末が前記制御開始リクエストを前記デバイス制御装置に送信した時、前記デバイス制御装置は前記制御開始リクエストで指定された前記デバイスに前記制御開始コマンドを送信し、前記デバイスを前記端末で制御可能とする請求項3に記載のデバイス制御システム。 - 前記デバイス制御装置と接続し、第2のウェブアプリケーションの表示及び前記デバイスを制御する第2のデバイスアプリケーションプログラムインターフェースを実行させるウェブブラウザーを動作させる第2の端末を備え、
前記第2のデバイスアプリケーションプログラムインターフェースは、前記デバイスに対応する第2のオブジェクトを有する請求項5に記載のデバイス制御システム。 - 前記端末で前記デバイスの制御が可能な時に、前記デバイス制御装置は前記デバイスを排他ロック状態とし、前記第2のウェブアプリケーションが前記第2のオブジェクトを呼び出して前記デバイス制御装置に第2のリクエストを送信した場合に前記第2のリクエストでの前記デバイスの制御を実行させない請求項6に記載のデバイス制御システム。
- 前記端末で前記デバイスの制御が可能な時に前記第2の端末が前記第2のリクエストを前記デバイス制御装置に送信した場合、前記デバイス制御装置は、前記第2の端末に前記デバイスが使用中であることを示す通知を送信する請求項6に記載のデバイス制御システム。
- 前記デバイスは、印刷を行うプリンターであり、
前記端末で前記プリンターの制御が可能な時に前記第2の端末が前記第2のリクエストを前記デバイス制御装置に送信した場合、前記デバイス制御装置は前記第2のリクエストに基づいて前記デバイス制御スクリプトで前記プリンターを前記第2の端末での制御を可能にする請求項6に記載のデバイス制御システム。 - 前記端末の前記ウェブアプリケーションは前記オブジェクトを呼び出し、前記デバイス制御装置に前記デバイスを指定して前記デバイスの制御終了を指示する制御終了リクエストを送信し、
前記端末が前記制御終了リクエストを前記デバイス制御装置に送信した時、前記デバイス制御装置は前記制御終了リクエストで指定された前記デバイスに前記デバイス制御スクリプトで制御の終了を指示する第2のコマンドを送信し、前記端末での前記デバイスの制御を終了させる請求項6に記載のデバイス制御システム。 - 前記デバイス制御装置が前記端末での前記デバイスの制御を終了させた後に前記第2の端末が前記第2のリクエストを前記デバイス制御装置に送信した場合、前記デバイス制御装置は前記第2のリクエストに基づいて前記デバイス制御スクリプトで前記デバイスを前記第2の端末での制御を可能にする請求項10に記載のデバイス制御システム。
- 前記デバイスアプリケーションプログラムインターフェースは、前記オブジェクトと前記デバイス制御装置のデバイス制御スクリプトとの接続を検出する請求項3に記載のデバイス制御システム。
- 前記オブジェクトは、前記デバイス制御スクリプトに含まれるイベントを呼び出す請求項3に記載のデバイス制御システム。
- 前記デバイスは、表示を行うディスプレイであり、
前記リクエストは、前記ディスプレイを指定して前記ディスプレイの表示を要求する表示リクエストであり、
前記端末が前記表示リクエストを前記デバイス制御装置に送信した時、前記デバイス制御装置は前記表示リクエストで指定された前記ディスプレイに前記デバイス制御スクリプトで表示を要求する表示コマンドを送信する請求項3に記載のデバイス制御システム。 - 前記表示リクエストで要求するディスプレイの表示は、時刻の表示である請求項14に記載のデバイス制御システム。
- 前記リクエストは、前記デバイスを指定して前記デバイスにイメージデータの登録を要求する登録リクエストであり、
前記端末が前記登録リクエストを前記デバイス制御装置に送信した時、前記デバイス制御装置は前記登録リクエストで指定された前記デバイスに前記デバイス制御スクリプトで前記イメージの登録を指示する登録コマンドを送信する請求項3に記載のデバイス制御システム。 - 前記端末は、前記イメージデータを前記デバイス制御装置に送信し、
前記デバイス制御スクリプトは、前記イメージデータを前記ラスターイメージデータに変換する請求項16に記載のデバイス制御システム。 - 前記リクエストは、前記デバイスを指定して、前記デバイスと前記端末との間で送受信されるデータの暗号化の要否の設定を指示する暗号化リクエストである請求項3に記載のデバイス制御システム。
- デバイスと接続する接続部と、
デバイスを制御するデバイス制御スクリプトを実行して、前記接続部に接続された前記デバイスを制御するデバイス制御部と、
印刷を行う印刷部と、
を有することを特徴とする印刷装置。 - ウェブブラウザーを動作させる端末、デバイス、及び前記デバイスと接続するデバイス制御装置を有し、
前記ウェブブラウザーで動作するウェブアプリケーションで前記デバイスに対応するオブジェクトを呼び出し、
前記デバイス制御装置にリクエストを送信し、
前記デバイス制御装置で前記デバイスを制御するデバイス制御スクリプトを実行し、
前記デバイス制御装置で受信した前記リクエストに基づいて前記デバイス制御スクリプトで前記デバイスを制御するコマンドを前記デバイスに送信し、
前記端末での前記デバイスの制御を確立することを特徴とするデバイス制御システムの制御方法。 - 前記リクエストは、前記デバイス制御装置に接続された前記デバイスを指定して前記デバイスの制御の開始を指示する制御開始リクエストであり、
前記端末が前記制御開始リクエストを前記デバイス制御装置に送信した時、前記デバイス制御装置は前記制御コマンドを前記デバイスに送信し、前記デバイスを前記端末での制御を開始させる請求項20に記載のデバイス制御システムの制御方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN6745DEN2014 IN2014DN06745A (ja) | 2013-01-02 | 2013-12-26 | |
JP2014555399A JP6277961B2 (ja) | 2013-01-02 | 2013-12-26 | 印刷装置、印刷装置の制御方法、及び、デバイス制御システム |
EP13870202.2A EP2799999B1 (en) | 2013-01-02 | 2013-12-26 | Device control system and method for controlling device control system |
KR1020157019487A KR101652655B1 (ko) | 2013-01-02 | 2013-12-26 | 디바이스 제어 시스템, 인쇄 장치, 및, 디바이스 제어 시스템의 제어 방법 |
KR1020167022773A KR101736017B1 (ko) | 2013-01-02 | 2013-12-26 | 인쇄 장치, 및 인쇄 장치의 제어 방법 |
CN201380035049.4A CN104583984B (zh) | 2013-01-02 | 2013-12-26 | 设备控制系统以及设备控制系统的控制方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361748232P | 2013-01-02 | 2013-01-02 | |
US61/748,232 | 2013-01-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014106882A1 true WO2014106882A1 (ja) | 2014-07-10 |
Family
ID=51016898
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/007633 WO2014106883A1 (ja) | 2013-01-02 | 2013-12-26 | デバイス制御システム、及び、デバイス制御システムの制御方法 |
PCT/JP2013/007625 WO2014106882A1 (ja) | 2013-01-02 | 2013-12-26 | デバイス制御システム、印刷装置、及び、デバイス制御システムの制御方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/007633 WO2014106883A1 (ja) | 2013-01-02 | 2013-12-26 | デバイス制御システム、及び、デバイス制御システムの制御方法 |
Country Status (7)
Country | Link |
---|---|
US (7) | US9052853B2 (ja) |
EP (2) | EP2800000B1 (ja) |
JP (2) | JP6277961B2 (ja) |
KR (3) | KR101736017B1 (ja) |
CN (2) | CN104583984B (ja) |
IN (2) | IN2014DN06744A (ja) |
WO (2) | WO2014106883A1 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020030602A (ja) * | 2018-08-22 | 2020-02-27 | 株式会社アスタリスク | システム及び周辺装置 |
JP2020057872A (ja) * | 2018-09-28 | 2020-04-09 | 株式会社リコー | 電子機器、情報処理システム及び終了操作抑制方法 |
JP2020144406A (ja) * | 2019-03-04 | 2020-09-10 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法及びプログラム |
JP2020204950A (ja) * | 2019-06-18 | 2020-12-24 | コニカミノルタ株式会社 | 情報処理システム、情報処理システムの制御方法、装置、及び制御プログラム |
JP2021026487A (ja) * | 2019-08-05 | 2021-02-22 | 富士通株式会社 | 情報処理装置、アクセス制御システム及びアクセス制御プログラム |
JP2021093068A (ja) * | 2019-12-12 | 2021-06-17 | シチズン時計株式会社 | 機器制御方法、機器制御プログラム、および機器制御装置 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101579467B1 (ko) * | 2014-02-27 | 2016-01-04 | 엘지전자 주식회사 | 디지털 디바이스 및 그의 서비스 처리 방법 |
JP5958490B2 (ja) * | 2014-03-31 | 2016-08-02 | コニカミノルタ株式会社 | ウェブシステム、ウェブサーバ、データ配信方法、およびコンピュータプログラム |
CN109324768B (zh) * | 2014-12-30 | 2021-10-22 | 珠海奔图电子有限公司 | 一种通过移动终端将用户帐号与图像形成设备绑定的方法及系统 |
KR102175227B1 (ko) * | 2015-11-20 | 2020-11-09 | 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. | Xml 파일 축약 |
US9509942B1 (en) | 2016-02-08 | 2016-11-29 | Picaboo Corporation | Automatic content categorizing system and method |
CN106970767A (zh) * | 2017-03-03 | 2017-07-21 | 华中科技大学 | 一种实现本地打印机接入云打印平台的方法和系统 |
US11472579B2 (en) | 2018-12-04 | 2022-10-18 | Gpcp Ip Holdings Llc | Film securing apparatus and method |
US20190180392A1 (en) | 2017-12-12 | 2019-06-13 | Gpcp Ip Holdings Llc | Personalized food service material printing systems |
US11752779B2 (en) | 2017-12-12 | 2023-09-12 | Gpcp Ip Holdings Llc | Food service cup dispensers, systems, and methods |
CN108773205B (zh) * | 2018-06-13 | 2024-04-05 | 马方立 | 智能打印装置及智能打印控制方法 |
CN108898002B (zh) * | 2018-07-06 | 2021-10-08 | 青岛山景虚拟现实研究院 | 一种可与计算机无线连接的扫描枪装置 |
CN110969032B (zh) * | 2018-09-28 | 2023-09-05 | 捷普电子(广州)有限公司 | 用于扫描物体的扫描设备 |
US12077337B2 (en) | 2018-12-04 | 2024-09-03 | Yum Connect, LLC | Systems and methods for sealing a container |
RU2758816C1 (ru) * | 2020-06-29 | 2021-11-02 | Георгий Ревазович Хвистани | Система и способ фотофиксации заказов предприятия общественного питания |
JP2022138292A (ja) | 2021-03-10 | 2022-09-26 | セイコーエプソン株式会社 | 情報処理装置及びシステム |
JP2022138291A (ja) | 2021-03-10 | 2022-09-26 | セイコーエプソン株式会社 | システム、サーバー装置及び端末装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002176675A (ja) * | 2000-12-06 | 2002-06-21 | Seiko Epson Corp | データ伝送システム及びその方法 |
JP2003274100A (ja) * | 2002-03-14 | 2003-09-26 | Ricoh Co Ltd | 画像形成装置、リモート画像形成制御方法およびその方法をコンピュータに実行させるプログラム |
JP2004152256A (ja) | 2002-09-05 | 2004-05-27 | Seiko Epson Corp | 印刷方法、その印刷方法を実現させるためのプログラム、記録媒体、印刷装置、プリンタドライバ、商品販売データ処理装置およびposシステム |
JP2005045437A (ja) * | 2003-07-25 | 2005-02-17 | Fuji Xerox Co Ltd | スキャナシステムおよびその方法 |
JP2007188468A (ja) * | 2005-12-15 | 2007-07-26 | Ricoh Co Ltd | 通信装置、電子機器、情報処理システム、アプリケーション実行方法、アプリケーション実行プログラム及び記録媒体 |
JP2007328558A (ja) * | 2006-06-08 | 2007-12-20 | Ricoh Co Ltd | データ処理装置、データ処理システム、データ処理装置の制御方法、データ変換機能付加方法、プログラム及び記録媒体 |
JP2010113606A (ja) * | 2008-11-07 | 2010-05-20 | Canon Imaging Systems Inc | デバイス共有システム、デバイス共有クライアント、及びデバイス共有方法 |
JP2012173910A (ja) * | 2011-02-21 | 2012-09-10 | Seiko Epson Corp | ネットワークシステム、デバイスサーバーおよびネットワークシステムの制御方法 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5707162A (en) | 1993-11-24 | 1998-01-13 | Seiko Epson Corporation | Modular information processing apparatus |
JP3399051B2 (ja) | 1993-11-24 | 2003-04-21 | セイコーエプソン株式会社 | Posターミナル及びその印刷装置 |
US5752880A (en) | 1995-11-20 | 1998-05-19 | Creator Ltd. | Interactive doll |
US20010021669A1 (en) | 1995-11-20 | 2001-09-13 | Creator Ltd. | I*doll |
US6368177B1 (en) | 1995-11-20 | 2002-04-09 | Creator, Ltd. | Method for using a toy to conduct sales over a network |
US6128415A (en) * | 1996-09-06 | 2000-10-03 | Polaroid Corporation | Device profiles for use in a digital image processing system |
US6519048B1 (en) | 1998-04-28 | 2003-02-11 | Canon Kabushiki Kaisha | Image forming apparatus, image forming method, and storage medium storing computer readable program therein |
US6289371B1 (en) * | 1998-09-30 | 2001-09-11 | Hewlett-Packard Company | Network scan server support method using a web browser |
DE10194691T1 (de) * | 2000-10-26 | 2003-10-30 | Matsushita Electric Ind Co Ltd | Druckobjektbild-Angabeeinrichtung |
US20020097419A1 (en) | 2001-01-19 | 2002-07-25 | Chang William Ho | Information apparatus for universal data output |
JP2003288336A (ja) | 2002-03-28 | 2003-10-10 | Brother Ind Ltd | 特定機能代行システム、及び、電子機器、記憶媒体 |
CN1287334C (zh) | 2002-09-05 | 2006-11-29 | 精工爱普生株式会社 | 打印方法、程序及装置、商品销售数据处理装置、pos系统 |
CN101136836A (zh) * | 2003-04-24 | 2008-03-05 | 三菱电机株式会社 | 影像设备,影像模块单元以及影像设备操作方法 |
JPWO2004095293A1 (ja) | 2003-04-24 | 2006-07-13 | 三菱電機株式会社 | 映像情報システム、およびモジュールユニット |
JP2006135982A (ja) | 2003-04-24 | 2006-05-25 | Mitsubishi Electric Corp | ネットワーク接続装置、映像情報機器、情報送受信機器、及びネットワーク接続プログラム |
KR100538903B1 (ko) | 2003-06-24 | 2005-12-27 | 삼성전자주식회사 | 네트워크 인터페이스 장치 |
US8937731B2 (en) * | 2003-09-01 | 2015-01-20 | Konica Minolta Business Technologies, Inc. | Image processing apparatus for receiving a request relating to image processing from an external source and executing the received request |
JP2006344173A (ja) * | 2005-06-10 | 2006-12-21 | Canon Inc | 情報処理装置及びその制御方法 |
JP4742766B2 (ja) | 2005-09-14 | 2011-08-10 | 富士ゼロックス株式会社 | ネットワークデバイス、デバイスリンクシステムおよびデバイスリンク方法 |
US20100153225A1 (en) * | 2006-03-26 | 2010-06-17 | Jay Ferro | Printing Dynamic Image Content on Receipts |
US7658323B2 (en) | 2006-05-24 | 2010-02-09 | Sun Microsystems, Inc. | Point-of-service (POS) and POS application compatability |
JP4066383B2 (ja) * | 2006-07-06 | 2008-03-26 | シチズンホールディングス株式会社 | 通信装置および通信制御方法、並びに当該通信装置を備えたプリンタ |
JP4269182B2 (ja) * | 2006-10-18 | 2009-05-27 | セイコーエプソン株式会社 | 印刷測色制御装置、印刷測色制御方法、印刷測色制御プログラムおよび印刷装置 |
EP2083404A3 (en) * | 2008-01-24 | 2010-01-06 | Seiko Epson Corporation | Receipt printing processing method, printer and receipt printing processing system |
JP4473325B2 (ja) * | 2008-05-23 | 2010-06-02 | 富士通株式会社 | 管理装置、ストレージシステム、記憶装置管理方法 |
JP4777387B2 (ja) * | 2008-06-05 | 2011-09-21 | 株式会社東芝 | スクリプト秘匿実行プログラム及びサーバ装置 |
JP5272897B2 (ja) * | 2008-07-29 | 2013-08-28 | セイコーエプソン株式会社 | 印刷装置、印刷装置の制御方法及び制御プログラム |
JP4645723B2 (ja) * | 2008-10-08 | 2011-03-09 | ブラザー工業株式会社 | 通信装置 |
JP5440004B2 (ja) * | 2008-10-20 | 2014-03-12 | セイコーエプソン株式会社 | 情報配信システム、情報配信システムのサービス実現方法およびそのプログラム |
US8643875B2 (en) | 2009-01-09 | 2014-02-04 | Transaction Tree, Inc. | Receipt handling systems, print drivers and methods thereof |
JP5305999B2 (ja) * | 2009-03-16 | 2013-10-02 | キヤノン株式会社 | 情報処理装置、その制御方法、及びプログラム |
JP5451355B2 (ja) | 2009-12-14 | 2014-03-26 | シャープ株式会社 | 情報機器、画像処理装置、情報機器と通信可能な情報処理装置およびそれらを含む情報処理システム |
US20110194124A1 (en) * | 2010-02-09 | 2011-08-11 | Apple Inc. | Data formats to support driverless printing |
US20110231272A1 (en) * | 2010-03-16 | 2011-09-22 | App Masters Llc | Retail mobile point-of-sale (POS) software application and retail middleware software application |
US8700474B2 (en) * | 2012-08-27 | 2014-04-15 | Wal-Mart Stores, Inc. | Deliverying customer specified receipt types at checkout |
-
2013
- 2013-12-24 US US14/140,268 patent/US9052853B2/en active Active
- 2013-12-24 US US14/140,301 patent/US9280305B2/en active Active
- 2013-12-26 JP JP2014555399A patent/JP6277961B2/ja active Active
- 2013-12-26 KR KR1020167022773A patent/KR101736017B1/ko active IP Right Grant
- 2013-12-26 JP JP2014555400A patent/JP6206417B2/ja active Active
- 2013-12-26 CN CN201380035049.4A patent/CN104583984B/zh active Active
- 2013-12-26 EP EP13870266.7A patent/EP2800000B1/en active Active
- 2013-12-26 CN CN201380035523.3A patent/CN104412244B/zh active Active
- 2013-12-26 WO PCT/JP2013/007633 patent/WO2014106883A1/ja active Application Filing
- 2013-12-26 KR KR1020157019455A patent/KR101645148B1/ko active IP Right Grant
- 2013-12-26 WO PCT/JP2013/007625 patent/WO2014106882A1/ja active Application Filing
- 2013-12-26 IN IN6744DEN2014 patent/IN2014DN06744A/en unknown
- 2013-12-26 KR KR1020157019487A patent/KR101652655B1/ko active IP Right Grant
- 2013-12-26 EP EP13870202.2A patent/EP2799999B1/en active Active
- 2013-12-26 IN IN6745DEN2014 patent/IN2014DN06745A/en unknown
-
2015
- 2015-05-01 US US14/702,362 patent/US9274730B2/en active Active
- 2015-12-22 US US14/979,291 patent/US10108949B2/en active Active
- 2015-12-30 US US14/984,029 patent/US9495121B2/en active Active
-
2016
- 2016-09-19 US US15/269,172 patent/US10043169B2/en active Active
-
2018
- 2018-06-27 US US16/020,450 patent/US10402809B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002176675A (ja) * | 2000-12-06 | 2002-06-21 | Seiko Epson Corp | データ伝送システム及びその方法 |
JP2003274100A (ja) * | 2002-03-14 | 2003-09-26 | Ricoh Co Ltd | 画像形成装置、リモート画像形成制御方法およびその方法をコンピュータに実行させるプログラム |
JP2004152256A (ja) | 2002-09-05 | 2004-05-27 | Seiko Epson Corp | 印刷方法、その印刷方法を実現させるためのプログラム、記録媒体、印刷装置、プリンタドライバ、商品販売データ処理装置およびposシステム |
JP2005045437A (ja) * | 2003-07-25 | 2005-02-17 | Fuji Xerox Co Ltd | スキャナシステムおよびその方法 |
JP2007188468A (ja) * | 2005-12-15 | 2007-07-26 | Ricoh Co Ltd | 通信装置、電子機器、情報処理システム、アプリケーション実行方法、アプリケーション実行プログラム及び記録媒体 |
JP2007328558A (ja) * | 2006-06-08 | 2007-12-20 | Ricoh Co Ltd | データ処理装置、データ処理システム、データ処理装置の制御方法、データ変換機能付加方法、プログラム及び記録媒体 |
JP2010113606A (ja) * | 2008-11-07 | 2010-05-20 | Canon Imaging Systems Inc | デバイス共有システム、デバイス共有クライアント、及びデバイス共有方法 |
JP2012173910A (ja) * | 2011-02-21 | 2012-09-10 | Seiko Epson Corp | ネットワークシステム、デバイスサーバーおよびネットワークシステムの制御方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020030602A (ja) * | 2018-08-22 | 2020-02-27 | 株式会社アスタリスク | システム及び周辺装置 |
JP7320822B2 (ja) | 2018-08-22 | 2023-08-04 | 株式会社アスタリスク | システム及び周辺装置 |
JP2020057872A (ja) * | 2018-09-28 | 2020-04-09 | 株式会社リコー | 電子機器、情報処理システム及び終了操作抑制方法 |
JP7135685B2 (ja) | 2018-09-28 | 2022-09-13 | 株式会社リコー | 電子機器、情報処理システム及び終了操作抑制方法 |
JP2020144406A (ja) * | 2019-03-04 | 2020-09-10 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法及びプログラム |
JP7278805B2 (ja) | 2019-03-04 | 2023-05-22 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法及びプログラム |
JP2020204950A (ja) * | 2019-06-18 | 2020-12-24 | コニカミノルタ株式会社 | 情報処理システム、情報処理システムの制御方法、装置、及び制御プログラム |
JP2021026487A (ja) * | 2019-08-05 | 2021-02-22 | 富士通株式会社 | 情報処理装置、アクセス制御システム及びアクセス制御プログラム |
JP7234849B2 (ja) | 2019-08-05 | 2023-03-08 | 富士通株式会社 | 情報処理装置、アクセス制御システム及びアクセス制御プログラム |
JP2021093068A (ja) * | 2019-12-12 | 2021-06-17 | シチズン時計株式会社 | 機器制御方法、機器制御プログラム、および機器制御装置 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6277961B2 (ja) | 印刷装置、印刷装置の制御方法、及び、デバイス制御システム | |
JP6384571B2 (ja) | 端末の制御方法 | |
JPH11249849A (ja) | 印刷支援システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 2013870202 Country of ref document: EP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13870202 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2014555399 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20157019487 Country of ref document: KR Kind code of ref document: A |