This page discusses ProtocolPluginId.


Using <pluginName>_<ownerIdNum> is a good idea. If this pair is used as section key we don't need to save the protocol for every user in users.conf. My suggestion is the following:

owner.conf
==========
[owners]
NumOfOwner = 2
Owner1.ID = 123456
Owner1.Protocol = ICQ
Owner2.ID = 123@hotmail.com
Owner2.Protocol = MSN

[ICQ_123456]
Password = very_secret
Alias = ...
...

[MSN_123@hotmail.com]
Password = very_secret
Alias = ...
...


users.conf
==========
[ICQ_123456]
NumOfUsers = 2
User1 = 654321
User2 = 615243

[MSN_123@hotmail.com]
NumOfUsers = 1
User1 = hot@hotmail.com

In that way we only have a problem when a squared bracket is part of the user ID. Maybe we cut or replace this bracket before the entries in the conf files were read or written.

After a short discussion we decided to use XML for the configuration files. As XML Parser in licq the parser expat (http://expat.sourceforge.net/) can be used. It's small and fast.

TODO: If you can make an xml file out of the above config files then do it and post the result here.