With the publish-subscribe model of nostr, that could only be possible if each message is using different public keys. We can’t have a protocol that is open as well as closed at the same time.
Discussion
What if you open communication channels with other pub keys? or events are bundles and mixed?
What does it mean to open communication channel? Everything is an event. We may have a second layer protocol that mimics a channel but underneath it must communicated as events and that can be tracked.
Other softwares like keet.io might be more appropriate since they are strictly peer to peer.