Hi Daniel,
your changes to dispatcher module are great but consider these changes that i attached.
4.6. ds_is_from_list([groupid [, mode [, uri] ] ])
take 0,1,2 or 3 params
for me, it does make sense to move the mode prior to uri and allow to call it separately like
if( ds_is_from_list(2, 3) ) {
.....
}
Best