Looking at ChatKit disassembly, isMadridEnabled is checking caller app bundle identifier. It will return true only if bundle ID equals to com.apple.MobileSMS or com.apple.springboard. So you could try to inject your dylib into springboard in order to send iMessages this way. I don't know for sure but at least isMadridEnabled should return true.
2
Bensge
On
You could also try hooking CKMadridService and return YES always, maybe this will allow you to send messages from within any process
Looking at ChatKit disassembly,
isMadridEnabledis checking caller app bundle identifier. It will return true only if bundle ID equals tocom.apple.MobileSMSorcom.apple.springboard. So you could try to inject your dylib into springboard in order to send iMessages this way. I don't know for sure but at leastisMadridEnabledshould return true.