Commit Graph

119 Commits

Author SHA1 Message Date
diva
158de95bde Another interregion comms change that will not work well with previous versions. This commit moves InformRegionOfChildAgent from OGS1 to RESTComms, effectively having the complete child agent life cycle over REST: create=POST, update=PUT, close=DELETE.
Additional changes include more functions in the IHyperlink interface, and some refactorings in the HG code for better reuse in RESTComms.
2009-01-03 07:05:33 +00:00
diva
4144fd0eb2 Split agent updates into two messages: full update and position+camera update. They're both sent over HTTP PUT. The full update is sent on TPs, for now; later it will also be sent on region crossings. 2009-01-03 02:29:49 +00:00
diva
d8ebf2fc9d Major changes in interregion communications. This breaks compatibility with older versions, and may result is all sorts of weirdnesses when interacting with sims in older versions. Changes:
- Introducing synchronous Teleports. Now the receiving region calls back the sending region after the client has been made a root agent there, that is, after client sends CompleteMovement to the destination.
- SendCloseAgent moved from OGS1 Remoting to RESTComms.
2009-01-01 19:42:24 +00:00
diva
5de40aaf46 Added a SendChildAgentDataUpdate call on Teleports, so that the agent at the destination will have all the necessary information. 2008-12-31 00:18:24 +00:00
diva
a3e2e03f7b Final part for implementing SendChildAgentDataUpdate with modules. This is the part that uses the modules in Scene and related classes. This commit breaks compatibility of sim-sim SendChildAgentUpdates with older versions of OpenSim. 2008-12-29 22:22:05 +00:00
diva
06f74e4295 Fix for attachment crossing on TPs. Now that we're letting the viewer have control over MakeRoot at the destination, we need to pass the attachments after that. Attachment crossing requires a root agent at the destination. 2008-12-22 17:43:51 +00:00
diva
339fd602db This commit is a major change on the TP process. Several things were wrong and/or broken. (a) ExpectAvatarCrossing is redundant (and bad) because the client triggers the same method on the receiving region after it receives TeleportFinish. (b) At least two of the *Async methods in SceneCommunicationService weren't asynchronous at all; I made them be asynchronous. Crossing fingers... 2008-12-22 07:06:01 +00:00
diva
7d837a9bea Slowing TPs down a bit further. 2008-12-21 19:00:30 +00:00
diva
3dae92b850 Slowing things down even more on TPs, to see if that helps the European folks connected to osgrid. 2008-12-20 22:44:26 +00:00
diva
fcf61c4d0d This reduces DNS lookups in TPs by a factor of 4. Let's see if this fixes some of the crashes experienced by ppl in Europe connected to OSGrid. If DNS lookup does not resolve, they may experience a substantial increase in "Region not available", but they shouldn't crash. 2008-12-20 18:15:02 +00:00
diva
7a619ad84a Slowing things down a little bit in TPs, with a couple of extra Thread.Sleep to give enough time for the destination to set up CAPs for the incoming agent before sending EAC to the client. 2008-12-20 02:45:12 +00:00
diva
d04247d418 Removing a check in Teleports. This check should be there, I think, but it may be causing problems right now. 2008-12-18 19:45:55 +00:00
Justin Clarke Casey
dce11e4685 * minor: Comment out "Informing neighbours" debug message that pops up whenever some aspect of the avatar changes.
* with Diva's blessing ;)
2008-12-17 20:54:34 +00:00
Justin Clarke Casey
ff7c8551ba * remove mono compiler warnings
* should work - the last compile failure looks like a random glitch...
2008-12-17 18:42:23 +00:00
diva
4b71b88114 Bug fix in new child agents management. Thanks DigiDaz for helping identify this issue.
We need to update all child agents whenever the root agent crosses regions. The update
now includes child agents in common neighbours. This is so that those get updated with the
seeds of the new child agents that are spawned from the receiving region.
This also fixes some timing issues. We need to close child agents from the originating region
before we update child agents in the receiving region.
2008-12-15 16:23:34 +00:00
Charles Krinke
e6eb571c1d Mantis#2725. Thank you kindly, Diva, for a patch that:
Adds missing protocol pieces for EstablishAgentCommunication
event which allows the client to activate CAPS and the EQ for 
child agents.
2008-12-14 02:17:12 +00:00
Melanie Thielker
e8a43b136b Applying diva's revert patch. Reverts closing child agents and makes
TP more reliable again.
2008-12-10 01:37:31 +00:00
Melanie Thielker
b80a48841e Remove the bandaid (fast rip) 2008-12-03 03:26:58 +00:00
Melanie Thielker
0edb533c27 Apply Diva's bandaid to OpenSim's scraped knee. 2008-12-03 01:55:40 +00:00
Justin Clarke Casey
e31b8be54d * minor: remove 2 mono compiler warnings 2008-12-01 19:02:16 +00:00
Melanie Thielker
d1841ca94d Mantis #2584 (again)
Next step of diva's TP fixes and HG support
2008-11-30 23:36:56 +00:00
Melanie Thielker
b8e8a33d60 Mantis #2584
Applying a patch from Diva. This patch introduces significant improvements
in teleporting. Thank you, Diva.
2008-11-29 13:49:20 +00:00
Melanie Thielker
ba723a4cf6 Refactor: Scene.ExternalChecks -> Scene.Permissions. Also make all
the internals of the permissions module adapter sane
2008-11-21 22:14:57 +00:00
Melanie Thielker
f518ca7feb Reapply r7369 r7367 r7366 r7370 r7381. This brings it back up to the new
libOMV.
2008-11-19 06:25:34 +00:00
Melanie Thielker
3234472d62 Reverting the texture sending patch and the new libOMV. This makes this
release a direct descendant of the stable 7364, with all the features and
none of the issues.
This omits the following patch chain: r7383 r7382 r7381 r7377 r7375 r7373
r7372 r7370 r7369 r7368 r7367 r7366
2008-11-19 06:15:21 +00:00
Justin Clarke Casey
c25a0ea792 * Update libOMV to r2359. This is necessary for the progressive texture patch
* Update libopenjpeg as well for this patch.
* Appears to be okay on a very short sniff test
* Source code will be placed in opensim-libs shortly
2008-11-17 21:00:34 +00:00
Justin Clarke Casey
00d6114525 * test: Add scene root agent test stub, since I'll be picking up with something else the next time I start coding on OpenSim 2008-11-14 21:06:40 +00:00
Justin Clarke Casey
b636bb0f9e * Stop the pointless passing of a scene's own region handler back to it in region comms
* Some scene methods ignored it, others did nothing if the region handler given did not match their own (which would never be triggered)
2008-11-12 19:12:33 +00:00
Melanie Thielker
506a3aa215 Change teleport timings 2008-11-07 07:35:51 +00:00
Melanie Thielker
48c6d052d9 Attachments, attachments, and, did I say attachments?
Too many fixes to list.
2008-11-07 05:48:44 +00:00
Homer Horwitz
580b11779a On TP, child-agents weren't closed down properly, as the list of child-regions
was cleared before using it to find the children.
2008-11-03 19:56:47 +00:00
Justin Clarke Casey
269303d97d * test: Add basic scene test which merely instantiates the scene right now
* set debug scene name on scene registration, rather than within the Scene constructor
2008-10-31 18:39:51 +00:00
Melanie Thielker
9a36afec6e Experimental patch (suggested by diva) to kill off WP teleport ghosts. 2008-10-27 23:46:34 +00:00
Melanie Thielker
82b2b2dccb Implement the hook needed for the CanTeleport check 2008-10-11 22:11:48 +00:00
Teravus Ovares
3ac76db76b * Fixes the last snag with the EventQueue. The situation where the seedcap gets lost on teleport. 2008-10-05 18:42:05 +00:00
Homer Horwitz
63d7a92fb4 Added immediate TP failure message for TPs to regions that aren't there,
instead of the 130s timeout somewhere. Additionally, mark the map-tile as
offline. This partly fixes the TP problems of Mantis 2332; the rest is a viewer
problem (just relogin).
2008-10-04 18:08:35 +00:00
Homer Horwitz
16d68749a4 Add the missing bits for the new region-search:
- Added lookup in the data-layer
  - MySQL works
  - SQLite doesn't have a grid-db, so it won't work there
  - I added MSSQL-code to the best of my knowledge; but I don't know MSSQL :-)
