Skip to main content
Skip table of contents

Env variables

APP_NAME=VMS # project name

APP_ENV=production # environment configuration, some code can only be executed in a specific environment

APP_KEY= # this is generated during installation (required for internal Laravel operations)

APP_DEBUG=false # toggle debug mode on/off

# Current release version.

RELEASE=0.0.0.0 # current release number used for sentry

# Application license data.

LICENSE_SOURCE= # possible values for file and server

LICENSE_URL= # license URL to be used, this parameter is used if LICENSE_SOURCE=server

LICENSE_APP_NAME= # application code, this parameter is used if LICENSE_SOURCE=server

LICENSE_APP_SECRET= # application key, this parameter is used if LICENSE_SOURCE=server

LICENSE_PUBLIC_KEY= # license file key, this parameter is used if LICENSE_SOURCE=file

# Locale settings

AVAILABLE_LOCALES=ru,en # available languages in the system

FALLBACK_LOCALE=ru # if no translation is available for the desired language, the default language will be used

LOCALE=ru # default language

TIMEZONE=UTC # Timezone in which all dates will be stored in the database

# Database credentials.

DB_CONNECTION=mysql # database driver

DB_HOST=mysql-server # host for database connection

DB_PORT=3306 # port for database connection

DB_CRITICAL_PORT=3306 # port for connecting to the master node of the database (only needed if the database is running in cluster mode)

DB_DATABASE=vms # database name for connecting to the database

DB_USERNAME=vms # user for connecting to the database

DB_PASSWORD=vms # password for connecting to the database

#error compare mysql 8 version (mysql 8 not support NO_AUTO_CREATE_USER mode) DB_MYSQL_MODES=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

# Clickhouse settings

CLICKHOUSE_HOST=127.0.0.1

CLICKHOUSE_PORT=8123

CLICKHOUSE_DATABASE=vms

CLICKHOUSE_USERNAME=vms

CLICKHOUSE_PASSWORD=vms

CLICKHOUSE_TIMEOUT=10

CLICKHOUSE_PROTOCOL=http

# DHCP credentials.

DB_DHCP_HOST=mysql-server

DB_DHCP_PORT=3306

DB_DHCP_DATABASE=kea_dhcp

DB_DHCP_USERNAME=kea_dhcp

DB_DHCP_PASSWORD=kea_dhcp

# System settings.

BROADCAST_DRIVER=pusher

CACHE_DRIVER=redis

QUEUE_CONNECTION=beanstalkd

FILESYSTEM_DISK=public

MIN_SYMBOLS_SEARCH_CAMERAS=3

DISABLE_THROTTLE=false

BACKUP_PATH='/var/backups/mysql/dumps/'

MAX_MEDIA_SERVER_STORAGE_USAGE=80

LOG_CHANNEL=stack # log channel selection

# Send messages to slack channel.

LOG_SLACK_WEBHOOK_URL=https://hooks.slack.com/ # webhook URL for sending notifications

# Sentry credentials.

SENTRY_LARAVEL_DSN=https://sentry.com/ # URL for sending exceptions to sentry

# Password for admin in seeder.

ADMIN_PASSWORD=qweasdzxc # default password for the admin created during system deployment

# Endpoint for download.

DOWNLOAD_PAGE_PATH=/download # path for downloading updates for the decktop client

# Send push to users after creating, updating events connected to streams.

SEND_PUSH_STREAM_INACTIVE=false # flag for sending pushes to users for the stream_active/stream_inactive event

# PTZ local/server

PTZ=server # PTZ workflow

# Login and password for Onvif client.

CAMERA_LOGIN=admin # default login for working with cameras using Onvif

CAMERA_PASSWORD=admin # default password for working with cameras using Onvif

# If the stream credentials not fit, take credentials form onvif config.

CHECK_CREDENTIALS=false # flag for working with credentials for Onvif

# Enable requests for autoprovisioning.

AUTOPROVISIONING_ENABLED=true # flag for working with autoprovisioning

# Deley for dispatch AutoCreateStreamsDHCP job, because Onvfi client works with a delay.

ONVIF_DELAY=120 # delay for job creation of streams for autoprovisioning

# Interval (in seconds) with will be touch large jobs.

INTERVAL_TOUCH_LARGE_JOBS=35 # interval in seconds for updating long-running jobs (used to fix a bug where the queue manager forgets about these jobs)

