Skip to content
MSN Addons

Simple Away System

A TG007 community discussion started by Eaglenest25311.

Discussion 24 posts
Page 1 of 2
Open
Topic #3709 · 24 published posts · 1,823 views

Small Away System, Made 06-04-05 12pm eastern, I have a large away system with timer and and auto away telling people that I'm away for what ever reason I choose. That is fine if you have more than one account on msn chat, But I use my bot to also talk in room with others, Well I did not like the idea that when I put my self away it would keep telling people when I'm away from computer, it looks anoying. Well I looked for a simple away system and could not find one, So with help from others on this forum, I learn alittle sence last night, I wanted an add on to my allready install away system, That was simple and easy to use with no thrills.

 

This away will not or should not bother your away system your mirc bot has.,

First line to be put in popups menu ( I put mine on popups.ini )

 

Away System:{ dialog -m awaysmall awaysmall }

 

When hitting this will call for the box

 

This next is the mrc file (awaysmall.mrc) This is simple code just load in the mirc bot

 

dialog  awaysmall  {
 title "Away-Back"
 size -1 -1 57 48
 option dbu
 icon C:\Hybrid\Pictures\Msn.ico, 0
 button "Away", 1, 8 8 37 12
 button "Back", 2, 8 32 37 12
}

;buttons
On *:Dialog:awaysmall:sclick:1:{ 
 {  /away . }
}
On *:Dialog:awaysmall:sclick:2:{ 
 { /away  }
}

the icon is

My Webpage

put mine in picture folder

 

Hope ya like it

 

No offense intended but you're joking, right? You could just type /away instead of having to open a dialog to execute that command.

 

At best you could create an alias to open the dialog in a faster manner. Sorry, but I don't see the point in this

Get the Tech outta here!

dialog  awaysmall  {

title "Away-Back"

size -1 -1 57 48

option dbu

icon C:\Hybrid\Pictures\Msn.ico, 0

button "Away", 1, 8 8 37 12

button "Back", 2, 8 32 37 12

}

 

;buttons

On *:Dialog:awaysmall:sclick:1:{

{ /away }

}

On *:Dialog:awaysmall:sclick:2:{

{ /away  }

}

 

would work better if you did it like this

 

Menu * {

Away System: dialog -m awaysmall awaysmall

}

dialog  awaysmall  {

title "Away-Back"

size -1 -1 57 48

option dbu

icon $mircexe, 5

button "Away", 1, 8 8 37 12

button "Back", 2, 8 32 37 12

}

 

;buttons

On *:Dialog:awaysmall:sclick:1:{  /away away }

On *:Dialog:awaysmall:sclick:2:{ /away }

 

the bits in red are the ones i changed

 

 

and vegeta, everyone has to learn

Edited Jun 5, 2005 12:22 PM by OZZY_10â„¢

My code does NOT have bugs. It just develops random features.

Isnt that why we are here to learn and share our thoughts and ideas as well what we know that can help another with questions on scripting...

Looks good and works Good Ozzy, I see where you put the menu dialog on many places in menu ie... main right click over room screen and nick list, (Y) If that what Vegeta wanted, Thats kewl, I just wanted it like a regular chat room function to put my self away and back with a simple click, not to open and close the box each time. It's small, And I put it on right side of room and it does not bother me seeing what going on or what function I'm working on, I do how ever have learn something new (Y) Thank's You

Edited Jun 5, 2005 2:36 PM by Eaglenest25311

there is nowhere for u to put a reason why your away so why not use something like ..

Menu * {
 Away System:{ away }
}

dialog  awaysmall  {
title "Away-Back"
size -1 -1 57 48
option dbu
icon $mircexe, 5
button "Away", 1, 8 8 37 12
button "Back", 2, 8 32 37 12
}

on *dialog:awaysmall:sclick:*:{
 if ($did = 1) { away away $$?="Reason For Away:" }
 if ($did = 2) { away }
}
alias away {
 if (!$dialog(awaysmall)) {
   dialog -m awaysmall awaysmall
 }
 else {
   echo -a Error: Dialog already open.
 }
}

 

hope this help's u for future reference

Edited Jun 5, 2005 7:33 PM by Entox|cated

Sorry if I caused offense - please believe me when I say I posted my comments with no malice intended.

Get the Tech outta here!

Just a Note: I'm trying to learn here, I know this code is wrong couse it don't work LoL, so I'm asking for help here

 

I'm trying first learn how do I find my bot status weather I'm away or not, and Trying to learn how to use if status of bot is not away, than put away, if not do nothing

 

I use debug and I got -> tk2chatchata04 AWAY :away

-> tk2chatchata04 AWAY <------ I figure was my return status, But it not let me make an action, Can you help me understand what I did wrong, Thanks

 

#awayauto on

 

