#author("2024-01-07T01:12:51+00:00","default:iseki","iseki") #author("2024-01-07T01:13:14+00:00","default:iseki","iseki") * DTL/NSL Money Server for OpenSim [#se1ad59b] ** Overview [#vaa53e04] - Latest Stable Version is ''0.9.3'' (for OpenSim 0.9.3) -- 0.9.3 supports ''.net6'' - This Money Server is modified from [[DTL Currency>./DTL Currency Processing]] and modified for Unix/Linux (It might work in MS Windows). - Some bug fixes are done and some functions are extended from DTL currency. - This can be operated by OpenSim 0.6.7, 0.7.x, 0.8.x, 0.9.x - Web Monitor function (ASP.NET) is removed from original DTL Currency. - [[Client Certification>./Client Certification]] is available. - This does not support that sell/buy the group shared object. - ''Please use this at Your Own Risk!!'' - %%''Client (SIM: Region Server) certification causes an error'' in mono-5.16 and later. Please use ''mono-5.0 - mono-5.14'', if you want to use client (SIM: Region Server) certification function.(at v0.9.1)%% -- This is Mono's Bug. Latest Mono has no this bug. And bugs are already supported in the buggy before version of Mono (by 0.9.2.2). - &color(#0000ff){About this project, ''Milo'' do a lot of advice and donation to us. ''Thank you very much!!''}; *** github - https://github.com/MTSGJ/opensim.currency/issue - Issues: https://github.com/MTSGJ/opensim.currency/issues *** Supported Functions [#y5e3e741] - [[See Here>./Functions]] - [[Client Certification>./Client Certification]] for 0.9.x *** Change Log [#r7a89e03] - [[ChangeLog>./ChangeLog]] *** [[Client Certification>./Client Certification]] [#k58c70f3] ** Download of DTL/NSL Money Server[#u2d15064] *** tar Ball [#v661c160] *** tar ball [#v661c160] - 0.9.3 -- https://github.com/MTSGJ/opensim.currency/releases/tag/0.9.3 - 0.9.1_1 for OpenSim-0.9.1 -- http://www.nsl.tuis.ac.jp/xoops/modules/d3downloads/index.php?page=singlefile&cid=8&lid=55 - [[more old version...>./old_version]] *** git hub [#nd5f9697] - latest dev version (for OpenSim-0.9.3) -- git clone https://github.com/MTSGJ/opensim.currency.git ** Compile and Install [#uc427419] *** for Release Version (OpenSim-X.Y.Z) [with No Client Certification] [#ff113200] cd (PREFIX)/opensim-X.Y.Z-source (or opensim-X.Y.Z-release) tar xzfv opensim.currency-X.Y.Z.tar.gz ./runprebuild.sh && xbuild cd opensim.currency-X.Y.Z ./build.sh cd ../bin vi MoneyServer.ini *** for latest Dev Version [#g778de33] **** No Client Certification or Money Module (OpenSim.Modules.Currency.dll) only [#r08f46e7] git clone git://opensimulator.org/git/opensim opensim cd opensim svn co http://www.nsl.tuis.ac.jp/svn/opensim/opensim.currency/trunk opensim.currency ./runprebuild.sh && xbuild cd opensim.currency ./build.sh cd ../bin vi MoneyServer.ini **** Money Server (MoneyServer.exe) with Client Certification function [#n1a3992f] git clone git://opensimulator.org/git/opensim opensim cd opensim svn co http://www.nsl.tuis.ac.jp/svn/opensim/opensim.currency/trunk opensim.currency patch -p1 < opensim.currency/patch/ opensim.server.patch ./runprebuild.sh && xbuild cd opensim.currency ./build.sh cd ../bin vi MoneyServer.ini *** HttpServer_OpenSim.dll [#j70b6819] - ''Since 0.9.1, HttpServer_OpenSim.dll is already fixed, so no patch is required.'' - opensim-libs (unnecessary now) -- %% git clone git://opensimulator.org/git/opensim-libs %% -- %% cp -Rpd opensim-libs/HttpServer/trunk/HttpServer .%% -- %% cd HttpServer/%% -- %% patch -p1 < ../opensim.currency/patch/HttpServer.patch %% -- %% xbuild /p:Configuration=Release%% ** Settings [#v70b9150] *** Tutorial Videos by Nick Zwart [#d2def937] - http://www.slartist.com/part-6-1of2-how-to-setup-nsldtl-money-server-opensim-081_06ac8339d.html - http://www.slartist.com/part-6-2of2-how-to-setup-nsldtl-money-server-opensim-081_6a17c8c97.html - Thanks!! *** MoneyServer.ini [#a07c8101] - [[MoneyServer.ini>./MoneyServer.ini]] *** [Economy] Section in INI file [#d9a146c0] - [[OpenSim.ini>./OpenSim.ini]] *** Avatar Class [#u3faa13b] - マネーサーバにおけるアバターの取り扱いを定義するためのクラス - ''ForeignAvatar'', ''HGAvatar'', ''GuestAvatar'', ''LocalAvatar'' **** for Region Server [#p411b009] - Regionサーバ毎に HG Avatar をどう取り扱うか指定できる. - OpenSim.ini の [Economy] セクションの ''HGAvatarAs'' で指定する - ''ForeignAvatar'', ''HGAvatar'', ''GuestAvatar'', ''LocalAvatar'' が指定可能.デフォルトは ''HGAvatar'' **** for MoneyServer [#eaa618e9] - Region毎に決めた HGAvatar の取り扱い(Avatar Class: ''HGAvatar'', ''GuestAvatar'')に対してのマネーサーバ側の挙動を指定できる - マネーサーバの MoneyServer.ini で指定する. - ''LocalAvatar'' に対しては何時でも true (マネーサーバの使用可) - ''ForeignAvatar'' に対しては何時でも false (マネーサーバの使用不可) ; for HG/Guest Avatar. Foreign Avatar is always false ;EnableHGAvatar = false ;EnableGuestAvatar = false ;HGAvatarDefaultBalance = 0 ;GuestAvatarDefaultBalance = 0 *** Helper Scripts [#m58a560d] - If you use functions that ''Buy Money from System'', ''Buy Land'' and ''send_money'', you should set up Helper Scripts. - If you use %%XoopenSim or%% [[Modlos]], you may not do setting Helper Script. Because XoopenSim/Modlos sets up it by automatically. - Helper Scripts work with ''PHP-7.x'' - [[Setup Manual of ''Helper Scripts'' is here>../Helper Scripts]] *** Setting for Diva-Distro [#x02c26fc] - [[0.7.2>./Diva-0.7.2]] ** Execution [#h4610b84] - Execute MoneyServer after Robust.exe and before OpenSim.exe # cd bin # mono Robust.exe # mono MoneyServer.exe # mono OpenSim.exe ** opensim.currecncy.secure [#ebe5d69d] - クライアント認証が可能 [[Client Certification>./Client Certification]] - %%クライアント認証機能付き MoneyServer.exe を生成する場合は,[[HttpServer_OpenSim]] および OpenSim 本体にパッチが必要%% (0.9.1以降不要) - OpenSim.exe 用モジュールにはパッチは不要 - %%http://www.nsl.tuis.ac.jp/svn/opensim/opensim.currency/secure %% -- %%http://www.nsl.tuis.ac.jp/svn/opensim/opensim.currency/trunk にマージ (10/26 2013)%% *** Patch (0.9.3以降不要) [#i8ee6f28] **** HttpServer_OpenSim [#m7932dd6] - %%Client からのリクエスト情報を格納する HttpClientContext に Common Name を保存する SSLCommonName を追加%% -- %%IHttpClientContext.SSLCommonName%% - %%Client 認証時のコールバック関数 ClientCertificateValidationCallback() の仮想関数を定義%% **** OpenSim [#j2f71927] - %%XMLRPC のリクエスト情報を格納するXmlRpcRequest の5番目のパラメータに Common Name を格納%% - %%XMLRPC のリクエスト情報からCommon Name を得るには GetSSLCommonName() を使用する.%% 本体コードに取り込み済み. ** etc.etc. [#va2bf28f] *** Sample Program [#v9b7625e] - LSL: [[llGvieMony()>./LSL]] - PHP: [[send_money()>./send_money]] *** Support of StandAlone mode [#nf42a9ad] - [[OpenSim-0.7.x>./standalone_0.7]] *** Bugs [#x4fae068] - Client (SIM: Region Server) certification causes an error in mono-5.16 and later. Please use mono-5.0 - mono-5.14, if you want to use client (SIM: Region Server) certification function.(at v0.9.1) - 0.7.1 R2 -- send_money() of helper script is failed, when the ''secretCode'' argument is omitted. - 0.7.1 R1 -- The script money() (money event) does not work. (It is corrected at R2) -- %%Charge message of "Group Creation" displayed ''L$100'' at any time.%% As it displayed normally at Hippo Viewer, this is the problem of Viewer. - 0.7 R4 -- Included ''include/opensim.mysql.php helper script of v0.7R4 has bugs''. If you want to use included helper scripts, please download http://www.nsl.tuis.ac.jp/DownLoad/SoftWare/PHP/WI-1.55/opensim.mysql , and rename to opensim.mysql.php and use it. - 0.7 R3 -- When object is set to ''sale original'', no money is transferred. (collected at v0.7 R4) *** 注意Attention [#d84771e2] - MoneyServer.ini と include/config.php (またはXoopenSim/Modlos) の Helper Script用のキーは必ず同じものを指定すること. Specify same ''Secret Key of Helper Script'' in MoneyServer.ini and include/config.php (or XoopenSim/Modlos) - %%OpenSim.ini 中の ''UserServer'', ''CurrencyServer'' のアドレスは localhost (127.0.0.1) を使用しないこと ( [Network] セクションの ''user_server_url'').これは,このIPアドレスが,Monet Server内でのユーザのアカウント識別に利用されるためである.%% アカウントの識別から,サーバのIPアドレスを削除しました.ハイパーグリッドであっても,アバターはUUIDのみで識別されます. %%Not use 127.0.0.1 for ''UserServer'' and ''CurrencyServer'' at OpenSim.ini. This IP Address is used for identification of user on Money Server.%% - %%0.6.9で,[Network] セクションの ''user_server_url'' が無くなったため,代わりに [Economy]セクションで ''UserServer'' を指定するように変更.%% UserServer は現在参照されません. %%in 0.6.7 - 0.6.8, ''UserServer'' is setted as ''user_server_url'' at [Network] section.%% - %%in 0.6.9 - 0.7, ''UserServer'' is setted as ''UserServer'' at [Economy] section.%% UserServer is not refered now *** Trouble Shooting [#wa240b75] **** mono 4.4.0 にしたら,エラー続出 (0.9) [#kebad74d] 2016-03-31 17:02:39,845 ERROR (Threadpool worker) - OpenSim.Framework.Servers.HttpServer.BaseHttpServer [BASE HTTP SERVER]: HttpServer.HttpListener had an exception System.TypeLoadException: Could not load type 'System.Net.Security.SslStream' from assembly 'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'. at HttpServer.HttpContextFactory.CreateNewContext (Boolean isSecured, System.Net.IPEndPoint endPoint, System.IO.Stream stream, System.Net.Sockets.Socket sock) <0x418d2540 + 0x00063> in <filename unknown>:0 at HttpServer.HttpContextFactory.CreateContext (Boolean isSecured, System.Net.IPEndPoint endPoint, System.IO.Stream stream, System.Net.Sockets.Socket sock) <0x418d2000 + 0x001f9> in <filename unknown>:0 at HttpServer.HttpContextFactory.CreateContext (System.Net.Sockets.Socket socket) <0x418d1e30 + 0x00093> in <filename unknown>:0 at HttpServer.HttpListenerBase.OnAccept (IAsyncResult ar) <0x418d0d10 + 0x0025b> in <filename unknown>:0 - 結局,古い Mono.Security.dll を使用しているせいだった.bin にあった Mono.Security.dll を削除 **** RunTime Error (0.8) [#t84737c5] - Missing method .ctor in assembly /usr/local/opensim/bin/OpenSim.Framework.Console.dll, type System.Runtime.Versioning.TargetFrameworkAttribute -- Please use ''--runtime=v4.0'' option mono --runtime=v4.0 MoneyServer.exe **** Viewer での接続の途中で止まる (0.8) [#b411eb98] - コンパイルするディレクトリ名を変えたら,マネーサーバへの接続で途中停止した. - ディレクトリ名を元に戻してコンパイルしたら,直った???? *** [[Development>./Devel]] [#rfbac1de] - [[DB>./DB]] *** Indexes [#l1c0126a] #ls2