Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor

avinationmerge
Tom Grimshaw 2010-06-20 14:45:36 -07:00
commit 33d05ef554
11 changed files with 78 additions and 45 deletions

View File

@ -504,7 +504,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
UUID principalID = new UUID(im.fromAgentID); UUID principalID = new UUID(im.fromAgentID);
UUID friendID = new UUID(im.toAgentID); UUID friendID = new UUID(im.toAgentID);
m_log.DebugFormat("[FRIENDS]: {0} offered friendship to {1}", principalID, friendID); m_log.DebugFormat("[FRIENDS]: {0} ({1}) offered friendship to {2}", principalID, im.fromAgentName, friendID);
// This user wants to be friends with the other user. // This user wants to be friends with the other user.
// Let's add the relation backwards, in case the other is not online // Let's add the relation backwards, in case the other is not online
@ -522,6 +522,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
im.imSessionID = im.fromAgentID; im.imSessionID = im.fromAgentID;
// Try the local sim // Try the local sim
UserAccount account = UserAccountService.GetUserAccount(Scene.RegionInfo.ScopeID, agentID);
im.fromAgentName = (account == null) ? "Unknown" : account.FirstName + " " + account.LastName;
if (LocalFriendshipOffered(friendID, im)) if (LocalFriendshipOffered(friendID, im))
return; return;

View File

@ -241,6 +241,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer
im.imSessionID = itemID.Guid; im.imSessionID = itemID.Guid;
} }
im.offline = 1; // Remember these
// Send the IM to the recipient. The item is already // Send the IM to the recipient. The item is already
// in their inventory, so it will not be lost if // in their inventory, so it will not be lost if
// they are offline. // they are offline.

View File

@ -207,13 +207,20 @@ namespace OpenSim.Region.Framework.Scenes
if (p < 0.0f) priority *= 2.0; if (p < 0.0f) priority *= 2.0;
if (entity is SceneObjectPart) if (entity is SceneObjectPart)
{
if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment)
{
priority = 1.0;
}
else
{ {
PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor; PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor;
if (physActor == null || !physActor.IsPhysical) if (physActor == null || !physActor.IsPhysical)
priority += 100; priority += 100;
}
if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment) if (((SceneObjectPart)entity).ParentGroup.RootPart != (SceneObjectPart)entity)
priority = 1.0; priority +=1;
} }
return priority; return priority;
} }

View File

@ -1504,6 +1504,10 @@ namespace OpenSim.Region.Framework.Scenes
DoPhysicsPropertyUpdate(RigidBody, true); DoPhysicsPropertyUpdate(RigidBody, true);
PhysActor.SetVolumeDetect(VolumeDetectActive ? 1 : 0); PhysActor.SetVolumeDetect(VolumeDetectActive ? 1 : 0);
} }
else
{
m_log.DebugFormat("[SPEW]: physics actor is null for {0} with parent {1}", UUID, this.ParentGroup.UUID);
}
} }
} }
} }

View File

@ -1781,6 +1781,7 @@ namespace OpenSim.Region.Physics.OdePlugin
m_log.ErrorFormat("[PHYSICS]: Exception while meshing prim {0}.", primName); m_log.ErrorFormat("[PHYSICS]: Exception while meshing prim {0}.", primName);
m_log.Debug(e.ToString()); m_log.Debug(e.ToString());
mesh = null; mesh = null;
return null;
} }
} }

View File

