{"id":21401995,"url":"https://github.com/dride/dride-core-integration","last_synced_at":"2026-01-03T00:41:41.738Z","repository":{"id":42199820,"uuid":"510628203","full_name":"dride/dride-core-integration","owner":"dride","description":null,"archived":false,"fork":false,"pushed_at":"2022-07-05T07:51:51.000Z","size":10041,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-23T03:18:09.496Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dride.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-07-05T07:17:37.000Z","updated_at":"2023-09-08T18:35:57.000Z","dependencies_parsed_at":"2022-09-05T15:01:34.110Z","dependency_job_id":null,"html_url":"https://github.com/dride/dride-core-integration","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dride%2Fdride-core-integration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dride%2Fdride-core-integration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dride%2Fdride-core-integration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dride%2Fdride-core-integration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dride","download_url":"https://codeload.github.com/dride/dride-core-integration/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243894380,"owners_count":20365023,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-22T15:34:05.129Z","updated_at":"2026-01-03T00:41:41.732Z","avatar_url":"https://github.com/dride.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# This document is describing the integration process of dride-core.\n\n`dride-core` is a single executable that create the framework to connect to Dride Fleet and App.\n\n# how to get dride-core?\n\nPlease email us the following config information and we will send you a custom build of dride-core\n\n\u003e We've included a demo version of dride-core into this example, it should be used only for testing purposes.\n\n```\nVideoDirMain = \"/FULL_PATH_HERE/recordings\"\nVideoDirSub = \"/FULL_PATH_HERE/recordings\"\nVideoDirEMR = \"/FULL_PATH_HERErecordingsEMR\"\nVideoDirSnapshots = \"/FULL_PATH_HERE/snapshots\"\nConfigPath string = \"/FULL_PATH_HERE/config/settings.json\"\n```\n\n## Prerequisites\n\n- Unit local ip should be 192.168.10.1\n- Make sure this packages are installed on your kernel\n  - /usr/bin/ffmpeg (FFMPEG)\n  - /usr/bin/ffprobe (FFPROBE)\n  - /usr/sbin/rtcp (RTCP)\n  - /usr/sbin/mkfs.ext4 (FORMAT_DISK)\n  - /usr/sbin/mkfs.exfat (FORMAT_DISK_FAT)\n  - /sbin/hwclock (HWCLOCK)\n  - /usr/sbin/rtsp-stream (GO2RTC)\n  - /usr/bin/ifconfig (IFCONFIG)\n  - /usr/bin/iwconfig (IWCONFIG)\n  - /usr/bin/iw (IW)\n  - /usr/bin/qmicli (QMICLI)\n  - /usr/bin/lsusb (LSUSB)\n  - date (DATE)\n- Video record should be placed in the following directory structure\n\n```\n.\n├── dride-core (place in /usr/sbin/dride-core)\n├── config (place in /usr/sbin/)\n│   └── settings.json\n├── recordings\n│   ├── 1649970986\n│   │   ├── event.json*\n│   │   ├── route.geojson\n│   │   ├── thumbs*\n│   │   │   └── 0.webp\n│   │   └── videos\n│   │       ├── 0.mp4\n│   │       └── 1.mp4\n│   ├── 1650459754\n│   │   ├── event.json*\n│   │   ├── route.geojson\n│   │   ├── thumbs*\n│   │   │   └── 0.webp\n│   │   └── videos\n│   │       ├── 0.mp4\n│   │       └── 1.mp4\n└──── recordingsSub\n    └── 1650900000\n        ├── event.json*\n        ├── route.csv\n        ├── route.geojson\n        ├── thumbs*\n        │   └── 0.webp\n        └── videos\n            ├── 0.mp4\n            └── 1.mp4\n\n\n\n```\n\n- Items marked with '\\*' are automatically generated by dride-core\n\n# rc.dride\n\nThis file should run upon boot.\n\n```console\n# init db with default settings from settings.json\ndride-core db init\n\n# will cleanup issue list, they will be populated on each boot\ndride-core issues init \u0026\n\n# update setting file on boot\ndride-core onBootRefreshSettings\n\n# make sure we enough free space\ndride-core cleaner once\n\n# Start Dride Core cleaner (will remove old videos to make room for new ones)\n# if you dont have cron in your system you can run dride-core as cron service `/usr/sbin/dride-core cleaner` but for performance reasons it's prefered to use cron.\n(crontab -l 2\u003e/dev/null; echo \"* * * * * /usr/sbin/dride-core cleaner once\") | crontab -\n\n# Start Dride Core event button listener\ndride-core buttonListener \u0026\n\n# Start Dride Core ws\n/usr/sbin/dride-core ws \u0026 /usr/sbin/dride-core monitor $! \u0026\n\n# Ensure emergency video queue is being emptied and transferred to the designated location of emr videos\n# if you dont have cron in your system you can run dride-core as cron service `/usr/sbin/dride-core emrVideoTask` but for performance reasons it's prefered\nmkdir -p /squashfs/mnt/extsd/recordingsEMR\nmkdir -p /squashfs/mnt/extsd/snapshots\n(crontab -l 2\u003e/dev/null; echo \"*/2 * * * * /usr/sbin/dride-core emrVideoTask once\") | crontab -\n\n# Ensure all videos have a thumbnail, this will run every 60 seconds\n# if you dont have cron in your system you can run dride-core as cron service `/usr/sbin/dride-core ensureThumbs` but for performance reasons it's prefered to use cron.\n(crontab -l 2\u003e/dev/null; echo \"* * * * * /usr/sbin/dride-core ensureThumbs once\") | crontab -\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdride%2Fdride-core-integration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdride%2Fdride-core-integration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdride%2Fdride-core-integration/lists"}