OBELISK R82 FIX9 — INSTALLATION

Use this guide to install Obelisk on an existing, working FreePBX server.
If Obelisk is already installed, use the update ZIP from the administration panel.

1. PREPARE

- A recent FreePBX backup and SSH access with root privileges.
- Reference environment: FreePBX 17, Debian 12, Asterisk 22 and PHP 8.2.
  Python 3, unzip and a MariaDB/MySQL client are required. The initial check
  verifies dependencies; it does not install FreePBX or upgrade the operating system.
- MariaDB >= 10.11 or MySQL >= 8.0.16, with CDR and queuelog being populated.
  Obelisk and the FreePBX sources must use the same SQL server and port.
- The PBX web address and SQL administrator credentials. Remote SQL also
  requires an existing application account allowed to connect from the PBX.

/var/www/html/obelisk must not exist. Choose a maintenance window: reloading
FreePBX also applies its other pending configuration changes.

2. EXTRACT AND CHECK

Transfer this ZIP to /root using your SFTP client. Run these commands over SSH
one line at a time. Skip the first line if you are already root.

  sudo -i
  mkdir /root/obelisk-installazione
  unzip -n /root/obelisk-installazione-guidata-20261013-r82-fix9.zip -d /root/obelisk-installazione
  cd /root/obelisk-installazione
  bash install.sh --check

Use a new extraction directory. If it already exists, choose another name in
all three commands. Do not mix different kits or add your own files to the kit.
The check does not install Obelisk. Resolve reported errors before continuing.
Active #include, #tryinclude or #exec directives in /etc/asterisk/
queues_custom_general.conf, extensions_custom.conf or manager_custom.conf
stop both --check and installation, including AMI existing/manual modes.
Have the PBX administrator review these directives and their dependencies;
do not blindly remove or comment them out. Existing custom files are preserved.
See ADMINISTRATION.txt, section 1, before retrying.

3. INSTALL

From the same directory, run:

  bash install.sh

Answer the prompts and confirm the plan. The previous check does not save
your answers. The main choices are:

- Database: local if it runs on the PBX, remote if it runs on another server.
- Telephone source: normally asteriskcdrdb; queue log table: queuelog.
- Obelisk database: normally obelisk, separate from the FreePBX database.
- AMI: create to create a local account; existing to use an account you prepared;
  manual to configure it later (live monitoring waits for that configuration).
- Web address: for example http://192.168.1.10 or https://pbx.example.com,
  without /obelisk; include the port if it is not the default.
- Obelisk administrator account: keep the credentials shown.

Remote SQL asks for both the application account and the SQL administrator:
they serve different purposes. See ADMINISTRATION.txt, section 2, for privileges.
HTTP and untrusted certificates are allowed after a warning and your confirmation.
The site must still be reachable and prevent access to private files.

Wait for the final summary and resolve any warnings. If you postpone the reload,
use Apply Config in FreePBX before testing. No PBX restart is required.

4. OPEN OBELISK

Open the address shown, such as http://192.168.1.10/obelisk/activate.php.
Choose the 7-day demo or enter the supplied code. Online activation requires
Internet access. Your browser may ask you to accept an untrusted certificate.

Sign in as administrator and run Installation check under System and utilities.
Check queues, extensions, recordings, time zone and telephone numbers; test a
call and a recording. Processing the existing history may take some time.
Configure SMTP and AI if needed. Audio deletion remains disabled until you
enable it. Keep a complete backup: configuration backups from the panel do not
include SQL history or audio files.

IF INSTALLATION STOPS

Read the error. If a saved state is reported, fix the cause and resume from
the same directory with: bash install.sh --resume
Do not delete the state or switch kits. Keep the diagnostic log path shown.
For recovery, a wrong URL, remote SQL or custom paths, see ADMINISTRATION.txt.

Documentation: https://obsk.io/en/manuals/
Attributions: assets/vendor/notices/THIRD_PARTY_NOTICES.txt in the installed site.
