ingatesystems.fuego_modules.fuego_information – Retrieve information from an Ingate SBC.

Note

This plugin is part of the ingatesystems.fuego_modules collection (version 1.1.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install ingatesystems.fuego_modules.

To use it in a playbook, specify: ingatesystems.fuego_modules.fuego_information.

New in version 1.0.0: of ingatesystems.fuego_modules

Synopsis

  • Retrieve information from an Ingate SBC.

Requirements

The below requirements are needed on the host that executes this module.

  • ingatesdk >= 1.0.14

Parameters

Parameter

Comments

client

dictionary / required

A dict object containing connection details.

address

string / required

The hostname or IP address to the unit.

password

string / required

The password for the REST API user.

port

integer

Which HTTP(S) port to connect to.

scheme

string / required

Which HTTP protocol to use.

Choices:

  • http

  • https

timeout

integer

The timeout (in seconds) for REST API requests.

username

string / required

The username of the REST API user.

validate_certs

aliases: verify_ssl

boolean

Verify the unit’s HTTPS certificate.

Choices:

  • no

  • yes ← (default)

version

string

REST API version.

Choices:

  • v1 ← (default)

error

boolean

List all errors in all tables in the preliminary configuration.

Choices:

  • no

  • yes

sip_status

boolean

added in 1.1.0 of ingatesystems.fuego_modules

Return SIP status information and metrics.

Choices:

  • no

  • yes

table_describe

boolean

Describe all configuration tables, listing its columns and their types.

Choices:

  • no

  • yes

table_list

boolean

List all tables.

Choices:

  • no

  • yes

unit

boolean

Retrieve information about the unit.

Choices:

  • no

  • yes

Notes

Note

  • This module deprecates the Ingate network module ig_unit_information that was present in Ansible < 2.10.

  • This module requires that the Ingate Python SDK is installed on the host. To install the SDK use the pip command from your shell pip install ingatesdk.

Examples

# Retrieve information about the unit
- fuego_information:
    client: "{{ stored_client_data }}"
    unit: true

# List current configuration error(s)
- fuego_information:
    client: "{{ stored_client_data }}"
    error: true

# Describe all tables
- fuego_information:
    client: "{{ stored_client_data }}"
    table_describe: true

# List all tables
- fuego_information:
    client: "{{ stored_client_data }}"
    table_list: true

# Return SIP status information and metrics
- fuego_information:
    client: "{{ stored_client_data }}"
    sip_status: true

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

error

list / elements=dictionary

List of error(s) found in the the preliminary configuration

Returned: when error is yes and success

error

dictionary

Error information

Returned: success

column

string

Column name

Returned: success

Sample: “lower_ip_dns”

err_id

integer

Error number

Returned: success

Sample: 4

msg

string

Error message

Returned: success

Sample: “No value given.”

rowid

integer

Row number

Returned: success

Sample: 1

table

string

Table name

Returned: success

Sample: “firewall.network_groups”

type

string

Type of error

Returned: success

Sample: “VALUE_MISSING”

href

string

The REST API URL to the affected row

Returned: success

Sample:http://192.168.1.1/api/v1/misc/dns_servers/1

sip_status

dictionary

SIP status information and metrics

Returned: when sip_status is yes and success

active_sessions

list / elements=dictionary

A list of active SIP sessions

Returned: success

call_id

string

The SIP Call-ID

Returned: success

Sample:qrvmhopdqmmfyjt@foouser

callee

string

The SIP callee

Returned: success

Sample: “\u0026lt;sip:foo@example.com\u0026gt;”

caller

string

The SIP caller

Returned: success

Sample: “\u0026lt;sip:alice@192.168.20.45\u0026gt;”

start

string

The time when the SIP session was established

Returned: success

Sample: “10:50:51”

state

string

The state of the SIP session

Returned: success

Sample: “Established”

count_active_sessions

integer

The amount of active SIP sessions

Returned: success

Sample: 0

count_max_registered_users

integer

The amount of maximum registered SIP users

Returned: success

Sample: 0

count_max_sessions

integer

The amount of maximum active SIP sessions

Returned: success

Sample: 0

count_registered_users

integer

The amount of registered SIP users

Returned: success

Sample: 0

idsips_blacklist

list / elements=dictionary

A list of blacklisted peers

Returned: success

Sample: []

idsips_packet_filtering

list / elements=dictionary

A list of blacklisted peers

Returned: success

hits

integer

The amount of hits for a rule

Returned: success

Sample: 0

name

string

The name of a rule

Returned: success

Sample: “Scanners”

number

integer

The rule number

Returned: success

Sample: 1

idsips_rate_limiting

list / elements=dictionary

A list of blacklisted peers

Returned: success

hits

integer

The amount of hits for a rule

Returned: success

Sample: 0

name

string

The name of a rule

Returned: success

Sample: “Default auto”

license_statistics

list / elements=dictionary

A list of different license statistics

Returned: success

current_use

integer

The amount of used licenses

Returned: success

Sample: 0

license

string

The type of license

Returned: success

Sample: “SIP Registrar Users”

max_used

integer

The amount of maximum used licenses

Returned: success

Sample: 0

message_statistics

list / elements=dictionary

A list of different message statistics

Returned: success

message

string

The type of message

Returned: success

Sample: “INVITE”

rx

integer

The amount of received messages

Returned: success

Sample: 0

tx

integer

The amount of transmitted messages

Returned: success

Sample: 0

monitored_servers

list / elements=dictionary

A list of monitored SIP servers

Returned: success

port

integer

The port used for monitoring

Returned: success

Sample: 5060

server

string

The server that is monitored

Returned: success

Sample: “192.168.28.28”

status

string

The current monitoring status

Returned: success

Sample: “Online”

transport

string

The used transport protocol

Returned: success

Sample: “UDP”

registered_users

list / elements=dictionary

A list of registered SIP users

Returned: success

registered_from

string

The IP address for which the user is registered from

Returned: success

Sample: “192.168.56.3”

user

string

The registered user

Returned: success

Sample:foouser@example.com

table_describe

list / elements=dictionary

Description of tables and associated information

Returned: when table_describe is yes and success

table

dictionary

Table information

Returned: success

href

string

The REST API URL to the table

Returned: success

Sample:http://192.168.1.1/api/v1/misc/dns_servers

info

dictionary

Column names and associated datatype

Returned: success

Sample: {“cert”: “OptPrivCert”, “name”: “Name”}

name

string

The name of the table

Returned: success

Sample: “misc.dns_servers”

table_list

list / elements=dictionary

List of tables and associated information

Returned: when table_list is yes and success

table

dictionary

Table information

Returned: success

href

string

The REST API URL to the table

Returned: success

Sample:http://192.168.1.1/api/v1/misc/dns_servers

methods

list / elements=string

A list of allowed HTTP methods

Returned: success

Sample: “GET”

name

string

The name of the table

Returned: success

Sample: “misc.dns_servers”

sdk_methods

list / elements=string

A list of allowed SDK methods

Returned: success

Sample: “add_row”

unit

dictionary

Information about the unit

Returned: when unit is yes and success

installid

string

The installation identifier

Returned: success

Sample: “any”

interfaces

string

List of interface names

Returned: success

Sample: “eth0 eth1 eth2 eth3 eth4 eth5”

lang

string

The unit’s language

Returned: success

Sample: “en”

lic_email

string

License email information

Returned: success

Sample:example@example.com

lic_mac

string

License MAC information

Returned: success

Sample: “any”

lic_name

string

License name information

Returned: success

Sample: “Example Inc”

macaddr

string

The MAC address of the first interface

Returned: success

Sample: “52:54:00:4c:e2:07”

mode

string

Operational mode of the unit

Returned: success

Sample: “Siparator”

modules

string

Installed module licenses

Returned: success

Sample: “failover vpn sip qturn ems qos rsc voipsm”

patches

list / elements=string

Installed patches on the unit

Returned: success

Sample: []

product

string

The product name

Returned: success

Sample: “Software SIParator/Firewall”

serial

string

The serial number of the unit

Returned: success

Sample: “IG-200-839-2008-0”

systemid

string

The system identifier of the unit

Returned: success

Sample: “IG-200-839-2008-0”

unitname

string

The name of the unit

Returned: success

Sample: “Testname”

version

string

Firmware version

Returned: success

Sample: “6.2.0-beta2”

Authors

  • Ingate Systems AB (@ingatesystems)