If the user connects through a different source or client, then of course, the response of his client's version may be very different. As far as I know, the webgate "Mibbit" writes its name of the client version in response. In this case, we can work only with that with the response of the user program that it gives to our CTCP request. Most likely, we will not be able to get the answer that is hidden from us and inaccessible for receiving, because the program will not give it back. That is, in other words, if a user has a client signed as "
Igloo", then you can block it according to my script or how you configure it. Otherwise, no.
I apologize in advance if I misunderstood you due to the complexity of the translation.
And I noticed that you have an error in this code:
if ($2- <= %banversion) {
This will only work if you need to compare the numeric version index, which must be less than or equal to the specified in the variable. As it was presented in examples by
maroon ->
#Post268166But in my opinion you need something completely different. Therefore, in this form, the script should work correctly and as you need it:
on *:CTCPREPLY:VERSION*:{
;----------------------------
var %banversion = Igloo IRC: https://iglooirc.com - v1.8.12 (13460)
;----------------------------
if (%banversion isin $strip($2-)) {
/msg #mastercontrol,#version 04SHUN VERSION $nick : $2-
/tempshun $nick : %banversion - Shunned version
}
else { /msg #mastercontrol,#version 03VERSION $nick : $2- }
}
Or you can specify this in a variable to cover a wide range of any version numbers for that client:
var %banversion = Igloo IRC
P.S. Perhaps this will greatly upset the developers of the
Igloo client, because you will block via (tempshun) all users using this application
