Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

[@NaukriEngineering] Inbound Emails for Every Web App: Angle

745 views

Published on

Start receiving emails in your webapp in real time.

Published in: Engineering
  • Be the first to comment

[@NaukriEngineering] Inbound Emails for Every Web App: Angle

  1. 1. - Srikanth & Prabin
  2. 2. What? A system to catch all inbound emails of a domain and attach a webhook to them based on defined patterns and avoid the hassle of creating/reading thousands of email addresses
  3. 3. Why? ● Email is still used very widely ● Providing alternate way of capturing responses from users who shy away from clicking links sent on email ● Linking responses to email directly to business logic without creating actual email ● Assign unique email addresses for every user/job/any other entity without actual email
  4. 4. How? ● Setup mail exchange on AWS using “mailin” ● Configure mx record of “desired domains” to point to server hosting the exchange ● Configure exchange to forward mails to angle api ● Configure angle to define baits for different mail domains ● All incoming mails are directed to the respective application APIs ● Application can handle the mail content as per their business logic
  5. 5. How? Mail Exchange Mail domains: - referralrecruit.com - csm.naukri.com - rmj.naukri.com Bait configurator + Mail sorting + Virus scan + Parsing Api calls to individual apps based on Bait configuration Mail IDs with application defined keys Eg: vfahgs_shdg45sh@referralrecruit.com bsjk_job_123_podjdhs@rmj.naukri.com Junk mails gets discarded
  6. 6. Features 1. Bait configurator 2. Reporting for total replies and successful 3. Support for multiple email domains from single server 4. Multiple patterns for a single domain 5. Independent of application logic
  7. 7. The Application side (e.g: Referral Applies) Referral Introduction: ● Naukri has a referral tool for companies ● Recruiters create referrals to which employees invite applications from their friends through social networks ● Applicants apply to an email like w718-920@referralrecruit.com So how do we intercept the email sent to this non-existent email id and get to know which employee referred this applicant? Here comes the role of Angle,
  8. 8. How to make it work? 1. Generate a reply-to email address consisting of employeeid, jobid and any other information to identify the context. e.g: <employeeid><jobid>rf@referralrecruit.com 2. Set the email as reply to address to the mail sent to employees 3. When employees reply to the email with referral CV, the reply content along with attachments is forwarded to the API specified by referral application 4. The referral application identifies the employeeid and jobid from the email address and creates referral
  9. 9. REFERRAL Referral request Creates unique reply address for each employee and jobs Employee reply to email with friends CV API to Referral with attached CV, reply email address and mail body details
  10. 10. Use Cases ● Email replies on recruiter mails to job seekers. ● Automatic comments to job seeker applies ● Direct referral applies (refer slide-10) ● Calendar invite acceptance statistics Other possible use cases: ● Parsing attachments sent in the mailers, like ID proofs, receipts, invoices etc. ● Getting referrer id from the registration mail of some gaming application, to give extra points to the referrer
  11. 11. Stay tuned on https://engineering.naukri.com

×