Skip to content

Instantly share code, notes, and snippets.

@demaisj
Created May 9, 2019 06:46
Show Gist options
  • Save demaisj/60b8f868dd143fad82b5b9a4d83aac7c to your computer and use it in GitHub Desktop.
Save demaisj/60b8f868dd143fad82b5b9a4d83aac7c to your computer and use it in GitHub Desktop.
// ==UserScript==
// @name Microsoft Teams Settings Patcher (Webcam + Screenshare) QUITE BROKEN
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @match https://teams.microsoft.com/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
console.log('[PATCHER] HELLO!');
// https://github.com/IsmaelMartinez/teams-for-linux/blob/develop/app/browser/index.js
function patch() {
console.log('[PATCHER] PATCHING!');
setTimeout(() => {
console.log('[PATCHER] TIMED OUT!');
let injector = angular.element(document).injector();
if(injector) {
enableChromeVideoAudioMeetings(injector);
disablePromoteStuff(injector);
injector.get('settingsService').settingsService.refreshSettings();
}
// Future tests can be done in here...
// angular.element(document).injector().get('settingsService').appConfig.replyBoxFocusAfterNewMessage = true;
//last I look is enableIncomingVideoUnsupportedUfd groing from down to up.
}, 3000);
}
function enableChromeVideoAudioMeetings(injector) {
injector.get('callingSupportService').oneOnOneCallingEnabled = true;
injector.get('callingSupportService').isChromeMeetingSingleVideoEnabled = true;
injector.get('callingSupportService').isChromeVideoOneOnOneEnabled = true;
injector.get('callingSupportService').isChromeVideoMultipartyEnabled = true;
injector.get('settingsService').appConfig.enableCallingChromeOneOnOne = true;
injector.get('settingsService').appConfig.callingEnableChromeMeetingSingleVideo = true;
injector.get('settingsService').appConfig.callingEnableChromeMultipartyVideo = true;
injector.get('settingsService').appConfig.enableChromeScreenSharing = true;
injector.get('settingsService').appConfig.enableAddToChatButtonForMeetings = true;
injector.get('settingsService').appConfig.enableSharingOnlyCallChrome = true;
injector.get('settingsService').appConfig.enableScreenSharingToolbar = true;
injector.get('settingsService').appConfig.enableCallingScreenPreviewLabel = true;
injector.get('settingsService').appConfig.callingEnableChromeOneToOneVideo = true;
injector.get('settingsService').appConfig.enableMeetingStartedNotificationWeb = true;
injector.get('settingsService').appConfig.enableMicOSUnmuteOnUnmute = true;
injector.get('settingsService').appConfig.enableModeratorsSupport = true;
injector.get('settingsService').appConfig.enableRecordPPTSharing = true;
}
function disablePromoteStuff(injector) {
injector.get('settingsService').appConfig.promoteMobile = false;
injector.get('settingsService').appConfig.promoteDesktop = false;
injector.get('settingsService').appConfig.hideGetAppButton = true;
injector.get('settingsService').appConfig.enableMobileDownloadMailDialog = false;
}
patch();
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment