Follow the instructions in our manual to add our package repository and then run the below command.
apt-get install halon-extras-msui-client
yum install halon-extras-msui-client
- ansible
Check out MSUI documentation on how to configure MSUI.
The msui class needs to be imported from the extras://msui-client module path.
scripting:
files:
- id: msui-config.yaml
path: /etc/halon/msui-config.yaml
The msui class.
Returns: class object.
Example
import { msui } from "extras://msui-client";
$msui = msui();
Params
This function returns true or false if a domain exists or not.
- domain
stringFully-qualified domain name
Returns: `boolean``
Example
if ($msui->domainExist("example.com"))
{
echo "Found";
}
else
{
echo "No domain found";
}
Params
- domain
stringFully-qualified domain name
Returns: array
Example
$domain = $msui->getDomain("example.com");
if ($domain)
{
$destination = [
"host" => $domain["transport"]["destination"][0]["hostname"],
"port" => $domain["transport"]["destination"][0]["port"] ?? 25
];
}
Params
- domain
stringFully-qualified domain name
Returns: array
Example
$settings = $msui->getDomainSettings("example.com");
if ($settings["dkim"])
{
$mail->signDKIM($settings["dkim"]["selector"], "example.com", $settings["dkim"]["privatekey"]);
}
Params
- email
stringE-mail address
Returns: array
Example
$settings = $msui->getUser("user@example.com");
Params
- email
stringE-mail address
Returns: array
Example
$settings = $msui->getUserSettings("user@example.com");
if ($settings["allowlist"])
{
if (array_includes($connection["remoteip"], $settings["allowlist"]))
{
Accept();
}
}
Params
- id
stringSettings identifier
Returns: array
Example
$settings = $msui->getSetting("relaylist");
if ($settings["domains"])
{
foreach ($settings["domains"] as $domain => $value)
{
if (array_includes($connection["remoteip"], $value))
{
Accept();
}
}
}