Implements a client for the Dictionary Server Protocol.
TIdDICT = class(TIdTCPClient);
TIdDICT is a TIdTCPClient descendant that implements a client for the Dictionary Server Protocol, as described in the Internet Standards document:
RFC 2229 - A Dictionary Server Protocol
The DICT protocol is designed to provide access to multiple databases. Word definitions can be requested, the word index can be searched (using an easily extended set of algorithms), information about the server can be provided (e.g., which index search strategies are supported, or which databases are available), and information about a database can be provided (e.g., copyright, citation, or distribution information). Further, the DICT protocol has hooks that can be used to restrict access to some or all of the databases available on a DICT server.
TIdDICT provides properties and methods needed to implement the following DICT commands:
AUTH |
CLIENT |
DEFINE |
HELP |
MATCH |
OPTION MIME |
QUIT |
SASLAUTH |
SHOW DB |
SHOW INFO |
SHOW SERVER |
SHOW STRAT |
STATUS |
Below is a summary of response codes used in the DICT protocol. (x) in the first column indicates the response has defined arguments that must be provided.
? |
Rsp |
Meaning |
x |
110 |
n databases present - text follows |
x |
111 |
n strategies available - text follows |
|
112 |
database information follows |
|
113 |
help text follows |
|
114 |
server information follows |
|
130 |
challenge follows |
x |
150 |
n definitions retrieved - definitions follow |
x |
151 |
word database name - text follows |
x |
152 |
n matches found - text follows |
|
210 |
(optional timing and statistical information here) |
x |
220 |
text msg-id |
|
221 |
Closing Connection |
|
230 |
Authentication successful |
|
250 |
ok (optional timing information here) |
|
330 |
send response |
|
420 |
Server temporarily unavailable |
|
421 |
Server shutting down at operator request |
|
500 |
Syntax error, command not recognized |
|
501 |
Syntax error, illegal parameters |
|
502 |
Command not implemented |
|
503 |
Command parameter not implemented |
|
530 |
Access denied |
|
531 |
Access denied, use "SHOW INFO" for server information |
|
532 |
Access denied, unknown mechanism |
|
550 |
Invalid database, use "SHOW DB" for list of databases |
|
551 |
Invalid strategy, use "SHOW STRAT" for a list of strategies |
|
552 |
No match |
|
554 |
No databases present |
|
555 |
No strategies available |
Copyright © 1993-2006, Chad Z. Hower (aka Kudzu) and the Indy Pit Crew. All rights reserved.
|
Post feedback to the Indy Docs Newsgroup.
|