Shoutbox

- Printable Version

-Shoutbox (https://shoutbox.menthix.net)
+-- Forum: MsgHelp Archive (/forumdisplay.php?fid=58)
+--- Forum: Messenger Plus! for Live Messenger (/forumdisplay.php?fid=4)
+---- Forum: Scripting (/forumdisplay.php?fid=39)
+----- Thread: (/showthread.php?tid=86199)

by Hamburger on 09-28-2008 at 03:47 PM

Hallo zusammen,

Mein erstes Script und gleich 2 mittelschwere Probleme.


Die Funktion startet nicht wie sie sollte nur beim Empfangen sondern auch beim senden. Das aber auch nicht nur einmal sondern direkt mehrfach. Im Anhang findet ihr das Debuglog + Script.

code:
Starte Script
Scriptende erreicht
Skript wurde geladen und ist bereit
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht
Sende Nachricht


code:
Debug.DebuggingWindowVisible = true

Debug.Trace("Starte Script");

function OnEvent_ChatWndReceiveMessage(ChatWnd, Origin, Message, MessageKind) {
    Debug.Trace("Sende Nachricht");
    ChatWnd.SendMessage("Das ist cool !");
}

Debug.Trace("Scriptende erreicht");


Bitte um Rat *-)
by djdannyp on 09-28-2008 at 04:10 PM

Please post in English on these forums, as more people will be able to understand (and help) your request


by mynetx on 09-28-2008 at 04:32 PM

Hallo Hamburger,

zu Beginn ein Tipp: dies ist ein vorwiegend englisches Forum. Du wirst also mehr Erfolg haben wenn du Anfragen auf Englisch formulierst...

Du musst innerhalb der Funktion OnEvent_ChatWndReceiveMessage prüfen, ob der Absender der Nachricht (in der Variablen Origin) du selbst bist. In diesem Fall solltest du keine automatische Antwort versenden.

code:
function OnEvent_ChatWndReceiveMessage(ChatWnd, Origin, Message, MessageKind) {
    if (Origin == Messenger.MyName) {
        return;
    }
    Debug.Trace("Sende Nachricht");
    ChatWnd.SendMessage("Das ist cool !");
}

Hello Hamburger,

for first, a tip: this is a mostly English forum. You will thus have more success if you type postings in English...

Within the function OnEvent_ChatWndReceiveMessage, you have to check if the sender of the message (in the variable Origin) is you yourself. In this case, you shouldn't send an automatic reply.
code:
function OnEvent_ChatWndReceiveMessage(ChatWnd, Origin, Message, MessageKind) {
    if (Origin == Messenger.MyName) {
        return;
    }
    Debug.Trace("Sending message");
    ChatWnd.SendMessage("This is cool !");
}

by Hamburger on 09-28-2008 at 06:02 PM

Danke so funktioniert es perfekt ;) kannst Du mir auch noch sagen wie ich auf den Empfänger zugreife?

Thanks, but how do I get the receivers?


by mynetx on 09-29-2008 at 10:45 AM

You always get a ChatWnd object. That object has a sub-object that you can iterate, "Contacts". Each item in the iteration is an object of the type "Contact". This object has several properties, like Email or Name.


by Hamburger on 09-30-2008 at 12:40 AM

Perfectly, Thanx :D