mbcabinetAPI

Модуль API Личного кабинета

Файловая структура модуля

/var/bill
├── mbcabapi
│   ├── chroot
│   │   ├── production
│   │   │   ├── bin -> usr/bin
│   │   │   ├── dev
│   │   │   ├── etc
│   │   │   ├── home
│   │   │   ├── lib -> usr/lib
│   │   │   ├── lib64 -> usr/lib64
│   │   │   ├── root
│   │   │   ├── sbin -> usr/sbin
│   │   │   ├── tmp
│   │   │   ├── usr
│   │   │   │   ├── bin
│   │   │   │   ├── lib
│   │   │   │   ├── lib64
│   │   │   │   ├── sbin
│   │   │   │   └── share
│   │   │   │       ├── freeradius
│   │   │   │       └── zoneinfo
│   │   │   └── var
│   │   │       ├── bill
│   │   │       │   ├── config -> /var/bill/mbcabapi/production/config
│   │   │       │   └── logs -> /var/bill/logs/mbcabapi
│   │   │       ├── lib
│   │   │       │   └── php
│   │   │       │       └── session
│   │   │       ├── log
│   │   │       │   └── php-fpm
│   │   │       └── www
│   │   │           └── mbcabapi
│   │   │               └── index.php
│   │   └── testing
│   │       ├── bin -> usr/bin
│   │       ├── dev
│   │       ├── etc
│   │       ├── home
│   │       ├── lib -> usr/lib
│   │       ├── lib64 -> usr/lib64
│   │       ├── root
│   │       ├── sbin -> usr/sbin
│   │       ├── tmp
│   │       ├── usr
│   │       │   ├── bin
│   │       │   ├── lib
│   │       │   ├── lib64
│   │       │   ├── sbin
│   │       │   └── share
│   │       │       ├── freeradius
│   │       │       └── zoneinfo
│   │       └── var
│   │           ├── bill
│   │           │   ├── config -> /var/bill/mbcabapi/testing/config
│   │           │   └── logs -> /var/bill/logs/mbcabapi
│   │           ├── lib
│   │           │   └── php
│   │           │       └── session
│   │           ├── log
│   │           │   └── php-fpm
│   │           └── www
│   │               └── mbcabapi
│   │                   └── index.php
│   ├── production
│   │   ├── add_to_chroot.sh
│   │   ├── config
│   │   │   └── config.xml
│   │   ├── public
│   │   │   └── index.php
│   │   └── updates
│   │       ├── mbcabapi.current.checksum
│   │       ├── mbcabapi.downloaded.checksum
│   │       └── mbcabapi_update.sh
│   └── testing
│       ├── add_to_chroot.sh
│       ├── config
│       │   └── config.xml
│       ├── public
│       │   └── index.php
│       └── updates
│           ├── mbcabapi.current.checksum
│           ├── mbcabapi.downloaded.checksum
│           └── mbcabapi_testing.sh
├── logs
│   ├── mbcabapi
│   │   ├── mbcabapi.debug
│   │   ├── mbcabapi.log
│   │   └── update.log

Описание директорий и файлов

chroot среда модуля

файл/директория

описание

/var/bill/mbcabapi/chroot/<version>

корневая директория chroot среды

chroot/<version>/var/bill/config

примонтированная директория системы /var/bill/mbcabapi/<version>/config

chroot/<version>/var/bill/logs

примонтированная директория системы /var/bill/logs/mbcabapi

chroot/<version>/var/www/mbcabapi

примонтированная директория системы /var/bill/mbcabapi/<version>/public

/var/bill/mbcabapi/<version>/add_to_chroot.sh

скрипт для добавления программ в изолированную chroot среду

модуль mbcabinet

файл/директория

описание

/var/bill

домашняя директория биллинга

/var/bill/mbcabapi

домашняя директория модуля

/var/bill/mbcabapi/production

production версия модуля

/var/bill/mbcabapi/testing

testing версия модуля

/var/bill/backup/mbcabapi

директория для бекапов

<version>/config/config.xml

файл конфига модуля

<version>/public

WWW директория модуля (подключается в chroot среду)

<version>/public/index.php

файл с кодом модуля

<version>/updates

директория с файлами обновления

<version>/updates/mbcabapi_update.sh

загрузчик и установщик обновлений

<version>/updates/mbcabapi.current.checksum

файл с md5 суммой текущей версии обновлений

<version>/updates/mbcabapi.downloaded.checksum

файл с md5 суммой загруженной версии обновлений

/var/bill/logs/mbcabapi

директория логов модуля

/var/bill/logs/mbcabapi/mbcabinet.log

основной лог модуля

/var/bill/logs/mbcabapi/mbcabinet.debug

debug лог модуля

/var/bill/logs/mbcabapi/update.log

лог обновлений модуля

Файл конфигурации

Файл расположен по пути /var/bill/mbcabapi/<version>/config/config.xml

<config>
  <parameters>
    <mysql>
      <host>DATABASE_IP</host>
      <username>DATABASE_USER</username>
      <password>DATABASE_PASSWORD</password>
      <dbname>DATABASE_NAME</dbname>
    </mysql>
    <timezone>Europe/Kiev</timezone>
    <partialUTF8>false</partialUTF8>
    <debug>false</debug>
    <error_log>/var/bill/logs/mbcabapi.log</error_log>
    <debug_log>/var/bill/logs/mbcabapi.debug</debug_log>
  </parameters>
</config>

параметр

описание

mysql секция

host

IP адрес базы данных

username

имя пользователя для подключения к базе данных

password

пароль пользователя

dbname

название базы данных биллинга

timezone

Временная зона

partialUTF8

Частичное использование UTF8

debug

режим дебага, значения true/false

debug_log

лог файл куда будет записана информация из дебага

error_log

освнойно файл лога

Загрузщик обновлений

Варианты запуска файла /var/bill/mbcabapi/<version>/updates/mbcabapi_update.sh

Ключ

Описание

Обычный запуск без параметров, скачает последнюю доступную версию обновления

-f

Режим принудительного повторного обновления (игнорирует md5 проверку)

-t

Произвести загрузку testing версии обновления

Задания cron

  • Файл с заданиями модуля расположен по пути /etc/cron.d/mbcabapi и содержит задания

    • запуск обновления production версии модуля

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

# update
05 6 * * * root /var/bill/mbcabapi/production/updates/mbcabapi_update.sh

При возникновении проблем, сообщите о них в нашем CRM или Telegram канале.