If by "silent" you mean that no media is received, then you can look at
the timestamp of the last media packet that was received. That
information is exported out via the various stats/query mechanisms.
If by "silent" you mean that media is received but it contains only
silence audio, then that is a bit more difficult as the media needs to
be decoded in order to determine the audio contents. There is some
support for that in scenarios that involve transcoding towards an
endpoint with support for CN, but there's no way to explicitly enable it
just for the sake of silence detection, and also that information is not
exported out anywhere.
And then of course there's no support for "do something" as we don't
have configurable/scriptable triggers or anything of the sort.
Cheers