mirror of
https://github.com/opensim/opensim.git
synced 2026-05-26 12:05:34 +08:00
old way: each region module interested in chat from client had to
- subscribe to scene.EventManager.OnNewClient
- then in its OnNewClient delegate it would subscribe to
client.OnChatFromViewer to capture chat messages coming
new way: ChatModule is the only region module that uses the "old
way" approach but is now forwarding all client chat via
scene.EventManager.OnChatFromClient
- each region module interested in chat from client now only
subscribes to scene.EventManager.OnChatFromClient
this not only simplifies code, but also allows us to substitute
ChatModule with derived classes (ConciergeModule is going to be one
example).
Also, this changeset changes ChatFromViewer to ChatFromClient as it
doesn't necessarily have to be a viewer that is a chat source.
i've taken great care to only comment out those OnNewClient delegates
that were only used for getting at the client chat --- hope it's not
breaking anything.
This module is meant to be built alone and not added to the Opensim code base. References are made to required dlls through a reference file, ContentManagement.mdp. Originally, for development, this project was contained in the Opensim/Region/Modules/ directory. To compile: nant To use: Copy ContentManagement.dll into the bin directory of your Opensim build. You should find many other dlls in the same directory. -------------------------------------------------------------------------------------------------------------------- To build the libgit.so file: #Download GIT git repository $ git clone git://git2.kernel.org/pub/OpenSim/Region/Environment/Modules/ContentManagementSystem/scm/git/git.git $ cd git #Compile GIT #Note that we are adding two extra flags to pass to gcc while compiling (-c and -fPIC) $ autoconf $ ./configure $ CFLAGS="-g -O2 -Wall -c -fPIC" make #Copy necessary object files (and some not so necessary) to their own directory for shared object file creation $ mkdir ../libgit-objects $ cp builtin*.o ../libgit-objects $ cp xdiff/*.o ../libgit-objects $ cp libgit.a ../libgit-objects #Remove the main symbol from any object files (like git.o) $ cd ../libgit-objects $ strip -N main *.o #Uncompress the plumbing objects from archive created by git $ ar x libgit.a #Create shared object file from all objects (including the zlib library) $ ld -shared -soname libgit.so.1 -o libgit.so.1.5.6.3 -lc -lz *.o #You can also just copy the following commands into a file and run as a script inside the git directory make clean autoconf ./configure CFLAGS="-g -O2 -Wall -c -fPIC" make mkdir libgit-objects cp builtin*.o libgit-objects cp xdiff/*.o libgit-objects cp libgit.a libgit-objects cd libgit-objects strip -N main *.o ar x libgit.a ld -shared -soname libgit.so.1 -o libgit.so.1.5.6.3 -lc -lz *.o