Beiträge von Thomas

    Danke für deine fixe Antwort :)

    Ich verstehe ja Push hatte ich gesehen, nodePush war ich mir nicht sicher, sind ja vor 12 Tagen noch mal Änderungen dran gemacht worden.

    Selbst packen heißt ich mach das ganze Ding einfach download als Zip und mit der package.xml ist das dann so installierbar?


    Brauche ich für die Funktion den enuen Cache Dienst von WSC 3.0 ? Hatte ich irgendwo gelesen. Ansonsten funktioniert der wie der alte oder?


    MfG Thomas

    Hallo,

    soweit ich sehe benutzt du auf deiner Seite ja schon erfolgreich Push/nodePush 2. Leider ist das noch nicht im Packetserver oder auf Wortlab erhältlich. Gibt es dafür einen Grund (noch Beta) oder kann man das schon irgendwo her beziehen um es einzurichten ?


    MfG Thomas

    Wenn ich das dann richtig verstanden habe, benötigt man gar keinen nodePush Server dienst mehr? und der Redis Server ist der neue PushServer? Oder greifen einfach nur Forum und PushServer von beiden Seiten auf den Redis zu?
    Wie gesagt Redis ist leider neuland für mich, deshalb wäre es schön das grobe Prinzip zu verstehen.
    Und ich habe gesehen in dem WSC kann man auch einen Redis Server als Cache angeben anstatt das Dateisystem. Kann ich dann den selben Redis Server benutzen wie nodePush benutzt oder muss dann ein zweiter her?

    die automatische Prüfung im Pluginstore hat noch kleinere Dinge im gepackten Archiv bemängelt. Ich kam noch nicht dazu mich darum zu kümmern.

    Achso, danke für deine Mühe.

    In der phpinfo dürfte das drin stehen. Es sei aber gesagt, dass es dafür nicht reicht, nur die PHP-Extension zu haben, du musst, selbsterklärend, auch einen Redis-Server am laufen haben

    Ja da habe ich mich auch schon mal Informiert. Das hört sich ja nach etwas mehr Einrichtungsaufwand an, dann wäre ein HowTo nicht schlecht.
    Darf man Fragen wozu dieser benutzt wird? Soweit ich weiß, wird der Redis-Server benutzt um Cache von der Festplatte in den Arbeitsspeicher auszulagern.

    Es sei erwähnt, dass es für NodePush ab sofort zwingend erforderlich ist die Redis-Cache-Source zu benutzen. Dazu muss die phpredis-PHP-Extension installiert sein.

    Wie kann ich denn am besten Prüfen, ob ich die habe?


    MfG Thomas

    Würde es gerne installieren und einrichten wollen.

    Geht mir auch so.
    Eventuell einfach im Pluginstore veröffentlichen? Push ist dort ja auch schon für WSC 3.0 erhältlich und da es eh keine alternative zu nodePush gibt wäre das doch gut, wenn man es sich dort gepackt laden könnte.

    Hab mich mal etwas schlau gemacht um etwas Licht ins dunkel zu bringen und doch IIS unterstützt Websockets.


    Zitat

    IIS 8.0 The WebSocket Protocol was introduced in IIS 8.0.

    Ich habe IIS version 10. Habe auch den Websocket support nachinstalliert wobei ich glaube, dass der nur für den einsatz von websockets auf diesem webserver genutzt wird und nicht beim Weiterleiten.


    Dann ARR (Application Request Routing) 3.0 was bei IIS unter anderem der ReverseProxy ist. Bei mir Version 3.0 vorhanden, die neuste.

    Zitat

    New features
    ARR 3.0 was released in Beta in December of 2012, and included the following new features:
    · Retries for URL Health Monitoring
    · Web Socket Support


    Bei meinen Nachforschungen bin ich immer wieder drauf gekommen das eventuell die umleitung das Problem sein könnte.


    Meine Umleitung macht ja aus http://www.domain.de/nodepush -> http://nodePush:9002/ was ja auch wunderbar funktioniert (siehe Statusseite) jedoch hab ich oft gelesen das Websockets mittels ws://www.domain.de/ws -> ws://websocketserver:8080/ws umgeleitet wurden also http das falsche protokoll? Wobei im ACP ja auch http bzw https angegeben wird.


    Dann wie sieht der Link die abfrage eines Websockets bei nodepush aus? habe da leider nicht das fachwissen. Der zweite Fehler könnte daran liegen das das, was noch am link dran kommt, wenn noch was dran kommt, nicht richtig umgeleitet wird.
    zb.: ws://www.domain.de/nodepush/socket.io/12334 -> ws://nodePush:9002/socket.io/12334 ?!


    Mehr Informationen wie genau die Socketumleitung funktionieren sollte, würden mir helfen den Fehler zu finden was bei meiner Umleitung falsch läuft.
    Hier noch einmal meine Umleitungseinstellung:


    Und meine Proxyeinstellung wobei es daran glaube ich nicht liegt:


    Ich denke wie gesagt das die Umleitung an sich fehlerhaft ist aber für mich auch sehr schwirig zu testen.
    Hoffe ich bin auf der richtigen Spur.


    MfG Thomas

    Hallo,
    ja wie auf dem 2. und 4. Bild zu sehen habe ich immer die Statusseite über den Reverseproxy abgerufen -> "domain.de/nodepush" wie oben zu sehen. Gehen tut so aber nur die Statusseite jedoch nicht die eigendliche Anbindung des Forums. Diese nur mit domain.de:9002 und eine weiterleitung dieses Ports.
    Und ja der Reverseproxy ist auf dem IIS. Ich habe oben mal die Weiterleitungsregel und auch die Reverse Proxy Einstellungen gepostet, in der Hoffnung das es vielleicht nur eine falsche Einstellung ist, die auffällt.
    Oder kann nodePush nicht auf einem Subpfad wie /nodepush liegen sondern muss auf einer Domain selber laufen mit anderem Port dann?


    Aber nun hast du mir ja einen begriff genannt. Ich werde mal googlen ob der ReverseProxy Websockets unterstützt und wenn ja wie man dies konfigurieren kann.
    Es geht mir auch nur darum, dass die website auf https laufen soll und wenn nodepush weiter auf http läuft diese anbindung blockiert wird.


    MfG Thomas

    Hallo,
    nodePush funktioniert an sich bei mir seit mehreren Jahren sehr gut. Nun wollte ich aber statt den nodePush Server von außen direkt über Port 900x erreichbar zu machen einen Reverseproxy benutzen. Hintergrund ist der, dass ich meine Seite gern nur noch über https erreichbar machen wollen würde. Zertifikat ist da und die Seite an sich läuft auch mit https wunderbar. Allerdings meckert der Clientbrowser, verständlicherweise bei dem aktuellen Einstellungen, über mixed content und blockiert die nodePush anbindung über die http Adresse auf Port 900x.
    Also ReverseProxy installiert und soweit eingerichtet. Geht auch kann die nodePush Statusseite erreichen. In der aktuellen Konfiguration, siehe Screenshots, klappt dies auch wunderbar. Ich bin auf der Seite, eine Verbindung von "draußen".


    Wie man sieht Statusseite problemlos erreichbar, jedoch nodePush noch über Port 9002 angebunden daher die 1.


    Nun änder ich die Einstellung im ACP volgendermaßen ab:
    und aktualisiere die Seite und bekomme:
    Sobald ich den Pfad im ACP eintrage wie es eigendlich laufen sollte, keine Anbdingung von draußen mehr und zb "NodePush Ankündigung" als Test funktioniert logischerweise nicht mehr.


    Hier sind meine restlichen Einstellungen auf dem Webserver:

    Und nur damit es zu keinen Missverständnissen kommt, nodePush läuft auf einem seperaten Server, erreichbar über "nodePush".

    Deswegen ist auch der inbound Socket auf 0.0.0.0 jedoch die Fierwall lässt die inbound Ports nur im lokalen Netz zu. Der inbound Socket über tcp://nodePush:9052 funktioniert auch super und daran muss ja auch nichts geändert werden. Geht rein um die Anbindung von außen. Ich denke mal ich habe irgendwo einen Denkfehler drin da die Statusseite erreichbar ist aber die eigendliche Anbindung nicht. Ich weiß auch nicht genau, wie sich die Website an den nodePush Server anbindet. Deshalb kann ich bei der Problemlösung nur raten.


    Zur Info: die Seite läuft noch über http da es da ja erst mal funktionieren sollte. Sollte dann alles gehen ist es ja kein problem auf https umzustellen. Nur so müsste es ja erst mal funktionieren.


    Ich hoffe ihr könnt mir helfen da ich schon gern in naher Zukunft auf https umsteigen möchte aber auf den Push server nicht verzichten mag.


    MfG Thomas

    Hallo :)
    also ich hätte heute bis auf ein bis zwei kleinigkeiten Zeit.
    Sag mir einfach wann genau du ca denkst ?


    Ich habe nicht mehr weitergetestet. Zuminest keinen weiteren Erfolg bekommen.
    Alles kla das wäre super :)

    ich werde mich in den nächsten Tagen (morgen wird’s wohl eher nichts) noch einmal melden, um dann mit dir nach dem Fehler zu suchen.


    Das wäre super :) Sag mir einfach bescheit wenn du Zeit hast WE würde mir ganz gut passen.
    Es ist sicher wieder irgend so eine Kleinigkeit die man einfach übersieht -.-


    Interessanterweise scheint ja keine Fehlermeldung beim Event: „Nutzer X hat Nutzer Y an die Pinnwand geschrieben, Nutzer Y sollte also eine Benachrichtigung erhalten“ aufgetreten zu sein, zumindest keine, die eine PHP-Exception geworfen hätte.


    Wenn ich die exception richtig abgefangen habe, denke aber doch.


    „Connection timed out“ => Gnarf, was jetzt los? Aha … Windows Firewall hatte noch geblockt


    Firewall habe ich soweit Freigegeben und externe Verbindungen funktionieren auch (outbound). Aber PHP connectet ja intern über localhost somit sollte dort die Firewall ja keine Rolle spielen.


    „Connection refused“ => Hmm … ok, bei nodePush kommen die Verbindungen schon an, aber warum lehnt es diese ab?! Dann hab’ ich an der Host-IP in der Konfiguration „gespielt“ und es lief. Scheinbar mochte der die Netzwerkbrücke der VM nicht so


    Also ich vermute (wenn der nodePush Server richtig arbeitet und funktioniert) das Problem von PHP zu nodePush.
    Outbound: 5 now sagt mir ja das er die aktuellen Onlinenutzer erkennt und stimmt auch mit den "User online" auf der Seite überein. Ich kann auch die Statuswebsite extern über die Adresse aufrufen um diese Statusmeldungen zu sehen. Sollte also funktionieren.
    Inbound: 0 ist bei mir immer 0. Deswegen denke ich auf dem Weg PHP -> nodePush liegt der Fehler.
    Ich habe auch vorher eine Kopie des unangetasteten "be.bastelstu.wcf.nodePush" - Ordner gemacht, den Ordner auf der Seite gelöscht und nochmal (da nun alle Programme installiert waren) nochmal reinkopiert und die selben Schritte wie du oben gemacht: Patch angewannt -> config editiert -> install -> start. Selbe Ergebniss: Installation direkt beim ersten mal erfogreich, nodePush gestartet und externe Verbindungen klappen interne von PHP wieder 0. Also gehe ich davon aus das der nodePush - Server ordnungsgemäß funktioniert.


    Aber das sehen wir beim drüberschauen. Wie gesagt, meld dich einfach wenn du Zeit hast, danke schonmal :)


    So war auch meine vorgehensweise, nachdem ich noch Visual Studio und Python nachinstallieren musste.


    Dann noch im ACP die richtigen Daten angeben (dort hatte ich mich beim inbound vertan …) und es lief (siehe „be.bastelstu.max.wcf.user.newNotification: 2“ auf dem zweiten Screenshot).


    Bei dir steht auch viel mehr bzw du bekommst auch am inbound Signale bzw messages rein, bei mir sieht diese Seite so aus wie oben in dem Screenshot zu sehen. Die Sitzungen am outbound scheinen keine Probleme zu haben, da diese ja erfolgreich als Anzahl der User angezeigt werden.
    Inbound, Statuspage, Messages etc fehlt bei mir komplett, siehe oben.
    Ok wenn ich Debug=* setze als Umgebunsvariable zeigt er mir auch soviel an wie bei dir oben aber dennoch Inbound: 0 und keine Message "be.bastelstu.max.wcf.user.newNotification: 2".


    Wichtig beim inbound-Socket ist, dass der PHP-Prozess darauf schreiben kann.


    Wie überprüfe ich das? Also der PHP - Prozess wird von dem IIS_User(Name = Seite) ausgeführt der wiederrum der Gruppe IIS_Users angehört die auf dem gesammten Webordner Änderungsrechte also Schreib und Leserechte hat?
    Oder ist dieses nicht auf das Dateisystem bezogen? vielleicht ist hier der Fehler?


    Je nachdem, wie die Server konfiguriert sind, musst du wohl mal in der Firewall gucken oder die Host-IP anpassen.


    Ich erreiche ja die Statusseite die oben in Screenshot zu sehen ist über die externe Adresse und die Clients werden ja auch angezeigt, den internen Port habe ich auch freigegeben, aber bei localhost sollte die Firewall ja sowieso keine Rolle spielen.


    Du könntest aber einmal die Datei wcf/lib/system/nodePush/NodePushHandlers.class.php öffnen und in Zeile 86, nach dem catch (\Exception $e) { ein throw $e; einfügen und dann zum Beispiel an eine Pinnwand schreiben.
    Dann sollte – falls keine Verbindung aufgebaut werden kann – die entsprechende Fehlermeldung ausgegeben werden.
    Wenn am Ende alles läuft, kannst du die Datei wieder zurücksetzen.


    Habe ich gemacht, auf eine fremde Pinnwand gepostet, ohne Probleme, Post erschien kein Fehler.


    Das einzige was ich korrigiert habe du hast kein TCP:// in deiner Nachrichten-Adresse ich habe es auch mal ohne versucht, selbe Ergebniss.
    Irgendwas übersehe ich sicher, ich würde dich gern mal drüberschauen lassen, scheinst ja aktuell gut im Wissen zu sein nach viel gefuckel :) Weiß nur nicht wie, vllt Sykpe etc?

    Ich hab auch hier gelesen das ich ja theoretisch den Ordner mit dem nodePush Server auf einen Linux VM kopieren könnte und ihn so dort verwenden könnte das müsste ja theoretisch ohne probleme klappen, doch ich habe 3 WBB und dann dafür 3 Virtualle Linux Systeme wäre doch etwas aufwendig bzw recourcenfressend. Ich kann mir aber nach wie vor nicht erklären wieso es unter Windows nun nicht läuft. Keine Fehlermeldungen etc. oder sollte ich nochmal den Ordner komplett aufräumen und nochmal neu installieren?
    Weiß leider sonst keinen Rat mehr und wäre schade nachdem wir so weit gekommen sind :)

    Ich glaube ich weiß wodran es liegt:
    Dies ist meine config:


    __dirname wird er sicher unter Windows nicht kennen bzw. nicht verarbeiten können denn im Ordner tmp ist auch nichts weiter drin.
    Sollte ich hier mal Absolute Pfadangaben machen? Oder gehen sogar relaitve?