From 11e7bafaa26c2667fca0145f7f0ae798beb8bb0a Mon Sep 17 00:00:00 2001 From: atraczyk <andreastraczyk@gmail.com> Date: Wed, 5 Oct 2016 13:08:08 -0400 Subject: [PATCH] videocall: use sendTextMessage during video-call - adds the use of SIP messages when in a call Change-Id: Iff4cd42ac33e511d3371523ee2d909d6a3a8e2f5 Tuleap: #1206 --- RingD.cpp | 29 +++++++++++++++++++++++++++++ RingD.h | 1 + VideoPage.xaml.cpp | 2 +- 3 files changed, 31 insertions(+), 1 deletion(-) diff --git a/RingD.cpp b/RingD.cpp index 0e6249f..fe284c6 100644 --- a/RingD.cpp +++ b/RingD.cpp @@ -98,6 +98,35 @@ void RingClientUWP::RingD::sendAccountTextMessage(String^ message) } } +// send message during video call +void RingClientUWP::RingD::sendSIPTextMessage(String^ message) +{ + /* account id */ + auto accountId = AccountsViewModel::instance->selectedAccount->accountID_; + std::wstring accountId2(accountId->Begin()); + std::string accountId3(accountId2.begin(), accountId2.end()); + + /* call */ + auto item = SmartPanelItemsViewModel::instance->_selectedItem; + auto callId = item->_callId; + std::wstring callId2(callId->Begin()); + std::string callId3(callId2.begin(), callId2.end()); + + /* recipient */ + auto contact = item->_contact; + + /* payload(s) */ + std::wstring message2(message->Begin()); + std::string message3(message2.begin(), message2.end()); + std::map<std::string, std::string> payloads; + payloads["text/plain"] = message3; + + /* daemon */ + DRing::sendTextMessage(callId3, payloads, accountId3, true /*not used*/); + contact->_conversation->addMessage(""/* date not yet used*/, MSG_FROM_ME, message); + contact->saveConversationToFile(); +} + void RingD::createRINGAccount(String^ alias) { diff --git a/RingD.h b/RingD.h index b8177bc..d8991f1 100644 --- a/RingD.h +++ b/RingD.h @@ -76,6 +76,7 @@ internal: void startDaemon(); void reloadAccountList(); void sendAccountTextMessage(String^ message); + void sendSIPTextMessage(String^ message); void createRINGAccount(String^ alias); void createSIPAccount(String^ alias); void refuseIncommingCall(String^ call); diff --git a/VideoPage.xaml.cpp b/VideoPage.xaml.cpp index 1d44ac6..f6f5f54 100644 --- a/VideoPage.xaml.cpp +++ b/VideoPage.xaml.cpp @@ -186,7 +186,7 @@ RingClientUWP::Views::VideoPage::sendMessage() if (!contact || txt->IsEmpty()) return; - RingD::instance->sendAccountTextMessage(txt); + RingD::instance->sendSIPTextMessage(txt); scrollDown(); } -- GitLab