Locking the functionality down to a custom content type which is not defined in the module itself seems like a bad idea if we go for loosely coupled components.

I know ding_campaign_ctype is a dependency but still.