static PyObject * User_canonical_name(User * self) { const char *s = sp_user_canonical_name(self->_user); return PyUnicode_FromString(s); }
static PyObject * User_str(PyObject *self) { User *a = (User *) self; const char *s = sp_user_canonical_name(a->_user); return PyUnicode_FromString(s); }
static PyObject * Session_username(PyObject *self) { sp_user *user = sp_session_user(Session_SP_SESSION(self)); if (user == NULL) { PyErr_SetString(SpotifyError, "Not logged in"); return NULL; } return PyUnicode_FromString(sp_user_canonical_name(user)); };
gboolean get_username(gchar** username){ if(sp_session_user(g_session)){ *username = g_strdup((gchar*)sp_user_canonical_name(sp_session_user(g_session))); return TRUE; } else{ *username = g_strdup("No user"); return FALSE; } }
static PyObject *Session_username(Session *self) { sp_user *user; user = sp_session_user(self->_session); if(user == NULL) { PyErr_SetString(SpotifyError, "no user returned from session"); return NULL; } const char *username = sp_user_canonical_name(user); return PyString_FromString(username); };
sp_playlist * sp_session_starred_create(sp_session *session) { if (sp_session_connectionstate(session) != SP_CONNECTION_STATE_LOGGED_IN) { return NULL; } return sp_session_starred_for_user_create(session, sp_user_canonical_name(session->user)); }
QSpotifyUser::QSpotifyUser(sp_user *user) : QSpotifyObject(true) { Q_ASSERT(user); sp_user_add_ref(user); m_sp_user = user; m_canonicalName = QString::fromUtf8(sp_user_canonical_name(m_sp_user)); connect(this, SIGNAL(dataChanged()), this, SIGNAL(userDataChanged())); }
/** credentialsBlobUpdated callback from login when we get the blob, used instead of plain password will send blob to application to storage @note its up the the application to store it @note2: it will be fired more than once, always store latest blob @note3: if user have no cache, it will fire once, if cache it will (maybe) update current blob **/ void SpotifySession::credentialsBlobUpdated(sp_session *session, const char *blob) { SpotifySession* _session = reinterpret_cast<SpotifySession*>(sp_session_userdata(session)); #if SPOTIFY_API_VERSION >= 12 const char* username = sp_session_user_name( session ); #else const char* username = sp_user_canonical_name( sp_session_user( session ) ); #endif _session->m_blob = QByteArray(blob); qDebug() << " ==== Got blob update for " << QString::fromUtf8(username, strlen(username) ) << " ==== "; emit _session->blobUpdated( username, QByteArray(blob).constData() ); }
bool QSpotifyUser::updateData() { QString canonicalName = QString::fromUtf8(sp_user_canonical_name(m_sp_user)); QString displayName = QString::fromUtf8(sp_user_display_name(m_sp_user)); bool updated = false; if (m_canonicalName != canonicalName) { m_canonicalName = canonicalName; updated = true; } if (m_displayName != displayName) { m_displayName = displayName; updated = true; } return updated; }
static void spotify_cb_logged_in (sp_session *spotify_session, sp_error error) { if (SP_ERROR_OK != error) { GST_CAT_ERROR_OBJECT (gst_spot_src_debug_cb, ugly_spot, "Failed to log in to Spotify: %s", sp_error_message (error)); return; } sp_user *me = sp_session_user (spotify_session); const char *my_name = (sp_user_is_loaded (me) ? sp_user_display_name (me) : sp_user_canonical_name (me)); GST_CAT_DEBUG_OBJECT (gst_spot_src_debug_cb, ugly_spot, "Logged_in callback, user=%s", my_name); /* set default bitrate to audiofility */ sp_session_preferred_bitrate(spotify_session, SP_BITRATE_320k); GST_SPOT_SRC_LOGGED_IN (ugly_spot) = TRUE; }
/** * This callback is called when an attempt to login has succeeded or failed. * * @sa sp_session_callbacks#logged_in */ static void logged_in(sp_session *session, sp_error error) { sp_user *me; const char *my_name; if (SP_ERROR_OK != error) { fprintf(stderr, "failed to log in to Spotify: %s\n", sp_error_message(error)); sp_session_release(session); exit(4); } // Let us print the nice message... me = sp_session_user(session); my_name = (sp_user_is_loaded(me) ? sp_user_display_name(me) : sp_user_canonical_name(me)); fprintf(stderr, "Logged in to Spotify as user %s\n", my_name); }
void SpotifyUser::updateData() { bool updated = false; QString canonicalName = QString::fromUtf8(sp_user_canonical_name(m_spUser)); QString displayName = QString::fromUtf8(sp_user_display_name(m_spUser)); bool loaded = sp_user_is_loaded(m_spUser); if(exchange(canonicalName, m_canonicalName)) { updated = true; } if(exchange(displayName, m_displayName)) { updated = true; } if(exchange(m_loaded, loaded)) { updated = true; } }
/** * This callback is called when an attempt to login has succeeded or failed. * * @sa sp_session_callbacks#logged_in */ static void logged_in(sp_session *session, sp_error error) { sp_user *me; const char *my_name; if (SP_ERROR_OK != error) { fprintf(stderr, "failed to log in to Spotify: %s\n", sp_error_message(error)); sp_session_release(session); exit(4); } // Let us print the nice message... me = sp_session_user(session); my_name = (sp_user_is_loaded(me) ? sp_user_display_name(me) : sp_user_canonical_name(me)); fprintf(stderr, "Logged in to Spotify as user %s\n", my_name); sp_playlist *pl = sp_playlist_create(session, sp_link_create_from_string("spotify:user:devnevyn:playlist:44ZXlJstDZrwuQvWPOo7KX")); empty_callbacks.playlist_state_changed = foo; sp_playlist_add_callbacks(pl, &empty_callbacks, NULL); }
static void sess_callback_logged_in(sp_session *session, sp_error error) { sp_user *user; if(error != SP_ERROR_OK) { syslog(LOG_ERR, "Session: Login failed with error: %s", sp_error_message(error)); /* The logout callback is called automatically in libspotify 12 */ return; } user = sp_session_user(session); if(user != NULL) { syslog(LOG_INFO, "Session: Successfully logged in as user %s <%s>", sp_user_display_name(user), sp_user_canonical_name(user)); } /* No point in sharing usage from this program */ syslog(LOG_DEBUG, "Session: enabling private listening mode"); sp_session_set_private_session(session, 1); /* Notify app of login to hook up rootlist callbacks */ app_post_event(APP_LOGGED_IN); }
/** * This callback is called when an attempt to login has succeeded or failed. * * @sa sp_session_callbacks#logged_in */ static void logged_in(sp_session *session, sp_error error) { sp_user *me; const char *my_name; if (SP_ERROR_OK != error) { fprintf(stderr, "failed to log in to Spotify: %s\n", sp_error_message(error)); exit(4); } // Let us print the nice message... me = sp_session_user(session); my_name = (sp_user_is_loaded(me) ? sp_user_display_name(me) : sp_user_canonical_name(me)); fprintf(stderr, "Logged in to Spotify as user %s\n", my_name); // Below are parts related to the playlist manager // error == OK is true by now. logged_in_playlist(session); start_prompt(); }
JNIEXPORT jobject JNICALL Java_jahspotify_impl_JahSpotifyImpl_retrieveUser (JNIEnv *env, jobject obj) { sp_user *user = sp_session_user(g_sess); const char *value = NULL; int country = 0; while (!sp_user_is_loaded(user)) { fprintf ( stderr, "jahspotify::Java_jahspotify_impl_JahSpotifyImpl_retrieveUser: waiting for user to load\n" ); sleep(1); } jclass jClass = (*env)->FindClass(env, "jahspotify/media/User"); if (jClass == NULL) { fprintf(stderr,"jahspotify::Java_jahspotify_impl_JahSpotifyImpl_retrieveUser: could not load jahnotify.media.User\n"); return NULL; } jobject userInstance = (*env)->AllocObject(env,jClass); if (!userInstance) { fprintf(stderr,"jahspotify::Java_jahspotify_impl_JahSpotifyImpl_retrieveUser: could not create instance of jahspotify.media.User\n"); return NULL; } while (!sp_user_is_loaded(user)) { sleep(1); } if (sp_user_is_loaded(user)) { fprintf ( stderr, "jahspotify::Java_jahspotify_impl_JahSpotifyImpl_retrieveUser: user is loaded\n" ); value = sp_user_full_name(user); if (value) { setObjectStringField(env,userInstance,"fullName",value); } value = sp_user_canonical_name(user); if (value) { setObjectStringField(env,userInstance,"userName",value); } value = sp_user_display_name(user); if (value) { setObjectStringField(env,userInstance,"displayName",value); } value = sp_user_picture(user); if (value) { setObjectStringField(env,userInstance,"imageURL",value); } // Country encoded in an integer 'SE' = 'S' << 8 | 'E' country = sp_session_user_country(g_sess); char countryStr[] = " "; countryStr[0] = (byte)(country >> 8); countryStr[1] = (byte)country; setObjectStringField(env,userInstance,"country",countryStr); return userInstance; } return NULL; }