bitfocus / companion-module-microsoft-teams

MIT License
3 stars 2 forks source link

update for ms teams API 2.0.0 #3

Closed Jarec-au closed 5 months ago

Jarec-au commented 9 months ago

Update for teams api 2.0.0 in Teams for School and Work. Added additional status updates. Automatically retrieves new API key and saves into config.

leonreucher commented 9 months ago

Hey,

thanks for your contribution. But I think instead of replacing the functionality for the old version, we should implement an selector for the version to be used. With this both applications can be controlled by teams.

Jarec-au commented 9 months ago

Good call. I'll see what I can do.

whizkidTRW commented 9 months ago

Following this as I use my Stream Deck with teams and it now no longer works. Any updates?

dseehof commented 8 months ago

A few comments. I used your branch and after fixing a typo in the manifest (there is a comma missing after one of the emails) it works just fine, if running on the same machine as the teams client. I dug a bit deeper on my Mac and Teams only opens the listener on 127.0.0.1 port 8124 instead of 0.0.0.0 so I could connect from a Companion instance running elsewhere on the network. Any idea how to get Microsofts attentions to add an option to change that?

whizkidTRW commented 8 months ago

I too have been using this in dev mode on my local client with success. I seriously doubt you'll get Microsoft to address this or even respond. Can we go ahead and merge this PR for now and possibly address the non-local instance control in a later update?

22hn commented 7 months ago

Hi!

What's the status of this, when can we expect to have a working module again? How can I install this "beta"?

leonreucher commented 6 months ago

As I said before, just merging the PR would destroy the configuration of all users still using the old application. The code needs to be rewritten to be able to select which client version is wanted. I don't have the time right now to do this, do you @Jarec-au ?

Jarec-au commented 6 months ago

@leonreucher, module updated to include v1.0.0 and v2.0.0 support. There's no fancy pre-generated buttons or update scripts, but I tested on old teams and new teams this morning, all working with both API selections.

istamov commented 5 months ago

Using CompanionPi and trying to manage Teams remotely on my local network - it seems that the API is listening only on localhost (127.0.0.1:8124), but this seems to be easily bypassed by using socat to forward requests coming from the local network (limited only to clients within "range=" subnet):

socat -d TCP4-LISTEN:8124,range=192.168.x.x/24,reuseaddr,fork TCP:127.0.1:8124

That way CompanionPi should be able to control Teams via network socket, but currently the integration is not working, so merging this request will be of a great help 😃

It also seems that Microsoft is deprecating Teams Classic v1.0.0 (https://learn.microsoft.com/en-us/microsoftteams/teams-classic-client-end-of-availability) starting from 31 March 2024, probably there is no longer need to support old clients?

Thank you for your great work!

gymnae commented 5 months ago

How could one use this module until it becomes part of the ofifical packaged plugin? We were forced upgraded and right now my loupedeck is not useful anymore. I tried downloading the repo as a zip and point the companion app at the folder, but I'm not able to get it to run since I am missing the developer enviroment.

istamov commented 5 months ago

Okay, so for anyone else that needs this module before it is being merged to the official code (I am using CompanionPi, so the instructions are for it):

sudo su cd /opt/companion-module-dev git clone https://github.com/bitfocus/companion-module-microsoft-teams cd companion-module-microsoft-teams gh pr checkout 3 (you will have to login here with your github account) yarn install reboot

Then you need to start socat redirection on your computer (change the IP range to match your internal subnet):

socat TCP4-LISTEN:8124,fork,range=192.168.1.0/23 TCP:127.0.1:8124

And then configure Companion with Teams API v2.0.0, enter your computer's IP, add button with Teams action, start a meeting and press the StreamDeck button. Your Teams app should ask for permission and then it should work 😃

@Jarec-au, thanks a lot for the new version!