From 587b17e23b3919377f4f1af08e2a59e8eec69ef6 Mon Sep 17 00:00:00 2001
From: Diva Canto
Date: Wed, 25 May 2011 12:37:37 -0700
Subject: HG: Renamed, shuffled some interfaces around. Move them all to
IHypergridServices.
---
OpenSim/Services/Interfaces/IHypergridServices.cs | 83 +++++++++++++++++++++++
1 file changed, 83 insertions(+)
create mode 100644 OpenSim/Services/Interfaces/IHypergridServices.cs
(limited to 'OpenSim/Services/Interfaces/IHypergridServices.cs')
diff --git a/OpenSim/Services/Interfaces/IHypergridServices.cs b/OpenSim/Services/Interfaces/IHypergridServices.cs
new file mode 100644
index 0000000..3ab6d4f
--- /dev/null
+++ b/OpenSim/Services/Interfaces/IHypergridServices.cs
@@ -0,0 +1,83 @@
+/*
+ * Copyright (c) Contributors, http://opensimulator.org/
+ * See CONTRIBUTORS.TXT for a full list of copyright holders.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * * Neither the name of the OpenSimulator Project nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+using System;
+using System.Net;
+using System.Collections.Generic;
+
+using OpenSim.Framework;
+using OpenMetaverse;
+
+namespace OpenSim.Services.Interfaces
+{
+ public interface IGatekeeperService
+ {
+ bool LinkRegion(string regionDescriptor, out UUID regionID, out ulong regionHandle, out string externalName, out string imageURL, out string reason);
+ GridRegion GetHyperlinkRegion(UUID regionID);
+
+ bool LoginAgent(AgentCircuitData aCircuit, GridRegion destination, out string reason);
+
+ }
+
+ ///
+ /// HG1.5 only
+ ///
+ public interface IUserAgentService
+ {
+ // called by login service only
+ bool LoginAgentToGrid(AgentCircuitData agent, GridRegion gatekeeper, GridRegion finalDestination, IPEndPoint clientIP, out string reason);
+ // called by simulators
+ bool LoginAgentToGrid(AgentCircuitData agent, GridRegion gatekeeper, GridRegion finalDestination, out string reason);
+ void LogoutAgent(UUID userID, UUID sessionID);
+ GridRegion GetHomeRegion(UUID userID, out Vector3 position, out Vector3 lookAt);
+ Dictionary GetServerURLs(UUID userID);
+
+ string LocateUser(UUID userID);
+
+ void StatusNotification(List friends, UUID userID, bool online);
+ List GetOnlineFriends(UUID userID, List friends);
+
+ bool AgentIsComingHome(UUID sessionID, string thisGridExternalName);
+ bool VerifyAgent(UUID sessionID, string token);
+ bool VerifyClient(UUID sessionID, string reportedIP);
+ }
+
+ public interface IInstantMessage
+ {
+ bool IncomingInstantMessage(GridInstantMessage im);
+ bool OutgoingInstantMessage(GridInstantMessage im, string url);
+ }
+ public interface IFriendsSimConnector
+ {
+ bool StatusNotify(UUID userID, UUID friendID, bool online);
+ }
+
+ public interface IInstantMessageSimConnector
+ {
+ bool SendInstantMessage(GridInstantMessage im);
+ }
+}
--
cgit v1.1
From 0c58a9e68074f3593920dc9f2356bbed96416497 Mon Sep 17 00:00:00 2001
From: Diva Canto
Date: Thu, 26 May 2011 10:04:48 -0700
Subject: HG IM in grid mode working fairly well. Unknown target user
references looked back in source user's User Agent service.
---
OpenSim/Services/Interfaces/IHypergridServices.cs | 3 +++
1 file changed, 3 insertions(+)
(limited to 'OpenSim/Services/Interfaces/IHypergridServices.cs')
diff --git a/OpenSim/Services/Interfaces/IHypergridServices.cs b/OpenSim/Services/Interfaces/IHypergridServices.cs
index 3ab6d4f..753c205 100644
--- a/OpenSim/Services/Interfaces/IHypergridServices.cs
+++ b/OpenSim/Services/Interfaces/IHypergridServices.cs
@@ -57,6 +57,9 @@ namespace OpenSim.Services.Interfaces
Dictionary GetServerURLs(UUID userID);
string LocateUser(UUID userID);
+ // Tries to get the universal user identifier for the targetUserId
+ // on behalf of the userID
+ string GetUUI(UUID userID, UUID targetUserID);
void StatusNotification(List friends, UUID userID, bool online);
List GetOnlineFriends(UUID userID, List friends);
--
cgit v1.1
From 4696a9c95eaf87e5cb43cdba008d3f41a949d629 Mon Sep 17 00:00:00 2001
From: Diva Canto
Date: Thu, 2 Jun 2011 08:13:54 -0700
Subject: Bug fix on HG IM.
---
OpenSim/Services/Interfaces/IHypergridServices.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'OpenSim/Services/Interfaces/IHypergridServices.cs')
diff --git a/OpenSim/Services/Interfaces/IHypergridServices.cs b/OpenSim/Services/Interfaces/IHypergridServices.cs
index 753c205..82ec8ce 100644
--- a/OpenSim/Services/Interfaces/IHypergridServices.cs
+++ b/OpenSim/Services/Interfaces/IHypergridServices.cs
@@ -72,7 +72,7 @@ namespace OpenSim.Services.Interfaces
public interface IInstantMessage
{
bool IncomingInstantMessage(GridInstantMessage im);
- bool OutgoingInstantMessage(GridInstantMessage im, string url);
+ bool OutgoingInstantMessage(GridInstantMessage im, string url, bool foreigner);
}
public interface IFriendsSimConnector
{
--
cgit v1.1
From f5d82350bb622baa6f49042882e6c5cb49b24cc0 Mon Sep 17 00:00:00 2001
From: Diva Canto
Date: Tue, 7 Jun 2011 10:51:12 -0700
Subject: This fixes the crash reported in
http://opensimulator.org/mantis/view.php?id=5529 related to sending IMs to
foreign friends who are offline. Hopefully.
---
OpenSim/Services/Interfaces/IHypergridServices.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'OpenSim/Services/Interfaces/IHypergridServices.cs')
diff --git a/OpenSim/Services/Interfaces/IHypergridServices.cs b/OpenSim/Services/Interfaces/IHypergridServices.cs
index 82ec8ce..3c6fedf 100644
--- a/OpenSim/Services/Interfaces/IHypergridServices.cs
+++ b/OpenSim/Services/Interfaces/IHypergridServices.cs
@@ -62,7 +62,7 @@ namespace OpenSim.Services.Interfaces
string GetUUI(UUID userID, UUID targetUserID);
void StatusNotification(List friends, UUID userID, bool online);
- List GetOnlineFriends(UUID userID, List friends);
+ //List GetOnlineFriends(UUID userID, List friends);
bool AgentIsComingHome(UUID sessionID, string thisGridExternalName);
bool VerifyAgent(UUID sessionID, string token);
--
cgit v1.1
From 3307db5d4aedec5cc31541e9a28a95abdd4999d0 Mon Sep 17 00:00:00 2001
From: Diva Canto
Date: Tue, 7 Jun 2011 19:36:04 -0700
Subject: This hopefully fixes all issues with online/offline notifications
across grids. http://opensimulator.org/mantis/view.php?id=5528
---
OpenSim/Services/Interfaces/IHypergridServices.cs | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'OpenSim/Services/Interfaces/IHypergridServices.cs')
diff --git a/OpenSim/Services/Interfaces/IHypergridServices.cs b/OpenSim/Services/Interfaces/IHypergridServices.cs
index 3c6fedf..220caef 100644
--- a/OpenSim/Services/Interfaces/IHypergridServices.cs
+++ b/OpenSim/Services/Interfaces/IHypergridServices.cs
@@ -61,7 +61,8 @@ namespace OpenSim.Services.Interfaces
// on behalf of the userID
string GetUUI(UUID userID, UUID targetUserID);
- void StatusNotification(List friends, UUID userID, bool online);
+ // Returns the local friends online
+ List StatusNotification(List friends, UUID userID, bool online);
//List GetOnlineFriends(UUID userID, List friends);
bool AgentIsComingHome(UUID sessionID, string thisGridExternalName);
--
cgit v1.1