SYNOPSIS
        string query_command();

BESCHREIBUNG
        Liefert den Text des aktuellen Kommandos oder 0, wenn keines
        ausgefuehrt wird.

        Der Text entspricht dem, was der Parser "sieht", also nachdem
        modify_command() ausgefuehrt und nachfolgende Leerzeichen
        abgeschnitten wurden.

        query_command() liefert 0, wenn es von einer Funktion gestartet wurde,
        die wiederum von einem call_out() oder dem heart_beat() aufgerufen
        wurde. Auch Kommandi, die beim Userlogin aufgerufen werden, liefern 0.

BEISPIEL
        void init()
        {
            ...
            add_action("sing","sing");
            ...
        }

        int sing(string str)
        {
            write("Dein Kommando war:"+query_command()+"\n");
            return 1;
        }

        Jedesmal, wenn jemand "sing blafasel" eingibt, liefert das Programm
        "Dein Kommando war: sing blafasel".

SIEHE AUCH
        add_action(E), query_verb(E)
