OAuth2 "Stay Logged In", etc

so when you use the access token, and are given a code, that code is valid until they use the app on a different device where it has to re-authenticate. if that is the case, use the refresh token with https://github.com/justintv/Twitch-API/wiki/Password-Credentials-Grant to get a new access_token. If that fails, then you will need them reauthorize through the api, however keep in mind the refresh_token is always the same, even after deactivating/reactivating the program.