GLPI Agent

Summary
The GLPI Agent is a generic management agent. It can perform a
certain number of tasks, according to its own execution plan, or on behalf of a
GLPI server acting as a control point.
Description
This agent is based on a fork of FusionInventory agent and so works mainly like FusionInventory agent.
It introduces new features and a new protocol to communicate directly with a GLPI server and its native inventory feature. Anyway it also keeps the compatibility with FusionInventory for GLPI plugin.
Download
- Release: See our github releases for official win32, MacOSX & linux packages.
- Development builds:
Documentation
The GLPI Agent has its dedicated documentation project where any contribution will also be appreciated.
The documentation itself is readable online.

Dependencies
Core
Minimum perl version: 5.8
Mandatory Perl modules:
- File::Which
- LWP::UserAgent
- Net::IP
- Text::Template
- UNIVERSAL::require
- XML::LibXML
- Cpanel::JSON::XS
Optional Perl modules:
- Compress::Zlib, for message compression
- HTTP::Daemon, for web interface
- IO::Socket::SSL, for HTTPS support
- LWP::Protocol::https, for HTTPS support
- Proc::Daemon, for daemon mode (Unix only)
- Proc::PID::File, for daemon mode (Unix only)
Inventory task
Optional Perl modules:
- Net::CUPS, for printers detection
- Parse::EDID, for EDID data parsing
- DateTime, for reliable timezone name extraction
Optional programs:
- dmidecode, for DMI data retrieval
- lspci, for PCI bus scanning
- hdparm, for additional disk drive info retrieval
- monitor-get-edid-using-vbe, monitor-get-edid or get-edid, for EDID data access
- ssh-keyscan, for host SSH public key retrieval
Network discovery tasks
Mandatory Perl modules:
Optional Perl modules:
- Net::NBName, for NetBios method support
- Net::SNMP, for SNMP method support
Optional programs:
- arp, for arp table lookup method support
Network inventory tasks
Mandatory Perl modules:
Optional Perl modules:
- Crypt::DES and Crypt::Rijndael for SNMPv3 support
Wake on LAN task
Optional Perl modules:
- Net::Write::Layer2, for ethernet method support
Deploy task
Mandatory Perl modules:
- Digest::SHA
- File::Copy::Recursive
- Cpanel::JSON::XS
- URI::Escape
Mandatory Perl modules for P2P Support:
- Net::Ping
- Parallel::ForkManager
MSI Packaging
Tools:
Mandatory Perl modules:
MacOSX Packaging
Tools:
Public databases
Forking/Contributors
See CONTRIB to find references to GLPI Agent related scritps/files
We would like to ask you few things in the context of a fork:
- Do not change/remove the LICENSE file
- Do not change/remove any lines in the Changes file that do not relate to your own code.
This is really important to keep the changelog coherent between forks and will facilitate
your life if you need to follow our own changes.
Don't hesitate to add any entry in Changes or CONTRIB to describe the
purpose of your changes.
Project websites:
- main site:
- forum:
- github:
Project Telegram channel:
Please report any issues on project github issue tracker.
Active authors
Copyright 2006-2010 OCS Inventory contributors
Copyright 2010-2019 FusionInventory Team
Copyright 2011-2021 Teclib Editions
License

This software is licensed under the terms of GPLv2+, see LICENSE file for
details.
When forking, please, don't delete this file.
Additional pieces of software
The glpi-injector script is based on fusioninventory-injector script:
- author: Pascal Danek
- copyright: 2005 Pascal Danek
GLPI::Agent::Task::Inventory::Vmsystem
contains code from imvirt:
- url:
- author: Thomas Liske
- copyright: 2008 IBH IT-Service GmbH
- License: GPLv2+