110 Communication (
const std::string &name,
const std::string &pass,
const std::string &prox,
Bruce Schneier's Blowfish Encryption.
Definition: blowfish.h:12
Definition: httpclient.h:20
Pandora communication class.
Definition: pandoracomm.h:73
JSONProtocolParameters protocol
Definition: pandoracomm.h:82
std::string username
Definition: pandoracomm.h:84
State state
Definition: pandoracomm.h:100
BlowFish encryptor
Definition: pandoracomm.h:103
HttpClient http_client
Definition: pandoracomm.h:102
std::string password
Definition: pandoracomm.h:85
const bool automatic_protocol_parameters
Definition: pandoracomm.h:83
Status performRequest(Request &request)
Perform an API request.
Definition: pandoracomm.cpp:163
Status execute(Request &request, bool retry_if_auth_required=true)
Execute an HTTP request.
Definition: pandoracomm.cpp:309
time_t session_expiration
Time at which session expires from inactivity.
Definition: pandoracomm.h:96
BlowFish decryptor
Definition: pandoracomm.h:104
std::string user_auth_token
Authorization token, retrieved during login.
Definition: pandoracomm.h:90
std::string listener_id
Definition: pandoracomm.h:91
Status partnerAuthenticate()
Authenticate with Pandora.
Definition: pandoracomm.cpp:266
Communication(const std::string &name, const std::string &pass, const std::string &prox, const JSONProtocolParameters &proto_params)
Construct a new communicator given the user's name and password, and an optional proxy server.
Definition: pandoracomm.cpp:146
void restore(const Parsnip::Data &data)
Restore communication settings.
Definition: pandoracomm.cpp:401
std::string proxy
Definition: pandoracomm.h:86
time_t retryTime() const
Definition: pandoracomm.h:119
time_t lockout_until
Time until which communications are blocked/automatically fail.
Definition: pandoracomm.h:95
Status authenticate()
Authenticate with Pandora.
Definition: pandoracomm.cpp:283
UserFeatures features
User capabilities, retrieved from login response.
Definition: pandoracomm.h:98
void resetState()
Definition: pandoracomm.cpp:293
std::string partner_auth_token
Partner authorization token, for JSON protocol.
Definition: pandoracomm.h:88
const time_t sessionExpires() const
Definition: pandoracomm.h:128
State
Definition: pandoracomm.h:75
@ Initialized
Partner login not yet performed.
@ Authenticated
Partner login complete, user not yet authenticated.
int sequential_failures
Number of failed transactions without successes.
Definition: pandoracomm.h:94
Parsnip::Data persist() const
Persist communication settings.
Definition: pandoracomm.cpp:395
time_t synctime_offset
Definition: pandoracomm.h:92
std::string partner_id
Definition: pandoracomm.h:89
const time_t offlineUntil() const
Definition: pandoracomm.h:125
const UserFeatures & getFeatures() const
Definition: pandoracomm.h:122
const bool isFailed() const
Definition: pandoracomm.h:131
Pandora request class.
Definition: pandoramessages.h:39
Definition: pandoracomm.h:57
bool hifi_audio_encoding
Definition: pandoracomm.h:65
int max_stations
Definition: pandoracomm.h:62
int station_skip_limit
Definition: pandoracomm.h:61
int daily_skip_limit
Definition: pandoracomm.h:60
bool replays
Definition: pandoracomm.h:64
bool adverts
Definition: pandoracomm.h:63
int inactivity_timeout
Definition: pandoracomm.h:59
bool is_subscriber
Definition: pandoracomm.h:66
Generic data type.
Definition: parsnip.h:81
HTTP client request provider.
Debug/event logging interface.
Pandora source, player and related datatype specializations.
Definition: pandora.h:32
Status
Communication completion statuses.
Definition: pandoracomm.h:27
@ InvalidPandoraCredentials
@ SharedStationNotMutable
@ PandoraSubscriptionExpired
@ PlaylistRequestsExceeded
const std::string status_strerror(Status status)
Return a string corresponding to a Pandora communication status.
Definition: pandoracomm.cpp:54
Definition: pandoraparameters.h:18