There is currently no way to allow external users to communicate outside of Chrome without the XHR / WebSockets / SocketAPI or any traditional methods such as image URLs, JavaScript URLs, etc.
If you want to do an enumeration, you can try creating an NPAPI plugin that writes protocol messages to disk / file (for example, how Apache WebServer works) and creates another stand-alone Python script / or any other scripting language that processes this, Thus, your API will basically read this file, which creates the NPAPI extension plugin.
source share