code: def send(self, message):
          
          self.logger.debug('Send message: {}'.format(message))
  
          if self.state == 'pending' or self.state == 'connection_pending':
              self.logger.info('Connection not established. Add message to queue.')
              self.message_queue.append(message)
              return
          elif self.state == 'unsubscribed' or self.state == 'rejected':
              self.logger.warning('Not subscribed! Message discarded.')
              return
  
          data = {
              'command': 'message',
              'identifier': self._identifier_string(),
              'data': message.raw_message()
          }
  
          self.connection.send(data)
docs: Sends data to the server on the
          subscription channel.
  
          :param data: The JSON data to send.