IS_STREAM_URL_UNIQUE=true # flag that disables validation for adding unique video stream addresses

# Count of domains for argument in console command stream_info

OFFSET_STREAM_INFO_SERVERS=50

# Time during which the last motion detect mark on the camera can be updated (in minutes)

MARK_MOTION_DETECT_TIMEOUT=30

# Seconds by which the shift occurs when creating a mark

OFFSET_CREATING_MARK=5

# Force delete cameras after n days

FORCE_DELETE_CAMERAS=30

# Intercom tree max depth (calculate depth with root group)

INTERCOM_TREE_MAX_DEPTH=4

# Default number of days that the archive is stored on the camera.

DEFAULT_ARCHIVE_STORAGE_DAYS=30

# Redis settings

REDIS_HOST=redis-server

REDIS_PASSWORD=null

REDIS_PORT=6379

# Beanstalkd settings

BEANSTALK_HOST=beanstalkd

BEANSTALK_PORT=11300

# WebSocket settings.

PUSHER_APP_ID=app

PUSHER_APP_KEY=key

PUSHER_APP_SECRET=secret

PUSHER_APP_CLUSTER=mt1

PUSHER_HOST=push1st

PUSHER_PORT=6002

WEBSOCKET_CONNECTION_PATH=/pusher # prefix for websocket connection

# Media Server settings

PROCESS_MEDIA_SERVER_V2_REQUEST=true

MEDIA_SERVER_V2_TIMEOUT=10

LOG_MEDIA_SERVER_V2_CALLBACK_REQUEST=true # enables/disables logging of callbacks from the media server

MEDIA_SERVER_V2_SYNC_CALLBACK=true # switch between synchronous/asynchronous processing of media server callbacks

MEDIA_SERVER_V2_EVENT_DVR_DURATION=20

OFFSET_ARCHIVE_RANGE_STREAMS=20

# Default limits for media server v2 servers.

MEDIA_SERVER_V2_STREAMS_LIMIT=200

MEDIA_SERVER_V2_BITRATE_LIMIT=300

# Flussonic settings

PROCESS_FLUSSONIC_REQUEST=true

FLUSSONIC_LOGIN=login

FLUSSONIC_PASSWORD=password

FLUSSONIC_SECRET_KEY=key

FLUSSONIC_MCELD_PROTOCOL=wss

FLUSSONIC_LICENCE= FLUSSONIC_TIMEOUT=10

# Default limits for flussonic servers

FLUSSONIC_STREAMS_LIMIT=200

FLUSSONIC_BITRATE_LIMIT=300

# IsApi credentials. Used to handle motion detection on camera.

IS_API_SCHEMA=http

IS_API_TIMEOUT=10

PROCESS_IS_API_REQUEST=true

# Case analytic settings

ANALYTIC_TIMEOUT=10

PROCESS_ANALYTIC_REQUEST=true

ORCHESTRATOR_TIMEOUT=10

ORCHESTRATOR_ENDPOINT=http://127.0.0.1

ANALYTIC_ORCHESTRATOR_SOCKET_EVENT_ENDPOINT=ws://127.0.0.1:6001/ws/app/app-key/events/?session=session

ANALYTIC_ORCHESTRATOR_SOCKET_STAT_ENDPOINT=ws://127.0.0.1:6001/ws/app/app-key/stats/?session=session

ANALYTIC_LICENSE_STATISTIC_LIMIT=5

ANALYTIC_MAX_FILES_COUNT_FOR_GROUP=100

FORCE_DELETE_ANALYTIC_CASE_AFTER_DAYS=7

# Analytic case meta setting.

# Threshold in %

MOTION_DETECT_THRESHOLD=90

FACE_THRESHOLD=50

PERSON_COUNTING_THRESHOLD=30

LICENSE_PLATE_THRESHOLD=50

VISITOR_COUNTING_THRESHOLD=50

CROSSING_LINE_DETECTION_THRESHOLD=50

CAMERA_OBSTACLE_THRESHOLD=50

LOUD_SOUND_DETECTION_THRESHOLD=70

SMOKE_FIRE_THRESHOLD=50

# Size of push in sidebar (in bytes)

SIZE_OF_SIDEBAR_PUSH=20000

# TO SET STATIC IP TO CAMERA DURING AUTOPROVISIONING

