Sende eine IM nach Avatare NUR wenn Sie Online sind

* Questions, answers and templates about scripting
* Fragen, Antworten und Beispiele zum Scripting

Sende eine IM nach Avatare NUR wenn Sie Online sind

Beitragvon Neovo Geesink » Do 10. Sep 2015, 21:20

Translate to English translate to German Translate to French Translate to Italian Translate to Spanish Translate to Portuguese Translate to Czech Перевести на русский язык 翻译成中国

Entschüldige mich fur SchreibFeler, Deutch ist nicht meine beste Sprache.

Ich habe eine Probleme mit eine Script.

Ich wollte eine Communicattions gerät machen welche eine serien UUIDs von Mitglieder hat, und wenn die Träger eines Comminicator eine IM ausfordert musst es NUR die Online Avatars eine bericht schicken.
Jetzt sent das gerät eine IM nach Jede gespeicherte Avatar, aber das macht Amok mit die Mail Servers.


Hier folgt das Script welche ich jetzt habe: (UUID's von die andere Mitglieders sind entfernt!)

-----------------------------------------------

string message;
integer channel = 8;

default
{
on_rez( integer sparam )
{
llResetScript();
}
state_entry()
{
llListen(8,"",llGetOwner(),"");
}
listen(integer channel, string name, key id, string message)
{
llInstantMessage("e214ebb8-0416-4d40-8a85-c8b7b093397b", llKey2Name(id) + "Grid: " +llDetectedName(0) + (string)message); // Neovo Geesink
// <Wiederholt je nach neue Avatar>
llResetScript();
}
}

-----------------------------------------------

Wer kann mich dabei helfen?

Danke Schön!

Neovo Geesink.
Taal / Sprache / Speech:

Nederlands, Deutch, English.
Benutzeravatar
Neovo Geesink
 
Beiträge: 63
Registriert: Mi 28. Jan 2015, 07:49
Wohnort: die Niederlanden, Zwolle

Re: Sende eine IM nach Avatare NUR wenn Sie Online sind

Beitragvon Magnuz Binder » Fr 11. Sep 2015, 09:54

Translate to English translate to German Translate to French Translate to Italian Translate to Spanish Translate to Portuguese Translate to Czech Перевести на русский язык 翻译成中国

Code: Alles auswählen
////////////////////////////////////////////////////////////
// Online Messager in LSL v0.01
// by Magnuz Binder in hypergrid.org CC0 2015
// after an idea by Neovo Geesink
//
// sends chat on channel 8 from the owner
// to those on a list of recipients who are online
// uses llRequestAgentData since llKey2Name is only sim-wide
// uses explicit type casting from llList2String
// to avoid some implicit type casting problems
////////////////////////////////////////////////////////////

// List of IDs for message recipients (change to real IDs)
list recipientIds = [
    "00000000-0000-0000-0000-000000000000",
    "11111111-1111-1111-1111-111111111111",
    "22222222-2222-2222-2222-222222222222"
];

// Listener data
integer listenChannel = 8;
integer listenHandle;

// Help variables for persistence
string sender;
string message;
integer idNo;
key onlineReq;
key nameReq;

default
{
    state_entry()
    {
        // Listen for messages
        listenHandle = llListen(listenChannel, "", llGetOwner(), "");
    }

    on_rez(integer num)
    {
        // Reset script when rezzed
        llResetScript();
    }

    listen(integer channel, string name, key id, string str)
    {
        // Persist variables
        sender = name;
        message = str;
        idNo = 0;
        // Check recipient online status
        onlineReq = llRequestAgentData((key)llList2String(recipientIds, idNo), DATA_ONLINE);
    }

    dataserver(key req, string str)
    {
        // Get recipient name if online
        if ( req == onlineReq  &&  (integer)str ) {
            nameReq = llRequestAgentData((key)llList2String(recipientIds, idNo), DATA_NAME);
            return;
        }
        // Message recipient with name if online
        else if ( req == nameReq )
            llInstantMessage((key)llList2String(recipientIds, idNo), "From "+sender+" to " +str+": "+message);
        // Check next recipient online status
        idNo++;
        if ( idNo < llGetListLength(recipientIds) )
            onlineReq = llRequestAgentData((key)llList2String(recipientIds, idNo), DATA_ONLINE);
    }
}
Benutzeravatar
Magnuz Binder
 
Beiträge: 286
Registriert: Fr 22. Feb 2013, 21:01
Wohnort: Stockholm, Sweden

Re: Sende eine IM nach Avatare NUR wenn Sie Online sind

Beitragvon Neovo Geesink » So 13. Sep 2015, 11:13

Translate to English translate to German Translate to French Translate to Italian Translate to Spanish Translate to Portuguese Translate to Czech Перевести на русский язык 翻译成中国

Danke für Ihre reaktion.
Ich kopieree das Script in eine Prim, und fügen die UUIDs ein.

Vielleight gibt es nun keine Amok mit die Mailservers von Metropolis.

Danke Schön!

Neovo Geesink.
Taal / Sprache / Speech:

Nederlands, Deutch, English.
Benutzeravatar
Neovo Geesink
 
Beiträge: 63
Registriert: Mi 28. Jan 2015, 07:49
Wohnort: die Niederlanden, Zwolle

Re: Sende eine IM nach Avatare NUR wenn Sie Online sind

Beitragvon Magnuz Binder » Mo 14. Sep 2015, 08:07

Translate to English translate to German Translate to French Translate to Italian Translate to Spanish Translate to Portuguese Translate to Czech Перевести на русский язык 翻译成中国

You are welcome and good luck. I hope it will work as intended for you.
Benutzeravatar
Magnuz Binder
 
Beiträge: 286
Registriert: Fr 22. Feb 2013, 21:01
Wohnort: Stockholm, Sweden


Zurück zu Scripting

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast



Powered by phpBB

Deutsche Übersetzung durch phpBB.de
.

Style designed by Artodia.