All the lonely people
Where do they all come from?
All the lonely people
Where do they all belong?
Home Blog About Contact


Download (4.75 KB)

pmBlocker is Private Message Blocker - an mIRC script to block unwanted private messages and DCC chats. pmBlocker supports address blacklisting, nick whitelisting, blocking according to user status, spam blocker and much more.

Using pmBlocker is very easy - in fact, it is one of those "set and forget scripts". However, there are few "gotcha's" - ie things that you should know. Most important is the fact that it will not show info about the messages that are already halted by other scripts - ie dlFilter, OS-SpamBlock etc.

Another thing is that pmBlocker checks messages only when the window is opened - if you opened the query window then no further checking is done; same applies when first message from the user passed all checks and then his/her status changed. No messages beyond the first will be checked.

pmBlocker will never send out any "message blocked" messages. I consider such messages to be spam. If you get such message with pmBlocker "ID", then that user is using a modified script (hello, Tipi :P). Feel free to ban such users.


Extract to your mIRC folder - or use subfolder if you want to. If you are new to mIRC, it might be easier to press Alt+R and select Remote tab in mIRC Scripts Editor, then select Load from the File menu and navigate to the folder where you extracted pmBlocker. Select pmBlocker.mrc and press Open button.

Otherwise, you can use the /load command to load pmBlocker. If you don't manage it, go back to the previous method.

Press OK when the load warning pops up.

pmBlocker should be always your last script, otherwise it might start affecting other scripts - most notably scripts that group search results, such as dlFilter, sbClient or AutoGet. Usually pmBlocker manages to keep itself as a last script, even if you load other scripts after pmBlocker.

After loading, pmBlocker options will pop up. You can later access that dialog from Commands --> pmBlocker --> Open or nicklist menu --> pmBlocker --> Open -- or just press ctrl+F8 in mIRC.


Options, tab 1

After loading, pmBlocker will set the default settings (not the ones that are in the image - these are mine).

  • pmBlocker enabled. Self-explanatory. You can also disable pmBlocker quickly from Commands --> pmBlocker --> uncheck "Enabled"
  • ...also for DCC chats. Enable if you want to block both queries and DCC chats. As far as I know, spammers haven't used DCC chats yet, so if you are using pmBlocker mainly for blocking spam, you can leave it disabled.
  • Do not accept any private messages. Blocks all private messages. However, note that users in your whitelist can always send messages to you, no matter what the Blacklist/whitelist status is.
  • Block messages from users without common channel. Helps against "stealth spammers". I recommend disabling this when you are a channel operator.
  • Bitch-mode spam blocking. This is a heavy-duty spam blocker. It attempts to detect spammers using several methods.

Most pmBlocker updates will probably be related to spam blocking function. It is also possible to make pmBlocker autokick the spammer - see below - but I don't recommend it.

Speaking of updates, pmBlocker will notify you if the website has a new version available - you will get a message in the mIRC status window when you start mIRC and you are using an old version of the pmBlocker.

  • Status level control. Set to "Allow voices and above" to block spam very efficiently, as spammers are not voiced/ops. "Allow only ops/hops" has no real use, as far as I can see it. Also, user levels higher then channel operators - channel founder and services admin - are handled correctly.
  • Blacklist/whitelist. If you are not familiar with the concept of blacklist and whitelist, see Wikipedia articles about blacklist and whitelist.

No matter what the blacklist/whitelist setting is, all nicks that are in your whitelist can always message to you, they are exempt from all pmBlocker checks.

Blacklist has user addresses. In effect, blacklist is similar to users in your ignore list (with -pd options) and using /ignore is recommended. In the future I may change this feature to just nicer interface for /ignore. You can add users from Blacklist tab or channel nicklist menu. If the user's address is not yet in mIRC's Internal Address List (IAL), then pmBlocker does /whois and adds the address to the blacklist when the reply arrives.

Whitelist has user nicks and not addresses. Any nicks that you've added to the whitelist can always send both queries ("private messages") and start DCC chats with you. You can add/remove users from nicklist menu or Whitelist tab.

  • Lastly there are three options to get info about blocked messages. First and last one should be self-explanatory, I will discuss the custom window option below.


@pmBlocker window

@pmBlocker window

pmBlocker window is created when you enable that option - and you get a private message. In the right-click menu you have various options

  • Open PM window. Use to open query window. The blocked message will be echoed to newly opened window, so you will know what it was - and it will be logged if you have pm logging enabled in mIRC. That item will be disabled if the nick in question does not have a common channel with you - you can still use double-click to open the query window. Query window will be opened on the correct network.
  • Whois. Does just a regular /whois, results are in your status window.
  • Check common channel status. Colors lines according to common channels: dark blue - you have a common channel with that nick; gray - no common channel.
  • Highlighting. Whether or not the @pmBlocker window will be highlighted when a new message is blocked


Kicking spammers

pmBlocker can kick spammers from the channels where you are op - but I don't recommend it, as you may get false positives with bitch-mode spam blocking. If you want that feature, enable the spam-blocking option from UI and set mIRC variable %dlpm.kickspammers to $true.




  • LawdyMama. As always, my first tester, giving me good ideas and keeping my spirit up. Thank you!
  • Tipi. Beta testing, giving ideas and more. You get to be Shirley.



  • 1.02 (2006/03/07). Don't know what happened to 1.01. Fixed the issue with opening a query window from @pmBlocker when there was a space in the timestamp format. Some more minor tweaking, don't remember what exactly
  • 1.03 (2011/01/07)- Website change.



Valid HTML 4.01 Transitional Valid CSS!