TS-GatewayPTT für Linux» gestartet von andi99762 - 13.04.2025 18:01 ![]() ![]() ![]() ![]() |
![]() ![]() |
#1 - 13.04.2025 18:01
Hallo Gateway-Freunde,
da mich immer wieder Anfragen erreichen, ob es auch ein Teamspeak-Gateway-Plugin für Linux gibt, habe Ich hier und jetzt für euch zum ausprobieren die erste BETA-Version der TS-GatewayPTT für Linux.
Die angehängte ZIP-Datei wird in das PLUGIN-Verzeichnis vom TS3-Client entpackt. (/home/<user>/.ts3client/plugins) Â
Enthalten ist das Plugin TS-GatewayPTT.so, ein Ordner der die config.ini, bake.wav sowie roger.wav enthält.
Einstellungen werden vor dem Plugin-Start in der config.ini gemacht.Â
Nach jeder Änderung an der Config muss das Plugin neu gestartet werden.
Rückmeldungen, Probleme, Wünsche könnt Ihr mir gerne schreiben.
73 von DO5ALF / Andreas0 angehängte Bilder 1 angehängte Dateien TS-GatewayPTT_Linux.zip » 2.08 MB 61 Download(s) zuletzt bearbeitet: 13.04.2025 / 18:06 MEZ
1Aktionen
#2 - 13.04.2025 18:32
Die Konfiguration kurz erklärt.
[TAB1], [TAB2], ...etc... => Sektion für verschiedene Tabs im Teamspeak-Client
GWON=[0/1] <= Gatewayfunktion aktiv in dem Tab
PORT=/dev/ttsS0Â <= COM-Port Device
TXRTS=[0/1] <= PTT-Ausgang am RTS-Pin
TXDTR=[0/1] <= PTT-Ausgang am DTR-Pin
RTS_INVERT=[0/1] <= PTT-Ausgang invertiert (RTS-Pin)
DTR_INVERT=[0/1] <= PTT-Ausgang invertiert (DTR-Pin)
CCTX=[0/1] <= ChannelCommander beim Senden
CCRX=[0/1] <= ChannelCommander beim Empfangen
TXDELAY=[0-1000] <= TX-Delay nach dem Sprechen
STICKY=[0/1] <= Gateway nicht verschieben
VOX_SET=[0/1] <= VOX-Input aktiv
VOX_LEVEL=[-50 - 50] <= VOX-Level am Eingang
Â1 angehängte Bilder
151.75 KB
1 angehängte Dateien TSGWLinux_Conf.png » 8.38 KB 22 Download(s) zuletzt bearbeitet: 13.04.2025 / 18:32 MEZ
0Aktionen
#4 - 23.04.2025 7:44
Hallo Andreas,
vielen vielen vielen dank für deine Großartige Mühe. Ich habe das jetzt mehere Tage testen können und habe dazu nichts zu bemängeln. Funktioniert hervorragend und wie erwartet.
Einen wunsch hätte ich allerdings noch. Wäre es möglich die Bake etwas genauer einzustellen, wie zB.:
- Das diese Bake erst ausgesendet wird keiner mehr spricht bzw. der Kanal "Frei" ist, zB.:
Dann würde die Bake erst senden, wenn die Frequenz und/oder Kanal frei ist (wenn nicht gesprochen wird).
Code
BAKEBUSY=1
- Das die Aussendung der Bake anhand einem Schema ausgesendet wird, wie zB.:
Bake wird nur zur vollen oder halben Stunde ausgesendet:
Code
BAKE_INTERVAL=0,30
oder Bake wird zur vollen, viertel, halben oder dreiviertel Stunde ausgesendet:
Code
BAKE_INTERVAL=0,15,30,45
oder Bake wird nur zur Minute 55 in jeder Stunde ausgesendet:
Code
BAKE_INTERVAL=55
oder Bake wird in diesen Zeitabständen zB. alle 30 Minuten ausgesendet: (minus Vorzeichen)
Code
BAKE_INTERVAL=-30
Ich habe zwar keine Ahnung von der Programmiersprache "Lua" aber in Java, PHP und Co würde ich das so lösen (Denkanreize):
Das Problem ist, wenn der Teamspeak 3 Client mit Plugin erst um 14:13 Uhr gestartet wird, geht die Bake bei der derzeitgen Einstellung von 30 Minuten, erst wieder um 14:43 oder 15:13 Uhr auf Sendung.
Eventuell könntest du uns den Quellcode offenlegen sodass wir gemeinsam daran arbeiten können.zuletzt bearbeitet: 23.04.2025 / 18:26 MEZ
0Aktionen
#5 - 23.04.2025 20:02
Hallo Maik,
die Einstellung der Bake werde Ich entsprechend berücksichtigen, aktuell bin ich daran die Einstellungen (wie bei der Windows-Variante) über ein Setup-Fenster zu realisieren, damit man nicht mehr manuell in der config.ini rumschreiben muss.
In der nächsten Version die ich veröffentliche wird das dann warscheinlich gleich mit so umgesetzt sein das die Bake entsprechend einzustellen ist.Â0Aktionen
#6 - 23.04.2025 20:17
Hallo Andreas,
wenn du meine ehrliche Meinung hören willst, würde ich lieber auf die GTK verzichten. Ich bin ein Freund von Konfigurationsdateien und dem "minimalistischem". Weniger ist manchmal einfach "mehr".
Aber das ist Geschmackssache. Danke das du dir die Zeit nimmst und das zur Verfügung stellst!zuletzt bearbeitet: 23.04.2025 / 20:18 MEZ
0Aktionen
#8 - 23.04.2025 20:34
Hallo Andreas,
das klingt doch super. Ansonsten fiel mir noch auf, wenn der Teamspeak 3 Client gestartet ist, jedoch nicht mit einem Server verbunden ist, sendet die Bake trotzdem. Ich glaube das sollte so nicht sein, oder?0Aktionen
#9 - 23.04.2025 21:47
Abonniert
Dominik aus H.
Registriert seit: 06.03.2007 letzter Login: 23.04.2025 21:42 Uhr Beiträge: 14 letzter Beitrag: 23.04.2025 22:19 Uhr Hallo zusammen,
im Anhang das Bild. Mit dem Befehl LS /dev /tty*.  So wie ich lese müsste das USB Interface ja erkannt werden und unter ttyUSB0 erreichbar sein.
Wenn ich in der config ändere:
Code
[TAB1]
GWON=1
PORT=/dev/ttyUSB0
TXRTS=1
TXDTR=0
RTS_INVERT=1
DTR_INVERT=0
CCTX=1
CCRX=0
TXDELAY=500
STICKY=0
VOX_SET=1
VOX_LEVEL=0
ROGER_WAV=roger.wav
ROGER_LEN=600
ROGER_ON=1
ROGER_VOL=-40
BAKE_ON=1
BAKE_WAV=bake.wav
BAKE_INT=20
BAKE_LEN=5000
BAKE_VOL=-10
Sollte es doch funktionieren oder mach ich hier was falsch?
Danke für die Rückmeldung.
73 de Speedfire Dominik1 angehängte Bilder
55.19 KB
1 angehängte Dateien WhatsApp Bild 2025-04-23 um 21.37.40_eefb2d2d.jpg » 284.35 KB 15 Download(s) zuletzt bearbeitet: 23.04.2025 / 21:49 MEZ
0Aktionen
#10 - 23.04.2025 21:55
@Dominik: die Adresse vom USB2COM-Adapter sieht erstmal so richtig aus. Im Client-Log vom TS3-Client kannst du sehen ob der Port geöffnet werden konnte, wenn nicht liegt es evtl. an den Zugriffsrechten.
@Maik: Aktuell wird der Connect-Status bei der Bakensendung nicht berücksichtigt. (d.h. Bake sendet auch wenn offline, da mach ich am besten einfach noch eine Config-Option mit rein dann kann das individuell eingestellt werden)zuletzt bearbeitet: 23.04.2025 / 22:03 MEZ
0Aktionen
#11 - 23.04.2025 22:19
Abonniert
Dominik aus H.
Registriert seit: 06.03.2007 letzter Login: 23.04.2025 21:42 Uhr Beiträge: 14 letzter Beitrag: 23.04.2025 22:19 Uhr ja hab gerade geschaut. PTT -Port: ERROR => /dev/ttyUSB0 kommt im Client Log.
Zugriffsrechte muss ich schauen, sind aber vergeben. mhhh0Aktionen
#12 - 23.04.2025 22:22
Ich schaue mal ob ich für die nächste Version noch den Error-Grund mit ausgeben kann, damit man erkennen kann warum der Port nicht geöffnet werden kann.0Aktionen
#13 - 4.05.2025 18:15
Darf ich mal nebenher fragen, ob ein Squelch-Signal über den COM-Port verarbeitet werden kann? Damit würden wir doh die VOX umgehen. Also SQL OFF = PTT ON ??? Evtl mit InvertFunktion?
VG
Carsten0Aktionen
#14 - 5.05.2025 6:12
Hallo Carsten,
bei der Windows-Version der TS-GatewayPTT ist das schon möglich,Â
hier bei Linux wird das zukünftig auch mit rein kommen.1Aktionen
#15 - 5.05.2025 6:37
Guten Morgen,
mir ist noch eine Sache bei dem Plugin aufgefallen. Wenn ich im SSB Modus schalte, höre ich im TS die Übertragung. Sobald ich die PTT Taste drücke, höre ich plötzlich nichts mehr, solange wie ich den TS Neustarte.
Ich habe noch einen Vorschlag für das Plugin:
- Es wäre super wenn man sich den Rogerpiep anhand eines in der Config vorher definierten Hz Tons aussuchen bzw. einstellen könnte. Zb.
Code
ROGER_ON=1
ROGER_USE_FILE=0
ROGER_FILE=roger.wav
ROGER_USE_TONE=1
# Hertz / Frequenz
ROGER_TONE=1200
# in Millisekunden
ROGER_TONE_LENGHT=800zuletzt bearbeitet: 5.05.2025 / 6:40 MEZ
0Aktionen
#16 - 5.05.2025 6:51
Hallo Maik,
auch hier kann Ich sagen das es eigentlich auch so angedacht war (bei der Windows-Version ist es zumindest so) das daß Plugin den Ton selbst generiert, anhand der vorgegebenen Tonfrequenz.
Beim ersten Versuch unter Linux hatte Ich das so noch nicht hin bekommen, daher hatte Ich erstmal auf die Notlösung mit vorgegebener WAV-Datei zurückgegiffen. Das Plugin ist die erste Programmierarbeit die Ich unter Linux mache. Die erste Beta war für mich sozusagen nur ein Test ob es überhaupt machbar und lauffähig ist.
*ABER*
Seit der Veröffentlichung habe Ich gut dazugelernt und probiert, experimentiert und denke das Ich inzwischen das Knowhow habe auch das generieren eines Sinus-Tons hin zu bekommen.
Ich bin aktuell dabei das Plugin grundlegend neu zu gestalten,... Man darf gespannt sein auf die nächste Version die rauskommt.0Aktionen
#18 - 6.05.2025 21:48
Hi Andy,
ich versuche grad den RTS-Pin zum Schalten zu bringen. Nach meinem Verständnis sollte doch die config.ini im Standard irgendeine Wirkung zeigen. Jedoch bleibt bei mir der Pin auf LOW (-12V).
Muss /dev/ttyS0 mit Rechten versehen werden? Mind. 666 oder besser 777? Und muss der Port in die dialout Gruppe?
VG
Carsten0Aktionen
#19 - 7.05.2025 5:59
Guten Morgen Carsten,
Wenn du in das Client-Log vom TS3-Client schaust findest du den Eintrag ob er den Zugrifft auf den Port hat oder nicht.
Wenn dort ein Fehler angezeigt wird, kann das an fehlenden Zugriffsrechten liegen.Â0Aktionen
#20 - 7.05.2025 14:39
Natürlich wie immer: Kaum macht man's richtig, schon funktioniert's!
Das Log zeigte PTT-Port: ERROR
Der User hatte sich irgendwie aus der dialout Gruppe verabschiedet. Also neu hinzugefügt.
sudo usermod -aG dialout User
Nun zeigt das Log PTT-Port: OK => /dev/ttyS0, auch nach Neustart. RTS schaltet nun von LOW (-12V) auf HIGH (+12V) bei PTT.
Danke für den Hinweis & VG
Carsten1Aktionen
|
![]() ![]() |