PC-Speaker(BEEP) über Browser ansteuern!

Seite 1 von 2 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/pc-speakerbeep_ueber_browser_ansteuern_66982/page_1 - zur Vollversion wechseln!


d0c.FunkenStein schrieb am 12.02.2003 um 17:57

Hallo,
gibt es eine Möglichkeit, den PC-Speaker über den Browser zum piepsen zu bringen? Möglicherweise mit einem Java-Script ??
Oder hat jemand eine Idee wie man so etwas hinbekommen könnte?
Danke

d0c.FunkenStein


atrox schrieb am 12.02.2003 um 18:02

warum ausgerechnet pc-speaker, und nicht wave-out ... ? (zb über plugin, flash, java,...)


PIMP schrieb am 12.02.2003 um 18:05

weil nicht jeder boxen oder kopfhörer hat, aber eigentlich jeder einen pc-beeper..


atrox schrieb am 12.02.2003 um 18:13

Zitat von PIMP
weil nicht jeder boxen oder kopfhörer hat, aber eigentlich jeder einen pc-beeper..
das ist mir schon klar. aber wenn es für einen bestimmten zweck sein sollte, könnte man sich überlegen, obs nicht auch andere lösungen gibt, das zu erreichen. (meine frage ist wohl nicht ganz so rübergekommen)

versuch halt mal das hier:
funktioniert ab jdk1.1 (obs allerdings auch in der browser-sandbox funktioniert, mußt ausprobieren):
Code:
java.awt.Toolkit.getDefaultToolkit().beep();


d0c.FunkenStein schrieb am 13.02.2003 um 10:23

Hallo,
Danke für die Antwort :) !
Ich werde das gleich mal probieren.
Leider kenn ich mich nicht besonders gut mit Java aus.
Wo pack ich das denn ins HTML-Dokument :
java.awt.Toolkit.getDefaultToolkit().beep();

Als Java-Script in den Head?
Sorry wenn sich die Frage blöd anhört, aber ich bin da (noch ;) ) nicht so der Profi !


Binärmensch schrieb am 13.02.2003 um 12:15

hm.. muss ehrlich sagen, ich hoffe dass des unmöglich is den pcspeaker via javascript anzusteuern.. is ja noch lamer als die hinnige midi-musik immer.

just my 0,02€


atrox schrieb am 13.02.2003 um 15:29

nein, da muß man ein applet machen. suche mal nach einem java-tutorial im web. ist jetzt halt ein bishen aufwendig, für ein beep ein applet kompilieren zu müssen, aber bis jetzt ist noch keine bessere lösung hier aufgetaucht.


watchout schrieb am 13.02.2003 um 18:29

ich hab das zwar noch nie gebraucht, aber gibt es nicht ein beep-ascii-zeichen? vielleicht interpretieren das die browser sogar richtig...


atrox schrieb am 13.02.2003 um 19:58

ja, ascii-code 7.
browser interpretieren da aber gar nichts hinein.


Vivo schrieb am 13.02.2003 um 20:42

[ot] In der Arbeit dann vom Speaker: Welcome to the first Sex Site with Sound from the Beeper :) [/ot]

scnr


atrox schrieb am 15.02.2003 um 12:59

aus neugier hab ich in einer freien minute mal selbst so ein applet geschrieben... Java ruft den Default-Beep von Windows auf. Dh: wer Soundtreiber installiert hat, hörts durch den Soundtreiber, wo kein Soundtreiber installiert ist, oder wo er "belegt" ist, dort hört man es über den PC Speaker.
(funkt jedenfalls auch aus der browser sandbox)

BeepApplet.java

Code:
import java.applet.*;

public class BeepApplet extends Applet implements Runnable {
  boolean isStandalone = false;
  int beepCount;
  int beepsToDo;
  int beepInterval;

  public String getParameter(String key, String def) {
    return isStandalone ? System.getProperty(key, def) :
      (getParameter(key) != null ? getParameter(key) : def);
  }

  public BeepApplet() {
  }

  public void init() {
    try {
      beepCount = Integer.parseInt(this.getParameter("beepCount", "0")); //0=unlimited
      if (beepCount>0) beepsToDo=beepCount;
      else beepsToDo=1;
    }
    catch(Exception e) {
      e.printS*****race();
    }
    try {
      beepInterval = Integer.parseInt(this.getParameter("beepInterval", "1500")); // in ms
      if (beepInterval<500) beepInterval=500;
    }
    catch(Exception e) {
      e.printS*****race();
    }

  }
  /**Start the applet*/
  public void start() {
    Thread myThread=new Thread(this);
    myThread.start();
  }

  public void run() {
    while (beepsToDo>0) {
      java.awt.Toolkit.getDefaultToolkit().beep();
      if (beepCount>0) beepsToDo--;
      try {
        Thread.sleep(beepInterval);
      } catch (Exception e) {};
    }
  }

  public void stop() {
    beepsToDo=0;
  }

  /**Get Applet information*/
  public String getAppletInfo() {
    return "Atrox Beep Applet Test";
  }
  /**Get parameter info*/
  public String[][] getParameterInfo() {
    String[][] pinfo =
      {
      {"beepCount", "int", ""},
      {"beepInterval", "int", ""},
      };
    return pinfo;
  }
}

BeepTest.html
Code:
<APPLET
  CODEBASE = "."
  CODE     = "BeepApplet.class"
  NAME     = "BeepTest"
  WIDTH    = 5
  HEIGHT   = 5
  HSPACE   = 0
  VSPACE   = 0
  ALIGN    = top
>
<PARAM NAME = "beepCount" VALUE = "5">
<PARAM NAME = "beepInterval" VALUE = "2500">
</APPLET>


atrox schrieb am 15.02.2003 um 14:09

e.printS*****race hat oc.at 'verunstaltet', es heißt natürlich
e.printStackTrace


d0c.FunkenStein schrieb am 15.02.2003 um 14:47

WOW !
Find ich echt nett, das du dir die Mühe gemacht hast.
Ich werde es gleich mal testen!
Vielen vielen Dank :D


atrox schrieb am 15.02.2003 um 14:49

Zitat
Find ich echt nett, das du dir die Mühe gemacht hast.
du darfst es so auch interpretieren ;)


d0c.FunkenStein schrieb am 15.02.2003 um 15:23

Ich habe es gerade ausprobiert, aber so ganz läuft es noch nicht.
Das 5x5 grosse Applet wird angezeigt, aber ich höre keinen Beep und wenn ich mit der Maus drüberfahre steht da: load: class BeepApplet not found.
Hab mal die BeepApplet.java in BeepApplet.class umbenannt, aber das hat auch nichts genützt.
Was habe ich falsch gemacht?




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026