Below is the update from the one I made on June 13th last year, and it's been tested and working for me:
on *:sockread:lop:{
var %read | sockread %read | if http:// isin %read {
.msg $gettok($sock(lop).mark,1,32) Shortened URL: $v2
}
}
on $*:text:/^!url\s((\w{3,8}\72\/\/)?(w{3}\56.+|\w+(?=\.\w{2,6})))/iS:#:{
if !%tc { inc -u4 %tc | if $sock(lop) { sockclose lop }
sockopen lop www.l0p.us 80 | sockmark lop $chan $regml(1)
}
}
on *:sockopen:lop:{
var %sockmark $gettok($sock(lop).mark,2,32)
sockwrite -n lop GET $+(/api-make.php?alias=&url=,%sockmark) HTTP/1.1
sockwrite -n lop Host: www.l0p.us $+ $str($crlf,2)
}
I'm not sure why you'd say it does not work for you. The only thing I can think of is the $v2 identifier not being recognized by your mIRC. You're perhaps running an old version below 6.16. If that's the case, you need to replace it with: $ifmatch2
That said, if my other version made on Nov. 14th, 2010 that's worked for the above poster HeartbrokenTR, I don't see the reason it should fail on you.
P.S. Place my version in a new remote or temporarily replace yours with mine. Since they both share the same trigger, it might have been causing the conflict.