@ -4232,22 +4232,21 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
UUID uuid = (UUID)id; UUID uuid = (UUID)id;
UserAccount account = World.UserAccountService.GetUserAccount(World.RegionInfo.ScopeID, uuid); UserAccount account = World.UserAccountService.GetUserAccount(World.RegionInfo.ScopeID, uuid);
if (account == null)
return UUID.Zero.ToString();
PresenceInfo pinfo = null; PresenceInfo pinfo = null;
PresenceInfo[] pinfos = World.PresenceService.GetAgents(new string[] { uuid.ToString() }); PresenceInfo[] pinfos = World.PresenceService.GetAgents(new string[] { uuid.ToString() });
if (pinfos != null && pinfos.Length > 0) if (pinfos != null && pinfos.Length > 0)
pinfo = pinfos[0]; pinfo = pinfos[0];
if (pinfo == null)
return UUID.Zero.ToString();
string reply = String.Empty; string reply = String.Empty;
switch (data) switch (data)
{ {
case 1: // DATA_ONLINE (0|1) case 1: // DATA_ONLINE (0|1)
// TODO: implement fetching of this information if (pinfo != null && pinfo.RegionID != UUID.Zero)
if (pinfo != null)
reply = "1"; reply = "1";
else else
reply = "0"; reply = "0";

View File

@ -1,6 +1,8 @@
Welcome to OpenSim! Welcome to OpenSim!
================
=== OVERVIEW === === OVERVIEW ===
================
OpenSim is a BSD Licensed Open Source project to develop a functioning OpenSim is a BSD Licensed Open Source project to develop a functioning
virtual worlds server platform capable of supporting multiple clients virtual worlds server platform capable of supporting multiple clients
@ -10,16 +12,19 @@ C#, and can run under Mono or the Microsoft .NET runtimes.
This is considered an alpha release. Some stuff works, a lot doesn't. This is considered an alpha release. Some stuff works, a lot doesn't.
If it breaks, you get to keep *both* pieces. If it breaks, you get to keep *both* pieces.
=========================
=== Compiling OpenSim === === Compiling OpenSim ===
=========================
Please see BUILDING.txt if you downloaded a source distribution and Please see BUILDING.txt if you downloaded a source distribution and
need to build OpenSim before running it. need to build OpenSim before running it.
==================================
=== Running OpenSim on Windows === === Running OpenSim on Windows ===
==================================
We recommend that you run OpenSim from a command prompt on Windows in order We recommend that you run OpenSim from a command prompt on Windows in order
to capture any errors, though you can also run it by double-clicking to capture any errors.
bin/OpenSim.exe
To run OpenSim from a command prompt To run OpenSim from a command prompt
@ -28,7 +33,9 @@ To run OpenSim from a command prompt
Now see the "Configuring OpenSim" section Now see the "Configuring OpenSim" section
================================
=== Running OpenSim on Linux === === Running OpenSim on Linux ===
================================
You will need Mono >= 2.4.2 to run OpenSim. On some Linux distributions you You will need Mono >= 2.4.2 to run OpenSim. On some Linux distributions you
may need to install additional packages. See http://opensimulator.org/wiki/Dependencies may need to install additional packages. See http://opensimulator.org/wiki/Dependencies
@ -37,48 +44,63 @@ for more information.
To run OpenSim, from the unpacked distribution type: To run OpenSim, from the unpacked distribution type:
* cd bin * cd bin
* mono ./OpenSim.exe * mono OpenSim.exe
Now see the "Configuring OpenSim" section Now see the "Configuring OpenSim" section
===========================
=== Configuring OpenSim === === Configuring OpenSim ===
===========================
When OpenSim starts for the first time, you will be prompted with a When OpenSim starts for the first time, you will be prompted with a
series of questions that look something like: series of questions that look something like:
[09-17 03:54:40] DEFAULT REGION CONFIG: Simulator Name [OpenSim Test]: [09-17 03:54:40] DEFAULT REGION CONFIG: Simulator Name [OpenSim Test]:
At each of these you must provide you own value or just hit enter to For all the options except simulator name, you can safely hit enter to accept
take the default (in this case "OpenSim Test"). the default if you want to connect using a client on the same machine or over
your local network.
YOUR SIM WILL NOT BE STARTED UNTIL YOU ANSWER ALL QUESTIONS You will then be asked "Do you wish to join an existing estate?". If you're
starting OpenSim for the first time then answer no (which is the default) and
provide an estate name.
Shortly afterwards, you will then be asked to enter an estate owner first name,
last name, password and e-mail (which can be left blank). Do not forget these
details, since initially only this account will be able to manage your region
in-world. You can also use these details to perform your first login.
Once you are presented with a prompt that looks like: Once you are presented with a prompt that looks like:
Region# : Region (My region name) #
You have successfully started OpenSim. You have successfully started OpenSim.
Before you can log in you will need to create a user account if you didn't already create If you want to create another user account to login rather than the estate
your user as the "Master Avatar" during the region configuration stage. You can do account, then type "create user" on the OpenSim console and follow the prompts.
this by running the "create user" command on the OpenSim console. This will
ask you a series of questions such as first name, last name and password.
Helpful resources: Helpful resources:
* http://opensimulator.org/wiki/Configuration * http://opensimulator.org/wiki/Configuration
* http://opensimulator.org/wiki/Configuring_Regions * http://opensimulator.org/wiki/Configuring_Regions
* http://opensimulator.org/wiki/Mysql-config
==================================
=== Connecting to your OpenSim === === Connecting to your OpenSim ===
==================================
By default your sim will be running on http://127.0.0.1:9000. To use By default your sim will be available for login on port 9000. You can login by
your OpenSim add -loginuri http://127.0.0.1:9000 to your second life adding -loginuri http://127.0.0.1:9000 to the command that starts Second Life
client (running on the same machine as your OpenSim). To login, use the (e.g. in the Target: box of the client icon properties on Windows). You can
same avatar details that you gave to the "create user" console command. also login using the network IP address of the machine running OpenSim (e.g.
http://192.168.1.2:9000)
To login, use the avatar details that you gave for your estate ownership or the
one you set up using the "create user" command.
===================
=== Bug reports === === Bug reports ===
===================
In the likely event of bugs biting you (err, your OpenSim) we In the very likely event of bugs biting you (err, your OpenSim) we
encourage you to see whether the problem has already been reported on encourage you to see whether the problem has already been reported on
the OpenSim mantis system. You can find the OpenSim mantis system at the OpenSim mantis system. You can find the OpenSim mantis system at
@ -97,11 +119,12 @@ mantis"). Useful information to include:
mono --debug OpenSim.exe mono --debug OpenSim.exe
===================================
=== More Information on OpenSim === === More Information on OpenSim ===
===================================
More extensive information on building, running, and configuring More extensive information on building, running, and configuring
OpenSim, as well as how to report bugs, and participate in the OpenSim OpenSim, as well as how to report bugs, and participate in the OpenSim
project can always be found at http://opensimulator.org. project can always be found at http://opensimulator.org.
Thanks for trying OpenSim, we hope it is a pleasant experience. Thanks for trying OpenSim, we hope it is a pleasant experience.

View File

@ -80,14 +80,16 @@
PhysicalPrimMax = 10 ; (I think this was moved to the Regions.ini!) PhysicalPrimMax = 10 ; (I think this was moved to the Regions.ini!)
ClampPrimSize = false ClampPrimSize = false
; Region crossing ; Allow scripts to cross region boundaries. These are recompiled on the new region.
AllowScriptCrossing = false AllowScriptCrossing = false
; Allow compiled script binary code to cross region boundaries.
; If you set this to "true", any region that can teleport to you can ; If you set this to "true", any region that can teleport to you can
; inject ARBITRARY BINARY CODE into your system. Use at your own risk. ; inject ARBITRARY BINARY CODE into your system. Use at your own risk.
; YOU HAVE BEEN WARNED!!! ; YOU HAVE BEEN WARNED!!!
TrustBinaries = false TrustBinaries = false
; Combine all contiguous regions into one large region ; Combine all contiguous regions into one large megaregion
; Order your regions from South to North, West to East in your regions.ini and then set this to true ; Order your regions from South to North, West to East in your regions.ini and then set this to true
; Warning! Don't use this with regions that have existing content!, This will likely break them ; Warning! Don't use this with regions that have existing content!, This will likely break them
CombineContiguousRegions = false CombineContiguousRegions = false

View File

@ -1,7 +1,7 @@
;; Configurations for enabling HG1.5 ;; Configurations for enabling HG1.5
;; ;;
;; Run ;; Run
;; $ OpenSim.Server.exe -inifile OpenSim.Server.HG.ini ;; $ Robust.exe -inifile Robust.HG.ini
;; HG1.5 handlers are: OpenSim.Server.Handlers.dll:GatekeeperService ;; HG1.5 handlers are: OpenSim.Server.Handlers.dll:GatekeeperService
;; OpenSim.Server.Handlers.dll:UserAgentService ;; OpenSim.Server.Handlers.dll:UserAgentService

View File

@ -8,7 +8,6 @@
; ;
AssetServerURI = "http://myassetserver.com:8003" AssetServerURI = "http://myassetserver.com:8003"
[InventoryService] [InventoryService]
; ;
; change this to your grid-wide inventory server ; change this to your grid-wide inventory server
@ -58,13 +57,6 @@
; ;
FriendsServerURI = "http://mygridserver.com:8003" FriendsServerURI = "http://mygridserver.com:8003"
[Groups]
;
; change this to your grid-wide groups server
;
GroupsServerURI = "http://mygridserver.com:82/Grid/"
[Modules] [Modules]
;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists. ;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists.
;; Copy the config .example file into your own .ini file and change configs there ;; Copy the config .example file into your own .ini file and change configs there