summaryrefslogtreecommitdiff
path: root/agents/musicconn.h
diff options
context:
space:
mode:
Diffstat (limited to 'agents/musicconn.h')
-rw-r--r--agents/musicconn.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/agents/musicconn.h b/agents/musicconn.h
new file mode 100644
index 0000000..3cee914
--- /dev/null
+++ b/agents/musicconn.h
@@ -0,0 +1,35 @@
+#ifndef MUSICCONN_H
+#define MUSICCONN_H
+
+#include <QtCore/QObject>
+#include "sapconnection.h"
+#include "sapsocket.h"
+
+class MusicConn : public QObject
+{
+ Q_OBJECT
+
+public:
+ MusicConn(SAPConnection *conn, QObject *parent = 0);
+
+protected:
+ static QString encodeAlbumArt(const QString &albumArt);
+
+private:
+ void sendMessage(const QJsonObject &msg);
+ void handleMessage(const QJsonObject &msg);
+
+ void sendResponse(const QString &id, const QString &result, int reason);
+ void sendMediaChangedInd();
+
+private slots:
+ void handleConnected();
+ void handleMessageReceived();
+ void handleMetadataChanged();
+
+private:
+ SAPConnection *_conn;
+ SAPSocket *_socket;
+};
+
+#endif // MUSICCONN_H