Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0008266opensim[GRID] Grid Servicepublic2017-11-15 14:222019-02-06 11:28
ReporterSheera Khan 
Assigned ToUbitUmarov 
PlatformindependentOSindependentOS Versionindependent
Product Version0.9.0 
Target VersionFixed in Version 
Summary0008266: Feature Wish: configurable persistent mute-list
DescriptionThe code kindly donated by Melanie seems to be most useful for closed grids in its current form. Would it be reasonable to make it so that there are several configurable options? I can think of four ways to handle mute lists:

1) Mute List Not Persistent
that's the current behaviour without any changes

2) Mute List for Closed Grids
that's the code donated by Melanie in its current form

3) Mute List by Viewer Cache
If I've understood it right, currently the viewer requests the Mute-List from the region. I was told, the region can answer with a message to the effekt of: "no change in the mute list, you can continue to use the cached one". This setting could be used on every region of a grid without properly implementing a gridwide Mute-List. It should be the easiest case if the above stated message exists. It should also be the fastest in operation because network traffic and database load should be neglectable. It would lack some comfort level features like persistent muting across different viewers and different machines though.

4) Mute List by Grid Service
That would be an actual reimplementation of parts of Melanies code to be integrated with the R.O.B.U.S.T. and include some changes to the database. It would have to include support for PostgresSQL and SQLite so some additions would be needed. It would have all the cool features but it would also be the most workload on the servers side as well as on the developers side.

With these four options users of OpenSim could keep the current behaviour or change it to suit their needs.
TagsNo tags attached.
Git Revision or version number
Run Mode Grid (1 Region per Sim)
Physics EngineBulletSim
EnvironmentMono / Linux64
Mono VersionOther
Attached Files

- Relationships
related to 0008262closedmelanie Feature Request: permanent storage of mute list 

-  Notes
melanie (administrator)
2017-11-15 15:06

1, 2 and 3 work now. 4 is likely to be added soon, removing 2 at the same time as it is redundant. Anything suitable for an open grid is also suitable for closed ones.
UbitUmarov (administrator)
2017-11-15 15:20

PostgresSQL ? you are asking 2 much :p

- 1 and 3 are actually not new.
if no module is defined or MuteListModule is selected and the url is not set, viewers are told to use their cached lists. If MuteListModule and url are set, the mutes is cleared by login region.
on Release im offline v2 will always clear the mute lists. No longer on master.
- comments still present on ini files (and possible code)claiming that MuteListModule needs to be selected for offline im and other services to work seem to be obsolete. Things seem to be working fine as said above. (and such direct dependence can not exist). Cant trace history to understand original problem. In fact SL seems to not reply to mutes request if both viewer cache and grid are empty

- 2
yes Xmute can be used where there are no security issues on exposing a MySQL server to all the regions.
note that a new Robust service may use different DB tables, so if using it now a migration may be required later, since there will be no reason to keep several Mute Modules in core. Xmute should be consider at most a transition module

this Robust mute service is in our TODO list, but no ETA at this time.
aiaustin (developer)
2017-11-16 03:05
edited on: 2017-11-16 04:51

This may be a separate issue (?)... but in testing offline IMs still work with latest Dev Master (1709-gd35ab8c 2017-11-14 12:12) including Melanie's mute list handling code donation ... I see THREE attempts to check the online status of the target (currently offline) avatar for the message... is that what we would expect?

10:59:18 - [HG IM SERVICE]: User is not present. Checking location with User Agent service
10:59:18 - [HG IM SERVICE]: Unable to locate user 3f0a097b-fbb0-4075-8430-87d8d9a7df48
10:59:20 - [HG IM SERVICE]: User is not present. Checking location with User Agent service
10:59:20 - [HG IM SERVICE]: Unable to locate user 3f0a097b-fbb0-4075-8430-87d8d9a7df48
10:59:20 - [HG IM SERVICE]: User is not present. Checking location with User Agent service
10:59:20 - [HG IM SERVICE]: Unable to locate user 3f0a097b-fbb0-4075-8430-87d8d9a7df48

