diff options
Diffstat (limited to 'linden/indra/newview/llimview.cpp')
-rw-r--r-- | linden/indra/newview/llimview.cpp | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/linden/indra/newview/llimview.cpp b/linden/indra/newview/llimview.cpp index 21d8e1f..10e8ff8 100644 --- a/linden/indra/newview/llimview.cpp +++ b/linden/indra/newview/llimview.cpp | |||
@@ -4,7 +4,7 @@ | |||
4 | * | 4 | * |
5 | * $LicenseInfo:firstyear=2001&license=viewergpl$ | 5 | * $LicenseInfo:firstyear=2001&license=viewergpl$ |
6 | * | 6 | * |
7 | * Copyright (c) 2001-2008, Linden Research, Inc. | 7 | * Copyright (c) 2001-2009, Linden Research, Inc. |
8 | * | 8 | * |
9 | * Second Life Viewer Source Code | 9 | * Second Life Viewer Source Code |
10 | * The source code in this file ("Source Code") is provided by Linden Lab | 10 | * The source code in this file ("Source Code") is provided by Linden Lab |
@@ -267,7 +267,8 @@ public: | |||
267 | EInstantMessage type, | 267 | EInstantMessage type, |
268 | EInvitationType inv_type, | 268 | EInvitationType inv_type, |
269 | const std::string& session_handle, | 269 | const std::string& session_handle, |
270 | const std::string& notify_box) : | 270 | const std::string& notify_box, |
271 | const std::string& session_uri) : | ||
271 | mSessionID(session_id), | 272 | mSessionID(session_id), |
272 | mSessionName(session_name), | 273 | mSessionName(session_name), |
273 | mCallerID(caller_id), | 274 | mCallerID(caller_id), |
@@ -275,7 +276,8 @@ public: | |||
275 | mType(type), | 276 | mType(type), |
276 | mInvType(inv_type), | 277 | mInvType(inv_type), |
277 | mSessionHandle(session_handle), | 278 | mSessionHandle(session_handle), |
278 | mNotifyBox(notify_box) | 279 | mNotifyBox(notify_box), |
280 | mSessionURI(session_uri) | ||
279 | {}; | 281 | {}; |
280 | 282 | ||
281 | LLUUID mSessionID; | 283 | LLUUID mSessionID; |
@@ -286,6 +288,7 @@ public: | |||
286 | EInvitationType mInvType; | 288 | EInvitationType mInvType; |
287 | std::string mSessionHandle; | 289 | std::string mSessionHandle; |
288 | std::string mNotifyBox; | 290 | std::string mNotifyBox; |
291 | std::string mSessionURI; | ||
289 | }; | 292 | }; |
290 | 293 | ||
291 | 294 | ||
@@ -568,7 +571,8 @@ BOOL LLIMMgr::isIMSessionOpen(const LLUUID& uuid) | |||
568 | 571 | ||
569 | LLUUID LLIMMgr::addP2PSession(const std::string& name, | 572 | LLUUID LLIMMgr::addP2PSession(const std::string& name, |
570 | const LLUUID& other_participant_id, | 573 | const LLUUID& other_participant_id, |
571 | const std::string& voice_session_handle) | 574 | const std::string& voice_session_handle, |
575 | const std::string& caller_uri) | ||
572 | { | 576 | { |
573 | LLUUID session_id = addSession(name, IM_NOTHING_SPECIAL, other_participant_id); | 577 | LLUUID session_id = addSession(name, IM_NOTHING_SPECIAL, other_participant_id); |
574 | 578 | ||
@@ -576,7 +580,7 @@ LLUUID LLIMMgr::addP2PSession(const std::string& name, | |||
576 | if(floater) | 580 | if(floater) |
577 | { | 581 | { |
578 | LLVoiceChannelP2P* voice_channelp = (LLVoiceChannelP2P*)floater->getVoiceChannel(); | 582 | LLVoiceChannelP2P* voice_channelp = (LLVoiceChannelP2P*)floater->getVoiceChannel(); |
579 | voice_channelp->setSessionHandle(voice_session_handle); | 583 | voice_channelp->setSessionHandle(voice_session_handle, caller_uri); |
580 | } | 584 | } |
581 | 585 | ||
582 | return session_id; | 586 | return session_id; |
@@ -699,7 +703,8 @@ void LLIMMgr::inviteToSession( | |||
699 | const std::string& caller_name, | 703 | const std::string& caller_name, |
700 | EInstantMessage type, | 704 | EInstantMessage type, |
701 | EInvitationType inv_type, | 705 | EInvitationType inv_type, |
702 | const std::string& session_handle) | 706 | const std::string& session_handle, |
707 | const std::string& session_uri) | ||
703 | { | 708 | { |
704 | //ignore invites from muted residents | 709 | //ignore invites from muted residents |
705 | if (LLMuteList::getInstance()->isMuted(caller_id)) | 710 | if (LLMuteList::getInstance()->isMuted(caller_id)) |
@@ -741,7 +746,8 @@ void LLIMMgr::inviteToSession( | |||
741 | type, | 746 | type, |
742 | inv_type, | 747 | inv_type, |
743 | session_handle, | 748 | session_handle, |
744 | notify_box_type); | 749 | notify_box_type, |
750 | session_uri); | ||
745 | 751 | ||
746 | LLVoiceChannel* channelp = LLVoiceChannel::getChannelByID(session_id); | 752 | LLVoiceChannel* channelp = LLVoiceChannel::getChannelByID(session_id); |
747 | if (channelp && channelp->callStarted()) | 753 | if (channelp && channelp->callStarted()) |
@@ -916,7 +922,8 @@ void LLIMMgr::inviteUserResponse(S32 option, void* user_data) | |||
916 | invitep->mSessionID = gIMMgr->addP2PSession( | 922 | invitep->mSessionID = gIMMgr->addP2PSession( |
917 | invitep->mSessionName, | 923 | invitep->mSessionName, |
918 | invitep->mCallerID, | 924 | invitep->mCallerID, |
919 | invitep->mSessionHandle); | 925 | invitep->mSessionHandle, |
926 | invitep->mSessionURI ); | ||
920 | 927 | ||
921 | LLFloaterIMPanel* im_floater = | 928 | LLFloaterIMPanel* im_floater = |
922 | gIMMgr->findFloaterBySession( | 929 | gIMMgr->findFloaterBySession( |