[RC] AJAX Chat

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Apomorph
Mitglied
Beiträge: 118
Registriert: 04.11.2006 16:07

Beitrag von Apomorph »

Hallo zusammen,

also wir haben den Chat nun schonmal öffentlich am laufen gehabt und mußten dabei feststellen, dass viele Texte einfach vom Chat verschluckt und nicht angezeigt werden.

Außerdem haben User immer wieder folgende Fehlermeldung:

Code: Alles auswählen

ChatDegu: Fehler: Verbindungsstatus: 500 
Und werden auch mitten unterm schreiben wegen timeout aus dem Chat gekickt.

Mancher User wird im Onlinekasten rechts gar nicht erst angezeigt, kann aber munter weiterschreiben und alle können es lesen.

Woran können diese Probleme liegen?

Auch eine Verbesserungsvorschlag hätte ich noch. In unserem alten Chat gibt es die Möglichkeit auf ein Briefchen neben dem Usernamen im Onlinekasten zu klicken um zu dem anderen zu flüstern. Parallel dazu gibt es aber auch die @Funktion. Durch klick auf das @ neben dem Briefchen stand dann im Chat für alle lesbar @Userxy: blablabla. Ist es möglich diese Funktion nachzurüsten?

Grüße
Michl
John Doe
Mitglied
Beiträge: 684
Registriert: 30.03.2005 01:06

Beitrag von John Doe »

Apomorph hat geschrieben:In unserem alten Chat gibt es die Möglichkeit auf ein Briefchen neben dem Usernamen im Onlinekasten zu klicken um zu dem anderen zu flüstern.
Klick auf den Usernamen macht doch das.
Apomorph
Mitglied
Beiträge: 118
Registriert: 04.11.2006 16:07

Beitrag von Apomorph »

Ok war vielleicht mißverständlich.

Das es die Flüsterfunktion gibt und wie diese funktioniert ist mir klar. Mir geht es um die @Funktion.

Grüße
Michl
madblueimp
Mitglied
Beiträge: 62
Registriert: 14.08.2007 15:09
Kontaktdaten:

Beitrag von madblueimp »

Apomorph hat geschrieben:also wir haben den Chat nun schonmal öffentlich am laufen gehabt und mußten dabei feststellen, dass viele Texte einfach vom Chat verschluckt und nicht angezeigt werden.
Versuch doch bitte mal dieses Verhalten im Demo-Chat zu reproduzieren.
Wenn das nicht möglich ist probier mal eine unmodifizierte Chat-Version auf deinem Server aus.
Apomorph hat geschrieben:Außerdem haben User immer wieder folgende Fehlermeldung:

Code: Alles auswählen

ChatDegu: Fehler: Verbindungsstatus: 500 
Status 500 = Internal Server Error
Vielleicht packt der Server die vielen AJAX-Anfragen nicht.
Apomorph hat geschrieben:Und werden auch mitten unterm schreiben wegen timeout aus dem Chat gekickt.
Klingt ganz danach als hat dein Server ein Problem mit dem Chat.
Apomorph hat geschrieben:Mancher User wird im Onlinekasten rechts gar nicht erst angezeigt, kann aber munter weiterschreiben und alle können es lesen.
Siehe oben.
Apomorph hat geschrieben:Woran können diese Probleme liegen?
Generell empfiehlt sich immer der Vergleich mit dem Demo-Chat.
Der läuft auf einem Shared Webhosting Angebot und über HTTPs. Performance sollte also bei moderator Nutzerzahl kein Problem sein.

Die nächste Version des Chats wird aber dennoch die Möglichkeit bringen Chat-Updates per Flash-Interface und Socket-Server vom Server aus zu "pushen" um das "Pulling" durch die Clients zu umgehen.
Dazu braucht es aber auch die Möglichkeit einen Socket-Dienst zu starten, was auf den meisten Shared-Hosting-Angeboten nicht möglich sein wird.
Apomorph hat geschrieben:Auch eine Verbesserungsvorschlag hätte ich noch. In unserem alten Chat gibt es die Möglichkeit auf ein Briefchen neben dem Usernamen im Onlinekasten zu klicken um zu dem anderen zu flüstern. Parallel dazu gibt es aber auch die @Funktion. Durch klick auf das @ neben dem Briefchen stand dann im Chat für alle lesbar @Userxy: blablabla. Ist es möglich diese Funktion nachzurüsten?
Der Chat ist Open Source.
Wenn du selbst programmieren kannst oder einen Programmierer zur Hand hast kannst du alles Mögliche nachrüsten, auch hüpfende Bananen und komische Schmatzgeräusche bei Klick auf einen Benutzernamen.

