Extras
Zustellberichte
Die SMSEagle-Software ermöglicht es Ihnen, Zustellberichte für jede gesendete SMS zu aktivieren. Zustellberichte sind eine Funktion, mit der Sie eine Bestätigung erhalten, dass die SMS auf dem Telefon des Empfängers empfangen wurde.
Um Zustellberichte zu aktivieren, gehen Sie bitte im Web-GUI zum Menü Settings und setzen Sie „Delivery Reports“ auf „Yes“

Sobald Zustellberichte im Web-GUI aktiviert sind, können Sie überprüfen, ob eine SMS an den Empfänger zugestellt wurde:
Im Web-GUI Öffnen Sie im Menü Folders > Sent items die Nachricht, die Sie überprüfen möchten. Klicken Sie auf „Show Details“ in der oberen rechten Ecke der Nachricht. Das Feld „Modem Status“ enthält Informationen zum Zustellstatus

Mit Webhooks Die CallbackURL-Funktion ermöglicht es, einen Webhook für die Änderung des Zustellstatus zu definieren. Webhooks sind standardmäßige HTTP-Endpunkte, die in Ihrer externen Anwendung implementiert sind und HTTP-Anfragen vom SMSEagle-Gerät entgegennehmen. Webhooks ersparen es Ihnen, kontinuierlich Anfragen an das SMSEagle-Gerät senden zu müssen, um den Nachrichtenstatus abzufragen. Weitere Details finden Sie im Kapitel „Callback URL“ dieses Benutzerhandbuchs.
Mit API
Verwenden Sie die Methode „read_sms“, um Daten für eine ausgewählte SMS im Ordner sentitems abzurufen. Die Daten enthalten die Spalten „Status“ und „DeliveryDateTime“ mit Informationen zum Zustellstatus der Nachricht. Weitere Informationen zu den möglichen Werten der Spalte „Status“ finden Sie in der API-Dokumentation.
Direkte Verbindung zur SMSEagle-Datenbank
Die Datenbank von SMSEagle basiert auf dem PostgreSQL-Datenbank-Engine. Sie können einen direkten Zugriff auf die Datenbank nutzen, um SMS-Nachrichten direkt über SQL-Abfragen aus der bzw. in die Datenbank zu lesen/schreiben.
Der Datenbankzugriff für externe Anwendungen ist standardmäßig deaktiviert. Um ihn zu aktivieren, gehen Sie im Web-GUI zum Menü Settings und aktivieren Sie die folgende Einstellung:

