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!