Script "Je suis en IM"

Répondre
Partager Rechercher
Bonjour,

Je découvre cet excellent forum qui m'apprend beaucoup sur SL, et là, je bloque quelque peu.

Certainement que quelqu'un pourra m'aider.

Je cherche un script (s'il existe) ou une indication pour le faire moi même (il faut noter au passage que je ne suis pas un crack en prog ...lol). Mais bon je suis près galérer pour y arriver !

Je voudrais, lorsque je suis entrain de chatter et que je reçois un IM, avoir automatiquement un message qui indique aux personnes avec qui j'étais entrain de chatter que je viens de passer en IM.
Il faudrait par exemple, qu'il se mette au-dessus de ma tête le message "je suis en IM"

J'espère avoir été suffisamment explicite.

Merci d'avance

TB
Bonjour Tae Beck,

Il n'existe à ma connaissance aucune fonction lsl de ce type. Ce qui s'en rapproche le plus est la possibilité de savoir le statut "away" ou "busy" de l'avatar.

Bonne continuation.
Merci pour ta réponse rapide,

C'est vraiment l'état de l'IM que je voudrais avoir comme info. Jepensait qu'il existait une fonction LSL permettant de controler cet état.

Si qq peut confirmer

Merci d'avance

TB
Il n'y a pas de fonction pour faire ça pour simple est bonne raison que tu n'es jamais "en IM". Tu peux avoir la fenêtre ouverte ou pas. Tu peux avoir le focus sur la ligne d'entrée du chat, de l'IM ou de n'importe quelle fenetre de l'interface, mais il n'y a aucun moyen pour le langage de script de savoir dans quelle fenêtre tu es en train de taper.

La seule possibilité, c'est un gadget que tu portes et que tu commandes pour dire que tu es en IM. Comme in titler par exemple.
Merci à tous,

Je vois que j'ai eu à faire à la crême de ce forum et je vous en remercie.

Voici ma dernière interrogation:
Lorsque je tape dans le chatte, j'ai un PC portable qui se met devant moi sous mes mains. Je pense que tout le monde à déjà vu ça sur SL.

Lorsque je tape dans la fenêtre de l'IM le PC portable n'apparait pas !
Je me demandais s'il n'était pas possible, de faire la même chose, et d'avoir lorsque je tape dans la fenetre de l'IM le PC portable qui se place sous mes mains. En modifiant le script du PC Portable.

Si j'ai encore des "NON" comme réponse , je vous promet que c'est la dernière question pour ce sujet...LOL

TB
Ben non alors.

Ton pc (un peu lourd je trouve moi), ne marche que pour le chat, et quand tu discutes dans ta fenetre IM, le chat n'a rien à afficher.

Et pis c'est un peu de l'esthetisme pas forcement utile non? ;-)
Tu as raison SEB,


Mais ce qui me saoule c'est lorsque je chatte avec une ou plusieurs personnes et que je reçois un IM qui est important.
Je dois alors jongler entre l'IM et le chatte (pas toujours pratique)

Suivant l'heure qu'il est, je fini par répondre dans l'IM a la place du Chatte et inversement (ça commence a être la panique a bord ...)

C'était donc pour moi une façon pratique et automatisée de dire à mes interlocuteurs du chatte que "je suis en IM"


Merci a tous

A bientôt

TB
Mais tu n'es jamais "en IM". Ca n'existe pas. Tu as juste une fenetre active, mais les autres le sont aussi.

Si tu veux discuter en IM sans être dérangé, le mieux c'est simplement d'aller ailleurs.
Oui Nibb,


Effectivement, je ne suis pas en IM.

Je veux tout simplement que mes interlocuteurs sache, que j'arrête de converser avec eux 2mn le temps de régler ce que j'ai a regler en l'IM.

Plutot que d'avoir a leur dire "attend 2 mn j'ai un IM" puis après "c'est bon me revoilà".

Je trouvais ça plus pratique d'automatiser un message par un script lorsque ma fenêtre d'IM est ouverte.
Losrque je converse avec un client dans ma boutique, c'est toujours un peu génant de le mettre en attente.


Je ne veux pas abuser de votre temps plus longtemps

J'ai bien compris qu'on ne pouvais rien faire en programmation

Tant pis

Encore merci

En tous cas, super réactivité, j'apprécis !

Tae Beck

