def application_key(self): """Your libspotify application key. Must be a bytestring. Alternatively, you can call :meth:`load_application_key_file`, and pyspotify will correctly read the file into :attr:`application_key`. """ return utils.to_bytes_or_none( ffi.cast('char *', self._sp_session_config.application_key))
def application_key(self): """Your libspotify application key. Must be a bytestring. Alternatively, you can set :attr:`application_key_filename`, and pyspotify will read the file and use it instead of :attr:`application_key`. """ return utils.to_bytes_or_none( ffi.cast('char *', self._sp_session_config.application_key))
def application_key(self, value): if value is None: size = 0 else: size = len(value) assert size in (0, 321), ( 'Invalid application key; expected 321 bytes, got %d bytes' % size) self._application_key = utils.to_char_or_null(value) self._sp_session_config.application_key = ffi.cast( 'void *', self._application_key) self._sp_session_config.application_key_size = size
def subscribers(self): """The canonical usernames of up to 500 of the subscribers of the playlist. May be empty until you call :meth:`update_subscribers` and the :attr:`~PlaylistEvent.SUBSCRIBERS_CHANGED` event is emitted from the playlist. """ sp_subscribers = ffi.gc(lib.sp_playlist_subscribers(self._sp_playlist), lib.sp_playlist_subscribers_free) # The ``subscribers`` field is ``char *[1]`` according to the struct, # so we must cast it to ``char **`` to be able to access more than the # first subscriber. subscribers = ffi.cast('char **', sp_subscribers.subscribers) usernames = [] for i in range(sp_subscribers.count): usernames.append(utils.to_unicode(subscribers[i])) return usernames
def subscribers(self): """The canonical usernames of up to 500 of the subscribers of the playlist. May be empty until you call :meth:`update_subscribers` and the :attr:`~PlaylistEvent.SUBSCRIBERS_CHANGED` event is emitted from the playlist. """ sp_subscribers = ffi.gc( lib.sp_playlist_subscribers(self._sp_playlist), lib.sp_playlist_subscribers_free) # The ``subscribers`` field is ``char *[1]`` according to the struct, # so we must cast it to ``char **`` to be able to access more than the # first subscriber. subscribers = ffi.cast('char **', sp_subscribers.subscribers) usernames = [] for i in range(sp_subscribers.count): usernames.append(utils.to_unicode(subscribers[i])) return usernames