NAME
FusionInventory::Agent::XML::Query::Inventory - the XML abstraction layer
DESCRIPTION
FusionInventory uses OCS Inventory XML format for the data transmition. This module is the abstraction layer. It's mostly used in the backend module where it called $inventory in general.
- new()
-
The usual constructor.
- initialise()
-
Runs the backend modules to initilise the data.
- addController()
-
Add a controller in the inventory.
- addModem()
-
Add a modem in the inventory.
- addDrive()
-
Add a partition in the inventory.
- addStorage()
-
Add a storage system (hard drive, USB key, SAN volume, etc) in the inventory.
- addMemory()
-
Add a memory module in the inventory.
- addPort()
-
Add a port module in the inventory.
- addSlot()
-
Add a slot in the inventory.
- addSoftware()
-
Register a software in the inventory.
- addMonitor()
-
Add a monitor (screen) in the inventory.
- addVideo()
-
Add a video card in the inventory.
- addSound()
-
Add a sound card in the inventory.
- addNetwork()
-
Register a network interface in the inventory.
- setHardware()
-
Save global information regarding the machine.
The use of setHardware() to update USERID and PROCESSOR* informations is deprecated, please, use addUser() and addCPU() instead.
- setBios()
-
Set BIOS informations.
- addCPU()
-
Add a CPU in the inventory.
- addUser()
-
Add an user in the list of logged user.
- addPrinter()
-
Add a printer in the inventory.
- addVirtualMachine()
-
Add a Virtual Machine in the inventory.
- addProcess()
-
Record a running process in the inventory.
- addInput()
-
Add an input device (mouce/keyboard) in the inventory.
- addEnv()
-
Register an environement variable.
- addUSBDevice()
-
USB device
- addBattery()
-
Battery
- addRegistry()
-
Windows Registry key
- addAntiVirus()
-
Registred Anti-Virus on Windows
- setAccessLog()
-
What is that for? :)
- addIpDiscoverEntry()
-
IpDiscover is used to identify network interface on the local network. This is done on the ARP level.
This function adds a network interface in the inventory.
- addSoftwareDeploymentPackage()
-
This function is for software deployment.
Order sent to the agent are recorded on the client side and then send back to the server in the inventory.
- getContent()
-
Return the inventory as a XML string.
- printXML()
-
Only for debugging purpose. Print the inventory on STDOUT.
- writeXML()
-
Save the generated inventory as an XML file. The 'local' key of the config is used to know where the file as to be saved.
- writeHTML()
-
Save the generated inventory as an XML file. The 'local' key of the config is used to know where the file as to be saved.
- processChecksum()
-
Compute the <CHECKSUM/> field. This information is used by the server to know which parts of the XML have changed since the last inventory.
The is done thank to the last_file file. It has MD5 prints of the previous inventory.
- saveLastState()
-
At the end of the process IF the inventory was saved correctly, the last_state is saved.
- addSection()
-
A generic way to save a section in the inventory. Please avoid this solution.
- feedSection()
-
Add information in inventory.
XML STRUCTURE
This section presents the XML structure used by FusionInventory. The schema is based on OCS Inventory XML with various additions.
BIOS
- SMODEL
- SMANUFACTURER
- SSN
- BDATE
- BVERSION
-
The BIOS revision
- BMANUFACTURER
- MMANUFACTURER
- MSN
- MMODEL
- ASSETTAG
- ENCLOSURESERIAL
- BASEBOARDSERIAL
- BIOSSERIAL
-
The optional asset tag for this machine.
CONTROLLERS
- CAPTION
-
Windows CAPTION field or subsystem Name from the pci.ids table
- DRIVER
- NAME
- MANUFACTURER
- PCICLASS
- PCIID
-
The PCI ID, e.g: 8086:2a40 (only for PCI device)
- PCISUBSYSTEMID
-
The PCI subsystem ID, e.g: 8086:2a40 (only for PCI device)
- PCISLOT
-
The PCI slot, e.g: 00:02.1 (only for PCI device)
- TYPE
-
The controller revision, e.g: rev 02. This field may be renamed in the future.
- REV
-
Revision of the device in the XX format (e.g: 04)
MEMORIES
- CAPACITY
- CAPTION
-
E.g: Physical Memory
- DESCRIPTION
- FORMFACTOR
-
Only avalaible on Windows, See Win32_PhysicalMemory documentation on MSDN.
- REMOVABLE
- PURPOSE
-
Only avalaible on Windows, See Win32_PhysicalMemory documentation on MSDN.
- SPEED
-
In Mhz, e.g: 800
- TYPE
- NUMSLOTS
-
Eg. 2, start at 1, not 0
- SERIALNUMBER
CPUS
- CACHESIZE
-
The total CPU cache size in KB. e.g: 3072
- CORE
-
Number of core.
- DESCRIPTION
- MANUFACTURER
- NAME
-
The name of the CPU, e.g: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz
- THREAD
-
Number of thread per core.
- SERIAL
-
CPU Id/Serial
- SPEED
-
Frequency in MHz
DRIVES
Drive is actually a filesystem.
- CREATEDATE
-
Date of the create of the filesystem in in DD/MM/YYYY format.
- DESCRIPTION
- FREE
-
Free space
- FILESYSTEM
-
File system name. e.g: ext3
- LABEL
-
Name of the partition given by the user.
- LETTER
-
Windows driver letter. Windows only
- SERIAL
-
Partition serial number
- SYSTEMDRIVE
-
Boolean. Is the system partition?
- TOTAL
-
Total space avalaible.
- TYPE
-
The mount point on UNIX.
- VOLUMN
-
System name of the partition (e.g: /dev/sda1)
HARDWARE
- USERID
-
The current user list, '/' is the delemiter. This field is deprecated, you should use the USERS section instead.
- OSVERSION
- PROCESSORN
- OSCOMMENTS
-
Service Pack on Windows, kernel build date on Linux
- CHECKSUM
-
Deprecated, OCS only.
- PROCESSORT
-
Deprecated, OCS only.
- NAME
- PROCESSORS
-
The processor speed in MHz, this field is deprecated, see CPUS instead.
- SWAP
-
The swap space in MB.
- ETIME
-
The time needed to run the inventory on the agent side.
- TYPE
- OSNAME
- IPADDR
- WORKGROUP
- DESCRIPTION
- MEMORY
- UUID
- DNS
- LASTLOGGEDUSER
-
The login of the last logged user.
- USERDOMAIN
-
This field is deprecated, you should use the USERS section instead.
- DATELASTLOGGEDUSER
- DEFAULTGATEWAY
- VMSYSTEM
-
The virtualization technologie used if the machine is a virtual machine.
Can by: Physical (default), Xen, VirtualBox, Virtual Machine, VMware, QEMU, SolarisZone
- WINOWNER
- WINPRODID
- WINPRODKEY
- WINCOMPANY
- WINLANG
MONITORS
- BASE64
-
The uuencoded EDID trame. Optional.
- CAPTION
- DESCRIPTION
- MANUFACTURER
-
The manufacturer retrieved from the EDID trame.
- SERIAL
-
The serial number retrieved from the EDID trame.
- UUENCODE
-
The uuencoded EDID trame. Optional.
PORTS
Serial, Parallel, SATA, etc
- CAPTION
- DESCRIPTION
- NAME
- TYPE
SLOTS
- CAPACITY
- CAPTION
- FORMFACTOR
- REMOVABLE
- PURPOSE
- TYPE
- DESCRIPTION
STORAGES
- DESCRIPTION
- DISKSIZE
-
The disk size in MB.
- INTERFACE
- MANUFACTURER
- MODEL
- NAME
- TYPE
-
INTERFACE can be SCSI/HDC/IDE/USB/1394/Serial-ATA
- SERIAL
-
The harddrive serial number
- SERIALNUMBER
-
Deprecated. The harddrive serial number, same as SERIAL.
- FIRMWARE
- SCSI_COID
- SCSI_CHID
- SCSI_UNID
- SCSI_LUN
SOFTWARES
- COMMENTS
- FILESIZE
- FOLDER
- FROM
-
Where the information about the software come from, can be: registry, rpm, deb, etc
- HELPLINK
- INSTALLDATE
-
Installation day in DD/MM/YYYY format. Windows only.
- NAME
- NO_REMOVE
- RELEASE_TYPE
-
Windows only for now, come from the registry
- PUBLISHER
- UNINSTALL_STRING
-
Windows only, come from the registry
- URL_INFO_ABOUT
- VERSION
- VERSION_MINOR
-
Windows only, come from the registry
- VERSION_MAJOR
-
Windows only, come from the registry
- IS64BIT
-
If the software is in 32 or 64bit, (1/0)
- GUID
-
Windows software GUID
USERS
- LOGIN
- DOMAIN
-
The Windows domain of the user, if avalaible.
VIDEOS
- CHIPSET
- MEMORY
- NAME
- RESOLUTION
-
Resolution in pixel. 1024x768.
VIRTUALMACHINES
- MEMORY
-
Memory size, in MB.
- NAME
-
The name of the virtual machine.
- UUID
- STATUS
-
The VM status: running, idle, paused, shutdown, crashed, dying, off
- SUBSYSTEM
-
The virtualisation software. E.g: VmWare ESX
- VMTYPE
-
The name of the virtualisation system family. The same type found is HARDWARE/VMSYSTEM
- VCPU
- VMID
-
The ID of virtual machine in the virtual managment system.
SOUNDS
- DESCRIPTION
- MANUFACTURER
- NAME
MODEMS
- DESCRIPTION
- NAME
ENVS
Environement variables
- KEY
- VAL
UPDATES
Windows updates
- ID
-
Update Id
- KB
-
List of KB, delimiter is '/'
USBDEVICES
USB Devices
- VENDORID
-
Vendor USB ID. 4 hexa char.
- PRODUCTID
-
Product USB ID. 4 hexa char.
- SERIAL
- CLASS
-
USB Class (e.g: 8 for Mass Storage)
- SUBCLASS
-
USB Sub Class
- NAME
-
The name of the device (optional)
NETWORKS
- DESCRIPTION
- DRIVER
- IPADDRESS
- IPADDRESS6
- IPDHCP
- IPGATEWAY
- IPMASK
- IPSUBNET
- MACADDR
- MTU
- PCISLOT
- STATUS
- TYPE
- VIRTUALDEV
-
If the interface exist or not (1 or empty)
- SLAVES
- MANAGEMENT
-
Whether or not it is a HP iLO, Sun SC, HP MP or other kink of Remote Management Interface
- SPEED
-
Interface speed in Mb/s
BATTERIES
- CAPACITY
-
Battery capacity in mWh
- DATE
-
Manufacture date in the DD/MM/YYYY format
- NAME
-
Name of the device
- SERIAL
-
Serial number
- MANUFACTURER
-
Battery manufacturer
- VOLTAGE
-
Voltage in mV
PRINTERS
- COMMENT
- DESCRIPTION
- DRIVER
- NAME
- NETWORK
-
Network: True (1) if it's a network printer
- PORT
- RESOLUTION
-
Resolution: eg. 600x600
- SHARED
-
Shared: True if the printer is shared (Win32)
- STATUS
-
Status: See Win32_Printer.PrinterStatus
- ERRSTATUS
-
ErrStatus: See Win32_Printer.ExtendedDetectedErrorState
- SERVERNAME
- SHARENAME
- PRINTPROCESSOR
PROCESSES
- USER
-
The process owner
- PID
-
The process Id
- CPUUSAGE
-
The CPU usage.
- MEM
-
The memory.
- VIRTUALMEMORY
- TTY
- STARTED
-
When the process'd been started in the YYYY/MM/DD HH:MM format
- CMD
-
The command.
ANTIVIRUS
- COMPANY
-
Comapny name
- NAME
- GUID
-
Unique ID
- ENABLED
-
1 if the antivirus is enabled.
- UPTODATE
-
1 if the antivirus is up to date.
- VERSION
3 POD Errors
The following errors were encountered while parsing the POD:
- Around line 2081:
'=item' outside of any '=over'
- Around line 2109:
You forgot a '=back' before '=head2'
- Around line 2111:
=over without closing =back