Sobald der Datenbankzugriff aktiviert ist, ist es möglich, sich von einer externen Anwendung aus mit den folgenden Anmeldedaten mit der Datenbank zu verbinden:
Host: IP-Adresse Ihres Geräts
Datenbankname:
smseagleBenutzer:
smseagleuserPasswort:
postgreeagle
Einfügen kurzer SMS mittels SQL
Das einfachste Beispiel ist eine kurze Textnachricht (begrenzt auf 160 Zeichen):
INSERT INTO outbox (
DestinationNumber,
TextDecoded,
CreatorID,
Coding,
Class,
SenderID
) VALUES (
'1234567',
'This is a SQL test message',
'Program',
'Default_No_Compression',
-1,
'smseagle1'
);
INSERT INTO user_outbox (
id_outbox,
id_user
) SELECT CURRVAL(pg_get_serial_sequence('outbox','ID')), 1;
Im obigen Beispiel gehört die Nachricht zum Benutzer mit id_user 1 (standardmäßig ‚admin‘). Die id_user-Werte für andere Benutzer finden Sie in der Tabelle public.“user“.
Einfügen langer SMS mittels SQL
Das Einfügen mehrteiliger Nachrichten ist etwas komplizierter, Sie müssen auch den UDH-Header erstellen und ihn hexadezimal geschrieben im UDH-Feld speichern. Sofern Sie keinen guten Grund haben, dies manuell zu tun, verwenden Sie die API.
Bei einer langen Textnachricht beginnt der UDH mit 050003, gefolgt von einem Byte als Nachrichtenreferenz (Sie können dort einen beliebigen Hex-Wert einsetzen, er sollte jedoch für jede Nachricht unterschiedlich sein, im folgenden Beispiel D3), einem Byte für die Anzahl der Nachrichten (im Beispiel 02, es sollte für jede Nachricht, die Sie an dieselbe Telefonnummer senden, eindeutig sein) und einem Byte für die Nummer der aktuellen Nachricht (01 für die erste Nachricht, 02 für die zweite usw.).
Zum Beispiel könnte eine lange Textnachricht aus zwei Teilen wie folgt aussehen:
INSERT INTO outbox (
"DestinationNumber",
"CreatorID",
"MultiPart",
"UDH",
"TextDecoded",
"Coding",
"Class",
"SenderID"
) VALUES (
'1234567',
'Program',
'true',
'050003D30201',
'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, qui',
'Default_No_Compression',
-1,
'smseagle1'
)
INSERT INTO outbox_multipart (
"ID",
"SequencePosition",
"UDH",
"TextDecoded",
"Coding",
"Class"
) SELECT
CURRVAL(pg_get_serial_sequence('outbox','ID')),
2,
'050003D30202',
's nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.',
'Default_No_Compression',
-1;
INSERT INTO user_outbox (
id_outbox,
id_user
) SELECT
CURRVAL(pg_get_serial_sequence('outbox','ID')),
1;
*Hinweis: Das Hinzufügen des UDH bedeutet, dass Sie weniger Platz für Text haben. Im obigen Beispiel können Sie nur 153 Zeichen in einer einzelnen Nachricht verwenden. *
Skripte zur Datenbankbereinigung
Wir haben einige nützliche Skripte hinzugefügt, die verwendet werden können, um SMS-Nachrichten über die Linux-CLI aus der Datenbank zu löschen. Die Skripte befinden sich im folgenden Verzeichnis: /mnt/nand-user/scripts/
db_delete – Skript zum Löschen von SMS aus den Ordnern Inbox und SentItems, die älter als das angegebene Datum sind. Verwendung:
./db_delete YYYYMMDDhhmmdb_delete_7days – Skript zum Löschen von SMS aus den Ordnern Inbox und Sentitems, die älter als 7 Tage sind. Verwendung:
./db_delete_7daysdb_delete_allfolders – Skript zum Bereinigen der PostgreSQL-Datenbankordner (Inbox, SentItems, Outbox). Speziell dafür konzipiert, regelmäßig über cron ausgeführt zu werden. Verwendung:
./db_delete_allfoldersdb_delete_select - Skript zum Löschen von SMS aus einem ausgewählten Datenbankordner (Inbox, Outbox, SentItems, Trash). Verwendung:
./db_delete_select {inbox|outbox|sentitems|trash}
Hinzufügen des Skripts zum System-cron-Daemon
Erstellen Sie eine Datei im Verzeichnis /etc/cron.d/ mit einem gewünschten Namen (z. B. pico db_cleaner)
Beispielinhalt dieser Datei:
0 0 1 * * root /mnt/nand-user/scripts/db_delete_allfolders
Dadurch wird das Bereinigungsskript jeden 1ten Tag des Monats ausgeführt.
SNMP-Agent
„Simple Network Management Protocol (SNMP) ist ein Internetstandard-Protokoll zur Verwaltung von Geräten in IP-Netzwerken. Es wird hauptsächlich in Netzwerkmanagementsystemen eingesetzt, um netzwerkgebundene Geräte auf Zustände zu überwachen, die administrative Aufmerksamkeit erfordern” (Quelle: Wikipedia).
Das SMSEagle-Gerät verfügt über einen integrierten Net-SNMP-Agenten. Der SNMP-Agent bietet Zugriff auf den Linux Host MIB-Baum des Geräts und ermöglicht zusätzlich (mittels der Erweiterung NET-SNMP-EXTEND-MIB) den Zugriff auf benutzerdefinierte, SMSEagle-spezifische Metriken.
Verfügbare SNMP-Metriken, die den Zustand eines SMSEagle-Geräts beschreiben, sind:
Metrikname |
Beschreibung |
OID |
|---|---|---|
GSM_Signal |
Gibt die 3G/4G/5G-Signalstärke in Prozent zurück. Wertebereich: 0-100. Wenn das Modem nicht mit dem 3G/4G/5G-Netzwerk verbunden ist, gibt GSM_Signal 0 zurück. |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.11.71.83.77.95.83.105.103.110.97.108.49 |
GSM_NetName1 |
Gibt den Netzwerknamen der aktuell verwendeten SIM-Karte zurück |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.12.71.83.77.95.78.101.116.78.97.109.101.49 |
GSM_ModemState[X], wobei X die Modemnummer ist |
Gibt Informationen zum Modemstatus (aktiviert/deaktiviert) zurück |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.11.77.111.100.101.109.83.116.97.116.101.49 |
FolderOutbox_Total |
Gibt die Anzahl der SMS-Nachrichten im Outbox-Ordner zurück (Länge der ausgehenden Warteschlange) |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.18.70.111.108.100.101.114.79.117.116.98.111.120.95.84.111.116.97.108 |
FolderInbox_Total |
Gibt die Anzahl der SMS-Nachrichten im Inbox-Ordner zurück |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.17.70.111.108.100.101.114.73.110.98.111.120.95.84.111.116.97.108 |
FolderSent_Last24H |
Gibt die Anzahl der SMS-Nachrichten zurück, die innerhalb der letzten 24 Stunden vom Gerät gesendet wurden |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.18.70.111.108.100.101.114.83.101.110.116.95.76.97.115.116.50.52.72 |
FolderSent_Last1M |
Gibt die Anzahl der SMS-Nachrichten zurück, die innerhalb des letzten Monats vom Gerät gesendet wurden |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.17.70.111.108.100.101.114.83.101.110.116.95.76.97.115.116.49.77 |
FolderSent_Last24HSendErr |
Gibt die Anzahl der SMS-Nachrichten zurück, die innerhalb der letzten 24 Stunden mit Fehler gesendet wurden. Ein Fehler tritt auf, wenn das 3G/4G/5G-Modem die SMS-Nachricht nicht senden kann oder die Nachricht vom 3G/4G/5G-Netzbetreiber abgelehnt wird |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.25.70.111.108.100.101.114.83.101.110.116.95.76.97.115.116.50.52.72.83.101.110.100.69.114.114 |
Temp |
Gibt den letzten Wert der Temperatur (in °C) vom internen Temperatursensor zurück. Erfordert, dass der Sensor aktiviert ist. |
.1.3.6.1.4.1.8072.1.3.2.4.1.2.4.84.101.109.112.1 |
Humidity |
Gibt den letzten Wert der Luftfeuchtigkeit (in %) vom internen DHT22-Sensor zurück. Erfordert, dass der Sensor aktiviert ist. |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.8.72.117.109.105.100.105.116.121 |
Temp[X] wobei X zwischen 1 und 4 liegt |
Gibt den letzten Wert der Temperatur (in °C) zurück von: Temp1: internem Temperatursensor Temp2-Temp4: externen 1-Wire-Temperatursensoren. |
.1.3.6.1.4.1.8072.1.3.2.4.1.2.5.84.101.109.112.49.1 (für den 1. Sensor) |
SIM_State[X] wobei X die Nummer des Modems ist |
Gibt Informationen zum physischen SIM-Status zurück |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.10.83.73.77.95.83.116.97.116.101.49 |
SIM_RegState[X] wobei X die Nummer des Modems ist |
Gibt Informationen zum Registrierungsstatus der SIM-Karte im Mobilfunknetz zurück. |
.1.3.6.1.4.1.8072.1.3.2.3.1.2.13.83.73.77.95.82.101.103.83.116.97.116.101.49 |
Ergebniswerte
Mit OID
Ergebniswerte für jede benutzerdefinierte Metrik sind verfügbar und können von der in der obigen Tabelle angegebenen OID abgerufen werden.
Mit textuellem Namen
Alternativ können Ergebniswerte für jede benutzerdefinierte Metrik mithilfe textueller Namen aus dem OID-Baum unter: NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“[METRIC NAME]“ abgerufen werden
For example:
Result value for parameter GSM_Signal1:
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“GSM_Signal1“Wenn Ihr gewähltes SNMP-Tool nicht auf NET-SNMP-EXTEND-MIB-Objekte zugreifen kann, können Sie die MIB-Definitionen hier herunterladen: https://www.smseagle.eu/download/NET-SNMP-EXTEND-MIB.txt
Lesen der Ergebniswerte Um die Parameterwerte vom SNMP-Agenten testweise auszulesen, können Sie beliebige für das SNMP-Protokoll verfügbare Tools verwenden (zum Beispiel: NET-SNMP-Bibliothek für Linux oder iReasoning MiB-Browser für Windows).
Beispiel für das Auslesen des Werts GSM_Signal1 mit der NET-SNMP-Bibliothek
a) Befehl zum Auslesen des Ergebniswerts:
snmpget -v 2c -c public localhost .1.3.6.1.4.1.8072.1.3.2.3.1.2.11.71.83.77.95.83.105.103.110.97.108.49
Ergebnis:
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“GSM_Signal1“ = STRING: 54
Kommentar: Der Wert der GSM/3G/4G/5G-Signalstärke beträgt 54 %
Beispiel für das Auslesen des Werts GSM_NetName1 mit der NET-SNMP-Bibliothek
a) Befehl zum Auslesen des Ergebniswerts:
snmpget -v 2c -c public localhost .1.3.6.1.4.1.8072.1.3.2.3.1.2.12.71.83.77.95.78.101.116.78.97.109.101.49
Ergebnis:
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“GSM_NetName1“ = STRING: PLAY
Kommentar: Das derzeit auf der SIM-Karte verwendete Netz ist PLAY
Beispiel für das Auslesen des Werts FolderOutbox_Total mithilfe der NET-SNMP-Bibliothek (und des textuellen Namens der Metrik)
a) Befehl zum Auslesen des Ergebniswerts:
snmpget -v 2c -c public ip-of-smseagle ‚NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“FolderOutbox_Total“‘
Ergebnis:
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“FolderOutbox_Total“ = STRING: 0
Kommentar: Die Anzahl der in der Outbox-Warteschlange wartenden SMS-Nachrichten beträgt 0
Beispiel für das Auslesen der Systemlaufzeit eines Linux-Hosts mithilfe der NET-SNMP-Bibliothek
a) Befehl zum Auslesen des Ergebniswerts:
snmpget -v 2c -c public ip-of-smseagle system.sysUpTime.0
Ergebnis:
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (216622) 0:36:06.22
Kommentar: Das Linux-System läuft seit 36 Stunden, 6,22 Minuten
Beispiel für das Durchsuchen der SMSEagle-Erweiterungsparameter IM MIB-Baum mithilfe der NET-SNMP-Bibliothek
a) Befehl zum Auslesen des Ergebniswerts:
snmpwalk -v 2c -c public ip-of-smseagle .1.3.6.1.4.1.8072.1.3.2.3.1.2
Ergebnis:
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“GSM_Signal1“ = STRING: 54
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“GSM_NetName1“ = STRING: PLAY
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“FolderInbox_Total“ = STRING: 15
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“FolderSent_Last1M“ = STRING: 19
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“FolderOutbox_Total“ = STRING: 0
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“FolderSent_Last24H“ = STRING: 0
NET-SNMP-EXTEND-MIB::nsExtendOutputFull.“ FolderSent_Last24HSendErr“ = STRING: 0
Beispiel für das Durchsuchen der SMSEagle-Erweiterungsparameter IM MIB-Baum mithilfe des MIB-Browsers

