Hallo miteinander, ich stehe gerade vor einem Problem, bei dem ich mich vielleicht einfach verrannt habe... Ich suche eine Methode wie ein Programm/Script/Server ein Ereignis im Browser (Firefox) auslösen kann, was dort mit JS verarbeitet werden kann. Es geht nicht um Datenaustausch, sondern nur um ein Anstossen. Also sowas wie folgt: 1. Script läuft auf Rechner A im LAN und macht irgendwas 2. Script sendet einen Request an Rechner B 3. Firefox auf Rechner B bekommt das mit 4. JS in einem geöffneten Tab wird angestossen und macht was Immer wieder per Ajax pollen geht nicht, weil ich auf A keinen Webserver o.ä. laufen lassen kann. Dadurch scheiden auch Websockets aus. B ist ein normaler Desktop, da kann ich auch nicht einfach so ruminstallieren. Zudem das entweder Windows oder Linux sein kann. Allerdings mit fester lokaler IP. Ob man Firefox dazu bringen kann, auf einem definierten Port zu lauschen habe ich aber noch nicht herausgefunden. Natürlich sehr gerne mit Auth. "Cloud" ist außen vor; das soll auch ohne Internet/Extraserver funktionieren.
Max schrieb: > Ich suche eine Methode wie ein Programm/Script/Server ein Ereignis im > Browser (Firefox) auslösen kann, was dort mit JS verarbeitet werden > kann. Es geht nicht um Datenaustausch, sondern nur um ein Anstossen. Gar nicht. Niemand hat auf einem Rechner von der Ferne aus etwas "anzustossen", da grätscht hoffentlich meine Firewall dazwischen. Du meinst push Nachrichten bzw. RSS feeds. Auch die leufen über regelmässiges Pollen, also B fragt A ob was Neues da ist zum abholen. Es macht auch absolut überhaupt keinen Sinn, von A aus eine Nachricht zu verwenden wenn B aus ist und nicht im Netz erreichbar ist oder beschäftigt ist. Browser sind keine realtime-Betriebssysteme sondern träge. Zur Visualisierung von Prozesszuständen zu gebrauchen, können dann auch beendet und wieder geöffnet werden, aber sie werden nicht "angestossen". Natürlich kann man zwischen 2 Rechnern auch eine solche Kommunikation aufbauen, die sollte aber klüger überlegt sein: A sendet nur dann eine Nachricht an einen über Port und IP Adresse bekannten Rechner B wenn vor kurzer Zeit (lass es Sekunden oder Minuten sein) B sich bei A als "am Leben" gemeldet hatte beisielsweise in dem er die zuvor signalisierten Daten abgeholt hatte. Auch da geht also die Kommunikation von B aus, nur A antwortet erst mit Zeitverzögerung, und vor allem versucht A gar keinen "Anstoss" mehr wenn B schon mal nicht reagiert hatte.
Hallo Max, seit einiger Zeit nerven mich ab und an einzelne Webseiten mit solch einem Begehren. Auch in der ct war vor einiger Zeit ein Artikel darüber. Das Verfahren nennt sich "Web Push Notifications". Hier mal ein Link, vielleicht hilft es dir... https://developers.google.com/web/fundamentals/push-notifications/ MfG Sven
Michael B. schrieb: > Niemand hat auf einem Rechner von der Ferne aus etwas "anzustossen", da > grätscht hoffentlich meine Firewall dazwischen. Die "Ferne" ist relativ, da A&B im gleichen Gebäude, aber verschiedenen Räumen sind. Dafür kann ich die Firewall problemlos aufmachen. Firewall ist wichtig, aber wenn Du die für Deinen LAN-Traffic als unabdingbar notwendig erachtest hast Du ein ganz anderes Problem. > Es macht auch absolut überhaupt keinen Sinn, von A aus eine Nachricht zu > verwenden wenn B aus ist und nicht im Netz erreichbar ist oder > beschäftigt ist. Browser sind keine realtime-Betriebssysteme sondern > träge. Zur Visualisierung von Prozesszuständen zu gebrauchen, können > dann auch beendet und wieder geöffnet werden, aber sie werden nicht > "angestossen". Doch, Sinn macht es durchaus, sonst würde ich ja nicht fragen. Es geht hier um rein Informatives und wenn B zB nachts heruntergefahren ist, bzw Firefox mal aus ist, dann ist das auch kein Problem. Ich baue keine Realtime Überwachung eines Atomkraftwerkes. Denk an UDP. Wenn's ankommt ist es gut, wenn nicht, auch egal. > Auch da geht also die Kommunikation von B aus, nur A antwortet erst mit > Zeitverzögerung, und vor allem versucht A gar keinen "Anstoss" mehr wenn > B schon mal nicht reagiert hatte. B muß sich nicht melden, s.o. Was aber auch bedingen würde, daß auf A ein Socket offen ist der die Anfrage von B erst mal annimmt. Auf A kann ich aber eben keine listening Sockets machen. Sven W. schrieb: > Hallo Max, > seit einiger Zeit nerven mich ab und an einzelne Webseiten mit solch > einem Begehren. Auch in der ct war vor einiger Zeit ein Artikel darüber. > Das Verfahren nennt sich "Web Push Notifications". Hier mal ein Link, > vielleicht hilft es dir... Das habe ich auch schon gefunden, allerdings sagt Moz dazu: "In der Desktop-Version nutzt Firefox den von Mozilla betriebenen Push-Dienst. Firefox für Android nutzt eine Kombination aus Mozillas Push-Dienst und Google Cloud Messaging, um die Nachrichten zu empfangen." Würde also meinem Verständnis nach ohne Internet nicht gehen und wohl auch irgendeine Art von Registrierung bei denen erfordern. Wenn's aber garnicht anders geht, muß ich das ins Auge fassen.
mal ganz simpel: zwei Menschen sollen über Entfernung kommunizieren, der eine darf kein Geräusch von sich geben, der andere ist blind ... so in etwa sind deine Anforderungen .... ohne "proxy" geht da nichts.
Der Browser wertet HTML Files aus, die er auf port 80 vom Server abruft. Der Port laesst sich allenfalls aendern, das Konzept aber nicht. Was aber geht, ist eine dauernd offene Webseite, die vom Server per AJAX geupdatet wird. Dazu muss hinreichend oft etwas kommen, sodass die Verbindung nicht abbricht. AJAX ist ein Addon zu Javascript. Ist in Javascript eingebaut. Der Server muss die Seite so bearbeiten, dass er eben die AJAX Nachrichten bringt.
:
Bearbeitet durch User
Mit Websockets könntest du sowas umsetzen. Dein Firefox startet eine socket Verbindung zu Rechner A und wenn der was zu verkünden hat kann er darüber senden und du kannst im Firefox darauf per Javascript reagieren
Jetzt ist G. schrieb: > Was > aber geht, ist eine dauernd offene Webseite, die vom Server per AJAX > geupdatet wird. Dazu muss hinreichend oft etwas kommen, sodass die > Verbindung nicht abbricht. Java schrieb: > Dein Firefox startet eine socket Verbindung zu Rechner A Dem steht das hier gegenüber: Max schrieb: > Auf A kann ich aber eben keine listening Sockets machen. Die Anforderungen sind … merkwürdig.
Java schrieb: > Mit Websockets könntest du sowas umsetzen. Dein Firefox startet eine > socket Verbindung zu Rechner A Geht nicht, siehe Eröffnungs-Post. Max schrieb: > Immer wieder per Ajax pollen geht nicht, weil ich auf A keinen Webserver > o.ä. laufen lassen kann. Dadurch scheiden auch Websockets aus. d.H. Weder auf A noch auf B läuft irgendein Server, und der Webbrowser kann keine Verbindung von sich aus zu "A" aufbauen. Wenn man keinen Rechner "C" dazwischen Will (Egal ob bei Google(-cloud-messaging), mozilla, oder selbstgestrickt im Haus) muss der "Server-Teil" also in den Webbrowser wandern, "A" ist der Client. Eine Möglichkeit dazu wäre eine Browser-Extension, da geht z.B. UDP: https://developer.chrome.com/apps/sockets_udp firefox hat/plant was ähnliches, class UDPSocket ... (TCP(Server)-Sockets gäb's auch, aber die Anwendung hört sich eher nach UDP an...) eine andere Möglichkeit ohne Add-on-installation im Browser wäre ein Java-Applet oder Flash, halte ich aber beides nicht mehr für State-of-the-Art.
Nun, allem Anschein nach gibt es wohl doch Möglichkeiten sowas zu machen: https://stackoverflow.com/questions/28441539/opening-tcp-socket-from-firefox-plugin Das muß ich mir mal in Ruhe zu Gemüte führen und mich wohl auch mit Firefox Addons beschäftigen.
Es gibt doch bestimmt einen kleinen Webserver als portable Version. Da würde ich eher den anwerfen als den Firefox dazu zu verbiegen..
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.