Hexchat: Unterstützung für das ZNC-Wiedergabemodul hinzufügen

Erstellt am 24. Aug. 2014  ·  13Kommentare  ·  Quelle: hexchat/hexchat

Das erweiterte Wiedergabemodul [ 1 ] ermöglicht es IRC-Clients, unerwünschte wiederholte Pufferwiedergabe zu vermeiden. IRC-Clients können das Modul auffordern, ab einem bestimmten Zeitpunkt eine partielle Pufferwiedergabe zu senden.

Darüber hinaus unterstützt der neueste ZNC-Master [ 2 ] persistente Abfragepuffer [ 3 ]. Ein Client kann sich dafür entscheiden, Abfragepuffer beizubehalten, bis sie explizit in der GUI geschlossen werden. Dies kann auch am einfachsten über dasselbe Wiedergabemodul erfolgen, um unerwünschte Reaktionen von ZNC zu vermeiden [ 4 ].

Zusammen mit dem mymsg-Plugin [ 5 ] bringen diese beiden Funktionen die IRC-Erfahrung mit ZNC auf eine ganz andere Ebene.

BEARBEITEN: Verweise auf die nicht mehr vorhandene Quick-and-Dirty-Beispielimplementierung entfernt. Der Fork, in dem es gespeichert wurde, existiert nicht mehr.

[1] http://wiki.znc.in/Playback
[2] https://github.com/znc/znc/pull/598
[3] http://wiki.znc.in/Query_buffers
[4] https://github.com/znc/znc/pull/620
[5] https://github.com/TingPing/plugins/blob/master/HexChat/mymsg.py

PS. Bitte erwägen Sie, den Client in die Lage zu versetzen, Nachrichten von sich selbst ohne ein zusätzliches mymsg-Plugin zu empfangen.

bounty enhancement

Hilfreichster Kommentar

Gibt es Neuigkeiten zum Fortschritt?

Alle 13 Kommentare

Ich würde fast sagen, das gehört in ein Plugin. Es scheint ziemlich einfach zu sein, aber es ist viel mehr ZNC-spezifisch als Serverzeit.

@jpnurmi Mind https://github.com/hexchat/hexchat/tree/znc

EDIT: Nachdem ich darüber nachgedacht habe, denke ich, dass das Plugin nur einen einzigen Zeitstempel pro Server speichern sollte. Kein Grund, bei der aktuellen Nutzung einen pro Kontext beizubehalten.

Sieht vielversprechend aus! Ich habe damit herumgespielt und festgestellt, dass mit Zeitstempeln etwas schief geht. Es wiederholt Kanalnachrichten, die ich bereits gesehen habe. Sieht so aus, als ob ich die gleiche Wiedergabe erneut bekomme, wenn ich die Verbindung sofort trenne und dann wieder verbinde.

Das ist mir auch aufgefallen, es kann aber nichts im Plugin sein. Sind Ihnen ähnliche Probleme in Ihrem WIP-Zweig aufgefallen?

Scheint mit WIP/Playback zu funktionieren. Einige zufällige Gedanken, die zur Lösung des Problems beitragen könnten:

  • ein Zeitstempel pro Verbindung reicht aus
  • das Wiedergabemodul fügt allen außer Cap-Nachrichten Serverzeit hinzu
  • Sie sollten den letzten Zeitstempel jeder gesehenen Nachricht speichern, nicht nur privmsg
  • Pass auf, dass du nicht den Zeitstempel 001 nimmst, bevor du den ersten Wiedergabebefehl sendest, sonst bekommst du keine Wiedergabe :)

ein Zeitstempel pro Verbindung reicht aus

Habe das schon lokal gemacht, Problem besteht immer noch.

Sieht so aus, als ob ich die gleiche Wiedergabe erneut bekomme, wenn ich die Verbindung sofort trenne und dann wieder verbinde.

Das ist mir auch aufgefallen, es kann aber nichts im Plugin sein.

Ich hatte eine kurze Unterbrechung und erneute Verbindung mit ZNC und es hat mir eine Nachricht in einem Kanal gesendet, die während der Unterbrechungsperiode aufgetreten ist (bestätigt von einem anderen Client). Dies war _ohne_ Wiedergabeunterstützung. Vielleicht versucht es ungeackte Sendungen von der unterbrochenen Verbindung auf die neue. Wenn HC also um Unterstützung für die Wiedergabe gebeten hätte, hätte es diese Nachricht wahrscheinlich zweimal erhalten.

Gibt es Neuigkeiten zum Fortschritt?

@jpnurmi , 404 auf Ihren Links. :schreien:

Ich habe noch einen Versuch mit einem Plugin gemacht, das besser zu funktionieren scheint: https://github.com/TingPing/plugins/blob/master/HexChat/playback.lua

Ich hatte eine kurze Unterbrechung und erneute Verbindung mit ZNC und es hat mir eine Nachricht in einem Kanal gesendet, die während der Unterbrechungsperiode aufgetreten ist (bestätigt von einem anderen Client). Dies war ohne Wiedergabeunterstützung. Vielleicht versucht es ungeackte Sendungen von der unterbrochenen Verbindung auf die neue. Wenn HC also um Unterstützung für die Wiedergabe gebeten hätte, hätte es diese Nachricht wahrscheinlich zweimal erhalten.

ist dies nicht nur ein Standard-ZNC-Puffer, der nichts mit dem [[playback]]-Modul für znc zu tun hat.

@TingPing Ihr neuestes playback.lua Skript hat für mich gut funktioniert, obwohl ich immer noch beobachte, wie Nachrichten wiedergegeben werden, die ich bereits gesehen habe. Danke, aber das ist besser als nichts :)

@TingPing Ihr neuestes Skript " Ordnung funktioniert, obwohl ich immer noch die Wiedergabe von Nachrichten beobachte, die ich bereits gesehen habe. Danke, aber das ist besser als nichts :)

Beachten Sie, dass das Skript Zeitstempel nicht absichtlich auf der Festplatte speichert.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

blasphemy picture blasphemy  ·  13Kommentare

philicious picture philicious  ·  10Kommentare

Davidj361 picture Davidj361  ·  9Kommentare

Atario picture Atario  ·  13Kommentare

petterreinholdtsen picture petterreinholdtsen  ·  8Kommentare