Core request/reply packet path implemented. The gateway answers from a fresh local
presence_syncsnapshot and emits remote answers as API events.
Get a list of users on a remote mud.
In-band (fast response)
({
"who-req",
5,
originator_mudname,
originator_username,
target_mudname,
0 // No specific target user
})
({
"who-reply",
5,
originator_mudname,
0,
target_mudname,
target_username,
who_data
})
An array containing an array for each user on the mud:
({
user_visname, // (string) User's visual name
idle_time, // (int) Idle time in seconds
xtra_info // (string) Extra information
})
({
({ "JohnDoe", 30, "Level 50 Wizard" }),
({ "JaneSmith", 120, "AFK" }),
({ "BobJones", 0, "Questing in the Dark Forest" })
})
- Originator sends
who-reqpacket to target mud via router - Router routes the packet to target mud
- Target mud compiles list of online users
- Target mud returns
who-replywith user data - Originator receives and displays the user list
- user_visname: The user's display name
- idle_time: Measured in seconds
- xtra_info: Additional information as a string (level, location, status, etc.)
If the router fails to deliver the packet, it will return an error packet with appropriate error codes:
unk-dst: Unknown destination mud
- This service provides a snapshot of users at the time of request
- The format of
xtra_infois mud-specific - Some muds may limit information shown based on user privacy settings