Benutzer-Werkzeuge

Webseiten-Werkzeuge


unipager

Dies ist eine alte Version des Dokuments!


UniPager

[english Version]

Einleitung und Motivation

Bisher wurden von der Amateurfunkgruppe an der RWTH Aachen verschiedene Software-Varianten entwickelt, die jeweils einen Raspager, einen SDRPager oder einen RasPagerC9000 ansprechen konnten. Nachteil war, dass die Software ein lauffähiges X11 brauchte, um die GUI anzuzeigen. Ebenfalls war die Aufsplittung in drei Varianten im Hinblick auf die Software-Pflege unschön. Thomas Gatzweiler DL2IC hat daher in der Programmiersprache rust eine Software geschrieben, die alle diese Hardware-Varianten vereint und auch ein Web-Interface hat, mit dem sich das Programm steuern lässt.

Installation

Es gibt zwei Wege. Der erst ist eine Run&Forget-Lösung, benutzt aber ein Skript von uns. Der 2. geht über die Paketverwaltung von Hand.

1. Weg

Über das HAMNET

curl http://db0sda.ampr.org/debian/install.sh -sSf | sh -s -- hamnet

Über das Internet

curl http://www.afu.rwth-aachen.de/debian/install.sh -sSf | sh -s -- internet

2. Weg

Über das HAMNET

/etc/apt/sources.list.d/unipager.list mit folgendem Inhalt erstellen:

deb http://db0sda.ampr.org/debian unipager main
deb-src http://db0sda.ampr.org/debian unipager main

Dann folgende Befehle ausführen:

wget -O - http://db0sda.ampr.org/debian/rwth-afu.key | sudo apt-key add -
sudo apt-get update
sudo apt-get install unipager

Über das Internet

/etc/apt/sources.list.d/unipager.list mit folgendem Inhalt erstellen:

deb http://www.afu.rwth-aachen.de/debian unipager main
deb-src http://www.afu.rwth-aachen.de/debian unipager main

Dann folgende Befehle ausführen:

wget -O - http://www.afu.rwth-aachen.de/debian/rwth-afu.key | sudo apt-key add -
sudo apt-get update
sudo apt-get install unipager

Quellcode selbst kompilieren

Die Software ist unter https://github.com/rwth-afu/unipager gehostet.

Die Installation geschieht wie folgt (Bitte auch die README beachten)

git clone https://github.com/rwth-afu/unipager.git
cd unipager
curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain nightly (Dies installiert den rust-Kompiler)
cargo build --release (Dies kompiliert den UniPager)
sudo ./install.sh (Dies installiert den UniPager)

Für die Nutzung des UARTs muss auf dem Raspberry Pi ggf. die Bluetooth Schnittstelle deaktiviert werden. Siehe: https://www.raspberrypi.org/documentation/configuration/uart.md

Konfiguration und Web-Interface

Auf dem Port 8073 wartet ein HTTP-Server auf Anfragen. Es öffnet sich eine Seite, auf der sowohl das Log sichtbar ist als auch die Art des Senders und seine individuellen Einstellungen vorgenommen werden können.

Adresse zur Anbindung von Sendern

Um Sender anzubinden, kann man als Default-Knoten db0sda nehmen. Der Sender muss dort zunächst eingetragen werden. Dies können zur Zeit nur Benutzer mit Admin-Rechten tun.

Typ Hostname IP Port

Internet dapnet.afu.rwth-aachen.de 137.226.79.100 43434

Hamnet dapnet.db0sda.ampr.org 44.225.164.27 43434

Update

Wenn UniPager über die Debian-Paketverwaltung installiert ist, kann man UniPager wie jedes andere Paket updaten.

sudo apt-get update
sudo apt-get upgrade

Wenn man die Software selbst kompiliert hat, kann man mit git pull sich die neueste Version besorgen und dann erneut kompilieren. Wer seine Software und den Rust-Kompiler updaten möchte, der kann

./update.sh

im UniPager-Verzeichnis ausführen. Diese aktualisiert sowohl den Rust-Kompiler als auch den UniPager selbst.

Testversion

Es besteht die Möglichkeit, UniPager in der aktuellen Version aus dem Github Repository zu nutzen. Hier können vorab neue Funktionen getestet werden. Bis zum nächsten 'stable Release' ist diese als Testversion anzusehen und kann unter Umständen Fehler enthalten.

Diese Funktion sollte daher mit Bedacht genutzt werden.

Hierzu muss die Datei /etc/apt/sources.list.d/unipager.list abgeändert werden.

deb http://www.afu.rwth-aachen.de/debian unipager-testing main
deb-src http://www.afu.rwth-aachen.de/debian unipager-testing main

Anschließend kann auf die Testversion aktualisiert werden.

sudo apt-get update
sudo apt-get upgrade

Zugriffsbeschränkung

Die Zugriffsbeschränkung ist schon implementiert, wird aber noch verbessert. https://github.com/rwth-afu/UniPager/issues/12

Direkte Nachrichteneinspielung

Über das Websocket-Protokoll können auch mit einem Skript direkt in die Unipager-Software eingefügt werden. Der Code ist auf https://github.com/dk4pa/UniPager-SendWebsocket verfügbar.

Statistiken

Mit dem Commit 5120af3c sind auch experimentell Statistiken implementiert. Diese liefern sowohl den Status der Software als auch eine Statistik der Warteschlange und der ingesamt gesendeten Rufe.

Aufruf dieses JSON-Objects: http://unipager_ip:8073/status

Port forwarding

Für die externe Erreichbarkeit müssen die Ports 8073 und 8055 offen sein. Es empfiehlt sich dann aber den Unipager mit Passwortschutz zu versehen.

Passwortschutz für das Webinterface setzen

Um das Webinterface mit einem Passwortschutz zu versehen, legt man die Datei /var/lib/unipager/password an und trägt dort das zu verwendende Passwort ein.

Logfile Unipager auf einem Raspi

Kann via „sudo journalctl -u unipager“ aufgerufen werden

Konfiguration von USB-Soundkarten

Zunächst einmal sollte man mit dem Kommando

cat /proc/asound/cards

nachschauen, welche ID die Soundkarte hat… das kann dann z.B. so aussehen:

0 [ALSA ]: bcm2835 - bcm2835 ALSA
bcm2835 ALSA
1 [Device ]: USB-Audio - USB Audio Device
C-Media Electronics Inc. USB Audio Device at usb-3f980000.usb-1.4, full speed

Wie zu erkennen ist, hat das USB-Audio die ID 1, womit dann in der Konfiguration des Unipager

plughw:1

einzutragen wäre.

Probleme mit der internen Soundkarte

In seltenen Fällen kann es Probleme mit dem Output-Level der internen Pi-Soundkarte geben. In diesem Fall hilft eine externe USB-Soundkarte (siehe oben).

Das Problem tritt nur auf einigen Pis (Pi1 und PI2) auf und konnte noch nicht klar eingegrenzt werden, möglich wären Overclocking oder Timinig-Problem, als auch Produktionsabweichungen.

unipager.1572391624.txt.gz · Zuletzt geändert: 2019/10/30 00:27 von oe7bsh