ONVIF_CHANGE_STATIC_NETWORK=false

ONVIF_CHANGE_DEFAULT_GATEWAY=false

USE_CAMERA_SERIAL_NUMBER_AS_PASSWORD=true

#Schedule settings

# settings for executing cron tasks (used for load balancing in cluster installations and for disabling tasks if they are not currently needed for any reason)

SCHEDULE_IS_FLUSSONIC_ENABLED=false

SCHEDULE_MEDIA_SERVER_V2_ENABLED=true

SCHEDULE_IS_HIKVISION_ENABLED=false

SCHEDULE_IS_DHCP_ENABLED=true

SCHEDULE_IS_BASIC_SCRIPTS_ENABLED=true

SCHEDULE_IS_BILLING_ENABLED=false

SCHEDULE_IS_INTERCOM_ENABLED=false

SCHEDULE_IS_SYNC_INTERCOM_ENABLED=false

SCHEDULE_IS_SYNC_INTERCOM_KEY_ENABLED=false

SCHEDULE_IS_FORCE_DELETE_CAMERAS_ENABLE=true

SCHEDULE_IS_ANALYTIC_ENABLE=true

# Nodes settings.

NODES_CLUSTER_ENABLE=false

# Available only when cluster enabled.

NODE_NUMBER=1

NODES_COUNT=2

# Available only when cluster disabled.

OFFSET_ARCHIVE_RANGE_SERVERS=50

# APN settings

# settings for APN notifications for iOS devices

APN_KEY_ID=key

APN_TEAM_ID=id

APN_BUNDLE_ID=bundle

APN_PRIVATE_KEY=voip.p8

APN_PRODUCTION=false

# Huawei push settings

HUAWEI_APP_ID=

HUAWEI_CLIENT_SECRET=

#FCM settings

FIREBASE_CREDENTIALS=fcm.jsom

#Setting for mobile

MOBILE_SCHEMA= # special scheme by which mobile clients are opened when this link is accessed (used in external authorization and QR code scanning for profile creation). This value is automatically set during the build process

# Intercom settings

INTERCOM_CODE_LIFE_TIME=60 # lifetime in seconds for the doorphone entry code that needs to be entered on the doorphone itself

INTERCOM_KEY_LIFE_TIME=60 # lifetime in seconds after entering the code on the doorphone to attach the key

INTERCOM_ENDPOINT=https://api.sputnik.systems # cloud address for doorphone operation

INTERCOM_TIMEOUT=3 # timeout for doorphone requests

INTERCOM_PROCESS_REQUEST=true # flag for processing doorphone requests (used in cases where the API should work without sending real requests)

INTERCOM_USER_NUMBER_POSTFIX=@domain.com # suffix for SIP address with which apartments are created on the doorphone

INTERCOM_AUTH_TOKEN=token # Token for authorization of doorphone requests

INTERCOM_END_CALL=60

INTERCOM_SIP_SERVER=localhost:5060

# if the value is true - is_online will handle by webhook from cloud

# if the value is false - is_online will handle by re-interrogation in console command

INTERCOM_SPUTNIK_HANDLE_IS_ONLINE_BY_CALLBACK=false

# Max count of users temporary codes

INTERCOM_MAX_CODES_COUNT=5

# Stream condition management.

RESTART_STREAM_AFTER=30

# Standard for cameras without increased connection

FIRST_STEP_DISABLE_STREAM_AFTER=500

FIRST_STEP_DISMISS_STREAM_AFTER=168

SECOND_STEP_DISABLE_STREAM_AFTER=400

SECOND_STEP_DISMISS_STREAM_AFTER=120

THIRD_STEP_DISABLE_STREAM_AFTER=200

THIRD_STEP_DISMISS_STREAM_AFTER=5

# For cameras with increased connection

INCREASED_FIRST_STEP_DISABLE_STREAM_AFTER=1500

INCREASED_FIRST_STEP_DISMISS_STREAM_AFTER=144

INCREASED_SECOND_STEP_DISABLE_STREAM_AFTER=1000

INCREASED_SECOND_STEP_DISMISS_STREAM_AFTER=96

INCREASED_THIRD_STEP_DISABLE_STREAM_AFTER=500

INCREASED_THIRD_STEP_DISMISS_STREAM_AFTER=48

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.