We are building a custom system for a telecom carrier. This will be a database system which will maintain an unlimited number of ENUM records for both CNAM and LNP query data. The software will run on a Debian Linux platform, but data will be stored in a MS-SQL database on a separate server. We prefer that it be written in PHP but others may be acceptable.
The software must be lightweight and able to support 200 queries per second. It will accept queries from telecom switches in standard ENUM format, will then perform a lookup in the SQL table to find a match, and then if no match is found will perform an ENUM query to a primary outside database provider to get the data, then a secondary if the primary does not return the data. Once received from the SQL table or an outgoing query, the software will respond to the incoming query with the result. If the result came from an outside provider, the software will store the data in the SQL table. The software may be run on multiple hosts connected to the same SQL Server for redundancy.
No security is required for inbound queries; all security is performed by firewalls.
The software must provide a simple way for the carrier to specify the destination of the outgoing queries as well as parameters required (such as domain name) to be sent to each outside provider. There must be separate destinations for primary/secondary CNAM as well as primary/secondary LNP queries.
The software must contain a logging option to permit logging of incoming queries including source IP address and result returned to a separate SQL database which option can be turned on or off.
The carrier will also insert records into the SQL tables separately, and manage entries made by the software. No GUI interface is required; only the servicing of incoming and outgoing queries to and from the SQL database.
Only two tables will be used for data: lnp and cnam. Each table will contain there fields: a primary key for the telephone number, a response field, and a datetime stamp. One table in a separate database will be provided for log entries.
Applicants must be able to show previous proficiency with the ENUM standard and favor will be shown to applicants whose response shows that they have previously designed telecom software.
We will not consider applications if the applicant does not show an understanding of the enum standard. General development experience is not adequate for this project.