<?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-06T11:06:50+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_smtp_mx_control?rev=1771948188&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:lua_smtp_relay_control?rev=1755163495&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:outgoing_message_script?rev=1711018194&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:sender_advanced_relay_settings?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:spamrules_statement_dbqueryone?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:configure_srs?rev=1755530891&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/adminapi:smtpidsevents?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/how_to:forwarded_emails_not_arriving?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:password_strength_checking_script?rev=1767605139&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:autoresponder_global_script?rev=1774279769&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:lua_smtp_mx_server_rules?rev=1771948203&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_variables?rev=1692028861&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:user_manager_script?rev=1713775058&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.base64?rev=1730217971&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.hexstring?rev=1730218081&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:userqueuemessage?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:version_5_webadmin_api?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:autoresponderlist?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:version_5_webmail_api?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:copy_smtp_rules?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:listserver_commands?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:lua_hash_functions?rev=1730217591&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:scheduling_management_scripts?rev=1542192349&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: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:virus_scan_filter_script?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.postgresquery?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:outmsgrecipients?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:outmsgretpath?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:smtpclientblocks?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:smtpspfwhitelist?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:whitelist_blacklist?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:autoresponderconditionlist?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:autoresponderinfo?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:dmarc_reporter_script?rev=1699782700&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:group_a_user_s_folders_into_letter_groups?rev=1773659562&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:spamrules_statement_countmatches?rev=1749197557&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_dns?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_dnsbl?rev=1603469269&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_httppost?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_surbl?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: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.hmac?rev=1730217799&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.setsetting?rev=1615307830&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.unbase64?rev=1730218035&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.unhexstring?rev=1730218177&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/adminapi:outmsgauth?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:outmsghold?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:outmsgip?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:smtpclientallows?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:userid?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:usernumber?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:userruleactions?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:userruleactionupdate?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:userruleconditions?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:userruleconditionupdate?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:userrulelist?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/adminapi:userruleupdate?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:535_authentication_failed?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:550_not_permitted?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:backscatter?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:database_size?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:delete_outqueue_messages_directly_from_the_database?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:error_messages?rev=1759764097&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:mail_not_downloading_from_isp?rev=1775498387&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:out_of_disk_space_when_sending_mail?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:pop3_client_problem?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:restore_deleted_calendars?rev=1668771832&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:seeing_where_a_message_came_from?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:smtp_client_problem?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:the_message_could_not_be_loaded._please_return_to_the_quarantine_page_and_try_again?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:messageview4?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:minpasswordlength?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:userid?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:usernumber?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:userruleactions?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:userruleactionupdate?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:userruleconditions?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:userruleconditionupdate?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:userrulelist?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/mailapi:userruleupdate?rev=1542192349&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:address_book_tab?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:archive_search_results?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:list_failed_message_send_summary?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:lua_pop3_client_script?rev=1692172081&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:os.timedexecute?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:quarantine_tab?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:scheduler_script?rev=1628506507&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_advanced?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:smtp_load_limiting?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:smtp_rules_script?rev=1774525319&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_getsectionmd5?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_globalmatch?rev=1749197750&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:vpop3.getfolders?rev=1542192349&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.getmessagepartheader?rev=1542192349&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: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.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:vpop3.saveattachment?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.sendmessage?rev=1628506726&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:lua_smtp_mx_control?rev=1771948188&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-24T15:49:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua SMTP MX Control</title>
        <link>https://wiki.pscs.co.uk/reference:lua_smtp_mx_control?rev=1771948188&amp;do=diff</link>
        <description>Lua SMTP MX Control

Every time VPOP3 is going to send messages using direct MX sending, it runs a script called mxout.lua which can be created/edited in Settings -&gt; Scripts (or in the VPOP3 directory in VPOP3 v6.6 or earlier).

Global Variables

Starting with v8.8, the following global variables are defined:</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:lua_smtp_relay_control?rev=1755163495&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-14T09:24:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua SMTP Relay Control</title>
        <link>https://wiki.pscs.co.uk/reference:lua_smtp_relay_control?rev=1755163495&amp;do=diff</link>
        <description>Lua SMTP Relay Control

Every time VPOP3 is going to send messages via SMTP Relay, it runs a script called relayout.lua in the VPOP3 directory.

Global Variables

This script may have global variables, depending on your version of VPOP3.

In VPOP3 3.0.0L and later, there are two read-only global variables set at the start of the script:</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:outgoing_message_script?rev=1711018194&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-21T10:49:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Outgoing Message Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:outgoing_message_script?rev=1711018194&amp;do=diff</link>
        <description>Outgoing Message Scripting

Every time VPOP3 adds a message to the Outgoing mail queue, it runs a script called outmessage.lua.

Scripts are stored as files in the VPOP3 directory in VPOP3 v6.6 and earlier, or managed through the Settings -&gt; Scripts page in VPOP3 v6.7 and later.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:sender_advanced_relay_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 Relay Settings</title>
        <link>https://wiki.pscs.co.uk/reference:sender_advanced_relay_settings?rev=1542192349&amp;do=diff</link>
        <description>Mail Sender Advanced Relay Settings

SMTP Return Address

