Einzelnen Beitrag anzeigen

DelphiManiac

Registriert seit: 5. Dez 2005
742 Beiträge
 
#1

Sound über Webbrowser (Client) abspielen lassen

  Alt 21. Dez 2007, 11:53
Hallo,

Ich habe folgendes Problem, bei dem ihr mir hoffentlich helfen könnt:

ich muss einen Status meiner Anwendung über einen Webbrowser vefügbar machen.

Der Status gibt zB.: den Prozentfortschritt einer Prüfung an, und welche Prüfung gerade aktiv ist.
Dafür nutzte ich TidHTTPServer.

Das sieht ungefähr so aus:
Delphi-Quellcode:
procedure TFrmMainGUI.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
var
 bgColor:string;
 piepen:string;
begin
  bgColor:= '<body bgcolor="white">';
  piepen:=' <embed src="lib/beep.wav" width="300" height="200"></embed>
';
  case PruefStatus.Prozent of
    1..99 :begin
      bgColor:= '<body bgcolor="yellow">';
     end;
  end;
  if ( PruefStatus.Pruefung = 'Display und Tasten - Test...' ) then
  begin
    bgColor:= '<body bgcolor="blue">';
  end;
  // Prüfung erfolgreich und zuende!!
  if ( PruefStatus.Prozent = 100 ) then
  begin
    bgColor:= '<body bgcolor="green">';
    piepen:=' <embed src="lib/beep.wav" width="300" height="200"></embed>
';
  end;
  // Keine Prüfung aktiv!!
  if ( PruefStatus.Prozent = 0 ) then
  begin
    bgColor:= '<body bgcolor="white">';
  end;
  AResponseInfo.ContentText :=
  '<HTML>'+
  '<HEAD>'+
  '<title>Online-Prüf-Überwachung</title>' +
  '<META HTTP-EQUIV=refresh '' content=''5;''>'+
  '</HEAD>'+
  '<BODY onLoad="window.resizeTo(600, 400)">'+
  //' <body bgcolor="#000000">'+
  //'<body bgcolor="rgb(255,255,255)">'+
    bgColor+
  '<font size=7>'+ PruefStatus.TextProzent+'</font>'+
  '
<font size=8>
'+ PruefStatus.Pruefung+'</font>'+
  piepen+
  '</BODY>'+
  '</HTML>';
end;
Also ich veranlasse, über Javascript das der Browser die Seite zyklisch neu lädt, damit er den Fortschritt neu einliest:

weiß nicht ob das die beste Lösung ist, aber zumindest praktikabel.

Meine Frage ist nun, ich würde gerne auf dem Clientbrowser einen Sound abspielen lassen, z.B.: wenn meine Prüfung einen Fehler hat,
einen Fehlersound, und wenn sie erfolgreich ist einen Erfolgreich-Sound.

Wie kann man soetwas am besten lösen?

Gruß an alle!

  Mit Zitat antworten Zitat