I would like to request a feature.

Started by nipper, January 20, 2014, 01:05:54 AM

Previous topic - Next topic

nipper

I would like to request a feature.


If a certen group joins a channel they get moved to another channel.

Example:
Channels

Join to move to channel
--  Join to go to Channel 1
--  Join to go to Channel 2
--  Join to go to Channel 3



Main Channels
-- Channel 1
-- Channel 2
-- Channel 3


Now if someone that is in the guest group joins "Join to go to Channel 1" they get auto moved to "Channel 1" if they join "Join to go to Channel 2" They get moved to "Channel 2" and so on.


Reason being is that my server we get so many randoms that we want to not allow them to move freely unless they sign up. But still allow them to join one channel to get auto moved to a lobby channel of the where they like to go.

Stefan1200

I don't understand why you need that. Why not allow everyone to join that main channels directly? You know that you can set the needed join power for each channel separately?

nipper

#2
yeah but people are stupid. When you have a huge list they never do look what they can join or not. So if in the lobby has a set of channels telling them when they join they get moved it helps those who are just retarded. This can also help with say multi gamming servers. Where you want only certen groups able to join a channel and if they do they are auto moved out. I know about the join power but it is done by level not by group. Meaning if someone has a higher number they can join any thing below that. But some times you just want them not able to join channel where they do not belong.

In other words if the group is not on the list to allow access they get auto moved out of the channel to a predefined channel also maybe a poke from server with a custom message saying why they were moved as well.

Stefan1200

Quote from: nipper on January 21, 2014, 12:02:18 AM
I know about the join power but it is done by level not by group. Meaning if someone has a higher number they can join any thing below that. But some times you just want them not able to join channel where they do not belong.

This can be solved using Channel Groups. Don't give the join power to the Server Group, create a Channel Group with the join power you need for all channels. Add clients to that Channel Group while they are in a channel they should be able to join. One Channel Group is enough for all clients and channels. Clients can only join channels where they also have the Channel Group added.

nipper

but thats the thing. If I do it that way it only works in order.
Meaning I want one group able to join a channel but no other group to join.

If I set it up with the numbers as in the perms anyone with the number or  higher then the channel join power they can join. So in other words. I can lock it to a group but if another group has a same or higher number they can still join. That is the issue. Thats why I would like to request a auto move if the group/groups are not on a list to predefined channel.

I know you are going to say use a password. But that tends to get annoying handing out passwords as everyone forgets them.

nipper

#5
I will give you more examples of what I mean.


Group(s)
Group 1
Group 2
Group 3

Channels(s)
Channel 1
Channel 2
Channel 3

Move to channel(s)
Channel Dead 1
Channel Dead 2


K with that said.
Channel 1 Allows Group 1 to join. But if anyone not in those allowed groups gets moved to "Channel Dead 1"
Channel 2 Allows Group 1/Group 3 to join. But if anyone not in those allowed groups gets moved to "Channel Dead 1"
Channel 3 Allows Group 2/Group 3 to join. But if anyone not in those allowed groups gets moved to "Channel dead 2"

User 1 has "Group 1" and tries to move in to "Channel 3" he gets auto moved to "Channel Dead 2"
User 2 has "Group 1" and "Group 2" tries to move in to "Channel 3" he is then allow to say due to being in "Group 2"
User 3 has "Group 2" and moves in to "Chanel 1" He is then moved to "Channel Dead 1"


The number of allow groups per channel is defined with a setting. Same with what channel they get moved to.

Maybe a TS3 command like
!channelallow "guid,guid2,guid3,ext" "channelidtomoveto"

Stefan1200

#6
Quote from: nipper on January 22, 2014, 12:45:42 PM
If I set it up with the numbers as in the perms anyone with the number or  higher then the channel join power they can join. So in other words. I can lock it to a group but if another group has a same or higher number they can still join. That is the issue. Thats why I would like to request a auto move if the group/groups are not on a list to predefined channel.

