FusionInventory::Agent::XML::Query::Inventory - the XML abstraction layer
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.
The usual constructor.
Runs the backend modules to initilise the data.
Add a controller in the inventory.
Add a modem in the inventory.
Add a partition in the inventory.
Add a storage system (hard drive, USB key, SAN volume, etc) in the inventory.
Add a memory module in the inventory.
Add a port module in the inventory.
Add a slot in the inventory.
Register a software in the inventory.
Add a monitor (screen) in the inventory.
Add a video card in the inventory.
Add a sound card in the inventory.
Register a network interface in the inventory.
Save global information regarding the machine.
The use of setHardware() to update USERID and PROCESSOR* informations is deprecated, please, use addUser() and addCPU() instead.
Set BIOS informations.
Add a CPU in the inventory.
Add an user in the list of logged user.
Add a printer in the inventory.
Add a Virtual Machine in the inventory.
Record a running process in the inventory.
Add an input device (mouce/keyboard) in the inventory.
Register an environement variable.
USB device
Battery
Windows Registry key
Registred Anti-Virus on Windows
What is that for? :)
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.
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.
Return the inventory as a XML string.
Only for debugging purpose. Print the inventory on STDOUT.
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.
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.
At the end of the process IF the inventory was saved correctly, the last_state is saved.
A generic way to save a section in the inventory. Please avoid this solution.
Add information in inventory.
This section presents the XML structure used by FusionInventory. The schema is based on OCS Inventory XML with various additions.
The BIOS revision
The optional asset tag for this machine.
Windows CAPTION field or subsystem Name from the pci.ids table
The PCI ID, e.g: 8086:2a40 (only for PCI device)
The PCI subsystem ID, e.g: 8086:2a40 (only for PCI device)
The PCI slot, e.g: 00:02.1 (only for PCI device)
The controller revision, e.g: rev 02. This field may be renamed in the future.
Revision of the device in the XX format (e.g: 04)
E.g: Physical Memory
Only avalaible on Windows, See Win32_PhysicalMemory documentation on MSDN.
In Mhz, e.g: 800
Eg. 2, start at 1, not 0
The total CPU cache size in KB. e.g: 3072
Number of core.
The name of the CPU, e.g: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz
Number of thread per core.
CPU Id/Serial
Frequency in MHz
Drive is actually a filesystem.
Date of the create of the filesystem in in DD/MM/YYYY format.
Free space
File system name. e.g: ext3
Name of the partition given by the user.
Windows driver letter. Windows only
Partition serial number
Boolean. Is the system partition?
Total space avalaible.
The mount point on UNIX.
System name of the partition (e.g: /dev/sda1)
The current user list, '/' is the delemiter. This field is deprecated, you should use the USERS section instead.
Service Pack on Windows, kernel build date on Linux
Deprecated, OCS only.
The processor speed in MHz, this field is deprecated, see CPUS instead.
The swap space in MB.
The time needed to run the inventory on the agent side.
The login of the last logged user.
This field is deprecated, you should use the USERS section instead.
The virtualization technologie used if the machine is a virtual machine.
Can by: Physical (default), Xen, VirtualBox, Virtual Machine, VMware, QEMU, SolarisZone
The uuencoded EDID trame. Optional.
The manufacturer retrieved from the EDID trame.
The serial number retrieved from the EDID trame.
Serial, Parallel, SATA, etc
The disk size in MB.
INTERFACE can be SCSI/HDC/IDE/USB/1394/Serial-ATA
The harddrive serial number
Deprecated. The harddrive serial number, same as SERIAL.
Where the information about the software come from, can be: registry, rpm, deb, etc
Installation day in DD/MM/YYYY format. Windows only.
Windows only for now, come from the registry
Windows only, come from the registry
If the software is in 32 or 64bit, (1/0)
Windows software GUID
The Windows domain of the user, if avalaible.
Resolution in pixel. 1024x768.
Memory size, in MB.
The name of the virtual machine.
The VM status: running, idle, paused, shutdown, crashed, dying, off
The virtualisation software. E.g: VmWare ESX
The name of the virtualisation system family. The same type found is HARDWARE/VMSYSTEM
The ID of virtual machine in the virtual managment system.
Environement variables
Windows updates
Update Id
List of KB, delimiter is '/'
USB Devices
Vendor USB ID. 4 hexa char.
Product USB ID. 4 hexa char.
USB Class (e.g: 8 for Mass Storage)
USB Sub Class
The name of the device (optional)
If the interface exist or not (1 or empty)
Whether or not it is a HP iLO, Sun SC, HP MP or other kink of Remote Management Interface
Interface speed in Mb/s
Battery capacity in mWh
Manufacture date in the DD/MM/YYYY format
Name of the device
Serial number
Battery manufacturer
Voltage in mV
Network: True (1) if it's a network printer
Resolution: eg. 600x600
Shared: True if the printer is shared (Win32)
Status: See Win32_Printer.PrinterStatus
ErrStatus: See Win32_Printer.ExtendedDetectedErrorState
The process owner
The process Id
The CPU usage.
The memory.
When the process'd been started in the YYYY/MM/DD HH:MM format
The command.
Comapny name
Unique ID
1 if the antivirus is enabled.
1 if the antivirus is up to date.
1 POD Error
The following errors were encountered while parsing the POD:
=over without closing =back
To install FusionInventory::Agent, copy and paste the appropriate command in to your terminal.
cpanm
cpanm FusionInventory::Agent
CPAN shell
perl -MCPAN -e shell install FusionInventory::Agent
For more information on module installation, please visit the detailed CPAN module installation guide.