SystemAddress#

NAME#

Kernel::System::SystemAddress - all system address functions

DESCRIPTION#

Global module to add/edit/update system addresses.

PUBLIC INTERFACE#

new()#

create an object

my $SystemAddressObject = $Kernel::OM->Get('Kernel::System::SystemAddress');

SystemAddressAdd()#

add system address with attributes

my $ID = $SystemAddressObject->SystemAddressAdd(
    Name     => 'info@example.com',
    Realname => 'Hotline',
    ValidID  => 1,
    QueueID  => 123,
    Comment  => 'some comment',
    UserID   => 123,
);

SystemAddressGet()#

get system address with attributes

my %SystemAddress = $SystemAddressObject->SystemAddressGet(
    ID => 1,
);

returns:

%SystemAddress = (
    ID         => 1,
    Name       => 'info@example.com',
    Realname   => 'Hotline',
    QueueID    => 123,
    Comment    => 'some comment',
    ValidID    => 1,
    CreateTime => '2010-11-29 11:04:04',
    ChangeTime => '2010-12-07 12:33:56',
)

SystemAddressUpdate()#

update system address with attributes

$SystemAddressObject->SystemAddressUpdate(
    ID       => 1,
    Name     => 'info@example.com',
    Realname => 'Hotline',
    ValidID  => 1,
    QueueID  => 123,
    Comment  => 'some comment',
    UserID   => 123,
);

SystemAddressList()#

get a list of system addresses

my %List = $SystemAddressObject->SystemAddressList(
    Valid => 0,  # optional, defaults to 1
);

returns:

%List = (
    '1' => 'sales@example.com',
    '2' => 'purchasing@example.com',
    '3' => 'service@example.com',
);

SystemAddressIsLocalAddress()#

Checks if the given address is a local (system) address. Returns true for local addresses.

if ( $SystemAddressObject->SystemAddressIsLocalAddress( Address => 'info@example.com' ) ) {
    # is local
}
else {
    # is not local
}

SystemAddressQueueID()#

find dispatching queue id of email address

my $QueueID = $SystemAddressObject->SystemAddressQueueID( Address => 'info@example.com' );

SystemAddressQueueList()#

get a list of the queues and their system addresses IDs

my %List = $SystemAddressObject->SystemAddressQueueList(
    Valid => 0,  # optional, defaults to 1
);

returns:

%List = (
    '5' => 3,
    '7' => 1,
    '9' => 2,
);

SystemAddressLookup()#

returns the ID or the name of a system address

my $SystemAddressID = $SystemAddressObject->SystemAddressLookup(
    Name          => 'info@znuny.com',
    # or
    SystemAddress => 'info@znuny.com',
);

my $Name = $SystemAddressObject->SystemAddressLookup(
    ID              => 2,
    # or
    SystemAddressID => 2,
);

NameExistsCheck()#

return 1 if another system address with this name already exists

my $Exists = $SystemAddressObject->NameExistsCheck(
    Name => 'Some Address',
    ID   => 1,                  # optional
);

SystemAddressIsUsed()#

Return 1 if system address is used in one of the queue’s or auto response’s.

my $SytemAddressIsUsed = $SystemAddressObject->SystemAddressIsUsed(
    SystemAddressID => 1,
);