No, you talk about adding the join power to the server group.
I talk about adding the join power to a channel group! In this case only that clients can join the channel, who is member of this channel group in that channel. Other channels can't joined by this client, if that client is not member of that channel group in the target channel.

Example:
Channel group with the name Channel Access
This channel group has set i_channel_join_power to 75.

You have three channels:
Channel 1 (with i_channel_needed_join_power = 50)
Channel 2 (with i_channel_needed_join_power = 50)
Channel 3 (with i_channel_needed_join_power = 50)

Client A has by default set i_channel_join_power to 20, that client can't join any of the above channels.
Now an TS3 admin move Client A to Channel 2 and add this client in that channel to the channel group Channel Access. Now Client A can join Channel 2 on his own, but is still not able to join Channel 1 and 3.

nipper

#7
yeah it could be done that way. But I would like to have a auto move feature to do it for me. This way I can use the same idea to auto move users to certen channels. Having a admin move someone in to the channel then add them can create a huge mess as you don't want everyone able to move people just because they own a channel. But not minding people handing out lower tier groups. Having to add a channel group for alot of channels is a pain in the ass it would be easier just to hand out a server group.

Stefan1200

Quote from: nipper on January 23, 2014, 12:38:06 AM
Having to add a channel group for alot of channels is a pain in the ass it would be easier just to hand out a server group.

Well, of course, if you have a lot of channels that's really a pain. But doing this with a lot of channels like you suggested, it's a very dirty workaround, because you need virtual jump channels for every channel of it.

A better suggestion is to have a bot chat command that assign the channel groups to every specified channel. So the client don't have to be online and you don't have to switch the client around. What do you think about the following chat command:
!setchannelgroups <client database id> <channel group id> <channel list separated with a comma>
As an example:
!setchannelgroups 42 7 3,6,8,24,45,65
This set the channel group 7 (which is something like the channel group Channel Access from my last forum post) to the client 42 in the following channels: 3,6,8,24,45,65

You can save that command in a text file on your desktop, just copy & paste it to the bot, just change the client database id, done. What do you think?

nipper

Not what I was looking for really. I just need if the group is or is not on the list auto moved them to a predefined channel. But I don't see how it could be to dirty. It would only have to check once some one joins a channel. So maybe a onjoin check if group is or is not on the list.

Stefan1200

Quote from: nipper on January 23, 2014, 11:30:12 AM
Not what I was looking for really. I just need if the group is or is not on the list auto moved them to a predefined channel. But I don't see how it could be to dirty. It would only have to check once some one joins a channel. So maybe a onjoin check if group is or is not on the list.

You call a lot of dummy channels, which only used to move someone in another channel, not dirty? Because how you want to handle 50 restricted channels with one "jump channel"? Maybe I still not get the point, but you where talking about a lot of channels. Of course you can sort some out using the server group, but if one server group needs access to 10 restricted channels, you have to create 10 jump channels. The channel group on chat command idea is much more cleaner, fast to do and don't need dozens of dummy channels.

nipper

#11
no no the idea was what I was using. But not just for moving to another channel. Just move those out who do not belong to a channel. Not just a dummy channel just any predefined channel. As I stated in my last example.

Stefan1200

#12
Quote from: nipper on January 24, 2014, 12:15:16 AM
no no the idea was what I was using. But not just for moving to another channel. Just move those out who do not belong to a channel. Not just a dummy channel just any predefined channel. As I stated in my last example.

Ah, now I understand you, sorry.
Something like a channel protection.
Well, it's still a workaround and I prefer the channel group method, but it's not as dirty as dummy jump channels. :)

You know that this feature make it impossible that an admin can move someone into that channel?
I can't promise that this will come, but I put it on my ToDo list.

nipper

yeah I know admin can move people to any channel no mater what the levels they might have. But having it to can help. Plus not having to have someone move people but allow them to do it helps. But thanks for adding it to the todolist.

I also been using your bot from the start. It has come a long way.

nipper

just another thought.

have a !groupchannelallow and !groupchanneldisallow

the allow will let only the groups on the list in. But move everyone else out to predefined channel

the disallow will only move the groups on the list out. But let everyone else in.