# FusionInventory Agent [![Travis Build Status](https://travis-ci.org/fusioninventory/fusioninventory-agent.svg?branch=develop)](https://travis-ci.org/fusioninventory/fusioninventory-agent) [![Appveyor Build status](https://ci.appveyor.com/api/projects/status/f2oh6p3qnr2bck1b?svg=true)](https://ci.appveyor.com/project/fusioninventory/fusioninventory-agent) [![CircleCI Build status](https://circleci.com/gh/fusioninventory/fusioninventory-agent.svg?style=svg)](https://circleci.com/gh/fusioninventory/fusioninventory-agent) ## Summary The FusionInventory 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 with fusioninventory plugin, acting as a control point. ## Description See [FusionInventory solution overview](http://fusioninventory.org/overview/) ## Dependencies ### Core Minimum perl version: 5.8 Mandatory Perl modules: * File::Which * LWP::UserAgent * Net::IP * Text::Template * UNIVERSAL::require * XML::TreePP 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: * Thread::Queue 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: * Net::SNMP * Thread::Queue Optional Perl modules: * Crypt::DES, for SNMPv3 support ### Wake on LAN task Optional Perl modules: * Net::Write::Layer2, for ethernet method support ### Deploy task Mandatory Perl modules: * Archive::Extract * Digest::SHA * File::Copy::Recursive * JSON::PP * URI::Escape Mandatory Perl modules for P2P Support: * Net::Ping * Parallel::ForkManager ## Related contribs See [CONTRIB](CONTRIB.md) to find references to FusionInventory Agent related scritps/files ## Contacts Project websites: * main site: * forge: Project mailing lists: * * Project IRC channel: * #FusionInventory on FreeNode IRC Network Please report any issues on project forge bugtracker. ## Active authors * Guillaume Rousse * Guillaume Bougard Copyright 2006-2010 [OCS Inventory contributors](https://www.ocsinventory-ng.org/) Copyright 2010-2019 [FusionInventory Team](http://fusioninventory.org) Copyright 2011-2019 [Teclib Editions](http://www.teclib-edition.com/) ## License This software is licensed under the terms of GPLv2+, see LICENSE file for details. ## Additional pieces of software The fusioninventory-injector script: * author: Pascal Danek * copyright: 2005 Pascal Danek FusionInventory::Agent::Task::Inventory::Input::Virtualization::Vmsystem contains code from imvirt: * url: * author: Thomas Liske * copyright: 2008 IBH IT-Service GmbH * License: GPLv2+