Hypergrid Friends and IM
From OpenSimulator
Contents |
Configuration Changes
StandaloneCommon.ini
[LoginService] ... SRV_FriendsServerURI = "http://127.0.0.1:9000" SRV_IMServerURI = "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"
GridCommon.ini
Add this section at the end:
[UserAgentService] ; ; === HG ONLY === ; Change this to your user agent server (HG robust) ; UserAgentServerURI = "http://mygridserver.com:8002"
Troubleshooting
If you get an exception like this:
23:16:24 - [LLOGIN SERVICE]: Exception processing login for BlueWall Slade: 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 <filename unknown>:0 at System.Reflection.FieldInfo.SetValue (System.Object obj, System.Object value) [0x00000] in <filename unknown>:0 at OpenSim.Data.MySQL.MySQLGenericTableHandler`1[OpenSim.Data.FriendsData].DoQuery (MySql.Data.MySqlClient.MySqlCommand cmd) [0x00000] in <filename unknown>:0 at OpenSim.Data.MySQL.MySqlFriendsData.GetFriends (UUID principalID) [0x00000] in <filename unknown>:0 at OpenSim.Services.Friends.FriendsService.GetFriends (UUID PrincipalID) [0x00000] in <filename unknown>:0
Try adding this to your database connection string: ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=*****;Old Guids=true;"