I am starting my Firefox with the "-start-debugger-server" parameter. My websocket is connected to the browser. I am sending this content "{ "to":"root", "type":"getProcess" }" to firefox.
With the version 69 of Firefox I was getting this result :
{"form":{"actor":"server1.conn0.parentProcessTarget19","traits":{"isBrowsingContext":true},"url":"chrome://browser/content/browser.xhtml","outerWindowID":1,"consoleActor":"server1.conn0.consoleActor20","inspectorActor":"server1.conn0.inspectorActor21","styleSheetsActor":"server1.conn0.styleSheetsActor22","storageActor":"server1.conn0.storageActor23","memoryActor":"server1.conn0.memoryActor24","framerateActor":"server1.conn0.framerateActor25","reflowActor":"server1.conn0.reflowActor26","cssPropertiesActor":"server1.conn0.cssPropertiesActor27","performanceActor":"server1.conn0.performanceActor28","animationsActor":"server1.conn0.animationsActor29","promisesActor":"server1.conn0.promisesActor30","emulationActor":"server1.conn0.emulationActor31","webExtensionInspectedWindowActor":"server1.conn0.webExtensionInspectedWindowActor32","accessibilityActor":"server1.conn0.accessibilityActor33","screenshotActor":"server1.conn0.screenshotActor34","changesActor":"server1.conn0.changesActor35","webSocketActor":"server1.conn0.webSocketActor36"},"from":"root"}
As you can see, the consoleActor value is "server1.conn0.consoleActor20".
But now with the version 70 of Firefox the reply is only :
{"form":{"actor":"server1.conn0.processDescriptor1","id":0,"isParent":true},"from":"root"}
A lot of information are missing. I am unable to get the consoleActor with version 70. How can I get the consoleActor from "root" ? Do I now need to make other requests before the "getProcess" ? Where can I get the full list of "type" that can be send to "root" ?
I found the solution. The consoleActor is now given by the ProcessDescriptor once you call "getTarget" on it.
I haven't found any documentation about those changes. To get the list of all the types available for an actor you can call the "requestTypes" on the actor. The "protocolDescription" could also be useful.