Accept a message that was published, process and forward

        Parameters
        ----------
        msg : str
            The message sent over the line

        Notes
        -----
        This method only handles messages where `message_type` is "message".

def on_message(self, msg):
        """Accept a message that was published, process and forward

        Parameters
        ----------
        msg : str
            The message sent over the line

        Notes
        -----
        This method only handles messages where `message_type` is "message".
        """
        if self not in clients:
            return

        try:
            payload = json_decode(msg)
        except ValueError:
            # unable to decode so we cannot handle the message
            return

        if 'close' in payload:
            self.close()
            return

        for verb, args in payload.items():
            self.group.action(verb, args)