Tutorial: FreeDMR Digital API von SDR-MKK

Anleitung wie man nutzerdaten von FreeDMR Digital ├╝ber SDR-MKK bezieht.

Um die API nutzen zu k├Ânnen muss der Code von OpenWebRX etwas bearbeitet werden, ich werde hier zeigen was ge├Ąndert werden muss.

1. Als erstes m├╝ssen wir uns per SSH auf den WebSDR schalten, und mit folgenden Befehl die Datei "meta.py" ├Ąndern.

sudo nano /usr/lib/python3/dist-packages/owrx/meta.py

2. Hier suchen wir mit "STRG + W" nach folgenden Text.

data = self._downloadRadioIdData(id)

3. Jetzt m├╝ssen wir folgendes ├Ąndern und zwar schreiben wir denn unten folgenden Text direkt darunter.

data = self._downloadRadioIdData(id)
if data == None:
 data = self._downloadRadioIdDataFreeDMR(id)

4. Jetzt m├╝ssen wir die neue Funktion noch einbinden und das machen wir wie folgend. ├ťber der Funktion "def _downloadRadioIdData(self, id):" schreiben wir diesen Code.

def _downloadRadioIdDataFreeDMR(self, id):
  try:
   logger.debug("requesting radioid metadata for mode=%s and id=%s", self.mode, id)
   res = request.urlopen("http://sdr-mkk.de/api.php?id={0}".format(id), timeout=30)
   if res.status != 200:
    logger.warning("returned with error %i id=%s", res.status, id)
    return None
   data = json.loads(res.read())
   if "results" in data:
    for item in data["results"]:
    return item
  except json.JSONDecodeError:
   logger.warning("unable to parse response JSON")
  except HTTPError as e:
   logger.warning("responded with error: %s", str(e))

  return None

5. Jetzt m├╝ssen wir nur noch einmal OpenWebRX neustarten und wir sind fertig

sudo systemctl restart openwebrx

´╗┐