diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs
index 0b545c42ac..9f0ac4fa34 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs
@@ -77,16 +77,20 @@ namespace OpenSim.Region.Framework.Scenes
}
///
- /// Add an inventory item to a prim in this group.
+ /// Add an inventory item from a user's inventory to a prim in this scene object.
///
- ///
- ///
- ///
+ /// The client adding the item.
+ /// The local ID of the part receiving the add.
+ /// The user inventory item being added.
/// The item UUID that should be used by the new item.
///
public bool AddInventoryItem(IClientAPI remoteClient, uint localID,
InventoryItemBase item, UUID copyItemID)
{
+// m_log.DebugFormat(
+// "[PRIM INVENTORY]: Adding inventory item {0} from {1} to part with local ID {2}",
+// item.Name, remoteClient.Name, localID);
+
UUID newItemId = (copyItemID != UUID.Zero) ? copyItemID : item.ID;
SceneObjectPart part = GetChildPart(localID);
@@ -128,15 +132,20 @@ namespace OpenSim.Region.Framework.Scenes
taskItem.GroupPermissions = item.GroupPermissions;
taskItem.NextPermissions = item.NextPermissions;
}
-
+
taskItem.Flags = item.Flags;
+
+// m_log.DebugFormat(
+// "[PRIM INVENTORY]: Flags are 0x{0:X} for item {1} added to part {2} by {3}",
+// taskItem.Flags, taskItem.Name, localID, remoteClient.Name);
+
// TODO: These are pending addition of those fields to TaskInventoryItem
// taskItem.SalePrice = item.SalePrice;
// taskItem.SaleType = item.SaleType;
taskItem.CreationDate = (uint)item.CreationDate;
bool addFromAllowedDrop = false;
- if (remoteClient!=null)
+ if (remoteClient != null)
{
addFromAllowedDrop = remoteClient.AgentId != part.OwnerID;
}
diff --git a/OpenSim/Region/Framework/Scenes/Serialization/CoalescedSceneObjectsSerializer.cs b/OpenSim/Region/Framework/Scenes/Serialization/CoalescedSceneObjectsSerializer.cs
index babcb54ae9..55455cc434 100644
--- a/OpenSim/Region/Framework/Scenes/Serialization/CoalescedSceneObjectsSerializer.cs
+++ b/OpenSim/Region/Framework/Scenes/Serialization/CoalescedSceneObjectsSerializer.cs
@@ -117,29 +117,40 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
{
using (XmlTextReader reader = new XmlTextReader(sr))
{
- reader.Read();
- if (reader.Name != "CoalescedObject")
+ try
{
-// m_log.DebugFormat(
-// "[COALESCED SCENE OBJECTS SERIALIZER]: TryFromXml() root element was {0} so returning false",
-// reader.Name);
+ reader.Read();
+ if (reader.Name != "CoalescedObject")
+ {
+ // m_log.DebugFormat(
+ // "[COALESCED SCENE OBJECTS SERIALIZER]: TryFromXml() root element was {0} so returning false",
+ // reader.Name);
+
+ return false;
+ }
+
+ coa = new CoalescedSceneObjects(UUID.Zero);
+ reader.Read();
+
+ while (reader.NodeType != XmlNodeType.EndElement && reader.Name != "CoalescedObject")
+ {
+ if (reader.Name == "SceneObjectGroup")
+ {
+ string soXml = reader.ReadOuterXml();
+ coa.Add(SceneObjectSerializer.FromOriginalXmlFormat(soXml));
+ }
+ }
+
+ reader.ReadEndElement(); // CoalescedObject
+ }
+ catch (Exception e)
+ {
+ m_log.ErrorFormat(
+ "[COALESCED SCENE OBJECTS SERIALIZER]: Deserialization of xml failed with {0} {1}",
+ e.Message, e.StackTrace);
return false;
- }
-
- coa = new CoalescedSceneObjects(UUID.Zero);
- reader.Read();
-
- while (reader.NodeType != XmlNodeType.EndElement && reader.Name != "CoalescedObject")
- {
- if (reader.Name == "SceneObjectGroup")
- {
- string soXml = reader.ReadOuterXml();
- coa.Add(SceneObjectSerializer.FromOriginalXmlFormat(soXml));
- }
- }
-
- reader.ReadEndElement(); // CoalescedObject
+ }
}
}
diff --git a/OpenSim/Region/Framework/Scenes/UuidGatherer.cs b/OpenSim/Region/Framework/Scenes/UuidGatherer.cs
index 3978a7d3ae..fdfbc7853f 100644
--- a/OpenSim/Region/Framework/Scenes/UuidGatherer.cs
+++ b/OpenSim/Region/Framework/Scenes/UuidGatherer.cs
@@ -294,10 +294,20 @@ namespace OpenSim.Region.Framework.Scenes
if (null != objectAsset)
{
string xml = Utils.BytesToString(objectAsset.Data);
- SceneObjectGroup sog = SceneObjectSerializer.FromOriginalXmlFormat(xml);
-
- if (null != sog)
- GatherAssetUuids(sog, assetUuids);
+
+ CoalescedSceneObjects coa;
+ if (CoalescedSceneObjectsSerializer.TryFromXml(xml, out coa))
+ {
+ foreach (SceneObjectGroup sog in coa.Objects)
+ GatherAssetUuids(sog, assetUuids);
+ }
+ else
+ {
+ SceneObjectGroup sog = SceneObjectSerializer.FromOriginalXmlFormat(xml);
+
+ if (null != sog)
+ GatherAssetUuids(sog, assetUuids);
+ }
}
}
diff --git a/OpenSim/Region/OptionalModules/Avatar/Voice/FreeSwitchVoice/FreeSwitchVoiceModule.cs b/OpenSim/Region/OptionalModules/Avatar/Voice/FreeSwitchVoice/FreeSwitchVoiceModule.cs
index b59f6e1ea9..4f1097e22f 100644
--- a/OpenSim/Region/OptionalModules/Avatar/Voice/FreeSwitchVoice/FreeSwitchVoiceModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/Voice/FreeSwitchVoice/FreeSwitchVoiceModule.cs
@@ -391,7 +391,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Voice.FreeSwitchVoice
string r = LLSDHelpers.SerialiseLLSDReply(voiceAccountResponse);
- m_log.DebugFormat("[FreeSwitchVoice][PROVISIONVOICE]: avatar \"{0}\": {1}", avatarName, r);
+// m_log.DebugFormat("[FreeSwitchVoice][PROVISIONVOICE]: avatar \"{0}\": {1}", avatarName, r);
return r;
}
@@ -458,8 +458,8 @@ namespace OpenSim.Region.OptionalModules.Avatar.Voice.FreeSwitchVoice
if ((land.Flags & (uint)ParcelFlags.AllowVoiceChat) == 0)
{
- m_log.DebugFormat("[FreeSwitchVoice][PARCELVOICE]: region \"{0}\": Parcel \"{1}\" ({2}): avatar \"{3}\": voice not enabled for parcel",
- scene.RegionInfo.RegionName, land.Name, land.LocalID, avatarName);
+// m_log.DebugFormat("[FreeSwitchVoice][PARCELVOICE]: region \"{0}\": Parcel \"{1}\" ({2}): avatar \"{3}\": voice not enabled for parcel",
+// scene.RegionInfo.RegionName, land.Name, land.LocalID, avatarName);
channelUri = String.Empty;
}
else
@@ -474,8 +474,8 @@ namespace OpenSim.Region.OptionalModules.Avatar.Voice.FreeSwitchVoice
parcelVoiceInfo = new LLSDParcelVoiceInfoResponse(scene.RegionInfo.RegionName, land.LocalID, creds);
string r = LLSDHelpers.SerialiseLLSDReply(parcelVoiceInfo);
- m_log.DebugFormat("[FreeSwitchVoice][PARCELVOICE]: region \"{0}\": Parcel \"{1}\" ({2}): avatar \"{3}\": {4}",
- scene.RegionInfo.RegionName, land.Name, land.LocalID, avatarName, r);
+// m_log.DebugFormat("[FreeSwitchVoice][PARCELVOICE]: region \"{0}\": Parcel \"{1}\" ({2}): avatar \"{3}\": {4}",
+// scene.RegionInfo.RegionName, land.Name, land.LocalID, avatarName, r);
return r;
}
catch (Exception e)
@@ -850,16 +850,25 @@ namespace OpenSim.Region.OptionalModules.Avatar.Voice.FreeSwitchVoice
Hashtable requestBody = ParseRequestBody((string)request["body"]);
- string section = (string) requestBody["section"];
-
- m_log.DebugFormat("[FreeSwitchVoice]: Received request for config section {0}", section);
+ string section = (string) requestBody["section"];
if (section == "directory")
+ {
+ string eventCallingFunction = (string)requestBody["Event-Calling-Function"];
+ m_log.DebugFormat(
+ "[FreeSwitchVoice]: Received request for config section directory, event calling function '{0}'",
+ eventCallingFunction);
+
response = m_FreeswitchService.HandleDirectoryRequest(requestBody);
+ }
else if (section == "dialplan")
+ {
+ m_log.DebugFormat("[FreeSwitchVoice]: Received request for config section dialplan");
+
response = m_FreeswitchService.HandleDialplanRequest(requestBody);
+ }
else
- m_log.WarnFormat("[FreeSwitchVoice]: Unknown section {0} was requested.", section);
+ m_log.WarnFormat("[FreeSwitchVoice]: Unknown section {0} was requested from config.", section);
return response;
}
diff --git a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
index 211a0a787f..64774d8ee5 100644
--- a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
+++ b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
@@ -84,10 +84,11 @@ namespace OpenSim.Region.Physics.Meshing
public Meshmerizer(IConfigSource config)
{
IConfig start_config = config.Configs["Startup"];
+ IConfig mesh_config = config.Configs["Mesh"];
decodedSculptMapPath = start_config.GetString("DecodedSculptMapPath","j2kDecodeCache");
cacheSculptMaps = start_config.GetBoolean("CacheSculptMaps", cacheSculptMaps);
- useMeshiesPhysicsMesh = start_config.GetBoolean("UseMeshiesPhysicsMesh", useMeshiesPhysicsMesh);
+ useMeshiesPhysicsMesh = mesh_config.GetBoolean("UseMeshiesPhysicsMesh", useMeshiesPhysicsMesh);
try
{
diff --git a/OpenSim/Services/FreeswitchService/FreeswitchService.cs b/OpenSim/Services/FreeswitchService/FreeswitchService.cs
index 1ec89da5f7..c3f10560d7 100644
--- a/OpenSim/Services/FreeswitchService/FreeswitchService.cs
+++ b/OpenSim/Services/FreeswitchService/FreeswitchService.cs
@@ -56,7 +56,7 @@ namespace OpenSim.Services.FreeswitchService
foreach (DictionaryEntry item in request)
{
- m_log.InfoFormat("[FreeSwitchDirectory]: requestBody item {0} {1}",item.Key, item.Value);
+// m_log.InfoFormat("[FreeSwitchDirectory]: requestBody item {0} {1}",item.Key, item.Value);
}
string requestcontext = (string) request["Hunt-Context"];
@@ -146,10 +146,8 @@ namespace OpenSim.Services.FreeswitchService
//domain=9.20.151.43
//ip=9.167.220.137 // this is the correct IP rather than sip_contact_host above when through a vpn or NAT setup
- foreach (DictionaryEntry item in request)
- {
- m_log.DebugFormat("[FreeSwitchDirectory]: requestBody item {0} {1}", item.Key, item.Value);
- }
+// foreach (DictionaryEntry item in request)
+// m_log.DebugFormat("[FreeSwitchDirectory]: requestBody item {0} {1}", item.Key, item.Value);
string eventCallingFunction = (string) request["Event-Calling-Function"];
if (eventCallingFunction == null)
diff --git a/bin/OpenSimDefaults.ini b/bin/OpenSimDefaults.ini
index 61eaf14f74..f72cd8e849 100644
--- a/bin/OpenSimDefaults.ini
+++ b/bin/OpenSimDefaults.ini
@@ -149,12 +149,6 @@
; to false if you have compatibility problems.
;CacheSculptMaps = true
- ; if you use Meshmerizer and want collisions for meshies, setting this to true
- ; will cause OpenSim to attempt to decode meshies assets, extract the physics
- ; mesh, and use it for collisions. This is currently experimental code and enabling
- ; it may cause unexpected physics problems.
- ;UseMeshiesPhysicsMesh = false
-
; Choose one of the physics engines below
; OpenDynamicsEngine is by some distance the most developed physics engine
; basicphysics effectively does not model physics at all, making all objects phantom
@@ -461,6 +455,12 @@
; default is true
ColladaMesh = true
+ ; if you use Meshmerizer and want collisions for meshies, setting this to true
+ ; will cause OpenSim to attempt to decode meshies assets, extract the physics
+ ; mesh, and use it for collisions. This is currently experimental code and enabling
+ ; it may cause unexpected physics problems.
+ ;UseMeshiesPhysicsMesh = false
+
[ODEPhysicsSettings]
;##
diff --git a/bin/Robust.HG.ini.example b/bin/Robust.HG.ini.example
index ced2857331..e2e9624831 100644
--- a/bin/Robust.HG.ini.example
+++ b/bin/Robust.HG.ini.example
@@ -117,10 +117,6 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
; EchoPort = 50505
; AttemptSTUN = false
- LocalServiceModule = "OpenSim.Services.FreeswitchService.dll:FreeswitchService"
- ;; IP of your FS server
- ; ServerAddress = 127.0.0.1
-
; * This is the new style authentication service. Currently, only MySQL
; * is implemented.
; *