Was bei Klick auf den Benutzernamen in der Online-Liste passiert kannst du über die JS-Method addUserToOnlineList in js/chat.js steuern.
Dazu fügst du den folgenden Code in js/custom.js ein:

Code: Alles auswählen

ajaxChat.addUserToOnlineList = function() {
// Dein Code
}
Benutzeravatar
Hegse
Mitglied
Beiträge: 262
Registriert: 05.06.2006 12:49
Wohnort: Liemke
Kontaktdaten:

Beitrag von Hegse »

Apomorph hat geschrieben:Hallo zusammen,

also wir haben den Chat nun schonmal öffentlich am laufen gehabt und mußten dabei feststellen, dass viele Texte einfach vom Chat verschluckt und nicht angezeigt werden.
Guten Tach!

Das ist mir auch schon aufgefallen! Hast du den Ctracker zufällig installiert? Ich nutze ein Orion v2.4.3 Forum, da ist mir das auch andauern passiert. Eher zufällig habe ich gemerkt das die Zahl der abgewehrten Angriffe nach jedem gescheiterten Chat Satz zugenommen hat. Hab dann den Ctracker mal in den Debug Modus gesetzt und gesehen das in dem Ordner Chat die Index.php geblockt wird.
Folgende bei mir funktionierende Lösung wird in dem Logmanager vorgeschlagen

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------
#
/phpBB2/chat/index.php

#
#-----[ FIND ]------------------------------------------
#
include($phpbb_root_path . 'common.'.$phpEx);

#
#-----[ BEFORE, ADD ]------------------------------------------
#
define('CT_SECLEVEL', 'MEDIUM');
$ct_ignorepvar = array('text');

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
Wobei ich dies

Code: Alles auswählen

define('CT_SECLEVEL', 'MEDIUM');
$ct_ignorepvar = array('text');
einfach hiervor gesetzt habe

Code: Alles auswählen

// Show all errors:
error_reporting(E_ALL);
Somit funktioniert zumindest der Chat bei mir soweit ohne Probleme.
Was allerdings bei mir nicht funktioniert ist das einfügen von URLs. Die werden nicht richtig angezeigt....

Gruß Hegse
madblueimp
Mitglied
Beiträge: 62
Registriert: 14.08.2007 15:09
Kontaktdaten:

Beitrag von madblueimp »

Hegse hat geschrieben:Was allerdings bei mir nicht funktioniert ist das einfügen von URLs. Die werden nicht richtig angezeigt....
Kannst du das auch im Demo-Chat nachvollziehen?
Die URL-Ersetzung und der BBCode für URL's wird im AJAX Chat rein Client-seitig per JavaScript verarbeitet.
Benutzeravatar
Hegse
Mitglied
Beiträge: 262
Registriert: 05.06.2006 12:49
Wohnort: Liemke
Kontaktdaten:

Beitrag von Hegse »

Hallo.

Jeep das kann ich! Das ganze sieht jetzt auf der Demo Seite zum Beispiel einfach nur so aus:

http://www.kicker.de

Ist also nix zum anklicken da... :roll:

Gruß Hegse

edit:

Ich weiß jetzt auch warum.
Als Popup kommt nur die Eingabe der URL und nicht die Aufforderung darauf die Bezeichnung für den Link einzugeben. Wer das nicht weiß das man im Chat Eingabefeld noch etwas einfügen muss der kommt damit nicht klar. Es müsste ein 2tes Popup kommen in dem man nach der URL auch noch die Bezeichnung eingibt!
madblueimp
Mitglied
Beiträge: 62
Registriert: 14.08.2007 15:09
Kontaktdaten:

Beitrag von madblueimp »

Naja, wer nur eine URL eingeben möchte, der gibt eben nur eine URL ein - die wird auch ohne BBCode ersetzt.
Mehr und bessere Anleitungen wären natürlich immer hilfreich.
Aber an Dokumentation fehlt es sowieso, allerdings auch an Entwickler-Zeit. ;)
Seether
Mitglied
Beiträge: 1446
Registriert: 10.10.2002 23:42

Beitrag von Seether »

Habt ihr mal getestet wie es mit der Performance bei mittelmäßig frequentiertem Chat aussieht?
madblueimp
Mitglied
Beiträge: 62
Registriert: 14.08.2007 15:09
Kontaktdaten:

Beitrag von madblueimp »

Zum Thema Performance:
Die nächste Version kommt mit der Möglichkeit Updates über eine Socket-Verbindung zu veranlassen um das Pulling der Clients zu vermeiden.
Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“