Laden...

Merken wenn Javascript deaktiviert wird und Mediaplayer stoppen

Erstellt von Tam0r vor 12 Jahren Letzter Beitrag vor 12 Jahren 1.244 Views
T
Tam0r Themenstarter:in
137 Beiträge seit 2008
vor 12 Jahren
Merken wenn Javascript deaktiviert wird und Mediaplayer stoppen

Ich habe ein Problem das ich nicht lösen kann. Vielleicht kann mir jemand einen Ansatz geben wie ich dieses Problem angehen könnte.

Ich musste eine Seite Programmieren wo Videos abgespielt werden. Das anschauen wird im Minutentakt abgerechnet. Soweit so gut, ich habe ein Javscripttimer mit dem ich diese Abrechnunh auch erfasse.

Jetzt habe ich das Problem das wenn der User im laufenden Betrieb javascript deaktiviert, ich das garnicht merke und weiter abspiele und somit unendlich lang der Film angeschaut werden kann.

Wenn die Seite ja mal geladen ist kann ich Ohne Javascript nichts mehr machen ? Als Player wird der MediaPlayer verwendet (Silverlight).

Asp.net 4.0 als Framework.

Bin für jede hilfe dankbar.

G
538 Beiträge seit 2008
vor 12 Jahren

Du könntest das Streamen des Videos verweigern, wenn keine bestimmte Ajax-Anfrage gesendet wird, die zeigt, dass der Benutzer noch auf der Seite ist.

Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann - umgekehrt ist das schon schwieriger (K. Tucholsky)
Das Problem mit Internet-Zitaten ist, dass sie oftmals zu unrecht als authentisch angenommen werden. (K. Adenauer)

T
Tam0r Themenstarter:in
137 Beiträge seit 2008
vor 12 Jahren

Beim Mediaplayer gebe ich einfach als Source den pfad zu der Datei an. Ich wüsste nicht wie ich das Streamen unterbinden könnte ? Evtl. wenn ich den User auslogge das er kein zugriff mehr hat. Wenn es einmal gestreamt wird habe ich keinen einfluss mehr. Erst wenn ein Postback oder so passiert kann ich ja Serverseitig wieder checken ob alles passt. Das wiederum setzt aber vorraus das javascript funktioniert oder wi kann ich sonst einen automatischen postback auslösen ? .vMein Problem ist ja das Serverseitig nichts ausgeführt wird.

G
538 Beiträge seit 2008
vor 12 Jahren

Dann gibt's aber mehr Probleme als JS, denn wenn du nicht streamst und die Daten nur runtergeladen werden nehmen wir mal folgendes an:

Ich Kunde, weiß dass ich pro Minute bezahle und sehe, dass das ganze Video im Cache liegt. Ich trenne meine Internetverbindung.. und du hast noch weniger Ahnung uva. Einfluss darauf was passiert ....

Das Problem lässt sich ohne kontrolliertes Streamen m.E. nicht beheben.

Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann - umgekehrt ist das schon schwieriger (K. Tucholsky)
Das Problem mit Internet-Zitaten ist, dass sie oftmals zu unrecht als authentisch angenommen werden. (K. Adenauer)

1.130 Beiträge seit 2007
vor 12 Jahren

Never trust the Client: Es gibt Leute (z.B. mich), die auf Streamingseiten meißt eh die Url kopieren und im lokalen Player anschauen.
Egal wie du es anstellst, wenn das nicht auf der Serverseite blockiert wird, dann ist es grundsätzlich nicht sicher. (Sieht man ja daran, wie sicher DRM ist, lol)
Du brauchst also einen Server, der das unterstützt oder ein einfacheres Bezahlmodell (z.B. Pauschalpreis für den ganzen Film.)

Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!

T
Tam0r Themenstarter:in
137 Beiträge seit 2008
vor 12 Jahren

@Floste Geiles Voyager bild 😛

Das mit dem kopieren des Streamlinks in deinen Player dürfte nicht funktionieren da du dich erst einlogen musst. Ausser dein Player unterstützt das was ich aber nicht glaube.

Prinzipiel hast du recht. Das heißt ich müsste mir einen eigenen StreamServer schreiben. Was allerdings ziemlich aufwendig sein dürfte. Kann ich denn auf einem IIS in bestimmten intervallen code ausführen ? So das ich überprüfen kann ob jemand auf der bestimmten seite online ist und ich ihn rauskicke wenn er sich nicht zurück meldet ?

Ich kenne das nur so das der User ein Postback machen muss damit ich c# code ausführen kann serverseitig.

@Grumbler85
Es stimmt ja darauf hätte ich garkeinen einfluss. Ich denke ich muss das Conzept nochmal überlegen.

3.170 Beiträge seit 2006
vor 12 Jahren

Hallo,

Kann ich denn auf einem IIS in bestimmten intervallen code ausführen? Ja, z.B. mit einem eigenen Thread. Das wird Dir aber nix bringen, denn ob ein Client noch auf der Seite ist kannst Du vom Server aus nicht testen.

Ich kenne das nur so das der User ein Postback machen muss damit ich c# code ausführen kann serverseitig.

Oder über AJAX Anfragen im Hintergrund gestellt werden... Das kann der Client regelmäßig tun, bleibt der Ajax-Request aus ist der Client weg (wie Grumbler85 vorschlug). Das schützt Dich aber nicht vor dem was Floste beschrieben hat.
Ich bin also ebenfalls der Meinung, daß Du da serverseitig basteln musst, um Dein Ziel zu erreichen.

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

T
Tam0r Themenstarter:in
137 Beiträge seit 2008
vor 12 Jahren

Ich denke auch das es immer mehr Serverseitig geschehen muss. Ich hätte allerdings noch eine Frage. Wenn ich im laufenden Betrieb javascript deaktiviere dann funktioniert ajax ja auch nicht oder ? Weil ajax ja im Prinzip auf Javascript aufbaut.

G
538 Beiträge seit 2008
vor 12 Jahren

AJAX = Asynchronous JavaScript and XML
es baut also "im Prinzip" darauf auf 😉

(um genau zu sein beschreibt es eine bestimmte Technik des Datenaustauschs auf JS-Basis)

Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann - umgekehrt ist das schon schwieriger (K. Tucholsky)
Das Problem mit Internet-Zitaten ist, dass sie oftmals zu unrecht als authentisch angenommen werden. (K. Adenauer)