(Courriels de diversion: <contiennent@bornant-evacuer.com> <cailleront@regneriez-remblayes.com> <populariserions@endormantes-malin.com> <hivernal@manigance-puisees.com> <quantitatives@poiriers-feuillette.com> <gazouillement@concepts-departirais.com> <sous-station@fauches-provocante.com> <perequations@caillait-embraiera.com> <sous-commissions@numerote-reservait.com> <heleras@aveulies-fumets.com> )


>>>>> "ecm" == Eric Marsden <emarsden@mail.dotcom.fr> writes:
  ecm> Une seconde solution est d'utiliser les moyens d'accounting
  ecm> intégrés à la plupart des imprimantes haut de gamme, auxquelles
  ecm> on accède par SNMP ou par des protocoles propriétaires.

SNMP est un protocole réseau qui permet d'obtenir et de modifier des
informations dans un noeud du réseau. Il est surtout utilisé pour la
gestion en réseau, et est supporté par des périphériques tel que les
imprimantes, routeurs, switchs. 

Le type d'information que publie un noeud par SNMP est décrite par une
spécification appelée MIB. Ce document donne une correspondance entre
des object-id (representés par des arbres n-aires) et des données
typées (int32, string, char etc). Par exemple, sur une imprimante
Tektronix, le MIB publié par Xerox précise que le numéro de pages
imprimés pendant la vie de l'appareil peut être obtenu via l'object-id

     .1.3.6.1.4.1.128.2.1.3.4.4.0

soit sous forme symbolique
   
     .iso.org.dod.internet.private.enterprises.
      Tektronix.tekgpid.gpidmibs.gpidprintermib.
      gpidMarker.gpidMarkerLifeCounts.0    

On peut faire une requête SNMP pour obtenir la valeur de cet attribut
(mulan c'est le nom de l'imprimante):

   ~/tmp$ snmpget mulan public .1.3.6.1.4.1.128.2.1.3.4.4.0
   enterprises.128.2.1.3.4.4.0 = 1222
     
Y'a un autre attribut (ici c'est un object-id standard) qui donne le
type de l'appareil

    ~/tmp$ snmpget mulan public system.sysDescr.0
    system.sysDescr.0 = Tektronix, Inc., Phaser 750DP, PhaserShare
    Series B Network Interface, (5.62/11.100/10/2.28)

Les imprimantes HP ont un autre MIB, mais il y a un attribut qui
permet d'obtenir la même information

    ~/tmp$ snmpget milou public .1.3.6.1.4.1.11.2.3.9.4.2.2.10.2.1.4.1.1
    enterprises.11.2.3.9.4.2.2.10.2.1.4.1.1 = 75778
    ~/tmp$ snmpget milou public system.sysDescr.0
    system.sysDescr.0 = HP ETHERNET MULTI-ENVIRONMENT,ROM G.07.02,
    JETDIRECT,JD30,EEPROM G.07.17
    

Les imprimantes Apple ne supportent pas le SNMP, mais on peut obtenir
cette information autrement, en leur envoyant un fichier Postscript
sur leur port SocketAPI:

    ~/tmp$ (echo '%!'; echo "statusdict begin pagecount == end flush ^D") \
    | nc -w 10 mickey 9100
    240007
    

<URL:http://net-snmp.sourceforge.net/>

-- 
Eric Marsden                          <URL:http://www.laas.fr/~emarsden/>

---------------------------------------------------------------------
Aide sur la liste: <URL:mailto:linux-31-help@savage.iut-blagnac.fr>Le CULTe sur le web: <URL:http://www.CULTe.org/>