I had a commented out MuteListModule = MuteListModule (but I see now the default is None) and a set custom MuteListURL...

    ; MuteListModule = MuteListModule
    MuteListURL = [^]
    ; ForwardOfflineGroupMessages = true

aiaustin (developer)
2017-11-16 03:30
edited on: 2017-11-16 04:06

Folks.. my initial testing indicates that offline IM between two avatars on same (Robust) grid has stopped working with dev master 1709-gd35ab8c 2017-11-14 12:12. The message is queued in the im_offline table but not delivered when the target receiver avatar logs in. I tried to comment out the MuteListURL, restarted and relogged in as the target avatar and it is still not delivered. I went back to the last working version I had available (opensim-0.9.0-1696-g5360a8f) and the queued message were immediately delivered when the target avatar logged in.

aiaustin (developer)
2017-11-16 04:00
edited on: 2017-11-16 04:08

I have 1709 working. I had to explicitly uncomment MuteListModule = MuteListModule which may have been something I should have had explicitly set anyway, as well as the MuteListURL line. My working [Messaging] settings are therefore...

     MuteListModule = MuteListModule
     MuteListURL = [^]
     ; ForwardOfflineGroupMessages = true

I do though still get the console messages for three attempts to deliver an IM to an offline avatar (on the same grid).

I think OpenSimDefaults.ini and OpenSim.ini.example may need a check to ensure all is in sync.

UbitUmarov (administrator)
2017-11-16 05:02

So if MuteListModule = MuteListModule is commented offline fails for you ?
what offlime module are you using ?
aiaustin (developer)
2017-11-16 05:25

Yes @Ubit... if I comment out MuteListModule and/or MuteListURL it fails to deliver offline IMs.. I needed BOTH to be uncommented for it to work...

Robusts.HG.ini ...


    ;; Uncomment this if you want offline IM to work
    OfflineIMServiceConnector = "${Const|PrivatePort}/OpenSim.Addons.OfflineIM.dll:OfflineIMServiceRobustConnector"

    ; OfflineIM
    OfflineIMService = "OpenSim.Addons.OfflineIM.dll:OfflineIMService"

    ;; for the HG Groups service
    OfflineIMService = "OpenSim.Addons.OfflineIM.dll:OfflineIMService"

OpenSim.ini ...

    OfflineMessageModule = "Offline Message Module V2"

    ;# {OfflineMessageURL} {OfflineMessageModule:OfflineMessageModule Offline Message Module V2:Offline Message Module V2} {URL of offline messaging service} {}
    ;; URL of web service for offline message storage. Leave it commented if your service is local to the sim.
    ; OfflineMessageURL = ${Const|BaseURL}/Offline.php
    OfflineMessageURL = ${Const|BaseURL}:${Const|PrivatePort}

    ;# {StorageProvider} {Offline Message Module V2:Offline Message Module V2} {DLL that provides the storage interface} {OpenSim.Data.MySQL.dll}
    ;; For standalones, this is the storage dll.
    ; StorageProvider = OpenSim.Data.MySQL.dll

    ;# {MuteListModule} {OfflineMessageModule:OfflineMessageModule} {} {} None
    ;; Mute list handler (not yet implemented). MUST BE SET to allow offline
    ;; messages to work
    MuteListModule = MuteListModule

    ;# {MuteListURL} {OfflineMessageModule:OfflineMessageModule} {} {} http://yourserver/Mute.php [^]
    ;; URL of the web service that serves mute lists. Not currently used, but
    ;; must be set to allow offline messaging to work.
    ; MuteListURL = http://yourserver/Mute.php [^]
    MuteListURL = [^]

    ;; Control whether group invites and notices are stored for offline users.
    ;; Default is true.
    ;; This applies to both core groups module.
    ; ForwardOfflineGroupMessages = true
UbitUmarov (administrator)
2017-11-16 10:54

Seems we where missing a message part of mutes protocol
Commented lines seem to should work now on master.
aiaustin (developer)
2017-11-16 11:40
edited on: 2017-11-16 13:31

Great...well done @Ubit. Do the OpenSimDefaults.ini and Opensim.ini.example files need altering to state the proper position now?

But which is the "correct" way to do this for the simple case. Should I use your new dev master and comment out the lines (like on OSGrid) or leave the lines active?

