From 1713ef9a05cdbda684a045af1ffa96aff86fd7b4 Mon Sep 17 00:00:00 2001 From: Erik Kundiman Date: Fri, 30 Aug 2024 15:18:30 +0800 Subject: Custom channel stream notif sent as if from viewer As if it was the user typing "/157157 Now playing blabla". --- indra/newview/llviewermedia_streamingaudio.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/indra/newview/llviewermedia_streamingaudio.cpp b/indra/newview/llviewermedia_streamingaudio.cpp index 6e3d84b3bf..0bea3e1db6 100644 --- a/indra/newview/llviewermedia_streamingaudio.cpp +++ b/indra/newview/llviewermedia_streamingaudio.cpp @@ -108,6 +108,8 @@ void LLStreamingAudio_MediaPlugins::update() mMediaPlugin->idle(); } +extern void send_chat_from_viewer(const std::string& utf8_out_text, EChatType type, S32 channel); + int LLStreamingAudio_MediaPlugins::isPlaying() { if (!mMediaPlugin) @@ -120,10 +122,18 @@ int LLStreamingAudio_MediaPlugins::isPlaying() { mTitle = mMediaPlugin->getMediaTitle(); mNowPlaying = nowPlaying; - LLChat chat{llformat("Now playing %s.", nowPlaying.c_str())}; - chat.mFromName = mTitle; - chat.mSourceType = CHAT_SOURCE_SYSTEM; - LLNotificationsUI::LLNotificationManager::instance().onChat(chat, LLSD{}); + auto text = llformat("Now playing %s.", nowPlaying.c_str()); + if (gSavedSettings.getBOOL("StreamNotificationChannelEnabled")) + { + send_chat_from_viewer(text, CHAT_TYPE_NORMAL, gSavedSettings.getS32("StreamNotificationChannel")); + } + else + { + LLChat chat{text}; + chat.mFromName = mTitle; + chat.mSourceType = CHAT_SOURCE_SYSTEM; + LLNotificationsUI::LLNotificationManager::instance().onChat(chat, LLSD{}); + } } switch (status) -- cgit v1.2.3