WO2012162978A1 - Method for providing print service - Google Patents
Method for providing print service Download PDFInfo
- Publication number
- WO2012162978A1 WO2012162978A1 PCT/CN2011/079700 CN2011079700W WO2012162978A1 WO 2012162978 A1 WO2012162978 A1 WO 2012162978A1 CN 2011079700 W CN2011079700 W CN 2011079700W WO 2012162978 A1 WO2012162978 A1 WO 2012162978A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- file
- samba
- lprng
- lpd
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/1218—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
- G06F3/122—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/126—Job scheduling, e.g. queuing, determine appropriate device
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/1288—Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
Definitions
- the present invention relates to data processing, and more particularly, relates to a method for providing print service.
- Samba is a free software re-implementation, originally developed by Australian Andrew Tridgell, of the SMB (server message block)/CIFS (common Internet file system) networking protocol.
- the CIFS can be considered as an enhanced version of SMB.
- Samba provides file and print services for various Microsoft Windows clients and can integrate with a Windows Server domain, either as a Primary Domain Controller (PDC) or as a domain member. It can also be part of an Active Directory domain.
- PDC Primary Domain Controller
- Samba runs on most Unix and Unix-like systems, such as GNU/Linux, Solaris, AIX and the BSD variants, including Apple's Mac OS X Server (which was added to the Mac OS X client in version 10.2).
- Samba is standard on nearly all distributions of Linux and is commonly included as a basic system service on other Unix-based operating systems as well.
- Samba allows file and print sharing between computers running Windows and computers running Unix. Samba sets up network shares for chosen Unix directories (including all contained subdirectories). These appear to Microsoft Windows users as normal Windows folders accessible via the network.
- Samba services are implemented as two daemons:
- NetBIOS over TCP/IP requires some method for mapping NetBIOS computer names to the IP addresses of a TCP/IP network.
- Samba configuration is achieved by editing a single file (typically installed as /etc/smb.conf or /etc/samba/smb.conf). When it is correctly configured, it allows that host to interact with a Microsoft Windows client or server as if it is a Windows file and print server.
- Samba provides seamless file and print services to SMB/CIFS clients.
- Client systems use the Common Internet File System (CIFS) protocol to request file and print services from server systems over a network.
- CIFS Common Internet File System
- the SMB/CIFS is a file sharing protocol. Client systems use this protocol to request file access services from server systems over a network.
- the SMB/CIFS Protocol is composed of, and driven by, SMB commands.
- the SMB commands are comprised of SMB messages exchanges between the client and the server. Below introduces some of the commands for file print.
- SMB_COM_OPEN_PRINT_FILE it creates a print queue spool file. And the spool file will be queued to the printer when it is closed.
- SMB_COM_WRITE_ANDX it is used to write bytes to a regular file, a named pipe, or a directly accessible I/O device such as a serial port (COM) or printer port (LPT). Besides, it can be used to write data to an open print queue spool file.
- COM serial port
- LPT printer port
- SMB_COM_WRITE_PRINT_FILE it can be also used to write bytes to a print queue spool file. Since this command is deprecated, the SMB_COM_WRITE_ANDX command is usually used to write to an open print queue spool file.
- SMB_COM_CLOSE it is used by the client to close an instance of an object associated with a valid FID (file identifier), which identifies a file. After this command is used to close a specified or chosen print queue spool file, it causes the server to queue the file for printing.
- FID file identifier
- SMB_COM_CLOSE_PRINT_FILE it can be also used to close a print queue spool file. Similar to the SMB_COM_WRITE_PRINT_FILE, since this command is deprecated, SMB COM CLOSE is normally used to close a print queue spool file opened by SMB_COM_OPEN_PRINT_FILE.
- the Line Printer Daemon protocol/Line Printer Remote protocol (or LPD/ LPR) is a network protocol for submitting print jobs to a remote printer.
- LPD Line Printer Daemon protocol/Line Printer Remote protocol
- the original implementation of LPD was in the Berkeley printing system in the BSD UNIX operating system.
- the LPD Protocol Specification is documented in RFC 1 179 (Line Printer Daemon Protocol, August 1990, edited by L. McLaughlin III).
- LPRng line printer remote next generation
- LPRng is a printing system compatible with the Berkeley printing system. It provides printer spooling and network print server functionality using the Line Printer Daemon protocol.
- Samba and LPD/LPRng are used together in a single device to provide remote printing service.
- the single device could be a gateway, router etc.
- a print controlling device that wants to print files, e.g. a PC, and a printer via wired or wireless connection.
- the Samba is used for print sharing, and it is configured to use "add printer wizard" feature of Samba to guide the Windows user to install printer driver on the PC.
- the print file is converted into print format by the printer driver on the PC.
- the print format can be any kind of page description language format that the OS can.
- the PC sends the formatted print file to Samba in the single device via local print service.
- the client in the PC installs printer driver and converts the file chosen to be printed into a print format with the printer driver. And then, the client uses SMB_COM_OPEN_PRINT_FILE command to request to create a print queue spool file of Samba.
- Samba After receiving the request, Samba creates a print queue spool file corresponding to a print job, which will be queued to the printer when closed and sends a response message to indicate the successful creation of the print queue spool file.
- the client After receiving the response message, the client uses SMB_COM_WRITE_ANDX to send data of the formatted file to Samba so as to request for printing.
- Samba writes the received data of the formatted file into the print queue spool file.
- the client After receiving the response message indicating successful data writing from Samba, the client uses SMB COM CLOSE to request Samba to close the print queue spool file.
- Samba saves the formatted file and uses Ipr shell command to start the print job.
- the Ipr shell command is used on many Unix-like systems to assign print jobs to printer queues.
- LPRng project, Linux, Mac OS X and even Windows also provide such command with the same name.
- Samba can use "Ipr -P%p %s" shell command in the LPRng project to send the print file to LPRng/LPD daemon via socket.
- the meaning of parameters in the command is as follow: %p indicates the name of the printer to use, and %s indicates the full pathname of the file on the Samba server to be printed.
- Samba can use Ipr, Ipq Iprm and Ipc commands to communicate with
- Ipr is used to assign a print file to a print queue
- Ipq is used to show queue information
- Iprm is used to remove a chosen print file from the print queue
- Ipc is used to control the print queue.
- LPD/LPRng After LPD/LPRng receives the print file, it will create a print job to ask the printer to print.
- a method for providing print service in an intermediate device connecting to a printer uses Samba to receive a file to be print and LPD or LPRng to request the printer to print, characterized in that Samba and LPD or LPRng use a common print spool, the method comprises the steps of receiving, by Samba a file to be print; saving, by Samba the file with a first name in the common print spool; requesting, by Samba LPD or LPRng to use the saved file in the common print spool to instruct the printer to print without needing LPD or LPRng to save the file again in the common print spool.
- it avoids duplicated copies of same print file in a device with limited storage space.
- Fig. 1 is a diagram showing a system structure
- Fig. 2 is a diagram showing Samba and LPD/LPRng each has a separate print spool in the system;
- Fig. 3 is a flow chart showing a method for providing print service on the gateway according to an embodiment of present invention.
- Fig. 4 is a diagram showing Samba and LPD/LPRng have a common print spool according to the embodiment of present invention.
- the inventors use Samba and LPD/LPRng on an intermediate device, e.g. a home gateway, to provide print service.
- the system structure is the same as the Fig. 1 shows.
- the gateway connects to a printer and a PC, and it communicates with the printer and the PC by separately using LPD/LPRng and Samba.
- LPD/LPRng LPD/LPRng
- the print spools of both Samba and LPD/LPRng are set to a volatile memory, e.g. RAM (random access memory).
- RAM random access memory
- Samba and LPD/LPRng After a long time of study on how Samba and LPD/LPRng works, it's found that after LPD/LPRng receives Ipr command that indicates the print file, it saves the print file again.
- fig. 2 shows, Samba and LPD/LPRng each has a separate print spool. So for a single print file, it takes as twice as its size in the RAM. So in the following, Samba and LPD/LPRng are modified to avoid duplication of the print file in the RAM.
- Fig. 3 shows a method for providing print service on the gateway according to an embodiment of present invention. Note LPRng is used in below embodiment.
- Samba and LPRng are configured to share a common print spool in RAM as shown in Fig. 4.
- the shared print spool can placed in a non-volatile storage, e.g. flash etc.
- the path parameter in printers section of smb.conf file i.e. Samba configuration file
- the print spool location of LPRng is set to the same location as Samba, i.e. :sd parameter in printcap (i.e. LPRng's printer information file) is set to /var/spool/samba.
- Samba receives a file for print from the PC. Since LPRng is modified not to format the file in this implementation, the print file needs converting to a format that is compatible with LPRng.
- the format conversion can be done by Samba. In a variant, the format conversion can be done by the printer driver of Windows before the print file is sent to Samba.
- step 303 Samba saves the print file in the shared print spool.
- the file name of the print file saved by Samba is FILE1 .
- Samba sends a control message to request LPRng to print the print file saved by Samba.
- Lpr command calls Sendjob function to transfer the print job to LPRng Daemon.
- Sendjob function it sends two files to LPRng daemon, one is a control file which includes the print control info (details can be found in RFC1 179), and the other is a data file (i.e. the print file that Samba saved in this example).
- Sendjob function uses Send_data_files to transfer the data file (Sendjob and Send_data_files functions are included in LPRng sendjob.c code file). And Send_data_files function will send file description information of the print file in Samba (e.g. file name, file size etc.)and the data of print file to LPRng daemon, and in addition, it tells the Receivejob function in LPRng daemon of a file name to be assigned to the print file in LPRng.
- the file name used in Send_data_files function is different from the name of the print file in Samba.
- file description information of the print file includes file name FILE1
- Send_datajiles function tells Receivejob function to save the print file with file name of FILE2.
- Receivejob function uses Receivejob function to receive the control file and the data file for printing the print file.
- Receivejob function saves the control file and the data file with its name set to that used in Send_data files function in its print spool.
- Send_data_files function is modified not send the print file to LPRng daemon, so Sendjob function will only send file description information to LPRng daemon without sending the data of the print file.
- the print file FILE1 is renamed by Send_data_files function to a file name (i.e. FILE2 in above example) that it will be used in the Send_datajiles function.
- the Receivejob function is modified to receive only the control file and file description information of the print file, and it uses the name (i.e. FILE2) carried in Send_data_files function to fill the file name in print job. And then the LPRng daemon sends the print job to the printer device.
- LPRng can be replaced with LPD.
- a number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. For example, elements of different implementations may be combined, supplemented, modified, or removed to produce other implementations. Additionally, one of ordinary skill will understand that other structures and processes may be substituted for those disclosed and the resulting implementations will perform at least substantially the same function(s), in at least substantially the same way(s), to achieve at least substantially the same result(s) as the implementations disclosed. Accordingly, these and other implementations shall fall in the scope of the invention.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
It is provided a method for providing print service in an intermediate device connecting to a printer. The intermediate device uses Samba to receive a file to be print and LPD or LPRng to request the printer to print, characterized in that Samba and LPD or LPRng use a common print spool, the method comprises the steps of receiving, by Samba a file to be print; saving, by Samba the file with a first name in the common print spool; requesting, by Samba LPD or LPRng to use the saved file in the common print spool to instruct the printer to print without needing LPD or LPRng to save the file again in the common print spool.
Description
METHOD FOR PROVIDING PRINT SERVICE
TECHNICAL FIELD
The present invention relates to data processing, and more particularly, relates to a method for providing print service.
BACKGROUND
Samba is a free software re-implementation, originally developed by Australian Andrew Tridgell, of the SMB (server message block)/CIFS (common Internet file system) networking protocol. Herein, the CIFS can be considered as an enhanced version of SMB. As of version 3, Samba provides file and print services for various Microsoft Windows clients and can integrate with a Windows Server domain, either as a Primary Domain Controller (PDC) or as a domain member. It can also be part of an Active Directory domain. Samba runs on most Unix and Unix-like systems, such as GNU/Linux, Solaris, AIX and the BSD variants, including Apple's Mac OS X Server (which was added to the Mac OS X client in version 10.2). Samba is standard on nearly all distributions of Linux and is commonly included as a basic system service on other Unix-based operating systems as well.
Samba allows file and print sharing between computers running Windows and computers running Unix. Samba sets up network shares for chosen Unix directories (including all contained subdirectories). These appear to Microsoft Windows users as normal Windows folders accessible via the network.
Samba services are implemented as two daemons:
· smbd, which provides the file and printer sharing services, and
• nmbd, which provides the NetBIOS-to-IP-address name service.
NetBIOS over TCP/IP requires some method for mapping NetBIOS computer names to the IP addresses of a TCP/IP network. Samba configuration is achieved by editing a single file (typically installed as /etc/smb.conf or /etc/samba/smb.conf). When it is correctly configured, it
allows that host to interact with a Microsoft Windows client or server as if it is a Windows file and print server. Samba provides seamless file and print services to SMB/CIFS clients. Client systems use the Common Internet File System (CIFS) protocol to request file and print services from server systems over a network. Below is a brief on SMB/CIFS and its commands.
The SMB/CIFS is a file sharing protocol. Client systems use this protocol to request file access services from server systems over a network. The SMB/CIFS Protocol is composed of, and driven by, SMB commands. The SMB commands are comprised of SMB messages exchanges between the client and the server. Below introduces some of the commands for file print.
SMB_COM_OPEN_PRINT_FILE: it creates a print queue spool file. And the spool file will be queued to the printer when it is closed.
SMB_COM_WRITE_ANDX: it is used to write bytes to a regular file, a named pipe, or a directly accessible I/O device such as a serial port (COM) or printer port (LPT). Besides, it can be used to write data to an open print queue spool file.
SMB_COM_WRITE_PRINT_FILE: it can be also used to write bytes to a print queue spool file. Since this command is deprecated, the SMB_COM_WRITE_ANDX command is usually used to write to an open print queue spool file.
SMB_COM_CLOSE: it is used by the client to close an instance of an object associated with a valid FID (file identifier), which identifies a file. After this command is used to close a specified or chosen print queue spool file, it causes the server to queue the file for printing.
SMB_COM_CLOSE_PRINT_FILE: it can be also used to close a print queue spool file. Similar to the SMB_COM_WRITE_PRINT_FILE, since this command is deprecated, SMB COM CLOSE is normally used to close a print queue spool file opened by SMB_COM_OPEN_PRINT_FILE.
The Line Printer Daemon protocol/Line Printer Remote protocol (or LPD/ LPR) is a network protocol for submitting print jobs to a remote printer. The
original implementation of LPD was in the Berkeley printing system in the BSD UNIX operating system. The LPD Protocol Specification is documented in RFC 1 179 (Line Printer Daemon Protocol, August 1990, edited by L. McLaughlin III). LPRng (line printer remote next generation) is a printing system compatible with the Berkeley printing system. It provides printer spooling and network print server functionality using the Line Printer Daemon protocol.
Samba and LPD/LPRng are used together in a single device to provide remote printing service. The single device could be a gateway, router etc. As shown in the Fig. 1 , it normally connects to a print controlling device that wants to print files, e.g. a PC, and a printer via wired or wireless connection. Herein, the Samba is used for print sharing, and it is configured to use "add printer wizard" feature of Samba to guide the Windows user to install printer driver on the PC.
When the user selects a file on the PC for print, the print file is converted into print format by the printer driver on the PC. The print format can be any kind of page description language format that the OS can. Then the PC sends the formatted print file to Samba in the single device via local print service. To be specific, the client in the PC installs printer driver and converts the file chosen to be printed into a print format with the printer driver. And then, the client uses SMB_COM_OPEN_PRINT_FILE command to request to create a print queue spool file of Samba. After receiving the request, Samba creates a print queue spool file corresponding to a print job, which will be queued to the printer when closed and sends a response message to indicate the successful creation of the print queue spool file. After receiving the response message, the client uses SMB_COM_WRITE_ANDX to send data of the formatted file to Samba so as to request for printing. After receiving the request, Samba writes the received data of the formatted file into the print queue spool file. After receiving the response message indicating successful data writing from Samba, the client uses SMB COM CLOSE to request Samba to close the print queue spool file. After
receiving the request for closing, Samba saves the formatted file and uses Ipr shell command to start the print job.
Herein, the Ipr shell command is used on many Unix-like systems to assign print jobs to printer queues. Furthermore, LPRng project, Linux, Mac OS X and even Windows also provide such command with the same name. In above case, Samba can use "Ipr -P%p %s" shell command in the LPRng project to send the print file to LPRng/LPD daemon via socket. The meaning of parameters in the command is as follow: %p indicates the name of the printer to use, and %s indicates the full pathname of the file on the Samba server to be printed.
Samba can use Ipr, Ipq Iprm and Ipc commands to communicate with
LPRng daemon. Specifically, Ipr is used to assign a print file to a print queue, Ipq is used to show queue information, Iprm is used to remove a chosen print file from the print queue, and Ipc is used to control the print queue.
After LPD/LPRng receives the print file, it will create a print job to ask the printer to print.
When Samba and LPD/LPRng are both integrated in an intermediate device with limited storage space, e.g. a home gateway connecting to both a PC and a printer, it's desired to print file with possibly larger size. SUMMARY
According to an embodiment of present invention, it is provided a method for providing print service in an intermediate device connecting to a printer. The intermediate device uses Samba to receive a file to be print and LPD or LPRng to request the printer to print, characterized in that Samba and LPD or LPRng use a common print spool, the method comprises the steps of receiving, by Samba a file to be print; saving, by Samba the file with a first name in the common print spool; requesting, by Samba LPD or LPRng to use the saved file in the common print spool to instruct the printer to print without needing LPD or LPRng to save the file again in the common print spool.
According to the aspect of present invention, it avoids duplicated copies of same print file in a device with limited storage space.
It is to be understood that more aspects and advantages of the invention will be found in the following detailed description of the present invention.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are included to provide a further understanding of the, illustrate embodiments of the invention together with the description which serves to explain the principle of the invention. Therefore, the invention is not limited to the embodiments. In the drawings:
Fig. 1 is a diagram showing a system structure;
Fig. 2 is a diagram showing Samba and LPD/LPRng each has a separate print spool in the system;
Fig. 3 is a flow chart showing a method for providing print service on the gateway according to an embodiment of present invention; and
Fig. 4 is a diagram showing Samba and LPD/LPRng have a common print spool according to the embodiment of present invention.
DETAILED DESCRIPTION An embodiment of the present invention will now be described in detail in conjunction with the drawings. In the following description, some detailed descriptions of known functions and configurations may be omitted for clarity and conciseness.
The inventors use Samba and LPD/LPRng on an intermediate device, e.g. a home gateway, to provide print service. The system structure is the same as the Fig. 1 shows. The gateway connects to a printer and a PC, and it communicates with the printer and the PC by separately using LPD/LPRng and Samba. Besides, since the gateway is intended for low-end product, it normally has limited storage space so as to save cost. The print spools of both Samba
and LPD/LPRng are set to a volatile memory, e.g. RAM (random access memory). However, after the deployment of Samba and LPD/LPRng, the gateway with RAM allocated 10 MB for print spool cannot print a file of, for example, 8MB.
After a long time of study on how Samba and LPD/LPRng works, it's found that after LPD/LPRng receives Ipr command that indicates the print file, it saves the print file again. As fig. 2 shows, Samba and LPD/LPRng each has a separate print spool. So for a single print file, it takes as twice as its size in the RAM. So in the following, Samba and LPD/LPRng are modified to avoid duplication of the print file in the RAM.
Fig. 3 shows a method for providing print service on the gateway according to an embodiment of present invention. Note LPRng is used in below embodiment.
In the step 301 , Samba and LPRng are configured to share a common print spool in RAM as shown in Fig. 4. In a variant, the shared print spool can placed in a non-volatile storage, e.g. flash etc. Specifically, the path parameter in printers section of smb.conf file (i.e. Samba configuration file) is used to indicate the print spool location. Herein, it is set to /var/spool/samba. Meanwhile, the print spool location of LPRng is set to the same location as Samba, i.e. :sd parameter in printcap (i.e. LPRng's printer information file) is set to /var/spool/samba.
In the step 302, Samba receives a file for print from the PC. Since LPRng is modified not to format the file in this implementation, the print file needs converting to a format that is compatible with LPRng. The format conversion can be done by Samba. In a variant, the format conversion can be done by the printer driver of Windows before the print file is sent to Samba.
In the step 303, Samba saves the print file in the shared print spool. Herein, let's assume the file name of the print file saved by Samba is FILE1 .
In the step 304, Samba sends a control message to request LPRng to print the print file saved by Samba.
-Before the introduction of the modification on Ipr command and LPRng, we'd like to firstly introduce how current Ipr command in the LPRng and LPRng daemon work. Lpr command calls Sendjob function to transfer the print job to LPRng Daemon. In Sendjob function, it sends two files to LPRng daemon, one is a control file which includes the print control info (details can be found in RFC1 179), and the other is a data file (i.e. the print file that Samba saved in this example). Sendjob function uses Send_data_files to transfer the data file (Sendjob and Send_data_files functions are included in LPRng sendjob.c code file). And Send_data_files function will send file description information of the print file in Samba (e.g. file name, file size etc.)and the data of print file to LPRng daemon, and in addition, it tells the Receivejob function in LPRng daemon of a file name to be assigned to the print file in LPRng. Herein, the file name used in Send_data_files function is different from the name of the print file in Samba. In this example, file description information of the print file includes file name FILE1 , and Send_datajiles function tells Receivejob function to save the print file with file name of FILE2. At the side of LPRng daemon, it uses Receivejob function to receive the control file and the data file for printing the print file. And Receivejob function saves the control file and the data file with its name set to that used in Send_data files function in its print spool.
-In our modification, Send_data_files function is modified not send the print file to LPRng daemon, so Sendjob function will only send file description information to LPRng daemon without sending the data of the print file. In addition, in order to avoid duplicated names in the share print spool, the print file FILE1 is renamed by Send_data_files function to a file name (i.e. FILE2 in above example) that it will be used in the Send_datajiles function. At the side of LPRng daemon, the Receivejob function is modified to receive only the control file and file description information of the print file, and it uses the name (i.e. FILE2) carried in Send_data_files function to fill the file name in print job. And then the LPRng daemon sends the print job to the printer device.
In another variant, LPRng can be replaced with LPD.
A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. For example, elements of different implementations may be combined, supplemented, modified, or removed to produce other implementations. Additionally, one of ordinary skill will understand that other structures and processes may be substituted for those disclosed and the resulting implementations will perform at least substantially the same function(s), in at least substantially the same way(s), to achieve at least substantially the same result(s) as the implementations disclosed. Accordingly, these and other implementations shall fall in the scope of the invention.
Claims
1 . A method for providing print service in an intermediate device connecting to a printer, wherein, the intermediate device uses Samba to receive a file to be print and LPD or LPRng to request the printer to print, characterized in that Samba and LPD or LPRng use a common print spool, the method comprises the steps of
receiving, by Samba a file to be print;
saving, by Samba the file with a first name in the common print spool; and requesting, by Samba LPD or LPRng to use the saved file in the common print spool to instruct the printer to print without needing LPD or LPRng to save the file again in the common print spool.
2. The method of the claim 1 , wherein, the requesting step further includes changing, by Samba the name of the file from the first name to a second name; and
sending, by Samba the second name to LPD or LPRng, wherein, LPD or LPRng uses the second name to request the printer to print the saved file in the common print spool.
3. The method of the claim 1 , wherein, it further comprises converting the file to be print to a format that is compatible with LPD or LPRng before Samba requests LPD or LPRng for printing.
4. The method of the claim 3, wherein, the format conversion is done by Samba or it's done by other device before the file is sent to Samba.
5. The method of the claim 1 , wherein, it further comprises configuring the configuration files of Samba and LPD or LPRng to use the common print spool.
6. The method of the claim 1 , wherein, the common print spool is set to a volatile storage or non-volatile storage of the intermediate device that has limited storage space.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNPCT/CN2011/074917 | 2011-05-30 | ||
| CN2011074917 | 2011-05-30 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2012162978A1 true WO2012162978A1 (en) | 2012-12-06 |
Family
ID=47258309
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2011/079700 Ceased WO2012162978A1 (en) | 2011-05-30 | 2011-09-15 | Method for providing print service |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2012162978A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2015018271A1 (en) * | 2013-08-09 | 2015-02-12 | 华为终端有限公司 | Method and device for sharing printing within family |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040073632A1 (en) * | 2002-09-26 | 2004-04-15 | Simpson Shell S. | Mechanism for sharing web based imaging information from a unix terminal computing environment |
-
2011
- 2011-09-15 WO PCT/CN2011/079700 patent/WO2012162978A1/en not_active Ceased
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040073632A1 (en) * | 2002-09-26 | 2004-04-15 | Simpson Shell S. | Mechanism for sharing web based imaging information from a unix terminal computing environment |
Non-Patent Citations (1)
| Title |
|---|
| WANG HAI ET AL.: "Research of Share Files and Printers in Isomerous Network and Security Management of Samba", COMPUTER SYSTEMS APPLICATIONS, no. 8, August 2006 (2006-08-01), pages 80 - 88 * |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2015018271A1 (en) * | 2013-08-09 | 2015-02-12 | 华为终端有限公司 | Method and device for sharing printing within family |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1357467B1 (en) | Remote creation of printer instances on a workstation | |
| US8817295B2 (en) | Communication system and printer therefor | |
| CN102591597B (en) | Information processing apparatus and method for controlling the same | |
| JP3962612B2 (en) | Information processing apparatus and setting method and program executed by information processing apparatus | |
| JP7775394B2 (en) | Server, control method, program, and printing system | |
| US20100134818A1 (en) | Data processing apparatus, printer network system, data processing method, and computer-readable recording medium thereof | |
| JP5600925B2 (en) | Server device, print system, program, and recording medium | |
| US20080168158A1 (en) | Virtual Device Hub | |
| JP2011114806A (en) | Communication apparatus and method, and program | |
| CN104391664A (en) | Self-service print system for realizing cross-segment communication between printer and print server | |
| WO2013168458A1 (en) | Server apparatus, system, and control method thereof | |
| JP2006260356A (en) | Image forming system, image forming apparatus, terminal apparatus, management apparatus, and driver update method for terminal apparatus | |
| US8832312B2 (en) | Communication apparatus and communication control method | |
| US8259324B2 (en) | Printer/storage integrate system, controller, control method, and control program for automatic installation of control software | |
| US8861008B2 (en) | Bidirectional communication technique between an information processing apparatus and an image processing apparatus | |
| JP4045800B2 (en) | Printing system and method | |
| JP2008004010A (en) | COMMUNICATION DEVICE AND ITS CONTROL METHOD | |
| JP2006039982A (en) | Information processing apparatus control method, information processing apparatus, and information processing apparatus control program | |
| JP4441501B2 (en) | Method and system for printing data using message signaling service, and corresponding computer program and corresponding computer-readable storage medium | |
| JP2008165654A (en) | Information processing apparatus, image forming apparatus, driver update method, storage medium, and program | |
| JP4378338B2 (en) | Information processing apparatus, device setting method, storage medium, and program | |
| JP4262007B2 (en) | Network device and data processing system control method | |
| JP2001056753A (en) | Image forming device | |
| JP6115253B2 (en) | Print system, spool server, spool method, and program | |
| JP2006164026A (en) | Output management system setting device, output management system setting system, output management system setting method, program, and storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11867071 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 11867071 Country of ref document: EP Kind code of ref document: A1 |