Kodi Community Forum
JSON RPC Server-side (XBMC) Announcements - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32)
+--- Forum: Kodi Application (https://forum.kodi.tv/forumdisplay.php?fid=93)
+---- Forum: JSON-RPC (https://forum.kodi.tv/forumdisplay.php?fid=174)
+---- Thread: JSON RPC Server-side (XBMC) Announcements (/showthread.php?tid=102878)



JSON RPC Server-side (XBMC) Announcements - prono - 2011-06-04

Hi All,

I'm writing an application that connects to XBMC over TCP, port 9090. When the application is stopped I get a 'System.ApplicationStop' message. Is there a list of announcements that XBMC can send?

Thanks.


- topfs2 - 2011-06-04

Not really, Dharma send quite few announcement really, Eden will be a lot more chatty however.

Best is to download the sources and do:
Code:
git grep CAnnouncementManager::Announce

Current git (which doesn't reflect dharma or eden but something) gives:
Code:
xbmc/Application.cpp:    CAnnouncementManager::Announce(System, "xbmc", "ApplicationStop");
xbmc/Application.cpp:  CAnnouncementManager::Announce(Player, "xbmc", "PlaybackEnded");
xbmc/Application.cpp:  CAnnouncementManager::Announce(Player, "xbmc", "PlaybackStarted", m_itemCurrentFile);
xbmc/Application.cpp:  CAnnouncementManager::Announce(Player, "xbmc", "QueueNextItem");
xbmc/Application.cpp:  CAnnouncementManager::Announce(Player, "xbmc", "PlaybackStopped", m_itemCurrentFile);
xbmc/Application.cpp:  CAnnouncementManager::Announce(Player, "xbmc", "PlaybackPaused", m_itemCurrentFile);
xbmc/Application.cpp:  CAnnouncementManager::Announce(Player, "xbmc", "PlaybackResumed", m_itemCurrentFile);
xbmc/Application.cpp:  CAnnouncementManager::Announce(Player, "xbmc", "PlaybackSpeedChanged", m_itemCurrentFile, param);
xbmc/Application.cpp:  CAnnouncementManager::Announce(Player, "xbmc", "PlaybackSeek", param);
xbmc/Application.cpp:  CAnnouncementManager::Announce(Player, "xbmc", "PlaybackSeekChapter", param);
xbmc/interfaces/AnnouncementManager.cpp:void CAnnouncementManager::Announce(EAnnouncementFlag flag, const char *sender, const char *message)
xbmc/interfaces/AnnouncementManager.cpp:void CAnnouncementManager::Announce(EAnnouncementFlag flag, const char *sender, const char *message, CVariant &data)
xbmc/interfaces/AnnouncementManager.cpp:void CAnnouncementManager::Announce(EAnnouncementFlag flag, const char *sender, const char *message, CFileItemPtr item)
xbmc/interfaces/AnnouncementManager.cpp:void CAnnouncementManager::Announce(EAnnouncementFlag flag, const char *sender, const char *message, CFileItemPtr item, CVariant &data)
xbmc/interfaces/json-rpc/JSONRPC.cpp:    CAnnouncementManager::Announce(Other, parameterObject["sender"].asString().c_str(),  
xbmc/interfaces/json-rpc/JSONRPC.cpp:    CAnnouncementManager::Announce(Other, parameterObject["sender"].asString().c_str(),  
xbmc/music/MusicDatabase.cpp:  ANNOUNCEMENT::CAnnouncementManager::Announce(ANNOUNCEMENT::AudioLibrary, "xbmc", "RemoveAudio", data);
xbmc/music/MusicDatabase.cpp:  ANNOUNCEMENT::CAnnouncementManager::Announce(ANNOUNCEMENT::AudioLibrary, "xbmc", "UpdateAudio", data);
xbmc/powermanagement/PowerManager.cpp:    CAnnouncementManager::Announce(System, "xbmc", "Shutdown");
xbmc/powermanagement/PowerManager.cpp:    CAnnouncementManager::Announce(System, "xbmc", "Suspend");
xbmc/powermanagement/PowerManager.cpp:    CAnnouncementManager::Announce(System, "xbmc", "Hibernate");
xbmc/powermanagement/PowerManager.cpp:    CAnnouncementManager::Announce(System, "xbmc", "Reboot");
xbmc/powermanagement/PowerManager.cpp:  CAnnouncementManager::Announce(System, "xbmc", "Sleep");
xbmc/powermanagement/PowerManager.cpp:  CAnnouncementManager::Announce(System, "xbmc", "Wake");
xbmc/powermanagement/PowerManager.cpp:  CAnnouncementManager::Announce(System, "xbmc", "LowBattery");
xbmc/video/VideoDatabase.cpp:    ANNOUNCEMENT::CAnnouncementManager::Announce(ANNOUNCEMENT::VideoLibrary, "xbmc", "NewPlayCount", CFileItemPtr(new CFileItem(item)), data);
xbmc/video/VideoDatabase.cpp:  ANNOUNCEMENT::CAnnouncementManager::Announce(ANNOUNCEMENT::VideoLibrary, "xbmc", "RemoveVideo", data);
xbmc/video/VideoDatabase.cpp:  ANNOUNCEMENT::CAnnouncementManager::Announce(ANNOUNCEMENT::VideoLibrary, "xbmc", "UpdateVideo", data);

We do hope to have announcements covered in introspect at some point, perhaps eden or eden+1