<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.pscs.co.uk/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.pscs.co.uk/feed.php">
        <title>PSCS Wiki</title>
        <description></description>
        <link>https://wiki.pscs.co.uk/</link>
        <image rdf:resource="https://wiki.pscs.co.uk/_media/wiki:dokuwiki.svg" />
       <dc:date>2026-05-13T05:09:31+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spam_filter_rules?rev=1674057433&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lan_forwarding_script?rev=1755706120&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:alter_lan_forwarding_queued_messages_going_to_one_server_to_go_to_another?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_scripting?rev=1774568941&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_httpget?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_winhttpget?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_getsectionmd5?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:error_handling_script?rev=1700475481&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_getdecodedsection?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_getsectionencoding?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:attachment_extraction_script?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:attachment_processing_script?rev=1669282143&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:list_messages_in_lan_forwrding_queue_waiting_to_go_to_a_specific_server?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_smtp_server_script?rev=1746692615&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getmessages?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:database_restore?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:imap4_server_script?rev=1750675906&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:running_database_updates_within_a_transaction?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:signature_script?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:smtp_direct?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_getaddresstype?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_getmd5?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_getrfc822date?rev=1692028395&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_getusergroup?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_httpgetmd5?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:archive_script?rev=1679787211&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:autoresponder_commands?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_smtp_mx_server_rules?rev=1771948203&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:mappings?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_foreach?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:archive_offline?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:dmarc_reporter_script?rev=1699782700&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:list_all_messages_in_lan_forwrding_queue?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:management_scripting?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:pop3_collection?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:sender_direct_settings?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.deletemessage?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getfolders?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.markmessageread?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.purgemessage?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:alter_lan_forwarding_rules_for_one_server_to_go_to_another?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:bandwidth_management_script?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:database_backups?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_monitor_script?rev=1566922420&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:mail_tab?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:message_monitoring?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:reset_message_folder_counts?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:send_admin_message?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:smtp_filtering?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:user_routing_script?rev=1679913138&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getmessagelines?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getmessagepart?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getmessagepartbody?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getmessagepartheader?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getsetting?rev=1544547961&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getusers?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.renamefolder?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3net.gethttp?rev=1615308164&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:access_restrictions_internal_format?rev=1690964557&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:attachment_processing?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:autoresponder_script?rev=1748424278&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:find_message?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:get_all_lists_members?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lan_forwarding_queue_status?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lists?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:mail_collectors?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:misc_advanced?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:msgaudit?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:sender_advanced_settings?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:smtp_reputation_stats?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_addfixedtexttosubject?rev=1639408804&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_addrandomtexttosubject?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_assignments?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_checkrecipient?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_header?rev=1601914452&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_ipwhitelist?rev=1643111967&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_longsenderdomain?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_manylinks?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_goto?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_random?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_startdns?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_startdnsbl?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_startsurbl?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_stop?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_zipcontents?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_zipcontentsfull?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_zipcount?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_subject?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:status_monitor_protocol?rev=1566205125&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:summary_log_file_format?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:useful_database_queries?rev=1773658952&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:user_prune_rules?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:user_routing?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:virus_scan_filter_script?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.messagereset?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.messageseek?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:whats_new_in_version_5_webmail?rev=1542192349&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.pscs.co.uk/_media/wiki:dokuwiki.svg">
        <title>PSCS Wiki</title>
        <link>https://wiki.pscs.co.uk/</link>
        <url>https://wiki.pscs.co.uk/_media/wiki:dokuwiki.svg</url>
    </image>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spam_filter_rules?rev=1674057433&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-18T15:57:13+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules</title>
        <link>https://wiki.pscs.co.uk/reference:spam_filter_rules?rev=1674057433&amp;do=diff</link>
        <description>Spam Filter Rules

VPOP3 Versions 2.1.7 and later have a built-in spam filter system which supports a simple script language optimised for content- and spam-filtering of email messages.

This reference contains a definition of the spam filtering script language supported by VPOP3. Note that as later versions of VPOP3 are released, more language features may be added, so this reference indicates in which version of VPOP3 a particular feature was added.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lan_forwarding_script?rev=1755706120&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-20T16:08:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LAN Forwarding Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:lan_forwarding_script?rev=1755706120&amp;do=diff</link>
        <description>LAN Forwarding Scripting

(Added in V8.7)

This is stored in the &#039;LanForwarding.lua&#039; script in Settings -&gt; Scripts

Pre-send

These functions are called before the message is placed in the LAN Forwarding queue

There are two global variables set:

	*</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:alter_lan_forwarding_queued_messages_going_to_one_server_to_go_to_another?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Database query to alter LAN Forwarding rules for one server to go to another</title>
        <link>https://wiki.pscs.co.uk/reference:alter_lan_forwarding_queued_messages_going_to_one_server_to_go_to_another?rev=1542192349&amp;do=diff</link>
        <description>Database query to alter LAN Forwarding rules for one server to go to another

