Managed By - this ITFlow's side of managed mode (functions/managed.php). Not managed: * what being managed means, and the box a manager's connection code goes in. Managed: who by, * how its check-ins are going, what the manager sets here - and so what's locked - and exactly * what this ITFlow tells it. Disconnecting is here too, unless config.php keeps it managed * ($config_manager_required). The handlers are admin/post/managed_by.php. * * Off unless config.php turns it on ($config_enable_managed_by, managedEnabled()) - then the * page says how, and whether this ITFlow is still connected to a manager from before. */ require_once "includes/inc_all_admin.php"; if (!managedEnabled()) { $managed_off_connected = settingsColumnExists($mysqli, 'config_managed') && managedConnected(); $managed_off_from = trim((string) (managedConfig()['manager_name'] ?? '')); ?>
Being managed by another ITFlow is off. To turn it on, add this line to the end of config.php: $config_enable_managed_by = true;
This ITFlow is still connected to , but doesn't check in while this is off, and nothing it set is locked here. Turn it back on to carry on, or to disconnect.
Being managed by another ITFlow needs this install's database update - apply it from Maintenance > Update first.
strtotime('-5 minutes'); $last_support = $managed ? mysqli_fetch_assoc(mysqli_query($mysqli, "SELECT log_created_at, log_description FROM logs WHERE log_type = 'Login' AND log_action = 'Support' ORDER BY log_id DESC LIMIT 1")) : null; $csrf = $_SESSION['csrf_token']; $fact = function (string $label, string $value_html) { return '
  • ' . $label . '' . $value_html . '
  • '; }; $lock = ''; ?>

    Not managed

    Another ITFlow can manage this one - usually the MSP or provider that looks after it. To connect, paste the code from its Admin > Managed Instances page.

    Cron isn't running here, and this ITFlow checks in with its manager from cron. Connect if you like, but set up cron too, or the manager sees it as offline.
    It works once, for a week. If it has run out, ask for a new one.
    As people reach it in a browser - the manager's support sign-ins come here. Nothing else connects to it: it does the calling.

    What a manager can do

    • See how it's doing - versions, updates, cron, backups, errors and seats. No client data leaves here.
    • Update it, by hand or automatically - and then updates come only from there.
    • Set how many agents it can have, and its white-label key.
    • Sign in as support, for two hours at a time - each time in the audit log, and you're notified.
    • Make it read-only, or suspend it.
    • Everything else stays yours, and you can disconnect it.

    Managed by

    The last check-in didn't get through:

    The last one that did was .

    Checked in . It checks in every minute from cron.

    Connected - it checks in every minute from cron.

    Cron isn't running, so this ITFlow isn't checking in - sees it as offline. See Maintenance > Cron.

    This install's config.php keeps it managed ($config_manager_required), so it can't be disconnected here.

    What it tells

    Each check-in sends how this ITFlow is doing, and nothing about your clients beyond how many there are:

    • its address, company name and time zone
    • its version, database version, PHP version and branch, and whether an update is waiting
    • how the last update went, whether cron is running, and when the last backup was
    • how many errors were logged today, how many agents and clients it has, and its storage

    No tickets, documents, credentials, invoices or contacts.

    Set by

      ' . escapeHtml($state['message']) . '
    ' : '')) ?> ' . $state['seat_limit'] . ' agent' . ($state['seat_limit'] === 1 ? '' : 's') . '' . $lock . '
    ' . getAgentSeatsTaken() . ' taken
    ' : 'Not set from there') ?> Set from there' . $lock : 'Yours to set Modules') ?> ' . ($state['update_policy'] === 'auto' ? 'Automatic' : 'From there') . '' . $lock . ($state['update_policy'] === 'auto' ? '
    ' . ($state['update_delay_days'] > 0 ? $state['update_delay_days'] . ' day' . ($state['update_delay_days'] === 1 ? '' : 's') . ' after a release' : 'As soon as a release is out') . ', security fixes straight away
    ' : '')) ?> ' . escapeHtml(timeAgo($last_support['log_created_at'])) . '' : 'Not yet') ?>