TB SKINS et TATTOO BOOTIK
Tu n'as qu'a enregistrer une animation qui dis que tu es en IM. Tu la configure ensuite pour qu'elle s'active lorsque tu appuies sur une touche quelconque par exemple CTRL + F2 ensuite si tu reçoit un IM tu fais CTRL + F2 et tes amis sont renseignés.
Citation :
Publié par Phli Foxchase
Bonjour Tae Beck,

Il n'existe à ma connaissance aucune fonction lsl de ce type. Ce qui s'en rapproche le plus est la possibilité de savoir le statut "away" ou "busy" de l'avatar.

Bonne continuation.
hier soir j'ai discute avec un mec, et au dessus de sa tete s'affichait des commentaires qu'il renouvellait a chaque fois, donc c'est possible, c'etait comme un affichage du chat mais au dessus de sa tete
ah je retrouve un peu d'espoir,

J'ai pense justement dans la journée a faire qq chose comme l'a proposé Buddy Burch.

master71, est-ce que tu peux expliquer, j'ai pas vraiment pigé, même si ça à l'air d'être très simple pour un initié.
tu as une propriété des prims qui est d'afficher un texte au dessus.
tu peux piloter cette fonction par un script afin d'afficher tout et n'importe quoi.
si tu places un prim dans le crâne, (en général la coiffure), tu obtiens un panneau d'affichage au dessus du joueur.

après ton script tu le fais comme tu le veux, avec un llListen() tu peux écouter ce que dis le joueur sur les différents canaux, ou utiliser les états du joueur (mais il n'y a pas d'état 'en IM', seulement un état 'typing' quand tu écris sur un canal de communication), pour définir ce que cet affichage fait.

Donc si tu écris un script qui écoute un canal quelconque, de préférence au dessus de 1, pour savoir quoi afficher, tu as ce dont tu parles.
après, afin d'éviter de devoir taper une commande du style '/5463 <1.0, 1.0, 0.0> 1.0 in IM, do not disturb', ce qui n'est pas le plus efficace, il a du se faire une gesture pour qu'en appuyant sur F1 (par exemple), cette commande soit lancée.

ça va? c'est clair?

Mais ce n'est pas une détection automatique, qui n'est pas possible actuellement.
[Edit:]
un petit code sur le tas:
Code:
integer channel = 5463;
vector color = ZERO_VECTOR;
float alpha = 0.50;
key Owner = NULL_KEY;
string msg = "";

default {
    state_entry() {
        Owner = llGetOwner();
        llOwnerSay("Hello dude, on duty!");
        llSetTimerEvent(0.25);
        llListen (channel, "", Owner, ""); }

    listen(integer chan, string name, key id, string mess) {
        list lst = llParseString2List(mess, [" "], []);
        if (llList2String(lst, 0) == "color") {
            color = (vector)llList2String(lst, 1);
            lst = (lst=[]) + llDeleteSubList(lst, 0, 1); }
        if ((llGetListLength(lst) > 0) && (llList2String(lst, 0) == "alpha")) {
            alpha = (float)llList2String(lst, 1);
            lst = (lst=[]) + llDeleteSubList(lst, 0, 1); }
        msg = llDumpList2String(lst, " ");
        llOwnerSay ("mess : " + msg); }

    timer() {
        string tmp = msg + "\n...";
        integer res = llGetAgentInfo(Owner);
        if ((res & AGENT_FLYING) || (res & AGENT_IN_AIR)) tmp += " got high ";
        if (res & AGENT_MOUSELOOK) tmp += " aiming ";
        if ((res & AGENT_SITTING) || (res & AGENT_ON_OBJECT)) tmp += " grounded ";
        if (res & AGENT_WALKING) tmp += " on my way ";
        if (res & AGENT_TYPING) tmp += " babling ";
        if (res & AGENT_CROUCHING) tmp += " hiding in the shadows ";
        if (res & AGENT_BUSY) tmp += " on duty ";
        if (res & AGENT_AWAY) tmp += " spaced out ";
        tmp += "...";
        llSetText(tmp, color, alpha); } }
Merci master71

J'essai de comprendre le code et si besoin je vous recontacte

Juste une petite précision:
Citation :
mais il n'y a pas d'état 'en IM', seulement un état 'typing' quand tu écris sur un canal de communication), pour définir ce que cet affichage fait
Est-que je peux utiliser l'état 'typing' pour faire ce que je cherche a faire ?

TB
Citation :
Publié par Tae Beck
Est-que je peux utiliser l'état 'typing' pour faire ce que je cherche a faire ?
non.
l'état 'typing' n'est actif QUE quand tu écris sur un canal de communication, pas en IM.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés