When a new version of Kerio is released, I make sure to read the release notes. If it's more than a bug fix, I also review each section of the Administration myself - i need to know about new features and usually I want to at least try them out for myself.
In spite of this, I somehow missed a new feature that was added way back in 2006. I didn't notice it then (or if I did, I promptly forgot all about it!) and didn't find it until this week.
This isn't a commonly used feature - it's the ability to import users from a CSV file. There isn't a lot of use for this: for a handful of users you can just add them through the Admin tools and most folks with large numbers of users are running Microsoft AD or Apple OD - with either of those you can either import users or (more frequently) map Kerio to use the directory service always. But this week I had a customer who wanted to set up a demo with 150 users and they have no AD or OD.
Way back when, I'd write Perl scripts to create Kerio's users.cfg. But when I looked at a current example, I saw new fields. One was troubling: a GUID field attached to each user. How was Kerio generating that and how could I match it if I wanted to create my own users? I had no clue, so I went a-googling and that eventually led me to the Kerio manual pages that I apparently never read:
Chapter 8.9 Import Users covers creating a CSV file to import. The only unusual thing is that Kerio wants ";"'s as delimiters - they won't accept tabs. The other thing you want to watch out for is formatting of the "Fullname" field - you want that to be "Tony Lawrence", not "Lawrence, Tony". Other than that, this is quick and simple.
I screwed up the names on my import and had to go back with "vi" to fix them. I used :%s/Fullname">\(.*\), *\(.*\)</Fullname">\2 \1</ to reverse my mistake (vi to the rescue as usual). Note - when editing Kerio files, you need to stop the server and restart after your changes. I always work on a copy of the file in case I make a mistake.