This article explain how to configure CQRLOG with CRXLOGBOOK.
For info, CQRLOG is an ham radio logger for LINUX, see here : https://www.cqrlog.com/
Install PHP CLI runtime :
You need PHP 7.3 or more ( 7.4 or 8 ) :
$> apt-get install php-cli php-common php7.3-cli php7.3-common php7.3-curl php7.3-json php7.3-mysql php7.3-opcache php7.3-readline
Install and configure "sync" program :
Then you can install the program (here i'm doing the setup as root, but you can also done it with normal user):
$> mkdir -p /opt/cqrlogcrxsync/work/ $> cd /opt/cqrlogcrxsync/
Retreive code from CRX repository, then install it into /opt/cqrlogcrxsync/
$> cd /tmp/;mkdir -p /opt/cqrlogcrxsync/work/; $> git clone http://git.crx.cloud/f4eyq/crx-cqrlog-syncqsos.git $> cp crx-cqrlog-syncqsos/* /opt/cqrlogcrxsync/; $> rm -fr /tmp/crx-cqrlog-syncqsos; $> cd /opt/cqrlogcrxsync; $> cp config.php.example config.php
1. Database configuration :
You have two methods here depending how you run CQRLOG :
- CQRLOG MYSQL instance ( run only when CQRLOG is start ), option "save log data to local machine" is check.
- Local MYSQL instance ( install as service ), option "save log data to local machine" is uncheck.
Case 1, CQRLOG MYSQL instance :
In this case, the script will use socket file configuration,
The socket path is :
So here i simply edit the config.php and put for example :
Case 2, Local MYSQL instance :
If you run MYSQL as a service (
I can edit now the config.php file :
Here CQRLOG Mysql database running on port TCP 3306 with name : "cqrlog001" :
# netstat -plant | grep mysqld tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 20690/mysqld # mysql -e 'show databases' +--------------------+ | Database | +--------------------+ | cqrlog001 |
User is simply the "root" , with a password.
So you have to adapt it with your configuration :
$conf_db_login='root'; $conf_db_pass='mypassword'; $conf_db_host='localhost'; $conf_db_name='cqrlog001'; $conf_db_port='3306';
#CRX webservice info : $conf_crxserver='ham'; $conf_crxapikey='YOURTOKEN';
Simply change "YOURTOKEN" by you value.
3. Run the script
You can now run for the first time the script, here i've more than 50 QSO,
So i have to import it into the CRX-LOGBOOK, you have a documentation here to do that.
before send new QSO ( you can skip this step if you dont want old QSO into your online Logbook ) :
$> ./syncqsos CRX service is [online] CQRLOG Database [online] Loading QSO index file ( /opt/cqrlogcrxsync/work/cqrlog.index ) -> First time execution, init current index and export QSO(s) -> There are more thant 14268 QSO into the database, Please import your ADIF into CRXLOGBOOK before start syncronisation. -> Send new QSO(s) if needed. (scan /opt/cqrlogcrxsync/work/ for JSON QSOs files) #if i launch again the script : $> ./syncqsos CRX service is [online] CQRLOG Database [online] Loading QSO index file ( /opt/cqrlogcrxsync/work/cqrlog.index ) -> Current index is : 14268 Looking for new QSO(s) to export ... -> Nothing change detected.
Now you can put the script into a CRON like that (as root here, but you can also use your CRON user if you want ) :
$> crontab -e # m h dom mon dow command # run log sync every one minute. */1 * * * * /opt/cqrlogcrxsync/syncqsos > /dev/null 2> /dev/null
Please note, all new QSOs are send online, you must wait few minutes before see them into the CRX-LOGBOOK Online,
If you want to share QSOs on your QRZ.COM page or blog simply follow this guide.
You have finish 73 !