This project has a medium/hard level of difficulty and therefore requires an experienced developer to complete the work. Whilst some projects can be completed by aspiring developers this project requires the attention of a skilled professional. Therefore please do not even bid on this project unless you read the complete brief and understand everything from the outset.
All work will be thoroughly tested and payment will not be released until the system works as specified.
The requirement is to have an email enquiry management system. The component will be an administrator based Joomla component written in native Joomla 1.5 format. The component is to be written using modern MVC Joomla component methods and delivered as a complete Joomla installable component (e.g. tarball or zip). The component must perform many functions including the reading, validating, reformatting, distribution and management of email enquiries.
The component will need to read emails from pre-defined pop3/imap mailboxes as they arrive or frequently and then process each one.
For each email the following 4 steps should be taken
1. Validation stage 1
3. Validation stage 2
If the process fails at any point, the information should be saved to the DB and marked for manual intervention. If the process fails at any point, an email should also be sent to the administrator's email address telling them to log in and manage the problem. A user will then log into the admin interface and manually manage any emails that failed the above process.
Apart from the actual processes involved in reading, validating and sending leads, this component requires many interfaces to setup and manage all the records that the system uses in the process. A brief list of interfaces required is listed below: -
• Component Parameters
o This is where component parameters are defined that control how the component works. This includes the administrators email address and any other information required.
• POP3/Imap Mailboxes
o This is where we would enter the pop3/imap mailbox details that drive the lead management system
• Postcode/ZIP Codes
o The ability to add/edit/delete/manage the postcodes/zip codes that are counted as valid.
• Lead types
o The ability to add/edit/delete/manage the types of leads. A lead type is defined by the subject of the email.
• Lead sources
o The ability to add/edit/delete/manage the sources of leads, a lead source is defined by the senders email address.
• Lead mapping
o The ability to map a raw email to the database and save that map as a lead mapping
• Lead management
o The ability to add/edit/delete/manage leads in the system
• Lead clients
o The ability to add/edit/delete/manage clients that receive leads
Each of the above interfaces has much detail, which can be viewed upon request. We have outlined in great detail the interfaces and will provide copies on request.
The process shows all the steps of the lead management system. Each step is defined as a method and performs a certain action in the lead management system. Together these methods process leads and distribute them accordingly.
1) POP3/Imap Method
The LMS will need to be able to read the leads from pre-defined pop3/imap mailboxs
2) Validation stage 1
Each email must be validated using the email sender and subject. If an email does not have a valid source or type, then the email must become an exception.
The email needs to be formatted and inserted into the DB. The original email must be stored too. The emails may be received in many formats so there needs to be a method of mapping a type of lead to the database. The database will include information like name, email, source, date, time, enquiry details etc. If the lead cannot be formatted into the database for any reason then it must become an exception.
4) Validation stage 2
Each lead needs to be validated against certain criteria. This criterion is pre-defined and if a lead does not match this criterion, then the lead must become an exception.
5) Sending the lead
If a lead has passed all validation and formatting, then a client should be found in the database and the information sent to the client's email address.
Exceptions & Lead Management
Exceptions & Leads successfully sent need to be managed by an administrator, so there needs to be an interface where leads can be listed and managed accordingly.
[url removed, login to view]
[url removed, login to view]
Request for Development Conditions:
Any and all inventions, discoveries, developments and innovations conceived by the winning Contractor relative to the duties under this Request for Development shall be the exclusive property of the Company requesting the development; and the winning Contractor hereby assigns all right, title, and interest in the same to the Company requesting the development. Any and all inventions, discoveries, developments and innovations conceived by the Contractor prior to the term of this Agreement and utilized by the Contractor in rendering duties to the Company requesting development are hereby licensed to the Company requesting development for use in its operations and for an infinite duration. This license is non-exclusive, and may be assigned without the Contractor's prior written approval by the Company requesting development to any subsidiary of the Company requesting development.