UDM_PARAM_CACHE_MODE - turns on or off search result cache mode.
When enabled, the search engine will store
search results to disk. In case a similar search is performed later,
the engine will take results from the cache for faster performance.
Available values: UDM_CACHE_ENABLED,
UDM_CACHE_DISABLED.

UDM_PARAM_TRACK_MODE - turns on or off trackquery mode. Since
version 3.1.2 mnoGoSearch has a query tracking support.
Note that tracking is implemented in SQL version only and not available
in built-in database.
To use tracking, you have to create tables for tracking support.
For MySQL, use create/mysql/track.txt.
When doing a search, front-end uses those tables to store query words,
a number of found documents and current Unix timestamp in seconds.
Available values: UDM_TRACK_ENABLED,
UDM_TRACK_DISABLED.

UDM_PARAM_PHRASE_MODE - defines whether index database using phrases
("phrase" parameter in indexer.conf).
Possible values: UDM_PHRASE_ENABLED and UDM_PHRASE_DISABLED.
Please note, that if phrase search is enabled (UDM_PHRASE_ENABLED),
it is still possible to do search in any mode (ANY, ALL,
BOOL or PHRASE).
In 3.1.10 version of mnoGoSearch phrase search is supported only in sql
and built-in database modes,
while beginning with 3.1.11 phrases are supported in cachemode as well.
Examples of phrase search:
"Arizona desert" - This query returns all indexed documents that contain
"Arizona desert" as a phrase. Notice that you need to put double quotes
around the phrase

UDM_PARAM_STOPFILE - Defines name and path
to stopwords file. (There is a small difference with mnoGoSearch
- while in mnoGoSearch if relative path or no path entered, it
looks for this file in relation to UDM_CONF_DIR, the module looks for
the file in relation to current path, i.e. to the path where the
PHP script is executed.)

UDM_PARAM_STOPTABLE - Load stop words from the given SQL table. You may use
several StopwordTable commands.
This command has no effect when compiled without SQL database support.

UDM_PARAM_WEIGHT_FACTOR - represents weight factors for specific document parts.
Currently body, title, keywords, description, url are supported.
To activate this feature please use degrees of 2 in *Weight commands of
the indexer.conf. Let's imagine that we have these weights:

URLWeight 1
BodyWeight 2
TitleWeight 4
KeywordWeight 8
DescWeight 16

As far as indexer uses bit OR operation for word weights when some
word presents several time in the same document, it is possible at search
time to detect word appearance in different document parts. Word which
appears only in the body will have 00000010 aggregate weight (in binary notation).
Word used in all document parts will have 00011111 aggregate weight.
This parameter's value is a string of hex digits ABCDE. Each digit is a
factor for corresponding bit in word weight. For the given above weights
configuration:

E is a factor for weight 1 (URL Weight bit)
D is a factor for weight 2 (BodyWeight bit)
C is a factor for weight 4 (TitleWeight bit)
B is a factor for weight 8 (KeywordWeight bit)
A is a factor for weight 16 (DescWeight bit)

Examples:
UDM_PARAM_WEIGHT_FACTOR=00001 will search through URLs only.
UDM_PARAM_WEIGHT_FACTOR=00100 will search through Titles only.
UDM_PARAM_WEIGHT_FACTOR=11100 will search through Title,Keywords,Description
but not through URL and Body.
UDM_PARAM_WEIGHT_FACTOR=F9421 will search through:

If UDM_PARAM_WEIGHT_FACTOR variable is omitted, original weight value is
taken to sort results. For a given above weight configuration it means
that document description has a most big weight 16.

UDM_PARAM_WORD_MATCH - word match. You may use this parameter to choose
word match type. This feature works only in "single" and "multi" modes
using SQL based and built-in database. It does not work in cachemode and other modes
since they use word CRC and do not support substring search. Available values:
UDM_MATCH_BEGIN - word beginning match;UDM_MATCH_END - word ending match;UDM_MATCH_WORD - whole word match;UDM_MATCH_SUBSTR - word substring match.

UDM_PARAM_MIN_WORD_LEN - defines minimal word length.
Any word shorter this limit is considered to be a stopword. Please note
that this parameter value is inclusive, i.e. if UDM_PARAM_MIN_WORD_LEN=3,
a word 3 characters long will not be considered a stopword, while
a word 2 characters long will be. Default value is 1.

UDM_PARAM_ISPELL_PREFIXES - Possible values: UDM_PREFIXES_ENABLED and
UDM_PREFIXES_DISABLED, that respectively enable or disable using prefixes.
E.g. if a word "tested" is in search query, also words like "test",
"testing", etc. Only suffixes are supported by default. Prefixes usually
change word meanings, for example if somebody is searching for the word "tested"
one hardly wants "untested" to be found. Prefixes support may also be
found useful for site's spelling checking purposes. In order to enable
ispell, you have to load ispell data with udm_load_ispell_data().

UDM_PARAM_CROSS_WORDS - enables or disables crosswords support.
Possible values: UDM_CROSS_WORDS_ENABLED and UDM_CROSS_WORDS_DISABLED.
The crosswords feature allows to assign words between <a href="xxx"> and </a>
also to a document this link leads to. It works in SQL database mode and
is not supported in built-in database and Cachemode.

UDM_PARAM_VARDIR - specifies a custom path to directory where indexer
stores data when using built-in database and in cache mode.
By default /var directory of
mnoGoSearch installation is used. Can have
only string values.

val

Changelog

Version

Description

4.1.0

UDM_PARAM_VARDIR was added.

Return Values

Returns TRUE on success or FALSE on failure.

Notes

User Contributed Notes 3 notes

Other possible session parameters not documented but found in the default php frontend on http://www.mnogosearch.org:UDM_PARAM_BROWSER_CHARSET - ?UDM_PARAM_HLBEG - defines the tag to use before an highlighted search termUDM_PARAM_HLBEG - defines the tag to use after an highlighted search termUDM_PARAM_QSTRING - defines the search term (or query string)UDM_PARAM_REMOTE_ADDR - ?UDM_PARAM_QUERY - ?UDM_PARAM_STORED - ?UDM_PARAM_GROUPBYSITE - toggles the "group by site" feature (UDM_ENABLED or UDM_DISABLED)UDM_PARAM_SITEID - ?UDM_PARAM_DETECT_CLONES - enable the "detect clone" feature (UDM_ENABLED or UDM_DISABLED)

One useful parameter not documented above is UDM_PARAM_SYNONYM. If you understand how this API works in general, you should be able to figure it out, but here goes anyway:

<?php/* Make sure that PHP is able to find the file. Unlike mnogosearch's indexer and search.cgi, it doesn't know the directory of the installation. */$synFile="/usr/local/mnogosearch/etc/synonym/english.syn";udm_set_agent_param($agent, UDM_PARAM_SYNONYM, $synFile);?>