code: def on_connect(self, connection):
          "Re-subscribe to any channels and patterns previously subscribed to"
          # NOTE: for python3, we can't pass bytestrings as keyword arguments
          # so we need to decode channel/pattern names back to unicode strings
          # before passing them to [p]subscribe.
          self.pending_unsubscribe_channels.clear()
          self.pending_unsubscribe_patterns.clear()
          if self.channels:
              channels = {}
              for k, v in iteritems(self.channels):
                  channels[self.encoder.decode(k, force=True)] = v
              self.subscribe(**channels)
          if self.patterns:
              patterns = {}
              for k, v in iteritems(self.patterns):
                  patterns[self.encoder.decode(k, force=True)] = v
              self.psubscribe(**patternsf on_connect(self, connection):
          "Re-subscribe to any channels and patterns previously subscribed to"
          # NOTE: for python3, we can't pass bytestrings as keyword arguments
          # so we need to decode channel/pattern names back to unicode strings
          # before passing them to [p]subscribe.
          self.pending_unsubscribe_channels.clear()
          self.pending_unsubscribe_patterns.clear()
          if self.channels:
              channels = {}
              for k, v in iteritems(self.channels):
                  channels[self.encoder.decode(k, force=True)] = v
              self.subscribe(**channels)
          if self.patterns:
              patterns = {}
              for k, v in iteritems(self.patterns):
                  patterns[self.encoder.decode(k, force=True)] = v
              self.psubscribe(**patterns)
docs: Re-subscribe to any channels and patterns previously subscribed to