Protocols/MSNP/Commands/FND
FND
This command queries the Hotmail member directory and returns matching users.
Since (at least) MSNP7 this command is no-longer supported and the server returns error 502. It is included here for historical reasons. The command was first seen in MSNP2 and used up to MSNP4 at the earliest. Its status in MSNP5 through 7 is unknown.
Sent to Server
Description
>>> FND trId fname=<firstName> lname=<lastName> city=<city> state=<state> country=<country>
Parameters
Note that parameters are given in key/vale pairs. All parameters except firstName and lastName can be set to the asterisk wildcard, otherwise the server will sent a 201 error. If either the city or state parameters are set (not asterisks) then the country must be US (at the time the member directory did not provide specific geographical information for non-US residents), otherwise the server will disconnect the client.
Name | Type | Example Value | Summary |
---|---|---|---|
trid | Transaction ID | 1 | |
firstName | URL-Encoded String | Bill | First name of the person to find. Cannot be asterisk or get 201 error. |
lastName | URL-Encoded String | Gates | Last name of the person to find. Cannot be asterisk or get 201 error. |
city | URL-Encoded String | * or Seattle | City of the person to find, or an asterisk to match any city in the US (set to * for non-US locations or be disconnected) |
state | Two-letter US state code | * or WA | State of the person to find, or an asterisk to match any state in the US (set to * for non-US locations or be disconnected) |
country | Two-letter ISO country code | * or US | Country of the person to find, or an asterisk to match any country. |
Server returns
Description
If too many results:
<<< 301 <trid>
If zero results:
>>> FND <trid> 0 0
If results found:
>>> FND <trid> <idx> <total> fname=<firstName> lname=<lastName> state=<state> country=<country>
The result row is repeated for each user found, with <idx> increasing from 1 to <total>.
Parameters
Name | Type | Example Value | Summary |
---|---|---|---|
trid | Transaction ID | 1 | The trid is identical and repeated for each returned result |
idx | Integer | 1 | idx starts at 1 and increments for each returned result until it is equal to the total value |
total | Integer | 1 | The total number of users returned |
The other parameters are self-explanatory and identical to their meaning in the Client-to-server command definition. They are all URL-encoded.
Example
>>> FND 3 fname=William%20Henry lname=Gates city=* state=WA country=US <<< FND 3 1 3 fname=William%20Henry lname=Gates city=Olympia state=WA country=US <<< FND 3 2 3 fname=William%20Henry lname=Gates city=Seattle state=WA country=US <<< FND 3 3 3 fname=William%20Henry lname=Gates city=Redmond state=WA country=US