After a lot of hours I'm getting close to finishing up a multi tenant interface to asterisk based on the static database. I could use a bit of help in one area if someone would like to contribute. The code will be released under the bsd license. Right now the only part that is not done is the context parsing for dial commands, and of course further testing to weed out bugs. What I need is a perl regex that can parse any dial statement for any channel type and convert the context name to __[username]__[context]__ for all instances. I'm not completely up to speed on all the different variations that a dial command can take with the different channel types, so someone who knows that part better than me could probably do this a lot quicker than I could. A bit more information about this project. It has two parts. The first part is an abstraction layer for the static database to add multi tenant functionality. All additions/updates/deletes to the database are done through a perl module that provides the abstraction layer. Mulitple users can have their own copies of the configuration files and not have to worry about naming collisions with context names. All users can share the [globals] section of extensions.conf. Only administrative users can set variables in sections such as [general], [classes], etc.. On top of the abstraction layer there is also a web interface. You don't need the web interface to use the system, as there is an import script that can import files from the command line. Chris