If a LAN forwarding destination server fails, you may wish to change the queued messages to go to the new server. (Note that, if planning ahead, it may be easier to use DNS</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_scripting?rev=1774568941&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-26T23:49:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:lua_scripting?rev=1774568941&amp;do=diff</link>
        <description>Lua Scripting

Lua is a simple scripting programming language often used for embedding in other applications. VPOP3 uses it to customise behaviour in places where most people will be happy with the default behaviour, but occasionally people will want to do something more complicated. Rather than having lots of extra options to complicate things for most users, we have opted to go for a more flexible scripting facility.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_httpget?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: HTTPGet</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_httpget?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: HTTPGet
Statement  HTTPGet Version  2.3.7+ Purpose  Enables the script to retrieve a web page 
The HTTPGet statement requires a url, headers variable name and content variable name, in the format
HTTPGet &lt;url&gt; &lt;headers variable name&gt; &lt;content variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_winhttpget?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: WinHTTPGet</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_winhttpget?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: WinHTTPGet
Statement  WinHTTPGet Version  2.4.9+ Purpose  Enables the script to retrieve a web page using the WinINET functionality 
The WinHTTPGet statement requires a url, headers variable name and content variable name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_getsectionmd5?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GetSectionMD5</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_getsectionmd5?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: GetSectionMD5
Statement  GetSectionMD5 Version  2.3.6+ Purpose  Performs an MD5 hash on a specified MIME section of the message, and returns the result into the specified variable in hex encoded form 
The GetSectionMD5 statement requires a message section number and variable name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:error_handling_script?rev=1700475481&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-20T10:18:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Error Handling Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:error_handling_script?rev=1700475481&amp;do=diff</link>
        <description>Error Handling Scripting

For most error messages that VPOP3 generates, it allows control of error messages, eg to limit the frequency of error messages if they would be generated repeatedly. These limits are set in Settings -&gt; Admin Settings -&gt; Message Control. However, if you want more granular control, you can use Lua scripting for more fine-grained control</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_getdecodedsection?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GetDecodedSection</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_getdecodedsection?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: GetDecodedSection
Statement  GetDecodedSection Version  2.1.11+ Purpose  Returns a specified MIME section of a message into a variable, after processing any Base64 or Quoted-Printable encoding of the raw message data 
The GetDecodedSection</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_getsectionencoding?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GetSectionEncoding</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_getsectionencoding?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: GetSectionEncoding
Statement  GetSectionEncoding Version  2.3.9+ Purpose  Retrieves the MIME encoding method for the specified MIME section number, and returns the result into the specified variable 
The GetSectionEncoding statement requires a message section number and variable name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:attachment_extraction_script?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Attachment Extraction Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:attachment_extraction_script?rev=1542192349&amp;do=diff</link>
        <description>Attachment Extraction Scripting

This is the &#039;extraction.lua&#039; script.

(Added in V6.17)

This script has one functions:

	*  Extract

This functions is called if the attachment extraction is enabled in Settings -&gt; Attachment Processing -&gt; Extraction.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:attachment_processing_script?rev=1669282143&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-24T09:29:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Attachment Processing Script</title>
        <link>https://wiki.pscs.co.uk/reference:attachment_processing_script?rev=1669282143&amp;do=diff</link>
        <description>Attachment Processing Script

(Added in v7.6)

This script has functions to allow message attachments to be altered:

	*  NeedsRecode
	*  NeedsRewrite
	*  GetRename
	*  GetContentDispositionLine (added in v7.8)
	*  IsLockNeeded
	*  RewriteAttachment</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:list_messages_in_lan_forwrding_queue_waiting_to_go_to_a_specific_server?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Database query to list messages in the LAN forwarding queue waiting to go to a specific server</title>
        <link>https://wiki.pscs.co.uk/reference:list_messages_in_lan_forwrding_queue_waiting_to_go_to_a_specific_server?rev=1542192349&amp;do=diff</link>
        <description>Database query to list messages in the LAN forwarding queue waiting to go to a specific server

The VPOP3 settings show the first 100 messages in the LAN forwarding queue. Usually this is sufficient as the LAN forwarding queue is usually nearly empty, but in case of a problem it may be much bigger. The database queries below let you list just messages going to a specific server.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_smtp_server_script?rev=1746692615&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-08T08:23:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>SMTP Server Lua Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:lua_smtp_server_script?rev=1746692615&amp;do=diff</link>
        <description>SMTP Server Lua Scripting

The SMTP Server Lua Script is called SMTPSVR.LUA and can be edited from the Settings -&gt; Scripts page in the VPOP3 settings. This script is called whenever an instance of the VPOP3 SMTP server is launched - ie whenever someone opens a connection to port 25 on the VPOP3 server to send it a message, whether from a local user or an incoming SMTP message.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.getmessages?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.GetMessages Lua function</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.getmessages?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.GetMessages Lua function

The Lua management function &#039;VPOP3.GetMessages&#039; retrieves a table containing all the mail messages in a specified folder.
VPOP3.GetFolders(username, folder);
	*  username is the username from VPOP3.GetUsers
	*  folder is the folder from VPOP3.GetFolders

It returns a table where the key is the message UID and the value is a table of:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:database_restore?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Database -&gt; Restore Tab</title>
        <link>https://wiki.pscs.co.uk/reference:database_restore?rev=1542192349&amp;do=diff</link>
        <description>Database -&gt; Restore Tab

This tab is only in VPOP3 Enterprise (v5 and later), and is for performing a partial (mailbox/mail folder) restore of the database. To do a full restore of the database, or for VPOP3 Basic/Standard, see the “Restore a Backup of VPOP3” topic

Using the</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:imap4_server_script?rev=1750675906&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-23T10:51:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>IMAP4 Server Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:imap4_server_script?rev=1750675906&amp;do=diff</link>
        <description>IMAP4 Server Scripting

(Added in V6.12)

DoCapability function

When the IMAP4 CAPABILITY command is received, VPOP3 generates a capability string based on settings, then calls
DoCapability(ipaddr, capabilities)
	*  ipaddr = IP address of the client computer</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:running_database_updates_within_a_transaction?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Running database updates within a transaction</title>
        <link>https://wiki.pscs.co.uk/reference:running_database_updates_within_a_transaction?rev=1542192349&amp;do=diff</link>
        <description>Running database updates within a transaction

This is a trick which database experts use, because they have learned (often the hard way) that a simple mistype can trash a database...

Before running any database query which can alter the database (UPDATE, DELETE, INSERT, DROP, CREATE, ALTER) begin a database transaction using the</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:signature_script?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Signature Script</title>
        <link>https://wiki.pscs.co.uk/reference:signature_script?rev=1542192349&amp;do=diff</link>
        <description>Signature Script

If you want more complex signatures on outgoing emails, rather than the static text/HTML you can define within VPOP3, then you can use a simple Lua script to define the signature.

The Lua script is stored in a file called signature.lua</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:smtp_direct?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Mail Connectors -&gt; Mail Senders -&gt; SMTP Direct</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_direct?rev=1542192349&amp;do=diff</link>
        <description>Mail Connectors -&gt; Mail Senders -&gt; SMTP Direct

VPOP3 can be configured to send mail directly to the recipient&#039;s mail server (or the recipient&#039;s mail service provider). Usually this is only used if you have a high-end business class Internet connection - such as a leased line, or your mail server is co-located in a data centre. Attempts to use SMTP Direct sending on a dial-up/ADSL/Cable/FTTC/etc connection may be problematic since the receiving mail server may think you a home user who has been …</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_getaddresstype?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GetAddressType</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_getaddresstype?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: GetAddressType
Statement  GetAddressType Version  2.4.6+ Purpose  Analyses a specified email address and reports what &#039;type&#039; of address it is 
The GetAddressType statement requires an email address and variable name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_getmd5?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GetMD5</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_getmd5?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: GetMD5
Statement  GetMD5 Version  2.3.6+ Purpose  Performs an MD5 hash on a string, and returns the result into the specified variable in hex encoded form 
The GetMD5 statement requires a string and variable name, in the format
GetMD5 &lt;string&gt; &lt;variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_getrfc822date?rev=1692028395&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-14T15:53:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GetRFC822Date</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_getrfc822date?rev=1692028395&amp;do=diff</link>
        <description>Spam Filter Rules: GetRFC822Date
Statement  GetRFC822Date Version  2.2.1+ Purpose  Converts an RFC 822 format date field into the number of days elapsed since 1st January 1601 
The GetRFC822Date statement requires a date in RFC 822 format and a variable name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_getusergroup?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GetUserGroup</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_getusergroup?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: GetUserGroup
Statement  GetUserGroup Version  2.4.5+ Purpose  Checks if the specified user is assigned to a VPOP3 group, and returns the group name 
The GetUserGroup statement requires a username and variable name, in the format
GetUserGroup &lt;username&gt; &lt;variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_httpgetmd5?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: HTTPGetMD5</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_httpgetmd5?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: HTTPGetMD5
Statement  HTTPGetMD5 Version  2.3.7+ Purpose  Enables the script to retrieve a web page, returning an MD5 hash of its contents in hex encoded form 
The HTTPGetMD5 statement requires a url, headers variable name and MD5 hash variable name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:archive_script?rev=1679787211&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-25T23:33:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Archive Script</title>
        <link>https://wiki.pscs.co.uk/reference:archive_script?rev=1679787211&amp;do=diff</link>
        <description>Archive Script

(from VPOP3 v6 onwards)

Archive scripting lets you indicate whether full message content should be stored in the message archive. This could be used, for instance, for filtering out messages containing credit card details.

The message headers will still be archived, along with the explanation text returned by the script.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:autoresponder_commands?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Autoresponder Commands</title>
        <link>https://wiki.pscs.co.uk/reference:autoresponder_commands?rev=1542192349&amp;do=diff</link>
        <description>Autoresponder Commands

This article only applies to VPOP3 v4 and earlier

A VPOP3 autoresponder can contain special text strings to create special behaviour, in addition to plain text as part of the response.

There are three types of &#039;command&#039;

	*</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_smtp_mx_server_rules?rev=1771948203&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-24T15:50:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua SMTP MX Server Rules</title>
        <link>https://wiki.pscs.co.uk/reference:lua_smtp_mx_server_rules?rev=1771948203&amp;do=diff</link>
        <description>Lua SMTP MX Server Rules

Every time VPOP3 checks for remote MX server for sending messages using direct MX sending, it runs a script called mxserverrules.lua which can be created/edited in Settings -&gt; Scripts (or in the VPOP3 directory in VPOP3 v6.6 or earlier).</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:mappings?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Mappings</title>
        <link>https://wiki.pscs.co.uk/reference:mappings?rev=1542192349&amp;do=diff</link>
        <description>Mappings

In VPOP3, Mappings are a way of explicitly linking an email address to a user or list. They can also be used to indicate that an email address is remote, even though it would otherwise appear to be a local email address.

In other email servers, a similar feature may be called &#039;aliases&#039;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_foreach?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: ForEach</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_foreach?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: ForEach
Statement  ForEach Version  2.1.7+ Purpose  Causes a loop to be run through for all values within specified criteria 
The ForEach statement requires either two or three parameters (depending on the type of loop that is being conducted), in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:archive_offline?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Message Archive -&gt; Offline Tab</title>
        <link>https://wiki.pscs.co.uk/reference:archive_offline?rev=1542192349&amp;do=diff</link>
        <description>Message Archive -&gt; Offline Tab

Settings -&gt; Message Archive -&gt; Offline Tab.

The Offline tab lets you tell VPOP3 to move old archived messages to an alternative store, such as CD/DVD or external drive etc. VPOP3 will create a ZIP file containing the old messages. The archive index will still remember the messages, and the name of the ZIP file they are contained in, so you will still be able to search for messages on date, sender, subject, etc, but not on the message content.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:dmarc_reporter_script?rev=1699782700&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-12T09:51:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DMARC Reporter Script</title>
        <link>https://wiki.pscs.co.uk/reference:dmarc_reporter_script?rev=1699782700&amp;do=diff</link>
        <description>DMARC Reporter Script

(from VPOP3 v8.6 onwards)

This script lets you customise how VPOP3 sends DMARC reports to the sending domain. This can be useful in case the sending domain&#039;s DMARC configuration is incorrect as that can cause errors sending the reports or cause messages to be &#039;stuck&#039; in VPOP3&#039;s Outqueue. These problems won&#039;t cause any lasting damage, but may be inconvenient or annoying, so you can alter the behaviour using Lua scripting</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:list_all_messages_in_lan_forwrding_queue?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Database query to list ALL messages in the LAN forwarding queue</title>
        <link>https://wiki.pscs.co.uk/reference:list_all_messages_in_lan_forwrding_queue?rev=1542192349&amp;do=diff</link>
        <description>Database query to list ALL messages in the LAN forwarding queue

The VPOP3 settings show the first 100 messages in the LAN forwarding queue. Usually this is sufficient as the LAN forwarding queue is usually nearly empty, but in case of a problem it may be much bigger. The database queries below may help in that situation.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:management_scripting?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Management Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:management_scripting?rev=1542192349&amp;do=diff</link>
        <description>Management Scripting

In VPOP3 Enterprise, from version 6.17 there is the facility to run Lua scripts manually or according to a schedule. These scripts can do things like access mail folders &amp; messages and perform some maintenance on them.

Creating a new script</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:pop3_collection?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>POP3 Mail Collection</title>
        <link>https://wiki.pscs.co.uk/reference:pop3_collection?rev=1542192349&amp;do=diff</link>
        <description>POP3 Mail Collection

POP3 Mail Collection is when VPOP3 will collect mail from an external POP3 mailbox - for instance, from an Internet Provider.

POP3 General

This page tells VPOP3 how to collect mail.



	*  POP3 Server Address - this is the name (or IP address) of the POP3 server from which you want VPOP3 to collect mail</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:sender_direct_settings?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>SMTP Direct Sender Settings</title>
        <link>https://wiki.pscs.co.uk/reference:sender_direct_settings?rev=1542192349&amp;do=diff</link>
        <description>SMTP Direct Sender Settings

Mail Connectors -&gt; Mail Senders -&gt; SMTP Direct Sender -&gt; Settings tab

The SMTP Direct Settings tab lets you set how VPOP3 will send mail using SMTP Direct

DNS Servers to Use

This setting tells VPOP3 the IP addresses of the DNS servers it should use to find the recipients&#039; mail servers. Separate multiple addresses with commas.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.deletemessage?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.DeleteMessage Lua function</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.deletemessage?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.DeleteMessage Lua function

The Lua management function &#039;VPOP3.DeleteMessage&#039; marks a specified message to be deleted, or removes the deleted flag.

Messages marked to be deleted will not be deleted immediately, but only when that mailbox is &#039;purged&#039; from an IMAP4 client.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.getfolders?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.GetFolders Lua function</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.getfolders?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.GetFolders Lua function

The Lua management function &#039;VPOP3.GetFolders&#039; retrieves a table containing all the mail folders for a specified user.
VPOP3.GetFolders(username);
It returns a table where the key is the folder name (in IMAP4 UTF-7 encoded format - see</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.markmessageread?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.MarkMessageRead Lua function</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.markmessageread?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.MarkMessageRead Lua function

The Lua management function &#039;VPOP3.MarkMessageRead&#039; marks or unmarks a specified message as read.
VPOP3.MarkMessageRead(username, folder, UID, read);
	*  username is the username from VPOP3.GetUsers
	*  folder is the folder from VPOP3.GetFolders
	*  UID is the UID from</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.purgemessage?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.PurgeMessage Lua function</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.purgemessage?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.PurgeMessage Lua function

The Lua management function &#039;VPOP3.PurgeMessage&#039; deletes the specified message immediately.
VPOP3.PurgeMessage(username, folder, UID);
	*  username is the username from VPOP3.GetUsers
	*  folder is the folder from VPOP3.GetFolders
	*  UID is the UID from VPOP3.GetMessages</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:alter_lan_forwarding_rules_for_one_server_to_go_to_another?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Database query to alter LAN Forwarding rules for one server to go to another</title>
        <link>https://wiki.pscs.co.uk/reference:alter_lan_forwarding_rules_for_one_server_to_go_to_another?rev=1542192349&amp;do=diff</link>
        <description>Database query to alter LAN Forwarding rules for one server to go to another

If a LAN forwarding destination server fails, you may wish to change the LAN forwarding rules to point to the new server. (Note that, if planning ahead, it may be easier to use</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:bandwidth_management_script?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Bandwidth Control</title>
        <link>https://wiki.pscs.co.uk/reference:bandwidth_management_script?rev=1542192349&amp;do=diff</link>
        <description>Bandwidth Control

(VPOP3 Enterprise Only)

Every time a connection is made to a VPOP3 service, or a user logs into a service, VPOP3 Enterprise runs a Lua function which can assign the connection a bandwidth pool, or assign a bandwidth limit on the connection.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:database_backups?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Database -&gt; Backups Tab</title>
        <link>https://wiki.pscs.co.uk/reference:database_backups?rev=1542192349&amp;do=diff</link>
        <description>Database -&gt; Backups Tab

The Backups tab lets you specify how VPOP3 will make its daily backup of its database.

We strongly recommend that you backup the database regularly in case of disk problems or file corruption. You can use the VPOP3 backup feature, or manually backup the PostgreSQL database using the pg_dump command, or use another program to backup the PostgreSQL database if you wish. Note that a simple disk copy will</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_monitor_script?rev=1566922420&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-08-27T16:13:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Monitor Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:lua_monitor_script?rev=1566922420&amp;do=diff</link>
        <description>Monitor Scripting

(Added in V6.15)

This script has three functions:

	*  MonitorIncoming
	*  MonitorInternal
	*  MonitorOut

The functions are similar, except they are called when different messages are to be monitored (incoming, internal and outgoing messages respectively).</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:mail_tab?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Mail tab</title>
        <link>https://wiki.pscs.co.uk/reference:mail_tab?rev=1542192349&amp;do=diff</link>
        <description>Mail tab

The Mail tab within VPOP3 webmail enables you to manage your sent and received messages.

As you can see from the screenshot, the page is divided into three main sections:
Menu bar    General tab bar          Status bar  
[Mail tab - VPOP3 Version 5 Webmail]

Page structure

Mail toolbar

The Mail toolbar contains the following buttons:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:message_monitoring?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Message Monitoring</title>
        <link>https://wiki.pscs.co.uk/reference:message_monitoring?rev=1542192349&amp;do=diff</link>
        <description>Message Monitoring

Message monitoring in VPOP3 will tell VPOP3 to send a copy of all the outgoing, internal and/or incoming mail from/to specified users to be sent to another specified user.

In the current versions of VPOP3, all monitored messages are sent to the same user (or list), you cannot specify different recipients for different monitored users. (This may be something that is added/enhanced in the future)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:reset_message_folder_counts?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Reset Message Folder Counts</title>
        <link>https://wiki.pscs.co.uk/reference:reset_message_folder_counts?rev=1542192349&amp;do=diff</link>
        <description>Reset Message Folder Counts

In extremely rare cases, the mail folder message counts in the database may get out of step with the actual stored messages. There are database triggers which will keep the counts in sync during normal operation, but if you have to manipulate the database directly (eg to recover from a corrupted database) it is possible that they will get out of step.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:send_admin_message?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Send Admin Message</title>
        <link>https://wiki.pscs.co.uk/reference:send_admin_message?rev=1542192349&amp;do=diff</link>
        <description>Send Admin Message

It is possible for administrator users to send a bulk email message to an entire group or list.

To begin composing an email, go to the Administration Settings -&gt; Users page, and click Send Admin Message. 

This should then open a window, which allows you to specify various options.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:smtp_filtering?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>SMTP Service - Filtering</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_filtering?rev=1542192349&amp;do=diff</link>
        <description>SMTP Service - Filtering

The SMTP Server -&gt; Filtering tab lets you set up filtering of messages going through the VPOP3 SMTP service. This may be incoming SMTP messages, or locally sent messages.

SMTP Rules

SMTP Rules let you create custom rules for processing messages as they go through the VPOP3 SMTP service.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:user_routing_script?rev=1679913138&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-27T10:32:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>User Routing Script</title>
        <link>https://wiki.pscs.co.uk/reference:user_routing_script?rev=1679913138&amp;do=diff</link>
        <description>User Routing Script

If there is a &lt;username&gt;/user_redirect.lua script, this Lua script can override VPOP3&#039;s message routing options. You can edit this either in the Settings -&gt; Scripts page in the settings, or via the &#039;Routing&#039; tab in the user&#039;s settings in the VPOP3 administration console. This script affects how VPOP3 will handle how messages</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.getmessagelines?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.GetMessageLines</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.getmessagelines?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.GetMessageLines

The Lua function &#039;VPOP3.GetMessageLines&#039; retrieves content lines from the message currently being processed

This function is only available in the ProcessMessage function of the POP3CLT.LUA or SMTPSVR.LUA scripts.

It takes one parameter:

	*  number - number of lines to retrieve</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.getmessagepart?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.GetMessagePart</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.getmessagepart?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.GetMessagePart

The Lua function &#039;VPOP3.GetMessagePart&#039; retrieves a MIME part of the message currently being processed.

This function is only available in the ProcessMessage function of the POP3CLT.LUA or SMTPSVR.LUA scripts.

It takes one parameter:

	*  The MIME part &#039;Path&#039; from the MimeStructure parameter to the ProcessMessage function</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.getmessagepartbody?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.GetMessagePartBody</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.getmessagepartbody?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.GetMessagePartBody

The Lua function &#039;VPOP3.GetMessagePartBody&#039; retrieves the content of a MIME part of the message currently being processed.

This function is only available in the ProcessMessage function of the POP3CLT.LUA or SMTPSVR.LUA scripts.

It takes one parameter:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.getmessagepartheader?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.GetMessagePartHeader</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.getmessagepartheader?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.GetMessagePartHeader

The Lua function &#039;VPOP3.GetMessagePartHeader&#039; retrieves a MIME section header of the message currently being processed.

This function is only available in the ProcessMessage function of the POP3CLT.LUA or SMTPSVR.LUA scripts.

It takes one parameter:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.getsetting?rev=1544547961&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-12-11T17:06:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.GetSetting</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.getsetting?rev=1544547961&amp;do=diff</link>
        <description>VPOP3.GetSetting

The Lua function &#039;VPOP3.GetSetting&#039; retrieves a general setting from VPOP3

It takes one parameter:

	*  The name of the setting. This can either by the &#039;Name&#039; field of the &#039;Settings.Settings&#039; database table or the internal setting name</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.getusers?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.GetUsers Lua function</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.getusers?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.GetUsers Lua function

The Lua management function &#039;VPOP3.GetUsers&#039; retrieves a table containing all the users defined in VPOP3, it takes no parameters and returns a table indexed from 1 to N where the values are the user names.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.renamefolder?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.RenameFolder Lua function</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.renamefolder?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.RenameFolder Lua function

The Lua management function &#039;VPOP3.RenameFolder&#039; renames a folder for the specified user.
VPOP3.RenameFolder(username, folder, newname);
	*  username is the username from VPOP3.GetUsers
	*  folder is the folder from VPOP3.GetFolders
	*  newname is the new name for the folder.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3net.gethttp?rev=1615308164&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-09T16:42:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3Net.GetHTTP</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3net.gethttp?rev=1615308164&amp;do=diff</link>
        <description>VPOP3Net.GetHTTP

This function takes a single parameter

	*  the URL to retrieve. This can be http:// or https://

The function returns two values

	*  a table containing the result of the GET
		*  Host - the hostname
		*  File - the filename
		*  Headers - a table containing the response headers</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:access_restrictions_internal_format?rev=1690964557&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-02T08:22:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Access Restrictions Internal Format</title>
        <link>https://wiki.pscs.co.uk/reference:access_restrictions_internal_format?rev=1690964557&amp;do=diff</link>
        <description>Access Restrictions Internal Format

VPOP3 internally stores service IP Access Restrictions in its settings database using the following format to encode the multiple entries

These are stored in the settings database as *ALLOWED*.DAT (using VPOP3SETTINGS GET *ALLOWED*.DAT will list them)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:attachment_processing?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Settings -&gt; Attachment Processing</title>
        <link>https://wiki.pscs.co.uk/reference:attachment_processing?rev=1542192349&amp;do=diff</link>
        <description>Settings -&gt; Attachment Processing

The Attachment Processing page allows you to configure VPOP3 to perform two distinct functions on messages that contain attachments:

	*  
	*  

Filtering

The Filtering tab is divided into four main sections: 

Attachment Filtering</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:autoresponder_script?rev=1748424278&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-28T09:24:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Autoresponder scripting</title>
        <link>https://wiki.pscs.co.uk/reference:autoresponder_script?rev=1748424278&amp;do=diff</link>
        <description>Autoresponder scripting

For scripting to alter the whole autoresponder definition and set in the VPOP3 settings rather than embedded in an autoresponder itself, see Autoresponder Global Scripting

In an autoresponder, you can create a Lua script by surrounding it with &lt;lua&gt; &amp; &lt;/lua&gt; tags, eg</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:find_message?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Find a message</title>
        <link>https://wiki.pscs.co.uk/reference:find_message?rev=1542192349&amp;do=diff</link>
        <description>Find a message

If you know the subject of a message, you can search the entire message store for messages with this subject.

Go to Settings → Database → Query

Alternatively, at a command prompt in the VPOP3 directory run
psql
(The password is &#039;vpop3pass&#039;)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:get_all_lists_members?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Database query to get all lists and members</title>
        <link>https://wiki.pscs.co.uk/reference:get_all_lists_members?rev=1542192349&amp;do=diff</link>
        <description>Database query to get all lists and members

At a command prompt in the VPOP3 directory run
psql

(The password is &#039;vpop3pass&#039;)

Then, type
\copy (select l.name, address from users.listmembers m inner join users.lists l on m.list=l.id) to &#039;c:/temp/x.csv&#039; csv header;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lan_forwarding_queue_status?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LAN Forwarding Queue Status</title>
        <link>https://wiki.pscs.co.uk/reference:lan_forwarding_queue_status?rev=1542192349&amp;do=diff</link>
        <description>LAN Forwarding Queue Status

To view the LAN Forwarding Queue Status, go to Settings -&gt; Local Mail -&gt; LAN Forwarding -&gt; Queue Status

The LAN Forwarding Queue shows the messages which VPOP3 has currently got queued to be sent to another mail server on your network using SMTP. 



The LAN Forwarding Queue status page shows a simple list of the messages waiting to be sent. The four columns in the table show:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lists?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lists</title>
        <link>https://wiki.pscs.co.uk/reference:lists?rev=1542192349&amp;do=diff</link>
        <description>Lists

The Lists section in VPOP3 lets you view and manage the various types of &#039;List&#039; which VPOP3 supports

	*  Distribution Lists
	*  Mailing Lists
	*  Forwardings
	*  ODBC Mailing Lists
	*  Groups

Using a list

A list will contain zero or more &#039;members&#039; (usually email addresses) which can be messaged all at once. To send a message to all the members of a list, you will usually send an email to the listname at a valid domain.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:mail_collectors?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Mail Collectors</title>
        <link>https://wiki.pscs.co.uk/reference:mail_collectors?rev=1542192349&amp;do=diff</link>
        <description>Mail Collectors

A Mail Collector is how you tell VPOP3 to collect incoming mail. 

Each Mail Collector is associated with one or more Connections. The VPOP3 Connector Schedule determines when each Connection is run.

Mail Collector General Tab

Each Mail Collector has a General</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:misc_advanced?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Misc -&gt; Advanced Tab</title>
        <link>https://wiki.pscs.co.uk/reference:misc_advanced?rev=1542192349&amp;do=diff</link>
        <description>Misc -&gt; Advanced Tab

Settings -&gt; Misc Settings -&gt; Advanced

You will normally not need to change any settings on this page unless VPOP3 technical support have suggested it.

If you do make changes, and want to go back to the original settings, the Restore Defaults button will restore the settings to their defaults.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:msgaudit?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>msgaudit Database table</title>
        <link>https://wiki.pscs.co.uk/reference:msgaudit?rev=1542192349&amp;do=diff</link>
        <description>msgaudit Database table

This can (optionally) contain data showing how messages have been handled (eg deleted, moved, etc)

	*  id - incrementing ID of msgaudit entry
	*  datetime - the date &amp; time the event occurred
	*  component - which VPOP3 component performed the event</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:sender_advanced_settings?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Mail Sender Advanced Settings</title>
        <link>https://wiki.pscs.co.uk/reference:sender_advanced_settings?rev=1542192349&amp;do=diff</link>
        <description>Mail Sender Advanced Settings

Mail Connectors -&gt; Mail Senders -&gt; (name) -&gt; Advanced

Advanced

Domain Filtering

For VPOP3 v6.11 and later, see the Domain Filtering section of the user manual.

The Domain Filtering box lets you restrict which email messages are sent via this Mail Sender.

You specify each rule on a separate line, and the message will be sent if it matches any sender rule</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:smtp_reputation_stats?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>SMTP Reputation Stats</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_reputation_stats?rev=1542192349&amp;do=diff</link>
        <description>SMTP Reputation Stats

(Added in v6.20)

If you receive email by direct incoming SMTP (not via an ISP or filtering service) then you can tell VPOP3 to report sender reputation statistics back to VPOP3. This is enabled/disabled in the Settings -&gt; Misc Settings page.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_addfixedtexttosubject?rev=1639408804&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-13T15:20:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Use the spam filter scripting to add fixed text to the subject on incoming messages</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_addfixedtexttosubject?rev=1639408804&amp;do=diff</link>
        <description>Use the spam filter scripting to add fixed text to the subject on incoming messages

This needs VPOP3 version 5 or later.

This script allows you to add fixed text to the subject an incoming message, eg so that users can see that a message is an incoming rather than local message (be aware of weaknesses in this strategy - eg forwarded messages, spoofing of the marker, breaking DKIM message signatures, etc)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_addrandomtexttosubject?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Use the spam filter scripting to add random text to the subject on incoming messages</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_addrandomtexttosubject?rev=1542192349&amp;do=diff</link>
        <description>Use the spam filter scripting to add random text to the subject on incoming messages

This needs VPOP3 version 5 or later.

This script is for the case where you want a message to the &#039;support&#039; user to have the text [XXX-99999] added to an incoming message&#039;s subject if it does not already exist. Some people want this text to use as reference numbers for a</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_assignments?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: Assignments</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_assignments?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: Assignments

You can assign values to variables using the syntax


${variable} = value | ${variable}


Assignment operators

The spam filter rules support the following assignment operators:
=  Specify the value of the variable to equal the value after the assignment operator</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_checkrecipient?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Increase the spam score for certain recipients</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_checkrecipient?rev=1542192349&amp;do=diff</link>
        <description>Increase the spam score for certain recipients

This script is for the case where you want certain recipients to have a weighted score. For instance if you have users who have left and who mostly receive spam, but you don&#039;t want to reject their mail totally.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_header?rev=1601914452&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-10-05T16:14:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Increase the spam score for header marker</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_header?rev=1601914452&amp;do=diff</link>
        <description>Increase the spam score for header marker

This script is for the case where your ISP adds a header eg &#039;X-Spam: Yes&#039; to the message header, and you want the VPOP3 spamfilter to quarantine messages with that marker.

Add the following to the spamrules_userchecks.txt file. This script file only gets processed on incoming messages (the spamrules_localmail.txt script ends the processing of locally sent messages)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_ipwhitelist?rev=1643111967&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-25T11:59:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Allow messages through from a specific IP address</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_ipwhitelist?rev=1643111967&amp;do=diff</link>
        <description>Allow messages through from a specific IP address

This script allows messages through the spam filter if they arrive at VPOP3 from a specific SMTP sender (only when the message is sent directly to VPOP3 using SMTP, not via another server).

Add the following to the spamrules_userlocal.txt file. This script file gets processed on all messages.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_longsenderdomain?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spamrules example - increase spam score for long sender domain</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_longsenderdomain?rev=1542192349&amp;do=diff</link>
        <description>Spamrules example - increase spam score for long sender domain

This script is for the case where you to increase the spamminess of emails where the sender&#039;s email address contains a long domain. In this case we&#039;ll say if the sender&#039;s domain has 20 or more characters in the first section (between the @ and first .). Note that we do not necessarily recommend that you do this as it is not a very good indicator of spam, but it is something we&#039;ve been asked for, so here it is.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_manylinks?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spamrules example - increase spam score if there are many links in the email</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_manylinks?rev=1542192349&amp;do=diff</link>
        <description>Spamrules example - increase spam score if there are many links in the email

This script is for the case where you to increase the spamminess of emails where the email contains many links - in this case we&#039;ll say if the email contains 10 or more links. Note that we do not necessarily recommend that you do this as it is not a very good indicator of spam, and will probably catch a lot of newsletter type emails, but it is something we&#039;ve been asked for, so here it is.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_goto?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: Goto</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_goto?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: Goto
Statement  Goto Version  2.1.7+ Purpose  A mechanism for directing the script towards a specified label 
The Goto statement requires a label name, in the format
Goto &lt;label name&gt;
Labels are single word entries that appear on a line of their own, immediately preceded by the colon (:) character. 
The colon character is not part of the label name.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_random?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: Random</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_random?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: Random
Statement  Random Version  2.5.2+ Purpose  Generates a random number 
The Random statement requires a lower and higher numeric bound, and a variable to assign the result to, in the format
Random &lt;lower&gt; &lt;higher&gt; &lt;variable&gt;
	*</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_startdns?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: StartDNS</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_startdns?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: StartDNS
Statement  StartDNS Version  2.2.1+ Purpose  Begins an asynchronous DNS lookup in advance of the result being required in a subsequent DNS statement 
The StartDNS statement requires a type and hostname, in the format
StartDNS &lt;type&gt; &lt;hostname&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_startdnsbl?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: StartDNSBL</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_startdnsbl?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: StartDNSBL
Statement  StartDNSBL Version  2.2.1+ Purpose  Begins an asynchronous DNS blacklist lookup in advance of the result being required in a subsequent DNSBL statement 
The StartDNSBL statement requires a hostname and DNSBL zone, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_startsurbl?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: StartSURBL</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_startsurbl?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: StartSURBL
Statement  StartSURBL Version  2.2.1+ Purpose  Begins an asynchronous SURBL lookup in advance of the result being required in a subsequent SURBL statement 
The StartSURBL statement requires a hostname and SURBL zone, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_stop?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: Stop</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_stop?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: Stop
Statement  Stop Version  2.1.7+ Purpose  Stop processing the spam rules 
Example


# Statements
Stop
# The script has stopped processing before it gets to this line</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_zipcontents?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: ZipContents</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_zipcontents?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: ZipContents
Statement  ZipContents Version  6.7+ Purpose  Enables the script to obtain the list of files contained in a ZIP attachment 
The ZipContents statement requires a message section number and bag name, in the format
ZipContent &lt;message section number&gt; &lt;bag name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_zipcontentsfull?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: ZipContentsFull</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_zipcontentsfull?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: ZipContentsFull
Statement  ZipContentsFull Version  6.7+ Purpose  Enables the script to obtain the list of files contained in a ZIP attachment 
The ZipContentsFull statement requires a message section number and bag name, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_zipcount?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: ZipCount</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_zipcount?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: ZipCount
Statement  ZipCount Version  6.7+ Purpose  Enables the script to obtain the number of files contained in a ZIP attachment 
The ZipCount statement requires a message section number and variable name, in the format
ZipCount &lt;message section number&gt; &lt;variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_subject?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Increase the spam score for subject marker</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_subject?rev=1542192349&amp;do=diff</link>
        <description>Increase the spam score for subject marker

This script is for the case where your ISP adds a marker eg &#039;[spam]&#039; to the message subject, and you want the VPOP3 spamfilter to quarantine messages with that marker.

Add the following to the spamrules_userchecks.txt file. This script file only gets processed on incoming messages (the spamrules_localmail.txt script ends the processing of locally sent messages)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:status_monitor_protocol?rev=1566205125&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-08-19T08:58:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Status Monitor (port 5109) protocol</title>
        <link>https://wiki.pscs.co.uk/reference:status_monitor_protocol?rev=1566205125&amp;do=diff</link>
        <description>Status Monitor (port 5109) protocol

This page documents the protocol used between VPOP3 and the Status Monitor. It&#039;s not intended for any other purpose, so it&#039;s a bit limited, but in certain cases you may find this useful

Login

Before the Status Monitor receives any updates or can issue commands it must log in using a user&#039;s credentials.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:summary_log_file_format?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Summary Log File Format</title>
        <link>https://wiki.pscs.co.uk/reference:summary_log_file_format?rev=1542192349&amp;do=diff</link>
        <description>Summary Log File Format

VPOP3 creates a file called SUMMARY.LOG in the VPOP3 directory which contains summary information which is compiled daily into a daily summary reports sent to the administrator.

VPOP3 can keep these summary logs in a subdirectory called</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:useful_database_queries?rev=1773658952&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-16T11:02:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Useful Database Queries</title>
        <link>https://wiki.pscs.co.uk/reference:useful_database_queries?rev=1773658952&amp;do=diff</link>
        <description>Useful Database Queries

Below are some database (SQL) queries which may be useful in some situations. You can run these from the &#039;psql&#039; program at the command prompt. Some can also be run from the Settings -&gt; Database -&gt; Query page in the VPOP3 settings.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:user_prune_rules?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Prune Rules</title>
        <link>https://wiki.pscs.co.uk/reference:user_prune_rules?rev=1542192349&amp;do=diff</link>
        <description>Prune Rules

The Edit User -&gt; Prune Rules tab can be used to create/edit rules which cause messages to be automatically deleted according to specified criteria.

To add or edit a “prune rule”, press the Add Rule button. This will add a new rule to the table, with a set of default settings. Don&#039;t worry, this rule doesn&#039;t take effect until you press the Submit button.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:user_routing?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>User Routing Options</title>
        <link>https://wiki.pscs.co.uk/reference:user_routing?rev=1542192349&amp;do=diff</link>
        <description>User Routing Options

Assistant

The assistant for a user is an email address (or set of email addresses, separated by semicolons) where incoming messages to this user will be copied or redirected.

Normally messages will be copied to the assistant, but if the</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:virus_scan_filter_script?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Virus Scan Filter Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:virus_scan_filter_script?rev=1542192349&amp;do=diff</link>
        <description>Virus Scan Filter Scripting

(Added in V6.17)

The VIRUSSCAN.LUA script has a single function FilterResult

This function is called for every virus that a VPOP3-integrated (eg VPOP3 AV or Sophos SAV Interface) detects. The function has the opportunity to &#039;filter&#039; the virus detection so that VPOP3 will act as if the virus was not detected.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.messagereset?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.MessageReset</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.messagereset?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.MessageReset

The Lua function &#039;VPOP3.MessageReset&#039; resets an internal read pointer to the start of the message being processed

This function is only available in the ProcessMessage function of the POP3CLT.LUA or SMTPSVR.LUA scripts.

It takes no parameters

The function returns no value</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.messageseek?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.MessageSeek</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.messageseek?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.MessageSeek

The Lua function &#039;VPOP3.MessageSeek&#039; sets an internal read pointer to the specified location of the message being processed

This function is only available in the ProcessMessage function of the POP3CLT.LUA or SMTPSVR.LUA scripts.

It takes one parameter:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:whats_new_in_version_5_webmail?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>What&#039;s new in version 5 webmail?</title>
        <link>https://wiki.pscs.co.uk/reference:whats_new_in_version_5_webmail?rev=1542192349&amp;do=diff</link>
        <description>What&#039;s new in version 5 webmail?

This is a list of some of the most noticeable changes to VPOP3&#039;s webmail interface for version 5. For a more detailed list of changes, view our bugtracker.

[VPOP3 Version 5 - mobile compatible webmail]

Mobile compatible webmail

If you access version 5 webmail from a mobile device, you will probably be redirected to the mobile compatible version. It is a cut-down version of Webmail, which retains the key features, but doesn&#039;t utilise the extra features which w…</description>
    </item>
</rdf:RDF>
