Changeset 1500 for pykota/trunk/docs

Show
Ignore:
Timestamp:
05/25/04 11:49:53 (20 years ago)
Author:
jalet
Message:

The old pykota filter has been removed. LPRng support disabled for now.

Location:
pykota/trunk/docs
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • pykota/trunk/docs/filterpykota.sgml

    r1475 r1500  
    2323    A filter is a computer program which takes data in one format as its input, and outputs the 
    2424    same data but transformed into another format. <application>CUPS</application> already 
    25     contains many filters. For example there's one filter named <application>pstops</application> which accepts  
     25    contains many filters. For example there's one filter named <filename>pstops</filename> which accepts  
    2626    PostScript data as its input, and, as its name implies, outputs PostScript data too, but after having 
    2727    eventually rearranged the pages to fit several pages on a single sheet of paper, or other manipulations 
     
    3030   
    3131  <para> 
    32     The <application>pstops</application> filter described above is also in charge of doing basic page 
     32    The <filename>pstops</filename> filter described above is also in charge of doing basic page 
    3333    accounting, but <application>PyKota</application> currently doesn't use this facility since it may 
    3434    prove to be unreliable depending on the drivers used or if a paper jam occurs for example. 
     
    4242   
    4343  <para> 
    44     So to do its own accounting, <application>PyKota</application> has its own filter, named <application>pykota</application>, 
    45     which you have to plug into the different set of filters used by your printing system of choice. The procedure to  
    46     install the <application>pykota</application> filter is described in the  
     44    So to do its own accounting, <application>PyKota</application> has its own filters, for <application>CUPS</application> 
     45    it's named <filename>cupspykota</filename>, which is in fact a <application>CUPS</application> backends wrapper, 
     46    and for <application>LPRng</application> it's named ########## TODO ########## . 
     47    The procedure to plug the correct filter into your printing system is described in the  
    4748    <xref linkend="installation" endterm="installation"> chapter. 
    4849  </para> 
    4950   
    5051  <para> 
    51     Currently with a <application>CUPS</application> backend, the <application>pykota</application> filter is  
    52     deprecated. You have to use the <application>cupspykota</application> CUPS backend instead. 
    53     This CUPS backend ensures that jobs can't bypass the filtering mechanism, so you can use 
     52    Currently with a <application>CUPS</application> internal accounting mechanism, the <filename>pstops</filename> 
     53    filter can be bypassed. That's why <application>PyKota</application> uses its own backend. 
     54    The <filename>cupspykota</filename> backend wrapper ensures that jobs can't bypass the filtering mechanism, so you can use 
    5455    any printer with any driver and any command line option, and you can be sure that your 
    5556    print job will be correctly accounted for. 
     
    6465   
    6566  <para> 
    66     When you submit a print job, <application>cupspykota</application> (with CUPS) or <application>pykota</application> (with LPRng) is automatically launched by your printing system, 
     67    When you submit a print job, <application>PyKota</application>'s accounting mechanism is automatically launched by your printing system, 
    6768    so it has to detect which system you are using (<application>CUPS</application> or <application>LPRng</application>) 
    6869    and behave like if it was specifically designed for your printing system. Fortunately there's not a lot 
     
    7374  <para> 
    7475    When using the <literal>hardware</literal> accounting method, 
    75     <application>pykota</application> asks the printer for its internal page counter, reads from the Quota DataBase the internal 
    76     page counter for this printer when the previous job was launched, computes the difference, and report it as the  
    77     previous job's size in the Quota DataBase. It then updates the last user's print quota and account balance, and 
    78     warn him if he is over quota or if his account balance is below 0. Finally it checks if the user who launched the  
    79     current job is below or above his print quota, and either allows or denies the job's datas to pass to the underlying  
    80     layer (the printer itself). The <application>cupspykota</application> CUPS backend on the other hand, 
     76    the <application>cupspykota</application> CUPS backend  
    8177    asks the printer for its internal page counter at the start and at the end of the print job, and 
    82     computes the values' difference so accounting is done immediately. This way it doesn't let open a window for abuse in the case 
    83     several printers are managed. That's why the use of <application>cupspykota</application> 
    84     instead of <application>pykota</application> is recommended with CUPS. 
     78    computes the values' difference so accounting is done immediately.  
    8579  </para> 
    8680   
     
    9185    standard input. Your command must print the job's size in number of 
    9286    pages on a single line on its standard output. This number is then 
    93     read by PyKota and used to update the current user's quota information. 
     87    read by <application>PyKota</application> and used to update the current user's quota information. 
    9488    Of course checks are also done like with the <literal>hardware</literal> 
    9589    accounting method, to see if the current job is allowed to be printed or not. 
     
    9791   
    9892  <para> 
    99     If a problem occurs, it is logged either to the filter's standard output or to the system logger, depending on 
     93    If a problem occurs, it is logged either to the filter's standard error or to the system logger, depending on 
    10094    your preferences in <application>PyKota</application>'s configuration files. Also if a print quota is reached 
    10195    you may choose if the administrator, the user, both or no-one will receive an email message explaining 
    102     the situation and proposing a solution. 
     96    the situation and proposing a solution. You can even configure another action instead of sending email 
     97    messages if you want. 
    10398  </para> 
    10499   
     
    108103 
    109104$Log$ 
     105Revision 1.11  2004/05/25 09:49:52  jalet 
     106The old pykota filter has been removed. LPRng support disabled for now. 
     107 
    110108Revision 1.10  2004/05/13 13:59:28  jalet 
    111109Code simplifications 
  • pykota/trunk/docs/installation.sgml

    r1347 r1500  
    646646      <title>With LPRng</title> 
    647647      <para> 
    648         To plug PyKota into your <application>LPRng</application> setup,  
    649         you have to modify the <filename>/etc/printcap</filename>. 
    650         You just have to add the following lines to each queue on  
    651         which you want to use PyKota : 
    652         <screen> 
    653   :achk=true 
    654   :as=|/usr/share/pykota/pykota 
    655         </screen> 
     648        ######### TODO ########## 
    656649      </para> 
    657650       
     
    696689 
    697690$Log$ 
     691Revision 1.25  2004/05/25 09:49:53  jalet 
     692The old pykota filter has been removed. LPRng support disabled for now. 
     693 
    698694Revision 1.24  2004/02/13 08:46:32  jalet 
    699695Fixed documentation wrt installation paths changed