Help with sidechannel

I tried following the instructions at the site below. When I click the play button I get the following in console.
Assets/ML-Agents/StringLogSideChannel.cs(14,26): error CS0507: 'StringLogSideChannel.OnMessageReceived(IncomingMessage)': cannot change access modifiers when overriding 'protected' inherited member 'SideChannel.OnMessageReceived(IncomingMessage)'

https://github.com/Unity-Technologies/ml-agents/blob/release_3_distributed/docs/Custom-SideChannels.md

I am using ML agent 1.02 and unity 2019.4.

Is the documentation correct or am I missing something?

In the SideChannel class, the OnMessageReceived method is protected, not public.

Try

protected override void OnMessageReceived

instead of

public override void OnMessageReceived

If that works, then most likely the documentation is incorrect.

Yes that worked. Thank you.

Also for anyone else who gets stumped by this. I had to fix other items too after this. I also had to add

using Unity.MLAgents.SideChannels;

Then in regisiterlogsidechannel
SideChannelManager.RegisterSideChannel(stringChannel);

Changed to

SideChannelsManager.RegisterSideChannel(stringChannel);

In the python code a lot of the unity env calls are no longer valid.
See https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Python-API.md

Can you open an issue for this on GitHub so it can get fixed? https://github.com/Unity-Technologies/ml-agents/issues