Make sure isDraft is not disabled for non-signed/encrypted messages.
Check class type instead of selector availability.
Always prefer headers of local Frameworks.