Why do the Indians have dots on their foreheads?

This needs long discussion but in short, Indian rather Hindu believe that the soul stays in the middle of the forehead so considering soul as a representative of God, Hindu put 'Teeka' on the forehead as a mark of respect or worship.