<?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-06T10:56:25+00:00</dc:date>
        <items>
            <rdf:Seq>
                <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/adminapi:smtpidsevents?rev=1542192349&amp;do=diff"/>
                <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/wiki:syntax?rev=1773676810&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:version_5_webmail_api?rev=1542192349&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:spamrules_statement_ifmatch?rev=1542192349&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/reference:database_restore?rev=1542192349&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:spamrules_statement_bulkscan?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_globalmatch?rev=1749197750&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_sendmessage?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getmessagepart?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getmessagepartbody?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.getmessagepartheader?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3.setsetting?rev=1615307830&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: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:smtpspfwhitelist?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:10055?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/how_to:backup_vpop3?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/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/mailapi:autoresponderlist?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:autoresponder_global_script?rev=1774279769&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:incoming_smtp?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:lua_monitor_script?rev=1566922420&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:misc_general?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:smtp_ids_ips?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_convert?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:spamrules_statement_foreach?rev=1542192349&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.pscs.co.uk/reference:user_delivery_script?rev=1542192349&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.getmessagelines?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.hexstring?rev=1730218081&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.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.postgresquery?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:li rdf:resource="https://wiki.pscs.co.uk/reference:vpop3net.gethttp?rev=1615308164&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_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/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: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/wiki:syntax?rev=1773676810&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-16T16:00:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Formatting Syntax</title>
        <link>https://wiki.pscs.co.uk/wiki:syntax?rev=1773676810&amp;do=diff</link>
        <description>Formatting Syntax

DokuWiki supports some simple markup language, which tries to make the datafiles to be as readable as possible. This page contains all possible syntax you may use when editing the pages. Simply have a look at the source of this page by pressing</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: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: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:spamrules_statement_ifmatch?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: IfMatch</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_ifmatch?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: IfMatch
Statement  IfMatch Version  2.1.7+ Purpose  Allows you to perform a regular or substring match on a variable or part of the message being processed 
IfMatch statements require a data parameter and a search value, in the format</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/reference:database_restore?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Database -&gt; Restore Tab</title>
        <link>https://wiki.pscs.co.uk/reference:database_restore?rev=1542192349&amp;do=diff</link>
        <description>Database -&gt; Restore Tab

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

Using the</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference: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:spamrules_statement_bulkscan?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: BulkScan</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_bulkscan?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: BulkScan
Statement  BulkScan Version  2.1.7+ Purpose  Allows you to specify lots of search strings in one section without needing the verbose If statement 
The BulkScan statement requires a variable name and a limitless number of search specifiers, in the format</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_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_sendmessage?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: SendMessage</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_sendmessage?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: SendMessage
Statement  SendMessage Version  2.4.5+ Purpose  Allows you to send a message 
The SendMessage statement requires a recipient, subject, message text and a currently unused options parameter, in the format
SendMessage &lt;recipient&gt; &lt;subject&gt; &lt;message text&gt; &lt;options&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.getmessagepart?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPOP3.GetMessagePart</title>
        <link>https://wiki.pscs.co.uk/reference:vpop3.getmessagepart?rev=1542192349&amp;do=diff</link>
        <description>VPOP3.GetMessagePart

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

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

It takes one parameter:

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

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

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

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

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

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

It takes one parameter:</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:vpop3.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/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: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: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/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:10055?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>Socket Error 10055 - No Buffer Space Available</title>
        <link>https://wiki.pscs.co.uk/how_to:10055?rev=1542192349&amp;do=diff</link>
        <description>Socket Error 10055 - No Buffer Space Available

Error 10055 means that Windows has run out of TCP/IP socket buffers because too many connections are open at once.

Things to check if this happens are:

	*  Is there any other TCP/IP software running on the same PC as VPOP3 - eg a proxy server</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/how_to:backup_vpop3?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>How to Backup VPOP3</title>
        <link>https://wiki.pscs.co.uk/how_to:backup_vpop3?rev=1542192349&amp;do=diff</link>
        <description>How to Backup VPOP3

By default VPOP3 v3 and later will automatically perform a daily backup of the database into a file called DBBACK-x.DMP, where the backup file rotates on a weekly basis (DBBACK-0.DMP is Sunday&#039;s backup, DBBACK-1.DMP is Monday&#039;s backup, etc).</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/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/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: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: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: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:incoming_smtp?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>Incoming SMTP Mail</title>
        <link>https://wiki.pscs.co.uk/reference:incoming_smtp?rev=1542192349&amp;do=diff</link>
        <description>Incoming SMTP Mail

If you have an incoming SMTP mail feed, then the mail server sending mail to you will connect to your VPOP3 computer to send the mail. The mail connection is controlled by the sending computer.

IMPORTANT

If you have a permanent Internet connection with a static IP address, the usual way of having incoming SMTP is to configure your</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: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:misc_general?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Misc -&gt; General Tab</title>
        <link>https://wiki.pscs.co.uk/reference:misc_general?rev=1542192349&amp;do=diff</link>
        <description>Misc -&gt; General Tab

VPOP3 Host Name

The VPOP3 Host Name is used by VPOP3 when it is telling other mail software what it is called. For instance, when it connects to another SMTP server it will send the host name as the parameter for the HELO or EHLO command, and when an SMTP client connects to VPOP3, it announces its name in the welcome banner as required by the SMTP standard.</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:smtp_ids_ips?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 Server -&gt; IDS/IPS</title>
        <link>https://wiki.pscs.co.uk/reference:smtp_ids_ips?rev=1542192349&amp;do=diff</link>
        <description>SMTP Server -&gt; IDS/IPS

The IDS/IPS tab lets you set logging and automatic blocking parameters for the IDS (Intrusion Detection System) and IPS (Intrusion Prevention System) component of the SMTP server.

SMTP servers are regularly attacked, both by incoming mail attacks (spam/viruses etc) and relay attacks (by spammers and other malware distributors trying to send mail through them). Because of this, there is a system in VPOP3 which will track attack attempts on the SMTP service and can automat…</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_convert?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: Convert</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_convert?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: Convert
Statement  Convert Version  2.4.9+ Purpose  Allows you to convert data from one form to another 
The Convert statement requires a data parameter, conversion method and variable name, in the format
Convert &lt;data&gt; &lt;conversion method&gt; &lt;variable name&gt;</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:spamrules_statement_foreach?rev=1542192349&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-14T10:45:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Spam Filter Rules: ForEach</title>
        <link>https://wiki.pscs.co.uk/reference:spamrules_statement_foreach?rev=1542192349&amp;do=diff</link>
        <description>Spam Filter Rules: ForEach
Statement  ForEach Version  2.1.7+ Purpose  Causes a loop to be run through for all values within specified criteria 
The ForEach statement requires either two or three parameters (depending on the type of loop that is being conducted), in the format</description>
    </item>
    <item rdf:about="https://wiki.pscs.co.uk/reference:user_delivery_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>User Delivery Script</title>
        <link>https://wiki.pscs.co.uk/reference:user_delivery_script?rev=1542192349&amp;do=diff</link>
        <description>User Delivery Script

(VPOP3 v6.5 or later)

If there is a &lt;username&gt;/delivery.lua script, this Lua script can override VPOP3&#039;s message delivery options. You can edit this in the Settings -&gt; Scripts page in the settings. This script affects how VPOP3 will handle how messages being delivered to this user are handled.</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.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.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.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/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.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.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/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>
    <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>
</rdf:RDF>