Einrichten der SNMP-v3-Zugriffskontrolle
Standardmäßig verwenden SMSEagle-Geräte die SNMP-v2-Zugriffskontrolle. Die Verwendung von v3 kann die Sicherheit erhöhen, ist jedoch nicht zwingend erforderlich. Um einfach auf die SNMP-v3-Zugriffskontrolle umzustellen, haben wir ein spezielles Shell-Skript vorbereitet, das sich im Verzeichnis /mnt/nand-user/smseagle befindet.
Melden Sie sich per SSH mit dem root-Konto an
Navigieren Sie zu: cd /mnt/nand-user/smseagle/
Konfigurationsskript: ./snmpv3
Das Skript kann mit folgenden Parametern ausgeführt werden:
add
del
enablev2
disablev2
Um einen v3-BENUTZER hinzuzufügen, führen Sie bitte aus:
./snmpv3 add USERNAME PASSWORD ENCRYPTIONPASSWORD
Um einen BENUTZER zu löschen, führen Sie bitte aus:
./snmpv3 del
Um die v2-Zugriffsrichtlinie zu deaktivieren, führen Sie aus:
./snmpv3 disablev2
Um die v2-Zugriffsrichtlinie zu aktivieren, führen Sie aus:
./snmpv3 enablev2
Weiterleitung von Logs an einen externen Server
Unsere Geräte verwenden rsyslog zur Verwaltung von Logs. Hier beschreiben wir, wie zusätzliche Regeln für den rsyslog-Daemon konfiguriert werden: rsyslogd. Dies ist nur ein kurzer Auszug aus der rsyslog-Handbuch-Website. Vollständige Informationen finden Sie unter: https://www.rsyslog.com/
Die Konfiguration von Rsyslogd wird über eine Konfigurationsdatei verwaltet, die sich unter /etc/rsyslog.conf befindet
Fügen Sie am Ende der Konfigurationsdatei Folgendes hinzu:
*.* action(type=“omfwd“ target=“SERVER_IP“ port=“PORT“ protocol=“PROTOCOL“
action.resumeRetryCount=“10“
queue.type=“linkedList“ queue.size=“10000“)
wobei: SERVER_IP – IP-Adresse (oder FQDN) des empfangenden Servers PORT – Port auf dem empfangenden Server PROTOCOL einer der Werte: tcp, udp
Beispiel:
*.* action(type=“omfwd“ target=“192.168.0.250“ port=“10514“ protocol=“tcp“
action.resumeRetryCount=“10“
queue.type=“linkedList“ queue.size=“10000“)
SSL-Verschlüsselung Ihres Log-Traffics: Bitte werfen Sie einen Blick auf diesen Artikel: https://www.rsyslog.com/doc/v8-stable/tutorials/tls_cert_summary.html
Automatische Überprüfung auf Software-Updates
Die SMSEagle-Software wird kontinuierlich verbessert. Wir hören auf unsere Kunden, und neue Versionen basieren auf den Anregungen/Anfragen unserer Kunden. Software-Updates werden häufig veröffentlicht und bieten Zugang zu neuen Funktionen sowie Fehlerbehebungen für gemeldete Probleme. Die Web-GUI bietet Ihnen die Möglichkeit, automatisch nach neuen Software-Updates zu suchen. Dies kann auf zwei Arten geschehen:
Manuelle Überprüfung
Um manuell nach verfügbaren Software-Updates zu suchen, gehen Sie zum Menü Settings > Tab Maintenance. Klicken Sie auf die Schaltfläche „Check manually now“. Oben erscheint eine rote Sprechblase mit der Information, ob die Software aktuell ist.
Automatische Prüfung
Um automatische Prüfungen auf Software-Updates zu starten, gehen Sie zum Menü Settings > Tab Updates und aktivieren Sie die Option „Automatically check for software updates“. Dadurch werden regelmäßige Prüfungen (einmal im Monat) auf verfügbare Software-Updates aktiviert. Wenn ein neues Update verfügbar ist, erscheint im Menü Settings> Sysinfo neben der aktuellen Softwareversionsnummer die Meldung „Update Available“.
Wenn Sie „Notify Admin about new software version by SMS“ auswählen, sendet das Gerät zusätzlich eine SMS an das Standard-Administratorkonto (sofern eine Telefonnummer im Konto hinterlegt ist) mit einer Benachrichtigung über das neue Software-Update.

Screenshot von „General settings-Updates“
Hinweis: Ihr SMSEagle-Gerät muss über eine HTTPS-Verbindung zur Adresse www.smseagle.eu verfügen, damit diese Funktion funktioniert.
Wissensdatenbank & Support-Portal
Weitere Informationen und nützliche Hinweise zur Konfiguration des SMSEagle-Geräts finden Sie in unserer Online-Wissensdatenbank und im Support-Portal unter: https://support.smseagle.eu