summaryrefslogtreecommitdiff
path: root/daemon/watchcommands.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'daemon/watchcommands.cpp')
-rw-r--r--daemon/watchcommands.cpp35
1 files changed, 25 insertions, 10 deletions
diff --git a/daemon/watchcommands.cpp b/daemon/watchcommands.cpp
index 40f8963..7fc84fc 100644
--- a/daemon/watchcommands.cpp
+++ b/daemon/watchcommands.cpp
@@ -4,19 +4,34 @@ using namespace watch;
WatchCommands::WatchCommands(WatchConnector *watch, QObject *parent) :
QObject(parent), watch(watch)
-{
- connect(watch, SIGNAL(messageDecoded(uint,uint,QByteArray)), SLOT(processMessage(uint,uint,QByteArray)));
-}
+{}
void WatchCommands::processMessage(uint endpoint, uint datalen, QByteArray data)
{
- if (endpoint == WatchConnector::watchPHONE_CONTROL) {
- if (data.length() >= 5) {
- if (data.at(4) == WatchConnector::callHANGUP) {
- emit hangup();
- }
- }
- } else if (endpoint == WatchConnector::watchPHONE_VERSION) {
+ logger()->debug() << __FUNCTION__ << endpoint << "/" << data.length();
+ switch (endpoint) {
+ case WatchConnector::watchPHONE_VERSION:
watch->sendPhoneVersion();
+ break;
+ case WatchConnector::watchPHONE_CONTROL:
+ if (data.length() >= 5 && data.at(4) == WatchConnector::callHANGUP) {
+ emit hangup();
+ }
+ break;
+ case WatchConnector::watchMUSIC_CONTROL:
+ logger()->debug() << "MUSIC_CONTROL" << data.toHex();
+ break;
+
+ default:
+ logger()->info() << __FUNCTION__ << "endpoint" << endpoint << "not supported yet";
}
}
+
+void WatchCommands::onMprisMetadataChanged(QVariantMap metadata)
+{
+ QString track = metadata.value("xesam:title").toString();
+ QString album = metadata.value("xesam:album").toString();
+ QString artist = metadata.value("xesam:artist").toString();
+ logger()->debug() << __FUNCTION__ << track << album << artist;
+ watch->sendMusicNowPlaying(track, album, artist);
+}