Yes, that should not be a problem. We designed our system to not deploy a publish key to most subscriber since they use JS. Once your publish key is out there, you'll be susceptible to messages you don't want on PubNub.
Yes PubNub is engineered to support publish and subscribe from different languages. We have many customers doing this in production today! The secret is using a common message format. PubNub uses JSON.
As long as you publish in JSON and expect the return in JSON too, everything will work fine cross platform.