I was researching this topic and I found that there was an answer in StackOverflow in 2013. It uses "send dialog" api of Facebook.
However it couldn't send automated/pre-filled message on behalf of the user. Is it still true now as of Oct. 2015?
Another similar question was asked here in 2012.