(Knowing Apple's approach to things, I am pretty sure the answer is obvious but I have to ask.)
If you want to provide any examples, just use chat for simplicity.
Obviously, iOSdevice1-> my server-> Apple Push Notification Server-> iOSdevice2
works, but this is nearly the opposite of p2p.
iOSDevice1 -> my server-> iOSDevice2
should work, though the long polling necessary may not clear the App Store arbiters. Still not pure p2p.
But what about iOSDevice1 -> iOSDevice2
? or really... iOSDevice1 -> one-time ip lookup, iOSDevice1 -> iOSDevice2
Interested in implementation details, but also so the rules and regulations imposed by Apple for releasing apps with server capabilities.
I can't see why this scenario - iOSDevice1 -> one-time ip lookup, iOSDevice1 -> iOSDevice2
wouldn't work, assuming that both devices have publicly routeable IP addresses (or are on the same network). I think both of them having publicly routeable addresses is pretty unlikely though.