Hello Andy!
But seems like now you allow DMs as long as user give clear indicator/permission:
Quote from :https://support.twitter.com/articles/76915#Direct-Messages
With express user consent, automation of Direct Messaging is permitted. If your application sends or facilitates automated Direct Messages, users must request or otherwise indicate an intent to send or receive Direct Messages in advance. Authenticating into an app is not sufficient user consent.
In efforts to prevent spam and protect our users from potentially malicious activity, we discourage sending links in the body of an automated Direct Message, and the action may be denied.
Which means, if I have an app that sends auto direct message upon new follower, I only need to receive a clear permission from the user only once which could happen during setting up an account.
Regarding permission from a user to receive a DM - there is no way I can control the receiver of my message or send him some sort of invitation to ask him “Hey, user X is sending you DM, would you like to read it?”.