- Added the plumbing up to OGS1GridServices. This speaks with the grid-server
  via XMLRPC.
- Modified MapSearchModule to use the new data. It's backward compatible; if
  used with an old grid-server, it just returns one found region instead of a
  list.
- Refactored a bit.
Note: This updates data, grid-server and region code. No new files.
2008-10-03 23:00:42 +00:00
Teravus Ovares
8de395d379 * EventQueueGet is now working.
* Switched it on by default
* Updated OpenSim.ini.example to reflect this
* Caught a UDP Server issue that occurs when the network pipe is saturated
* Still experimental :D
2008-10-03 09:53:49 +00:00
Homer Horwitz
1cc927ad97 - Further cleanups
- Added TeleportFinish event to the event-queue. It works better than
  before (you can teleport), but it doesn't work quite right yet (you
  start TPing after the TP again).
  Beware: Still experimental and non-working.
2008-09-28 14:19:26 +00:00
Teravus Ovares
21bf26e9b4 * Adds flag to enable/disable EventQueueGet.
* If EventQueueGet is enabled, use that instead of a few UDP packets, if it's disabled use the UDP packets like normal.
* We *really* suggest users do not turn on EventQueueGet yet..  as it's highly experimental, broken, and resource intensive
* Updated OpenSim.ini.example
* Testers of EventQueueGet..   in OpenSim.ini, it's in the [Startup] Section..   change EventQueue = false, to EventQueue = true.
2008-09-27 23:06:28 +00:00
Justin Clarke Casey
1a71a3a567 * Fix http://opensimulator.org/mantis/view.php?id=2189
* Allow a grid mode region simulator to properly shutdown even if the grid service is offline
2008-09-21 16:58:14 +00:00
Justin Clarke Casey
52a4c4d82f * Check in first part of http://opensimulator.org/mantis/view.php?id=2073
* This patch aims to introduce look at direction persistence between logins.  It won't be active until the second part of the patch is committed in about two weeks time.  At 
this point, region servers that haven't upgraded past this revision may run into problems
* This checkin upgrades the user database.  As always, we recommend you have backups in case something goes wrong.
* Many thanks to tyre for this patch.
2008-09-12 20:12:03 +00:00
Teravus Ovares
7d89e12293 * This is the fabled LibOMV update with all of the libOMV types from JHurliman
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point.  Regular people should let the dust settle.
* This has been tested to work with most basic functions. However..   make sure you back up 'everything' before using this.  It's that big!  
* Essentially we're back at square 1 in the testing phase..  so lets identify things that broke.
2008-09-06 07:52:41 +00:00
Jeff Ames
3bf8858727 Update svn properties, formatting cleanup. 2008-08-28 14:41:54 +00:00
Charles Krinke
363989195a Mantis#1518. Thank you kindly, Zaki for a patch that:
Issue is caused by the terrain height not being queried before 
teleporting within the region. Teleporting between regions is 
correct. Adding the neccessary checking to intra-region TP code.
2008-08-27 02:49:47 +00:00
Charles Krinke
84cdebe470 Mantis#2047. Thank you kindly, Simsim for a patch that addresses:
avatar sitting on the object can not telport to other regions.
2008-08-27 02:40:14 +00:00
Melanie Thielker
f206ffd5a8 Mantis #2003 - thank you, SachaMagne, for a patch that implements
the first part of gesture persistence.
----------------------------------------------------------
Attachments no longer vanish on walking crossing. Teleport is still
problematic, but will now be blocked with message "Inconsistent
attachment state" rather than losing the attachment. Detach to be
able to TP in that case.
2008-08-20 01:48:51 +00:00
Melanie Thielker
e5cdba1cb4 Fix region crossings and access to inventory after changing regions within
the same simulator
2008-08-19 15:09:35 +00:00
Jeff Ames
6ef9d4da90 Formatting cleanup. 2008-08-18 00:39:10 +00:00
Charles Krinke
d9cc908471 Mantis#1965. Thank you kindly, HomerHorwitz for a patch that:
Places touched:
- Added two events for in-packets to LLCLientView: RegionHandleRequest and
  ParcelInfoRequest
- Added sending of two out-packets to LLCLientView: RegionIDAndHandleReply and
  ParcelInfoReply.
- Scene handles the RegionHandleRequest, LandManagementModule the
  ParcelInfoRequest
- Added inter-region request for LandData by RegionHandle and local position.
  This was implemented as XML-RPC request. The returned LandData isn't
  complete, it only contains the data necessary for answering the
  ParcelInfoRequest
- Added new CAPS (0009) for RemoteParcelRequest and some methods for LandData
  handling to LandManagementModule
- Added methods for fake parcelID creation and parsing to Util
- Fixed missing implementation of interface methods.
- Added new file:
    OpenSim/Framework/Communications/Capabilities/LLSDRemoteParcelResponse.cs
  NOTE: This is part of the patch, too.
Due to the many places touched, I would consider this patch as experimental.
2008-08-16 19:20:14 +00:00