add a feature check for js8py since it's optional now

This commit is contained in:
Jakob Ketterl 2021-09-22 13:11:27 +02:00
parent acc70b6449
commit 6589c9dbe1
1 changed files with 14 additions and 2 deletions

View File

@ -2,7 +2,7 @@ import subprocess
from functools import reduce
from operator import and_
import re
from distutils.version import LooseVersion
from distutils.version import LooseVersion, StrictVersion
import inspect
from owrx.config.core import CoreConfig
from owrx.config import Config
@ -80,7 +80,7 @@ class FeatureDetector(object):
"wsjt-x-2-4": ["wsjtx_2_4"],
"packet": ["direwolf"],
"pocsag": ["digiham"],
"js8call": ["js8"],
"js8call": ["js8", "js8py"],
"drm": ["dream"],
}
@ -449,6 +449,18 @@ class FeatureDetector(object):
"""
return self.command_is_runnable("js8")
def has_js8py(self):
"""
The js8py library is used to decode binary JS8 messages into readable text. More information is available on
[its github page](https://github.com/jketterl/js8py).
"""
required_version = StrictVersion("0.1")
try:
from js8py.version import strictversion
return strictversion >= required_version
except ImportError:
return False
def has_alsa(self):
"""
Some SDR receivers are identifying themselves as a soundcard. In order to read their data, OpenWebRX relies