azlux / pymumble

Mumble client implementation in Python
GNU General Public License v3.0
128 stars 61 forks source link

Editing ACLs #123

Open michalramus opened 1 year ago

michalramus commented 1 year ago

Could you implement ACLs editing and users mute/unmute features?

azlux commented 1 year ago

Hi, mute/unmute should be already implemented : https://github.com/azlux/pymumble/blob/pymumble_py3/API.md#user-object global ACL aren't implemented, it's not really the goal of this lib. I currently don't have time for that.

But I accept PR and can provide help.

michalramus commented 1 year ago

I need to edit ACLs from console application hosted on server. Could you tell me how can I do that in other way?

azlux commented 1 year ago

Only from the console ? I suppose it's for some automation ? If you can script, I think mumo is the best : https://wiki.mumble.info/wiki/Mumo

michalramus commented 1 year ago

Sorry, I haven't explained myself clearly. I am going to create intercom system for video production. Example: user one is master, channel 1, 2, 3 - channel with groups e. g. camera operators/audio operators. As master user I have to talk to these channels, listen to them and change channels that I'm talking and listening in real time. I made small research and I think changing ACLs in real time is the best option.

I checked Mumo and it doesn't support managing ACLs

EDIT: I'm going to create script in e. g. Python that reads commands from mqtt and makes changes in Mumble.

azlux commented 1 year ago

Ho, I think the "link" channel is what you're aiming. https://wiki.mumble.info/wiki/ACL_and_Groups/English#Link_Channel I'm not sure to understand yours needs.

michalramus commented 1 year ago

Yes, and I need ACLs to manage links(sometimes I need to hear first channel, sometimes second, and sometimes speak to one of them).

azlux commented 1 year ago

Link is also a supported feature, it's not really a ACL : https://github.com/azlux/pymumble/blob/pymumble_py3/API.md#channel-object

michalramus commented 1 year ago

By default linked channels can listen and talk to each other. I need to disable listening first channel to second without disabling listening second channel to first and that's why I need ACLs.

michalramus commented 1 year ago

I'm going to make more complicated variation of this: https://www.rythechurchtechguy.com/mumble-effective-free-audio-communications-for-small-church-production/#amp_tf=Od%3A%20%251%24s&aoh=16652475842076&referrer=https%3A%2F%2F

azlux commented 1 year ago

Hi, I'm not even sure if ACL is enough for your need. I'm not currently working on pymumble, ACL is part of protobuff messages i've never worked on.