The first Release version of dbp_ezsClient plugin is now available, click my sig link to download it. Its in the ezs section. The zip contains the dll and the keywords ini file. Here's a quick list:
Functions
ezs_SetMode ByVal ModeType As Integer
ezs_Connect ByVal Host As String, ByVal Port As Integer
ezs_GetTCPData() As String
ezs_GetConnectionState() As Integer
ezs_Send ByVal t As String
ezs_Disconnect
ezs_SetLoginData ByVal ClientNick As String, ByVal ClientPassword As String
ezs_SetClientVersion ByVal Version As String
ezs_GetServerTime (ByVal PartIndex As Integer) As String
ezs_SetPPTDelim ByVal Delimiter As String
ezs_GetSCCount() As Integer
ezs_GetSCNickByIndex (ByVal Index As Integer) As String
ezs_GetSCIDByNick (ByVal Nick As String) As Integer
The functions should be self-describing of their usage except for ezs_SetMode. Pass in 0 to have the dll autoparse/autorespond to EZ_Serv, set it to 1 to return all raw server data thru the TCPData property. The default is 0 so you need not call this function if you want to use Autoparsing. When set to one you basically make the plugin a tcpip client plugin, relying on you to handle all parsing/responding with the server.
The plugin maintains a list of remote clients (at the server level - zoning is not done yet) when you join the server the dll will parse the CL_LIST message, and it will maintain the list when receiving subsequent CL_JOIN or CL_EXIT messages. You can use ezs_GetSCCount, ezs_GetSCNickByIndex, and ezs_GetSCIDByNick to locally store (in dbp runtime) information about remotely connected clients on the server.
ezs_GetSCCount() returns the upper count of the client list (1 based count, not 0), so you could build a loop on this value and then use ezs_GetSCNickByIndex to return the currently connected Nicknames.
I will try and work up a doc and some dbp examples, but in the meantime hopefully someone can give it a go