Toon posts:

Telnet.exe chr(7) geeft geen BELL?

Pagina: 1
Acties:
  • 122 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben bezig in een willekeurige taal (in dit geval PHP) een telnet server te bouwen, de taal is het probleem niet, en alles werkt opzich zoals ik het zou willen.

Nou weet ik dat er in de telnet standaard een BELL functie zit, zodat je een piepje kan genereren. Nou ben ik al enige tijd aan het zoeken, maar ik krijg uit (Microsoft Telnet.exe en Putty.exe) geen beep zodra ik een chr(7) verstuur naar de desbetreffende client. Ik heb een berg RFC's doorgelezen, en gekeken waar het allemaal op uit moet komen, maar zover ik het kan lezen behoord hij wel te beepen.

Lijst met links waar ik gekeken heb
ftp://ftp.chiark.greenend...l-escapes/all-escapes.txt (goeie, VEEL info).
[rml][ telnet] kleuren[/rml]
http://www.evergreen.edu/...otes/program/ansi_esc.htm
http://www.lookuptables.com/ (om snel even een asciicode bij een command te zoeken).
http://coders.meta.net.nz/~perry/rfc/keyword.html#telnet
http://www.faqs.org/rfcs/rfc854.html

Hier zal ik even wat quoten:
All-Escapes.txt:


Sequence: BEL (^G)
Mnemonic: BEL
Description: Bell

BEL is used when there is a need to call for attention; it may control
alarm or attention devices.

Source: ECMA-48 5th Ed 8.3.3
Status: standard


Sequence: CSI = Pn1 ; Pn2 B
Mnemonic: SBP
Description: Set bell parameters

Sets bell parameters (where Pn1 is the pitch in Hz and Pn2 is the
duration in milliseconds)

Source: UnixWare 7 display(7)

Set the frequency (Pn1) and duration (Pn2) of the audible bell. The
frequency is in units of 840.3 nanoseconds, and the duration is in
units of 100 milliseconds.

Source: OpenServer 5.0.6 screen(HW)
Status: iBCS2 private
code:
1
2
3
4
RFC 854:
         BELL (BEL)              7      Produces an audible or
                                        visible signal (which does
                                        NOT move the print head).


Het commando wat ik verstuur naar de user is als volgt:
PHP:
1
2
3
$user_msg = chr(7).'hoi'.CL;
$user_msg .= chr(27).'[32,42mAndere kleur'.CL;
socket_write($usersocket,$data);


Het kleuren van teksten, achtergronden in telnet.exe, en het positioneren is allemaal geen probleem. Het probleem is, dat ik dus onder telnet.exe en putty.exe geen BEEP hoor, terwijl dit (zover ik weet) wel zou moeten volgens de standaard. Kijk ik nou ergens overheen (dmv versturen verkeerde escape code's/etc?) of ondersteunen zowel telnet.exe en putty.exe geen BELL/BEEP commando's?

Ik kan mezelf 2 redenen bedenken waarom het niet werkt:
• Zowel telnet.exe als putty.exe ondersteunen geen BELL
• Ik verstuur het commando verkeerd.

Ik ben "pas" 1.5 dagen aan het zoeken, ook op irc hebben we het er met een paar man over gehad. Daar dachten ze dat het de telnet client was die het niet ondersteunde. Maar om nou te zeggen dat ik bevestigende of juist ontkrachtende informatie kan vinden, zodat die mythe een feit kan worden, nee dat niet :+

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

Voor zover ik weet geeft telnet zelf geen pieptonen weer, en putty maakt standaard geen geluid maar knippert op het moment dat er een BEEP-character ontvangen wordt. Kan dat wel kloppen?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
-NMe- schreef op woensdag 03 mei 2006 @ 12:06:
Voor zover ik weet geeft telnet zelf geen pieptonen weer, en putty maakt standaard geen geluid maar knippert op het moment dat er een BEEP-character ontvangen wordt. Kan dat wel kloppen?
Ik heb ter test even een regeltje aangemaakt binnen mijn client-server systeem. Als ik nou !beep intiep en dat verzed, dan zend hij de volgende chars naar de telnet-clients:
PHP:
1
$data = chr(7).'SENT BEEP'.CL;

CL is \r\n via define.

Ik zie duidelijk de tekst SENT BEEP verschijnen onder telnet.exe en putty.exe. Maar geen van beide geeft een reactie die zichtbaar/hoorbaar is voor de gebruiker.

Plaatje van een situatieschets kan je hier vinden. Met 1x telnet.exe, 1x putty.exe en 1x de server.

[ Voor 12% gewijzigd door Verwijderd op 03-05-2006 12:19 ]


Verwijderd

Putty BELLt zeker wel (log in op een willekeurige Linux shell en druk Control-G of typ "echo -e '\a'").

Maar je moet er wel systeemgeluiden in Windows voor aan hebben staan...

Verwijderd

Topicstarter
Verwijderd schreef op woensdag 03 mei 2006 @ 21:25:
Putty BELLt zeker wel. [knip] Maar je moet er wel systeemgeluiden in Windows voor aan hebben staan...
Dat scheelt, dus het werkt zeker wel :)

Ben benieuwd of het ook mogelijk is met microsoft telnet.exe, ik hoop het wel (dat is standaard, anders moeten mensen apart progje downloaden).

  • Jaap-Jan
  • Registratie: Februari 2001
  • Laatst online: 18:46
Verwijderd schreef op woensdag 03 mei 2006 @ 23:30:
[...]
Dat scheelt, dus het werkt zeker wel :)

Ben benieuwd of het ook mogelijk is met microsoft telnet.exe, ik hoop het wel (dat is standaard, anders moeten mensen apart progje downloaden).
Ik heb even ingelogd via Microsoft Telnet-client naar mijn routertje en als ik dat scriptje draai dan krijg ik ook daar het geluid (over de boxen, voor de duidelijkheid) te horen. :).

| Last.fm | "Mr Bent liked counting. You could trust numbers, except perhaps for pi, but he was working on that in his spare time and it was bound to give in sooner or later." -Terry Pratchett


Verwijderd

Topicstarter
Japie_17 schreef op donderdag 04 mei 2006 @ 08:35:
Ik heb even ingelogd via Microsoft Telnet-client naar mijn routertje en als ik dat scriptje draai dan krijg ik ook daar het geluid (over de boxen, voor de duidelijkheid) te horen. :).
Handig dat ze de Windows geluiden gebruiken, ik verwachte een beep via de PC beeper :+

Windows geluiden staan bij mij standaard uit, nergens goed voor die herrie. In ieder geval bedankt, het is nou zo duidelijk als het zijn kan. :)
Pagina: 1