UbitUmarov (administrator)
2017-11-16 15:38

commenting will only allow mutes in viewer to work, a minor improvement.
UbitUmarov (administrator)
2018-01-05 03:12

think i did add to master the last more than many files needed for a simple robust services as this.. insane how we do have this in the name of... whatever...
well no.. still need to add code for other DBs, since only mySQL is suported now.

hopefully the config files and examples give the information needed to set it up.

the new module is still named MuteListModuleTst, if all ok it will replace the main MuteListModule and Xmutes will be removed, since as stated it was just a transition module

so for now, on regions OpenSim.ini you need to set
MuteListModule = MuteListModuleTst
UbitUmarov (administrator)
2018-01-19 23:30

robust mutes module is now the only mutes module on branch httptests.
it should now suport MySQL and SQLite dbs (almost untested)
on regions OpenSim.ini set
MuteListModule = MuteListModule
the other entries are ignored.

look to the example files for your case for the adicional settings.

note that branch httptests currently requires .net framework 4.6
that means mininal windows version is VISTA (may need that framework install).
(XP not suported by MS anymore, so will not work)
on linux a run time mono 5.x is needed. ( see [^])

mutes are local to the grid (or standalone), HG visitors operations will be silent ignored. On the next relog on home grid all mutes added on other grids will be deleted.
djphil (reporter)
2018-05-09 01:33

New page added on the wiki for MuteList @ [^]
(work in progress, be indulgent - contribution are welcome)
UbitUmarov (administrator)
2018-05-09 06:26

That mantis information is obsolete, not corresponding to core mute list module
The core module now works with robust (httptests dev branch)
UbitUmarov (administrator)
2018-06-16 06:29

feature was implemented
BillBlight (developer)
2019-02-06 11:28

Marked as Resolved but never closed, can be reopened if needed.

- Issue History
Date Modified Username Field Change
2017-11-15 14:22 Sheera Khan New Issue
2017-11-15 14:25 Sheera Khan Relationship added related to 0008262
2017-11-15 15:06 melanie Note Added: 0032438
2017-11-15 15:20 UbitUmarov Note Added: 0032439
2017-11-16 03:05 aiaustin Note Added: 0032442
2017-11-16 03:30 aiaustin Note Added: 0032443
2017-11-16 03:30 aiaustin Note Edited: 0032442 View Revisions
2017-11-16 03:31 aiaustin Note Edited: 0032443 View Revisions
2017-11-16 04:00 aiaustin Note Added: 0032444
2017-11-16 04:01 aiaustin Note Edited: 0032444 View Revisions
2017-11-16 04:06 aiaustin Note Edited: 0032444 View Revisions
2017-11-16 04:06 aiaustin Note Edited: 0032443 View Revisions
2017-11-16 04:08 aiaustin Note Edited: 0032444 View Revisions
2017-11-16 04:51 aiaustin Note Edited: 0032442 View Revisions
2017-11-16 05:02 UbitUmarov Note Added: 0032445
2017-11-16 05:25 aiaustin Note Added: 0032446
2017-11-16 10:54 UbitUmarov Note Added: 0032447
2017-11-16 11:40 aiaustin Note Added: 0032448
2017-11-16 13:30 aiaustin Note Edited: 0032448 View Revisions
2017-11-16 13:31 aiaustin Note Edited: 0032448 View Revisions
2017-11-16 15:38 UbitUmarov Note Added: 0032449
2018-01-05 03:12 UbitUmarov Note Added: 0032491
2018-01-19 23:30 UbitUmarov Note Added: 0032512
2018-05-09 01:33 djphil Note Added: 0032671
2018-05-09 06:26 UbitUmarov Note Added: 0032672
2018-05-09 09:35 Sheera Khan Resolution open => fixed
2018-06-16 06:29 UbitUmarov Note Added: 0032700
2018-06-16 06:29 UbitUmarov Status new => resolved
2018-06-16 06:29 UbitUmarov Assigned To => UbitUmarov
2019-02-06 11:28 BillBlight Note Added: 0034395
2019-02-06 11:28 BillBlight Status resolved => closed

Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker