Great article Eram. I was not aware that supervised approach could be the answer for this problem.
But, I feel that this would be a very domain specific and adding new aspects in future would surely require tuning of data and retraining.
I have also worked on same problem statement but with different approach. Kindly visit and let me know what better could have been done.