The SMTP Return Address (or Return Path) is a hidden part of a message which says where bounce messages (and other automated responses) should be sent. (It is not the same as the Reply address</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:spamrules_statement_dbqueryone?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: DBQueryOne</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_dbqueryone?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: DBQueryOne
Statement  DBQueryOne Version  6.16+ Purpose  Queries the spam filter database for a single record/aggregate 
The DBQueryOne statement performs a query on the spam filter database and returns a single value which is either the value of a record or an aggregate of several records.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:configure_srs?rev=1755530891&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-18T15:28:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Configure SRS</title>
        <link>https://wiki.pscs.co.uk/how_to:configure_srs?rev=1755530891&amp;do=diff</link>
        <description>Configure SRS

In VPOP3 8.8 and later, you can use Lua scripting to implement &#039;SRS&#039; (Sender Rewriting Scheme&#039;) in VPOP3

This involves adding a couple of functions to rewrite outgoing return paths in &#039;relayout.lua&#039; or &#039;mxout.lua&#039; as appropriate and a couple of functions to redirect rewritten bounce message recipients in &#039;smtpsvr.lua&#039;</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/adminapi:smtpidsevents?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>SMTPIDSEvents Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:smtpidsevents?rev=1542192349&amp;do=diff</link>
        <description>SMTPIDSEvents Replacement

Use:
~smtpidsevents~
This returns the latest entries from the SMTP client logging database. It will return 100 entries unless the count parameter is specified in the URL, in which case that will specify the maximum number of entries to return.</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/how_to:forwarded_emails_not_arriving?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>Forwarded Emails Not Arriving</title>
        <link>https://wiki.pscs.co.uk/how_to:forwarded_emails_not_arriving?rev=1542192349&amp;do=diff</link>
        <description>Forwarded Emails Not Arriving

If you are having problems having VPOP3 forward incoming messages to an external address, but sending messages directly to that address works OK, and forwarding internal messages to that address works OK, then the problem may be the SMTP return address which VPOP3 is using.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:password_strength_checking_script?rev=1767605139&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-05T09:25:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Password Strength Checking Script</title>
        <link>https://wiki.pscs.co.uk/reference:password_strength_checking_script?rev=1767605139&amp;do=diff</link>
        <description>Password Strength Checking Script

You can tell VPOP3 to enforce password strength checks by using a Lua script which performs the checks for you.

The Lua script can be edited in Settings -&gt; Scripts and is called passwordcheck.lua (in older versions of VPOP3 it is stored in a file called</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:autoresponder_global_script?rev=1774279769&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-23T15:29:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Autoresponder Global Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:autoresponder_global_script?rev=1774279769&amp;do=diff</link>
        <description>Autoresponder Global Scripting

For scripting to modify the autoresponder text which is embedded in the autoresponder itself, see Autoresponder Scripting

The Autoresponder Global Script is executed for every autoresponse. It is stored in the &#039;Autoresponder.lua&#039; script in Settings → Scripts</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: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:spamrules_variables?rev=1692028861&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-14T16:01:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: Variables</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_variables?rev=1692028861&amp;do=diff</link>
        <description>Spam Filter Rules: Variables

The VPOP3 spam filter script language supports simple variables. In most places these are specified as ${&lt;variable name&gt;}, but in some places they are just specified as &lt;variable name&gt; - for instance where a statement always puts its result into a variable.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:user_manager_script?rev=1713775058&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-04-22T08:37:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>User Manager Script</title>
        <link>https://wiki.pscs.co.uk/reference:user_manager_script?rev=1713775058&amp;do=diff</link>
        <description>User Manager Script

If you want people to be able to log in using a different username than their VPOP3 username (eg if you want them to be able to log in using an email address), then you can use the UserManager Lua script

The Lua script is managed through the Settings → Scripts page in VPOP3 v8.0 and later and is called &#039;UserManager.LUA.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.base64?rev=1730217971&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-29T16:06:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.Base64</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.base64?rev=1730217971&amp;do=diff</link>
        <description>VPOP3.Base64

Added in VPOP3 8.7

This function returns a Base64 string encoding of the supplied parameter
VPOP3.Base64(text)
or
VPOP3.Base64(byte-array)

It can be passed either a text string or a table containing one byte per table-entry (eg as returned from the</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.hexstring?rev=1730218081&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-29T16:08:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.HexString</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.hexstring?rev=1730218081&amp;do=diff</link>
        <description>VPOP3.HexString

Added in VPOP3 8.7

This function returns a Hex string encoding of the supplied parameter
VPOP3.HexString(text)
or
VPOP3.HexString(byte-array)

It can be passed either a text string or a table containing one byte per table-entry (eg as returned from the</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:userqueuemessage?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>UserQueueMessage Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:userqueuemessage?rev=1542192349&amp;do=diff</link>
        <description>UserQueueMessage Replacement

Use:
~userqueuemessage~

Required parameter: Account, Msgid 

Optional parameter: Folder (&#039;Inbox&#039; is used if not specified)

You can also use the :&lt;max size&gt; modifier to set the maximum size of the response. If none is specified then a maximum size of 1000 characters is used. (e.g. use **~userqueuemessage:10000~)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:version_5_webadmin_api?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>Version 5 Web Admin API</title>
        <link>https://wiki.pscs.co.uk/adminapi:version_5_webadmin_api?rev=1542192349&amp;do=diff</link>
        <description>Version 5 Web Admin API

This section is only relevant for people who may want to access the Administration features from their own scripts, or want to customise the standard administration pages. Note that no free support is available for this.

This is not a full list of features, but it will be updated from time to time.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:autoresponderlist?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>AutoresponderList and AutoresponderGlobalList Replacements</title>
        <link>https://wiki.pscs.co.uk/mailapi:autoresponderlist?rev=1542192349&amp;do=diff</link>
        <description>AutoresponderList and AutoresponderGlobalList Replacements

Use:
~autoresponderlist~ or ~autorespondergloballist~

Required parameter: None

This returns a JSON structure listing all the autoresponder details available. autoresponderlist returns the personal autoresponder details.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:version_5_webmail_api?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>Version 5 Web Mail API</title>
        <link>https://wiki.pscs.co.uk/mailapi:version_5_webmail_api?rev=1542192349&amp;do=diff</link>
        <description>Version 5 Web Mail API

This section is only relevant for people who may want to access the WebMail features from their own scripts, or want to customise the standard Webmail pages. Note that no free support is available for this.

This is not a full list of features, but it will be updated from time to time.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:copy_smtp_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>Copy SMTP Rules - Database Query</title>
        <link>https://wiki.pscs.co.uk/reference:copy_smtp_rules?rev=1542192349&amp;do=diff</link>
        <description>Copy SMTP Rules - Database Query

This is an advanced Database action. There is no simple query that will perform the required operation, so we have to create a custom PostgreSQL function to copy the data.

At a command prompt in the VPOP3 directory run</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:listserver_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>ListServer Commands</title>
        <link>https://wiki.pscs.co.uk/reference:listserver_commands?rev=1542192349&amp;do=diff</link>
        <description>ListServer Commands

The ListServer is an automated process in VPOP3 which manages mailing lists. People can send commands to the ListServer to perform various functions remotely.

Whether these commands are allowed, and exactly how they work depends on the particular mailing list&#039;s settings.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:lua_hash_functions?rev=1730217591&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-29T15:59:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua Hashing Functions</title>
        <link>https://wiki.pscs.co.uk/reference:lua_hash_functions?rev=1730217591&amp;do=diff</link>
        <description>Lua Hashing Functions

Added in VPOP3 8.7

Four functions have been added to perform hash algorithms on a text string

	*  VPOP3.SHA1(string)
	*  VPOP3.SHA256(string)
	*  VPOP3.SHA512(string)
	*  VPOP3.MD5(string)

All functions take a string parameter, and return a table of numbers containing the hash value (one byte per table entry). The length of the returned table are:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:scheduling_management_scripts?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>Scheduling Management Scripts</title>
        <link>https://wiki.pscs.co.uk/reference:scheduling_management_scripts?rev=1542192349&amp;do=diff</link>
        <description>Scheduling Management Scripts

VPOP3 runs a script called scheduler.lua in the background, it will periodically call functions in this script at approximately 1 minute, 5 minute, 1 hour and 1 day intervals. These times are only approximate so should not be relied upon for timing.</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: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: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.postgresquery?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.PostgresQuery</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.postgresquery?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.PostgresQuery

The Lua function &#039;VPOP3.PostgresQuery&#039; performs a query on the PostgreSQL database and returns the results in a table

It takes a single parameter which is the SQL query to perform (Note that any relations used in the query must have the schema specified).</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:outmsgrecipients?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>OutMsgRecipients Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:outmsgrecipients?rev=1542192349&amp;do=diff</link>
        <description>OutMsgRecipients Replacement

Use:
[~outmsgrecipients~]

Required parameter: MsgID

This returns a JSON array containing details on the recipients for the specified message in the VPOP3 out queue.

There is one object returned per recipient, and the object is:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:outmsgretpath?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>OutMsgRetPath Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:outmsgretpath?rev=1542192349&amp;do=diff</link>
        <description>OutMsgRetPath Replacement

Use:
~outmsgretpath~

Required parameter: MsgID

This returns the return path of the specified message in the VPOP3 out queue</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:smtpclientblocks?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>SMTPClientBlocks Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:smtpclientblocks?rev=1542192349&amp;do=diff</link>
        <description>SMTPClientBlocks Replacement

Use:
~smtpclientblocks~
&lt;format string&gt;
~end~

The format string can have the replacements

	*  address - IP address (returned as host address or CIDR address as appropriate)
	*  date - the date/time the address was added to the database in YYYYMMDDHHMMSS format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:smtpspfwhitelist?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>SMTPSPFWhitelist Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:smtpspfwhitelist?rev=1542192349&amp;do=diff</link>
        <description>SMTPSPFWhitelist Replacement

Use:
~smtpspfwhitelist~
&lt;format string&gt;
~end~

If you specify the parameter serverid then this will just return white list entries which match all servers or this server.

The format string can have the replacements

	*  id - the whitelist entry ID</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:whitelist_blacklist?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>Spamfilter Whitelist &amp; Blacklist</title>
        <link>https://wiki.pscs.co.uk/how_to:whitelist_blacklist?rev=1542192349&amp;do=diff</link>
        <description>Spamfilter Whitelist &amp; Blacklist

The VPOP3 spamfilter has a whitelist and a blacklist for sender addresses. It also has a whitelist and blacklist for words/phrases.

You can view these lists in the VPOP3 settings by going to Settings -&gt; Spamfilter -&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:autoresponderconditionlist?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>AutoresponderConditionList Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:autoresponderconditionlist?rev=1542192349&amp;do=diff</link>
        <description>AutoresponderConditionList Replacement

Use:
~autoresponderconditionlist~

Required parameter: responderid - the ID of the autoresponder

This returns a JSON structure containing an array of the rules associated with the specified autoresponder.

The return structure is an array of objects containing:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:autoresponderinfo?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>AutoresponderInfo Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:autoresponderinfo?rev=1542192349&amp;do=diff</link>
        <description>AutoresponderInfo Replacement

Use:
~autoresponderinfo~

Required parameter: responderid - the ID of the autoresponder

This returns a JSON structure containing the details of the specified autoresponder.

The return structure is an object containing:</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: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: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:group_a_user_s_folders_into_letter_groups?rev=1773659562&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-16T11:12:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Group a user&#039;s folders into letter groups</title>
        <link>https://wiki.pscs.co.uk/reference:group_a_user_s_folders_into_letter_groups?rev=1773659562&amp;do=diff</link>
        <description>Group a user&#039;s folders into letter groups

This is useful in VPOP3 Enterprise if you have a large folder with many subfolders and want to group the subfolders into other subfolders based on their first letter

For example, if you have

	*  Customers</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:spamrules_statement_countmatches?rev=1749197557&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-06T08:12:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: CountMatches</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_countmatches?rev=1749197557&amp;do=diff</link>
        <description>Spam Filter Rules: CountMatches
Statement  CountMatches Version  2.3.13+ Purpose  Counts the number of times a specific regular expression matches in a string 
CountMatches statements require a data parameter, a search value, and the name of the variable to place the count into, in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_dns?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: DNS</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_dns?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: DNS
Statement  DNS Version  2.1.11+ Purpose  Allows the script to perform an arbitrary DNS lookup, returning the result into a specified variable 
The DNS statement requires a type, hostname and variable name, in the format
DNS &lt;type&gt; &lt;hostname&gt; &lt;variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_dnsbl?rev=1603469269&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-10-23T16:07:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: DNSBL</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_dnsbl?rev=1603469269&amp;do=diff</link>
        <description>Spam Filter Rules: DNSBL
Statement  DNSBL Version  2.1.7+ Purpose  Allows the script to perform a DNS blacklist lookup, returning the result into a specified variable 
The DNSBL statement requires a hostname, DNSBL zone and variable name, in the format</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_httppost?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: HTTPPost</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_httppost?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: HTTPPost
Statement  HTTPPost Version  2.4.9+ Purpose  Enables the script to post data to a web server 
The HTTPPost statement requires a url, data string, headers variable name and content variable name, in the format
HTTPPost &lt;url&gt; &lt;data string&gt; &lt;headers variable name&gt; &lt;content variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_surbl?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: SURBL</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_surbl?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: SURBL
Statement  SURBL Version  2.1.7+ Purpose  Allows a SURBL lookup on the specified hostname or IP address in the specified SURBL zone, and returns the result into the specified variable 
The SURBL statement requires a hostname, SURBL zone and variable name, in the format</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: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.hmac?rev=1730217799&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-29T16:03:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.HMAC</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.hmac?rev=1730217799&amp;do=diff</link>
        <description>VPOP3.HMAC

Added in VPOP3 8.7

This function performs a HMAC (Hash-based Message Authentication Code) algorithm on supplied text using the supplied key
VPOP3.HMAC(hash algorithm, string, key)
The function takes three parameters:

	*  Hash algorithm -</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.setsetting?rev=1615307830&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-09T16:37:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.SetSetting</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.setsetting?rev=1615307830&amp;do=diff</link>
        <description>VPOP3.SetSetting

The Lua function &#039;VPOP3.SetSetting&#039; sets a general setting forVPOP3

It takes two parameters:

	*  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
	*  The data to set (must be a string)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.unbase64?rev=1730218035&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-29T16:07:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.UnBase64</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.unbase64?rev=1730218035&amp;do=diff</link>
        <description>VPOP3.UnBase64

Added in VPOP3 8.7

This function Decodes a Base64 string into the original data
VPOP3.UnBase64(base64-text)
It returns a table containing the decoded data bytes - one byte per table entry.

If there was an error, it returns a Nil value</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.unhexstring?rev=1730218177&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-29T16:09:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.UnHexString</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.unhexstring?rev=1730218177&amp;do=diff</link>
        <description>VPOP3.UnHexString

Added in VPOP3 8.7

This function Decodes a Hex string into the original data
VPOP3.UnHexString(hex-text)
The input hex-text should have no extra spaces or punctuation, and be two hex digits per result byte. Any pairs of characters which are not valid hex will be processed as a &#039;zero&#039; byte.</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/adminapi:outmsgauth?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>OutMsgAuth Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:outmsgauth?rev=1542192349&amp;do=diff</link>
        <description>OutMsgAuth Replacement

Use:
~outmsgauth~

Required parameter: MsgID

This returns the authenticated sender (if any) of the specified message in the VPOP3 out queue.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:outmsghold?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>OutMsgHold Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:outmsghold?rev=1542192349&amp;do=diff</link>
        <description>OutMsgHold Replacement

Use:
~outmsghold~

Required parameter: MsgID

This returns whether the specified message in the VPOP3 out queue is held or not (1 or 0 respectively)</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:outmsgip?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>OutMsgIP Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:outmsgip?rev=1542192349&amp;do=diff</link>
        <description>OutMsgIP Replacement

Use:
~outmsgip~

Required parameter: MsgID

This returns the sender IP address of the specified message in the VPOP3 out queue.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:smtpclientallows?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>SMTPClientAllows Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:smtpclientallows?rev=1542192349&amp;do=diff</link>
        <description>SMTPClientAllows Replacement

Use:
~smtpclientallows~
&lt;format string&gt;
~end~

The format string can have the replacements

	*  address - IP address (returned as host address or CIDR address as appropriate)
	*  date - the date/time the address was added to the database in YYYYMMDDHHMMSS format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:userid?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>UserId Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:userid?rev=1542192349&amp;do=diff</link>
        <description>UserId Replacement

Use:
~userid~

Required parameter: None

This returns the userid/name of the currently logged in user</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:usernumber?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>UserNumber Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:usernumber?rev=1542192349&amp;do=diff</link>
        <description>UserNumber Replacement

Use:
~usernumber~

Required parameter: None

This returns the numeric ID of the currently logged in user</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:userruleactions?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>UserRuleActions Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:userruleactions?rev=1542192349&amp;do=diff</link>
        <description>UserRuleActions Replacement

Use:
~userruleactions~
&lt;format string&gt;
~end~

Required parameter: Account, RuleId

This returns the message rule actions for the specified rule

The format string can have the replacements

	*  id - numeric ID of the action
	*  type - action type</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:userruleactionupdate?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>UserRuleActionUpdate Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:userruleactionupdate?rev=1542192349&amp;do=diff</link>
        <description>UserRuleActionUpdate Replacement

Use:
~userruleactionupdate~

Required parameter:

	*  Account
	*  RuleId
	*  gr_id - action ID
	*  !nativeeditor_status - inserted/deleted/updated
	*  type
	*  data

This inserts/updates/deletes the specified message rule action</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:userruleconditions?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>UserRuleConditions Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:userruleconditions?rev=1542192349&amp;do=diff</link>
        <description>UserRuleConditions Replacement

Use:
~userruleconditions~
&lt;format string&gt;
~end~

Required parameter: Account, RuleId

This returns the message rule conditions for the specified rule

The format string can have the replacements

	*  id - numeric ID of the condition</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:userruleconditionupdate?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>UserRuleConditionUpdate Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:userruleconditionupdate?rev=1542192349&amp;do=diff</link>
        <description>UserRuleConditionUpdate Replacement

Use:
~userruleconditionupdate~

Required parameter:

	*  Account
	*  RuleID
	*  gr_id - condition ID
	*  !nativeeditor_status - inserted/deleted/updated
	*  matchi (1/0)
	*  matchn (1/0)
	*  match
	*  field
	*  data</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:userrulelist?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>UserRuleList Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:userrulelist?rev=1542192349&amp;do=diff</link>
        <description>UserRuleList Replacement

Use:
~userrulelist~
&lt;format string&gt;
~end~

Required parameter: Account

This returns the message rule list (in order) for the specified user

The format string can have the replacements

	*  id - numeric ID of the rule
	*  order - numeric order number (1-n) of the rule</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/adminapi:userruleupdate?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>UserRuleUpdate Replacement</title>
        <link>https://wiki.pscs.co.uk/adminapi:userruleupdate?rev=1542192349&amp;do=diff</link>
        <description>UserRuleUpdate Replacement

Use:
~userruleupdate~

Required parameter:

	*  Account
	*  gr_id - rule ID
	*  !nativeeditor_status - inserted/deleted/updated
	*  name
	*  all
	*  type

This inserts/updates/deletes the specified message rule

The return value is an XML tag:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:535_authentication_failed?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>535 Authentication Failed</title>
        <link>https://wiki.pscs.co.uk/how_to:535_authentication_failed?rev=1542192349&amp;do=diff</link>
        <description>535 Authentication Failed

This is an SMTP error meaning that an attempt to authenticate has failed.

If this error is appearing when the email client is trying to log into VPOP3, then you can check the VPOP3 &#039;SECURITY.LOG&#039; file which may contain more information, such as an invalid password, unknown username, etc. (This information is not returned in the SMTP session because it would help an attacker).</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:550_not_permitted?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>550/553 Not Permitted error from BT Internet&#039;s mail servers</title>
        <link>https://wiki.pscs.co.uk/how_to:550_not_permitted?rev=1542192349&amp;do=diff</link>
        <description>550/553 Not Permitted error from BT Internet&#039;s mail servers

BT Internet&#039;s mail servers only allow messages to be sent from &#039;approved&#039; email addresses. If you try to send messages from other addresses BT&#039;s mail servers may return a &#039;550 Not Permitted&#039; error, a &#039;553&#039; error, or may silently discard the message depending on what their server feels like doing today.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:backscatter?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>Backscatter</title>
        <link>https://wiki.pscs.co.uk/how_to:backscatter?rev=1542192349&amp;do=diff</link>
        <description>Backscatter

In email, “backscatter” is the term used if you send bounce messages back to spam messages. As most spam messages use forged email addresses, then the bounce messages will go to an innocent person, who will find them very annoying.

Stopping VPOP3 from sending Backscatter</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:database_size?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 Database Size</title>
        <link>https://wiki.pscs.co.uk/how_to:database_size?rev=1542192349&amp;do=diff</link>
        <description>VPOP3 Database Size

The VPOP3 directory is stored in the VPOP3\pgsql\data folder and subfolders.

If you are concerned about the size of the VPOP3 database, there are several factors which may make the database larger than you would expect:

	*  The VPOP3 database contains a lot more information than just messages in mailboxes. This can include settings, outgoing messages, historical logging information, statistical information for the spamfilter, information about archived messages, etc. Also,…</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:delete_outqueue_messages_directly_from_the_database?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>Delete OutQueue messages directly from the database</title>
        <link>https://wiki.pscs.co.uk/how_to:delete_outqueue_messages_directly_from_the_database?rev=1542192349&amp;do=diff</link>
        <description>Delete OutQueue messages directly from the database

If there is an extremely large number of messages (eg hundreds of thousands) in the VPOP3 OutQueue, then it may take a very long time for VPOP3 v5 and later to start as it check the message database tables for consistency during initialisation.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:error_messages?rev=1759764097&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-06T15:21:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Error Messages</title>
        <link>https://wiki.pscs.co.uk/how_to:error_messages?rev=1759764097&amp;do=diff</link>
        <description>Error Messages

This is the place to look if you are trying to trouble shoot a problem and you have received or have access to a specific error message or error code. If instead your problem is that something you think is set up correctly is not working then the best place to look would be the</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:mail_not_downloading_from_isp?rev=1775498387&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-06T17:59:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Mail Not Downloading From ISP</title>
        <link>https://wiki.pscs.co.uk/how_to:mail_not_downloading_from_isp?rev=1775498387&amp;do=diff</link>
        <description>Mail Not Downloading From ISP

This normally happens because you have told VPOP3 to Leave Messages On Server (on the Mail Connectors -&gt; Mail Collectors -&gt; (name) -&gt; POP3 General tab). If you do this, VPOP3 will leave messages on the ISP&#039;s mail server for several days, and remember that it has already downloaded them. Then, the next time it connects it will see that there are some messages waiting, but it may find that it has already downloaded them, so it won&#039;t download them again.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:out_of_disk_space_when_sending_mail?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>Out of Disk Space When Sending Mail</title>
        <link>https://wiki.pscs.co.uk/how_to:out_of_disk_space_when_sending_mail?rev=1542192349&amp;do=diff</link>
        <description>Out of Disk Space When Sending Mail

The first thing you should do is check that there is enough free disk space on the disk where VPOP3 is installed. VPOP3 requires a certain amount of free space before it will allow new messages to be sent, so the disk might not be totally full, but VPOP3 will still report that there is insufficient disk space when you try to send a new message. This buffer zone is designed to help prevent the disk totally filling up, which can cause lots of bigger problems!</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:pop3_client_problem?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 - POP3 Client Problem</title>
        <link>https://wiki.pscs.co.uk/how_to:pop3_client_problem?rev=1542192349&amp;do=diff</link>
        <description>VPOP3 - POP3 Client Problem

These errors occur whilst VPOP3 is communicating with your ISP&#039;s POP3 mail server to retrieve your mail.

The server connection was closed unexpectedly

If the message text is
Error with Pop3 Client (XXXX (YY))
The server connection was closed unexpectedly</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:restore_deleted_calendars?rev=1668771832&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-18T11:43:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Restore Deleted Calendars</title>
        <link>https://wiki.pscs.co.uk/how_to:restore_deleted_calendars?rev=1668771832&amp;do=diff</link>
        <description>Restore Deleted Calendars

This article will help if a user has been deleted and all their calendars are lost and need to be restored. Note that this functionality is not built into VPOP3, and requires the use of Python3 to run a script

First you need to install Python 3.8 or later, and the psycopg2 plugin</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:seeing_where_a_message_came_from?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>Seeing where a message came from</title>
        <link>https://wiki.pscs.co.uk/how_to:seeing_where_a_message_came_from?rev=1542192349&amp;do=diff</link>
        <description>Seeing where a message came from

Sometimes you need to check to see where a message really came from. The &#039;From:&#039; email address is easily forged, so that cannot be relied upon.

The first thing you have to do is to get the full message headers. These may look daunting, but are very useful for problem diagnosis.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:smtp_client_problem?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 - SMTP Client Problem</title>
        <link>https://wiki.pscs.co.uk/how_to:smtp_client_problem?rev=1542192349&amp;do=diff</link>
        <description>VPOP3 - SMTP Client Problem

These errors occur whilst VPOP3 is communicating with your ISP&#039;s SMTP mail server to send your mail.

If the message text is:
Error with SMTP Client (XXXX (YY))
The server connection was closed unexpectedly 
Then this means that the the connection between VPOP3 and your ISP&#039;s SMTP mail server was closed when VPOP3 did not expect it to be. This can be caused by the network connection failing or a bug in the ISP&#039;s mail server which drops the connection in abnormal circ…</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:the_message_could_not_be_loaded._please_return_to_the_quarantine_page_and_try_again?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>The message could not be loaded. Please return to the Quarantine page and try again</title>
        <link>https://wiki.pscs.co.uk/how_to:the_message_could_not_be_loaded._please_return_to_the_quarantine_page_and_try_again?rev=1542192349&amp;do=diff</link>
        <description>The message could not be loaded. Please return to the Quarantine page and try again

This error normally means the message file has been deleted from the hard disk (probably by a virus scanner or something else on the PC).

If you can find the message in the VPOP3 settings (Settings</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:messageview4?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>MessageView4 Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:messageview4?rev=1542192349&amp;do=diff</link>
        <description>MessageView4 Replacement

Use:
~messageview4~

Parameters:

	*  “headers” (optional - “y” means show full headers, otherwise show condensed headers)
	*  “msgformat” (optional - specifies format of &#039;message&#039; in result. “text” means UTF8 text, otherwise UTF8</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:minpasswordlength?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>MinPasswordLength Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:minpasswordlength?rev=1542192349&amp;do=diff</link>
        <description>MinPasswordLength Replacement

Use:
~minpasswordlength~

Required parameter: None

This returns the minimum password length specified in the VPOP3 Settings -&gt; Security settings</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:userid?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>UserId Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:userid?rev=1542192349&amp;do=diff</link>
        <description>UserId Replacement

Use:
~userid~

Required parameter: None

This returns the userid/name of the currently logged in user</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:usernumber?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>UserNumber Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:usernumber?rev=1542192349&amp;do=diff</link>
        <description>UserNumber Replacement

Use:
~usernumber~

Required parameter: None

This returns the numeric ID of the currently logged in user</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:userruleactions?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>UserRuleActions Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:userruleactions?rev=1542192349&amp;do=diff</link>
        <description>UserRuleActions Replacement

Use:
~userruleactions~
&lt;format string&gt;
~end~

Required parameter: RuleId

This returns the message rule actions for the specified rule

The format string can have the replacements

	*  id - numeric ID of the action
	*  type - action type</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:userruleactionupdate?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>UserRuleActionUpdate Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:userruleactionupdate?rev=1542192349&amp;do=diff</link>
        <description>UserRuleActionUpdate Replacement

Use:
~userruleactionupdate~

Required parameter:

	*  RuleId
	*  gr_id - action ID
	*  !nativeeditor_status - inserted/deleted/updated
	*  type
	*  data

This inserts/updates/deletes the specified message rule action</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:userruleconditions?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>UserRuleConditions Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:userruleconditions?rev=1542192349&amp;do=diff</link>
        <description>UserRuleConditions Replacement

Use:
~userruleconditions~
&lt;format string&gt;
~end~

Required parameter: RuleId

This returns the message rule conditions for the specified rule

The format string can have the replacements

	*  id - numeric ID of the condition
	*  field - field/data to test</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:userruleconditionupdate?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>UserRuleConditionUpdate Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:userruleconditionupdate?rev=1542192349&amp;do=diff</link>
        <description>UserRuleConditionUpdate Replacement

Use:
~userruleconditionupdate~

Required parameter:

	*  RuleID
	*  gr_id - condition ID
	*  !nativeeditor_status - inserted/deleted/updated
	*  matchi (1/0)
	*  matchn (1/0)
	*  match
	*  field
	*  data

This inserts/updates/deletes the specified message condition</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:userrulelist?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>UserRuleList Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:userrulelist?rev=1542192349&amp;do=diff</link>
        <description>UserRuleList Replacement

Use:
~userrulelist~
&lt;format string&gt;
~end~

Required parameter: None

This returns the message rule list (in order) for the current user

The format string can have the replacements

	*  id - numeric ID of the rule
	*  order - numeric order number (1-n) of the rule</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/mailapi:userruleupdate?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>UserRuleUpdate Replacement</title>
        <link>https://wiki.pscs.co.uk/mailapi:userruleupdate?rev=1542192349&amp;do=diff</link>
        <description>UserRuleUpdate Replacement

Use:
~userruleupdate~

Required parameter:

	*  gr_id - rule ID
	*  !nativeeditor_status - inserted/deleted/updated
	*  name
	*  all
	*  type

This inserts/updates/deletes the specified message rule

The return value is an XML tag:</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:address_book_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>Address Book tab</title>
        <link>https://wiki.pscs.co.uk/reference:address_book_tab?rev=1542192349&amp;do=diff</link>
        <description>Address Book tab

The Address Book tab within VPOP3 webmail enables you to manage your lists of contacts and add those contacts into a new or existing message. Substantial alterations to the interface were introduced in version 5. Both interfaces are documented.</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:archive_search_results?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; Results Tab</title>
        <link>https://wiki.pscs.co.uk/reference:archive_search_results?rev=1542192349&amp;do=diff</link>
        <description>Message Archive -&gt; Results Tab

Settings -&gt; Message Archive -&gt; Results tab

The Results tab only exists if you have previously done a search operation and are viewing the results of that search.

The Results page shows you a list of the messages (up to 1000 entries are available) returned by the search. You can select multiple entries by using shift+click or ctrl+click</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:list_failed_message_send_summary?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 failed message sends</title>
        <link>https://wiki.pscs.co.uk/reference:list_failed_message_send_summary?rev=1542192349&amp;do=diff</link>
        <description>Database query to list failed message sends

This will list failed outgoing messages from the last 3 days (with the default VPOP3 settings)

At a command prompt in the VPOP3 directory run
psql

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

Then, type
select created,returnpath,subject,username || &#039;@&#039; || domain as recipient, latesterror 
from outqueue.outrecipients inner join outqueue.outmessages using(msgid) where
failedtime is not null order by created desc;</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:lua_pop3_client_script?rev=1692172081&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-16T07:48:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>POP3 Client Lua Scripting</title>
        <link>https://wiki.pscs.co.uk/reference:lua_pop3_client_script?rev=1692172081&amp;do=diff</link>
        <description>POP3 Client Lua Scripting

The POP3 Client Lua Script is called POP3CLT.LUA and is edited in Settings -&gt; Scripts. This script is called whenever VPOP3 runs a POP3 session to download messages from a remote POP3 server.

VPOP3 will call the following Lua functions in the script at the following times:</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:os.timedexecute?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>os.timedexecute</title>
        <link>https://wiki.pscs.co.uk/reference:os.timedexecute?rev=1542192349&amp;do=diff</link>
        <description>os.timedexecute

The Lua function &#039;os.timedexecute&#039; runs an external program with a time limit

It takes three parameters:

	*  The program/command line to execute
	*  The time to wait for completion (in seconds). If this time expires, the program is terminated</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:quarantine_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>Quarantine tab</title>
        <link>https://wiki.pscs.co.uk/reference:quarantine_tab?rev=1542192349&amp;do=diff</link>
        <description>Quarantine tab

The Quarantine tab within VPOP3 webmail is where you view and manage messages that have been quarantined by VPOP3&#039;s spam filter.

As you can see from the screenshot, unlike many of the other webmail tabs, it is not divided into multiple sections:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:scheduler_script?rev=1628506507&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-08-09T10:55:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Scheduled Task Script</title>
        <link>https://wiki.pscs.co.uk/reference:scheduler_script?rev=1628506507&amp;do=diff</link>
        <description>Scheduled Task Script

Note that this functionality is only available in VPOP3 Enterprise

VPOP3 Enterprise can run Lua script periodically to do custom background tasks. It can run a function every minute, 5 minutes, hourly or daily.

The Lua script is stored in a file called</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_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>SMTP Service -&gt; Advanced Tab</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_advanced?rev=1542192349&amp;do=diff</link>
        <description>SMTP Service -&gt; Advanced Tab

Services -&gt; SMTP Server -&gt; Advanced Tab

Refuse SMTP Connections from

This setting should be rarely needed, and should be normally left blank. It is here for historic purposes.

If you put some text in this box, then VPOP3 will refuse any SMTP connections from clients whose &#039;HELO&#039;/&#039;EHLO&#039; command data contains the text specified here as a substring. Eg, if this setting is set to &#039;.myisp.com&#039;, then VPOP3 would refuse SMTP connections from any client which sends the c…</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:smtp_load_limiting?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 -&gt; Load Limiting tab</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_load_limiting?rev=1542192349&amp;do=diff</link>
        <description>SMTP -&gt; Load Limiting tab

This page is reached from Services -&gt; SMTP Server, then the Load Limiting tab.

Here you can set limits on how many active SMTP sessions there are, and other related settings. This lets you limit the load on the VPOP3 server. This is especially important if VPOP3 is performing spam filtering on incoming SMTP messages, because the spam filter can add considerable load.
You can reduce the spamfilter load by using the</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:smtp_rules_script?rev=1774525319&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-26T11:41:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lua SMTP Rules Scripts</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_rules_script?rev=1774525319&amp;do=diff</link>
        <description>Lua SMTP Rules Scripts

When VPOP3 is processing SMTP Rules for messages received by SMTP, it runs a script called smtprules_(x).lua, where (x) is replaced by the numeric ID of the SMTP service

VPOP3 processes SMTP Rules at least three times for each message - once when MAIL FROM has been received, once for each RCPT TO, and once when the whole message data has been received.</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_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:spamrules_statement_globalmatch?rev=1749197750&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-06T08:15:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: GlobalMatch</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_globalmatch?rev=1749197750&amp;do=diff</link>
        <description>Spam Filter Rules: GlobalMatch
Statement  GlobalMatch Version  2.3.13+ Purpose  Does a RegExp match on the supplied data and puts the results in a bag 
The GlobalMatch statement requires a data parameter, a search value, and the name of a bag to place the matches into, in the format</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: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.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.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.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: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.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:vpop3.saveattachment?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.SaveAttachment</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.saveattachment?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.SaveAttachment

The Lua function &#039;VPOP3.SaveAttachment&#039; saves an attachment from the message being processed to a file

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

It takes two parameters:

	*  number - attachment number to save</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.sendmessage?rev=1628506726&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-08-09T10:58:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.SendMessage</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.sendmessage?rev=1628506726&amp;do=diff</link>
        <description>VPOP3.SendMessage

The Lua function &#039;VPOP3.SendMessage&#039; sends a text email message

It takes four parameters:

	*  The email address of the sender
	*  The email address of the recipient
	*  The subject line
	*  The message body

The function returns one value:</description>
    </item>
</rdf:RDF>