on *:JOIN:*:{

  if ($me == tk2chatchata04 AWAY :away){ /away }

}

on *:PART:*:{

  if ($me == tk2chatchata04 AWAY){ /away away }

}

#awayauto end

 

Remember I'm just trying to learn simple command as I get better I will do more complicated strings

if you want the bot to auto away itself when you enter a room just use this code...this will auto away itself in about 2 secs....but as for the on part deal what is u want the bot to say..

 #awayauto on

on *:join:*:#:{ $me | /away away  }

#awayauto end

Thank you, But I figured that part out, what I'm trying to do is if I'm away then I would not be away, els if I'm not away, I want it to do nothing and vice verca

 

With your code I did change it to this but it did not work

#awayauto on

 

if $me == $away away {on *:join:*:#:{ $me | /away  }

 

if $me == $away {on *:part:*:#:{ $me | /away away  }

 

#awayauto end

Edited Jun 6, 2005 8:48 PM by Eaglenest25311

$away returns $true if you are away and $false if you're not. so just use $away in your code to determine whether you're away or not. as for the rest of it... when you first join a channel you'll always be Here, not Away, anyway. so this on-join stuff is confusing me. do you want to go auto-away when you join? if that's what you want to do, then all you have to do is this..

 

on *:join:#:{ if ($nick == $me) away Away }

Edited Jun 6, 2005 9:14 PM by vexation

bfush.PNG

Thanks Vex..... That was alot of help , and I tried many combonation to the $away and $True Combenations and still keep puting me away when I'm allready away, and or same with i'm not away

 

Ect..

 

 

[ 19:34:27 ] * Bethanie╚ 6 NO PROFILE

[ 19:34:27 ] * BACK *

[ 19:34:29 ] * AWAY * manual

[ 19:34:33 ] * Parts: Bethanie╚ Bethanie╚

[ 19:34:33 ] * AWAY *

[ 19:34:34 ] * BACK * manual

[ 19:34:36 ] * Joins: Bethanie╚ on Port 21186 on Host [ 19:34:37 ] * Bethanie╚ 6 NO PROFILE

[ 19:34:37 ] * BACK *

 

This is last code I tried

 

#awayauto on

on *:join:*:{{ if ($me == $away) && ($away == $true } /away }
on *:part:*:{{ if ($away == $me) && ($away== $false } /away away}

#awayauto end

Edited Jun 6, 2005 11:43 PM by Eaglenest25311

u got way too many brackets for no reason... bad syntax

#awayauto on

on *:join:*:{ if ($me == $away) && ($away == $true) away }
on *:part:*:{ if ($away == $me) && ($away== $false) away away }

#awayauto end

curly brackets {...} contain a complete statement or set of commands. don't separate the IF statement from the command by the brackets brackets, or it won't work.

 

parentheses (...) contain the parameters for the IF statement: IF ($away == $true). ALWAYS include the closing parenthesis at the end of the if statement, or it won't work.

 

for both curly brackets and parenthesis, make sure there is a SPACE separating the command from this punctuation, or it won't work.

 

the "bar" | separates different commands placed on a single line. your use of the bar in an earlier post was all wierd. don't place it between an IF statement and the command that it's supposed to trigger or it will not work. only put it between separate commands.

 

try typing /help in mirc :|

Edited Jun 7, 2005 12:46 AM by vexation

bfush.PNG

Thanks again vexation, I have been looking at /help, thats where I'm where i'm learning some of the meaning of the comands abd some value, But it looks like the value of the command still eludes the bot and does the comand away or not,

 

The code you just posted, does nothing, but I got it to work again with the / any way, I think my if comand is missing an argument if value is comming up true it should not call to make me away again when I'm allready away , lets say i'm A and b is away than c is back and I want to be back, what I'm trying to do is this if a= to b than run c else end, and vice versa, I hope that helps you understand what I'm having trouble with

 

updated code

 awayauto on

on *:join:*:{ if ($me == $away) && ($away == $true) | /timer50 1 2 /away }
on *:part:*:{ if ($me == $away) && ($away == $false) | /away away }

#awayauto end

 

 

okay i totally missed what you had going in your last post..

 

first of all, dont use if ($me == $away) .. that never triggers. $me is NEVER $away, because $away is either "$true" or "$false", and $me is always your nickname. they are never the same. there's no point in doing this. $away itself tells you whether you are away or not. if you are away, $away is $true, otherwise it's $false.

 

secondly, stop putting | between the IF statement and the command. this is ridiculousness. the | symbol means the beginning of an entirely new command string. the IF statement is PART OF THE COMMAND. if you chop it up, of course it won't work.

 

third, quit putting the / in there. you don't need it. as you advance you will find that it only gets in the way and stops some commands. the / is only needed when manually entering commands from the editbox of a window, not in the script itself.

 

fourth, there is no reason to use a timer.

 

#awayauto on

on *:join:#:{ if ($nick == $me) { if ($away == $true) away | else away away } }
on *:part:#:{ if ($nick == $me) { if ($away == $true) away | else away away } }

#awayauto end

 

now when you join or part a channel, you will go away if you werent, and come back if you were. that's what i think you were talking about. later we can get into how to make this code more efficient.

 

 

*** sorry about all the editing, lol.

Edited Jun 7, 2005 1:56 AM by vexation

bfush.PNG

[ 19:34:27 ] * Bethanie╚ 6 NO PROFILE

[ 19:34:27 ] * BACK *

[ 19:34:29 ] * AWAY * manual away button

[ 19:34:33 ] * Parts: Bethanie╚ Bethanie╚

[ 19:34:33 ] * AWAY *

[ 19:34:34 ] * BACK * manual back button

[ 19:34:36 ] * Joins: Bethanie╚ on Port 21186 on Host

[ 19:34:37 ] * Bethanie╚ 6 NO PROFILE

[ 19:34:37 ] * BACK *

 

Thanks Vexation, You been great and I appreciat all your help,

But I'm not trying to change my away status when my bot comes into the room.

My Bot stays in the room, the log you see above is what is happening.

If I'm back and some one comes in the room it runs the back function.

If I'm away and some one leaves the room, It Runs the away Function.

From the start of this Question, the Away on Part, And Back On Join Formula

Works Fine, Even with your formula with allitle adjusting I had to do, Works.

The if ($nick == $me) String, I don't see why I need this in the string, Sence I'm not the one leaving or comming into the room. Just my guest.

The problem I'm trying to figure out is to make my bot do nothing if some one comes in the room and the bot is already back, And if some one leaves and the bot is already away, than do nothing, What does work is the bot goes away when they leave, and when some one comes in the bot returns(back).

The formula You and I have tryed, does not work, It still goes away when the bot already away and vice versa, I'm trying to stop it from doing that, If you have time, use our formula in your own bot and see if you can figure why the formulas we came up with does not work, if they do work for you, Than it's my bot and I'll need to find a new one, or start from scratch, If it don't work on your bot, Than we must be missing an agrument or value , and or reconized value, I have tryed 100 diffrent formulas for my bot to reconize if my bot is away or not and nothing works, Even with your formulas, it flat out won't do nothing. Weard for sure. I have learned alot through your help and my testing. If ya can, and have time, Try it on your bot and see what it does for you, So I know where to go from here if there is a way to fix this, Thanks again for all you help Vexation , Sorry if I'm bothering you.

Edited Jun 7, 2005 4:20 PM by Eaglenest25311

well the reason your bot is going away or returning when someone leaves is cuz you have this deal remove this i dont know why u need this in your away system anyways...all its gonna do is cause havoc...

on *:part:#:{ if ($nick == $me)

Edited Jun 7, 2005 5:21 PM by K0rupt

I don't have if ($nick == $me) thats something Vexation put in the $tring,

I have This

 

 #awayauto on

on *:join:#: { if ($away($true) == $away($me))  timer50 1 2 away  | else msg $chan } } 
on *:part:#: {  if ($away($me) == $true($me))  away away  | else msg $chan ok2 } } 

:done

 

As of now, last try to figure why $away == $true weither I'm away or back.

 

here are some of my tries in this, others I did not save in any fasion

 

 awayauto on

on *:join:*:{{ if ($me == $away) && ($away == $true } /timer50 1 1 /away }
on *:part:*:{{ if ($away == $me) && ($away== $false } /away away}

#awayauto end

#awayauto on

on *:join:*:{ if ($me == $away) && ($away == $true) | /timer50 1 2 /away | else end }
on *:part:*:{ if ($me == $away) && ($away == $false) | /away away }

#awayauto end

#awayauto on

on *:join:*:{{ if ($me == $away) && ($away == $true } /away }
on *:part:*:{{ if ($away == $me) && ($away== $false } /away away}

#awayauto end

#awayauto on

if $me == $away away {on *:join:*:#:{ $me | /away  }

if $me == $away {on *:part:*:#:{ $me | /away away  }

#awayauto end

 

Right now I need them to try it on there bot and see if they can figure how get the mirc to reconize the diffrences and act accordenly

just posting one defeats the whole object , he is learning to make his own

My code does NOT have bugs. It just develops random features.

oh god.

 

okay.. what is this --- $away($true) ??? that is nothing. $away itself is either $true or $false, depending on whether you're away or not. same with $away($me) this is ridiculous. $true($me) ?? lol, i dont know what is going on here. also, quit using timers. i was unclear what you wanted but now that you said it clearly it's very very simple.

on *:join:#:{ if ($away == $false) away }
on *:part:#:{ if ($away == $true) away $awaymsg }

there

bfush.PNG