Hypergrid Friends and IM

'''NOTE: This applies to master head, 0.7.2 (Dev) as of 5/26/2011. It does NOT apply to 0.7.1.x'''

= Configuration Changes =

StandaloneCommon.ini
[LoginService] ... SRV_FriendsServerURI = "http://127.0.0.1:9000" SRV_IMServerURI = "http://127.0.0.1:9000"

[HGInventoryAccessModule] ... Gatekeeper = "http://127.0.0.1:9000"

Add this new section somewhere:

[Messaging] ; === HG ONLY === ;; change this to the address of your simulator Gatekeeper = "http://127.0.0.1:9000"

Robust.HG.ini
[Startup] ServiceConnectors="...,8002/OpenSim.Server.Handlers.dll:HGFriendsServerConnector,8002/OpenSim.Server.Handlers.dll:InstantMessageServerConnector"

[LoginService] ... SRV_FriendsServerURI = "http://127.0.0.1:8002" SRV_IMServerURI = "http://127.0.0.1:8002"

[UserAgentService] ... PresenceService	= "OpenSim.Services.PresenceService.dll:PresenceService" FriendsService	= "OpenSim.Services.FriendsService.dll:FriendsService" UserAccountService = "OpenSim.Services.UserAccountService.dll:UserAccountService"

Add these new sections at the end:

[HGFriendsService] LocalServiceModule = "OpenSim.Services.FriendsService.dll:FriendsService" UserAgentService = "OpenSim.Services.HypergridService.dll:UserAgentService"

[HGInstantMessageService] LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGInstantMessageService" GridService = "OpenSim.Services.GridService.dll:GridService" PresenceService	= "OpenSim.Services.PresenceService.dll:PresenceService" UserAgentService = "OpenSim.Services.HypergridService.dll:UserAgentService" ; This should always be true in the Robust config InGatekeeper = True

[Messaging] ; If you have an Offline IM server, set the vars in this section, so that ; incomming IMs to local users from foreign grids can be saved ;   ;# {OfflineMessageURL} {OfflineMessageModule:OfflineMessageModule} {URL of offline messaging service} {} ;; URL of web service for offline message storage ; OfflineMessageURL = http://yourserver/Offline.php ;; Control whether group messages are forwarded to offline users. ;; Default is true. ;; This applies to the core groups module (Flotsam) only. ; ForwardOfflineGroupMessages = true

GridCommon.ini
[HGInventoryAccessModule] ... Gatekeeper = "http://127.0.0.1:9000"

Add these sections at the end:

[UserAgentService] ; ; === HG ONLY === ; Change this to your user agent server (HG robust) ; UserAgentServerURI = "http://mygridserver.com:8002"

[Messaging] ; === HG ONLY === ;; change this to the address of your Gatekeeper service ;; (usually bundled with the rest of the services in one  ;; Robust server in port 8002, but not always) Gatekeeper = "http://mygridserver.com:8002"

= Troubleshooting =

If you get an exception like this:

23:16:24 - [LLOGIN SERVICE]: Exception processing login for Ruth OpenSim: System.ArgumentException: Object type System.Guid cannot be converted to target type: System.String Parameter name: val at System.Reflection.MonoField.SetValue (System.Object obj, System.Object val, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Globalization.CultureInfo culture) [0x00000] in &lt;filename unknown&gt;:0 at System.Reflection.FieldInfo.SetValue (System.Object obj, System.Object value) [0x00000] in &lt;filename unknown&gt;:0 at OpenSim.Data.MySQL.MySQLGenericTableHandler`1[OpenSim.Data.FriendsData].DoQuery (MySql.Data.MySqlClient.MySqlCommand cmd) [0x00000] in &lt;filename unknown&gt;:0 at OpenSim.Data.MySQL.MySqlFriendsData.GetFriends (UUID principalID) [0x00000] in &lt;filename unknown&gt;:0 at OpenSim.Services.Friends.FriendsService.GetFriends (UUID PrincipalID) [0x00000] in &lt;filename unknown&gt;:0

Try adding this to your database connection string: ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=*****;Old Guids=true;"