mIRC Home    About    Download    Register    News    Help

Print Thread
#204287 14/09/08 05:56 PM
Joined: Oct 2007
Posts: 102
B
bcancer Offline OP
Vogon poet
OP Offline
Vogon poet
B
Joined: Oct 2007
Posts: 102
Am using this to auto identify but it works on connect but it wont auto identh on notice when I change nick. Any ideal whats wrong?

Code:
 

dialog aid {
  title "Auto Identify Setup"
  size -1 -1 340 220
  button "OK",1, 195 5 120 20, cancel flat
  button "Cancel",2, 195 30 120 20, ok flat
  text " Check To Turn Auto Identify",3, 14 32 150 40
  radio "ON",4, 95 5 40 20
  radio "OFF",5, 45 5 40 20,group
  box "Nick-1",6,10 60 150 70
  text "Nick",7,20 80 30 20
  text "Pass",8,20 100 30 20
  edit "",9, 45 80 110 20,autohs
  edit "",10, 45 100 110 20,autohs,pass
  box "Nick-2",11,180 60 150 70
  text "Nick",12,190 80 30 20
  text "Pass",13,190 100 30 20
  edit "",14, 215 80 110 20,autohs
  edit "",15, 215 100 110 20,autohs,pass
  box "Nick-3",16,10 130 150 70
  text "Nick",17,20 150 30 30
  text "Pass",18,20 170 30 20
  edit "",19, 45 150 110 20,autohs
  edit "",20, 45 170 110 20,autohs,pass
  box "Nick-4",21,180 130 150 70
  text "Nick",22,190 150 85 20
  text "Pass",23,190 170 85 20
  edit "",24, 215 150 110 20,autohs
  edit "",25, 215 170 110 20,autohs,pass
}
on *:dialog:aid:sclick:1: { 
  if ($did(aid,9).text) { /set %nickn1 $did(9).text }
  if ($did(aid,10).text) { /set %pass.1 $did(10).text }
  if ($did(aid,14).text) { /set %nickn2 $did(14).text }
  if ($did(aid,15).text) { /set %pass.2 $did(15).text }
  if ($did(aid,19).text) { /set %nickn3 $did(19).text }
  if ($did(aid,20).text) { /set %pass.3 $did(20).text }
  if ($did(aid,24).text) { /set %nickn4 $did(24).text }
  if ($did(aid,25).text) { /set %pass.4 $did(25).text }
  if ($did(aid,4).state == 1) { /set %nident on }
  if ($did(aid,5).state == 1) { /set %nident off }
}
on 1:dialog:aid:init:0: {
  did -a aid 9 %nickn1  
  did -a aid 14 %nickn2  
  did -a aid 19 %nickn3
  did -a aid 24 %nickn4  
  did -a aid 10 %pass.1
  did -a aid 15 %pass.2  
  did -a aid 20 %pass.3
  did -a aid 25 %pass.4  
  if (%nident == on) { did -c aid 4 }
  if (%nident == off) { did -c aid 5 }
} 
on 1:CONNECT:{
  if (%nident == On) {
    if ($me == %nickn1) { /nickserv identify %pass.1 | halt }
    if ($me == %nickn2) { /nickserv identify %pass.2 | halt }
    if ($me == %nickn3) { /nickserv identify %pass.3 | halt }
    if ($me == %nickn4) { /nickserv identify %pass.4 | halt }

  }
}
on 1:NOTICE:This nickname is owned by someone else*:?:{
  if ((%nident == On) && ($nick == nickserv)) {
    if ($me == %nickn1) { /nickserv identify %pass.1 | halt }
    if ($me == %nickn2) { /nickserv identify %pass.2 | halt }
    if ($me == %nickn3) { /nickserv identify %pass.3 | halt }
    if ($me == %nickn4) { /nickserv identify %pass.4 | halt }

  }
}



bcancer #204292 14/09/08 07:18 PM
Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
Try using
Code:
on *:NOTICE:*This nickname is owned*:*:{

On 3 of the 4 networks that I'm on, that notice actually reads "This nickname is owned and protected", only on the 4th does it actually read as yours indicates. Also, nickserv notices appear in my status window, so they aren't recognized as being via pm, which is what the ? at the end indicates as the location for the message, so I use the * that way it gets caught no matter where the message actually shows.

RusselB #204293 14/09/08 08:07 PM
Joined: May 2008
Posts: 2
J
Bowl of petunias
Offline
Bowl of petunias
J
Joined: May 2008
Posts: 2
Originally Posted By: "RusselB"
Also, nickserv notices appear in my status window, so they aren't recognized as being via pm, which is what the ? at the end indicates as the location for the message, so I use the * that way it gets caught no matter where the message actually shows.


The "?" for on NOTICE is used to filter anything that isn't a channel notice. So NickServ would qualify as being not a channel notice.

JoshR #204297 14/09/08 09:48 PM
Joined: Aug 2004
Posts: 7,252
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Aug 2004
Posts: 7,252
From the help file
Quote:
? for any private message

Unless the NOTICE is coming across in a private message (pm)/query, the ? will not recognize the message. Same thing applies to ON TEXT and ON ACTION events.

Nickserv is a network service, which means that it can be configured to send to the person's status window, rather than a channel or pm/query.

As there isn't a character designed to recognize messages sent via the status window, for these events, the * is a better option, as that way the message is caught no matter where it is actually seen.

RusselB #204299 14/09/08 10:07 PM
Joined: Feb 2006
Posts: 181
C
Vogon poet
Offline
Vogon poet
C
Joined: Feb 2006
Posts: 181
Originally Posted By: RusselB
? for any private message


Private Message is when you're the person who receives it ($target == $me), you're the only person who can see it.

Use:
Code:
on *:NOTICE:*:?: echo -tsc info $nick $1-

to test it.

RusselB #204300 14/09/08 10:22 PM
Joined: Dec 2002
Posts: 2,031
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Dec 2002
Posts: 2,031

The reason this notice from nickserv appears in the status window and not in a common channel window(s) is because nickserv is not on any common channel(s), not because it's configured to go to the status window.

RoCk #204301 14/09/08 10:58 PM
Joined: Oct 2007
Posts: 102
B
bcancer Offline OP
Vogon poet
OP Offline
Vogon poet
B
Joined: Oct 2007
Posts: 102
I try many ways and nothing is working:

on 1:NOTICE:This nickname is owned by someone else*:?:{
on *:NOTICE:*This nickname is owned*:?:{
on *:NOTICE:*This nickname is owned*:*:{
on *:NOTICE:*:?: echo -tsc info $nick $1-

bcancer #204302 15/09/08 12:34 AM
Joined: Jul 2008
Posts: 12
M
mOX Offline
Pikka bird
Offline
Pikka bird
M
Joined: Jul 2008
Posts: 12
on 1:NOTICE:<matchtext>:*: { }
Code:
on 1:CONNECT:{ if (%nident == On) { $autoid } }
on *:NOTICE:*This nick is owned*:*:{ if (%nident == On && $nick == nickserv) { $autoid } }

alias -l autoid {
  if $findtok(%nick1 %nick2 %nickn3 %nickn4,$me,32) {
    .msg NickServ identify $gettok(%pass.1 %pass.2 %pass.3 %pass.4,$v1,32)
  }
}

Check the value of %nident

mOX #204303 15/09/08 12:46 AM
Joined: Oct 2007
Posts: 102
B
bcancer Offline OP
Vogon poet
OP Offline
Vogon poet
B
Joined: Oct 2007
Posts: 102
thanx all.


Link Copied to Clipboard