Skip to content

Multi IXP Functionality

Barry O'Donovan edited this page Aug 1, 2013 · 2 revisions

** WORK IN PROGRESS - JUST INITIAL DOCUMENTATION **

Multi-IXP functionality was added for and sponsored by IIX Corp in June / July 2013. Multi-IXP mode allows IXP Manager to manage multiple IXPs with shared customers. Part of this development also made (as a requirement) related non-multi-IXP features more robust such as infrastructure management.

Multi-IXP mode must be explicitly enabled with an application.ini option:

multiixp.enabled = true

If not enabled, IXP Manager will function as it always did (with additional features) and just use a default IXP in the background.

Options

multiixp.enabled = true

To enable multi-IXP functionality.

Coding Hints

In the controllers, you can check if multi-IXP is enabled and execute multi-IXP code via:

if( $this->multiIXP() )
{
    // your multi-IXP specific code here
}

And in Smarty templates, you can add multi-IXP only content via:

{if $multiIXP}
    <!-- Your multi-IXP content -->
{/if}

If you have a $customer entity, you can get their associated IXPs via:

if( $customer->getIXPs() ) {}

To get all customers of a specific IXP:

$ixp->getCustomers()

To get the default IXP in single-IXP mode:

$ixp = $this->getD2R( '\\Entities\\IXP' )->getDefault();