Wie lade ich alle Teammitglieder zu einem neuen Slack-Kanal ein?

42

Ist es möglich, alle Benutzer (das gesamte Team) zu einem neuen Slack-Kanal einzuladen? Die Anzahl der Personen, die gleichzeitig eingeladen werden können, scheint begrenzt zu sein.

Abram
quelle
Verbunden. (Mögliche doppelte?) Laden mehrere Slack Benutzer auf einen Kanal
ale
Ja, das ist verwandt, aber nicht wirklich ein Duplikat. Diese Frage bietet keine Lösung für mein Problem.
Abram
1
Wenn Sie eine Lösung für mehrere Arbeitsbereiche (Slack Enterprise Grid) verwenden, enthält Ihre Benutzerliste möglicherweise Personen außerhalb Ihres Arbeitsbereichs. Wenn Ihr #Channel arbeitsbereichsspezifisch ist, fügen diese Lösungen möglicherweise ALLE Benutzer zum Channel hinzu.
Choovermonium

Antworten:

3

Dies ist endlich möglich mit /invite @listname- Wenn Sie " /invite @Automatisch vorschlagen" eingeben, erhalten Sie mehr Optionen als über den Link "Personen einladen".

DreamFlasher
quelle
42

Da die @Abram-Lösung nicht mehr funktionierte, habe ich ein bisschen gespielt. Dieser funktioniert teilweise für mich jetzt, Sie müssen es jedoch möglicherweise ein paar Mal ausführen

Seine Anweisungen: Navigieren Sie einfach zum entsprechenden Kanal, fügen Sie dieses Skript (unten) in Ihre Chrome / Firefox-Konsole ein und drücken Sie die Eingabetaste. Warten Sie dann, bis das Skript ausgeführt wurde. Dies kann einige Zeit in Anspruch nehmen, da die Anzahl der Benutzer, die gleichzeitig eingeladen werden dürfen, begrenzt ist. Das Skript wird wiederholt, bis alle Teammitglieder eingeladen sind.

var foundAny=false;
function selectAllByLetter(remainingLetters) {
  console.log(remainingLetters)
  var letter = remainingLetters.pop();
  $("#channel_invite_filter").val(letter).trigger("input");
  setTimeout(function() {
    $(".channel_invite_member:not(hidden)").each(function(i, obj) {
        foundAny=true;
        this.click();
    });
    if (remainingLetters.length) {
      selectAllByLetter(remainingLetters);
    } else {
      setTimeout(function() {
        console.log("Inviting them all!")
        $('.invite_go').click()
      },400)     
    }
  },300);
}

function inviteAllUsers() {      
  foundAny=false;     
  setTimeout(function () {    
      setTimeout(function() {
        $('#channel_actions_toggle').click();
      },100)
      setTimeout(function() {
        $('#channel_invite_item').click();
      },200)
      //Enter each letter to trigger searches
      var remainingLetters = ["a","b","c","d","e","f","g","h","i","j","v","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"];
      selectAllByLetter(remainingLetters);
      if (foundAny) {
        inviteAllUsers();
      }
   }, 4000);
}
inviteAllUsers();  
John Alexis Guerra Gómez
quelle
1
Funktioniert wie ein Zauber, danke!
Pwdr
2
Vielen Dank für die funktionierende Antwort. Ich werde meine entfernen, da sie nicht mehr funktioniert.
Abram
1
Achtung, dazu laden auch Bots im Channel ein
Tib
Ja tut es. Aus irgendeinem Grund müssen Sie es bei großen Gruppen zweimal laufen lassen
John Alexis Guerra Gómez,
19

Ich habe eine einfachere Lösung gefunden. Kein Skript, keine Erweiterungen:

  1. Geben Sie den /whoBefehl in einen Kanal ein, in dem Sie die (meisten) Personen haben, die Sie hinzufügen möchten.
  2. Kopieren Sie die Ausgabe
  3. Fügen Sie es in den Kanal ein, in den diese Personen eingeladen werden sollen
  4. Drücken Sie Intro/EnterTaste

Slack wird dich fragen, was du mit all den Leuten machen sollst, "die noch nicht im Channel sind". Wenn Sie den InviteKnopf drücken, werden alle eingeladen

jonayreyes
quelle
Ich habe diese Antwort nicht wirklich getestet, aber wenn sie funktioniert, sollte sie als die richtige Lösung markiert werden. Ich habe dies als Lösung zugewiesen, würde mich aber über eine Bestätigung durch andere freuen, dass die Lösung funktioniert. Vielen Dank!
Abram
Es hat bei mir funktioniert. Es wurde ein Beitrag in den neuen Channel gestellt, in dem alle @ enthalten sind. Aber für mich ist das in Ordnung.
Davepreston
1
Dies ist jedoch auf die ersten 99 Mitglieder des Kanals beschränkt (die Sie kopieren / einfügen können).
Januar
4

Schrieb ein Skript, das das gleiche auch tut.

Schritte:
1. Rufen Sie die Kanalseite auf.
2. Kopieren Sie den Code und fügen Sie ihn in die Browserkonsole ein

Alle Benutzer werden hinzugefügt.

//////////////////////////////
// AFTER.JS Module
//////////////////////////////

var After = function () {
    this._totalTime = 0;
};

// It's prototype
var protoAfter = {
    // After (time) seconds, run a handler
    after: function (time, handler) {
        this._totalTime += time;

        setTimeout(function () {
            handler();
        }, this._totalTime * 1000);

        return this;
    }
};

$.extend(After.prototype, protoAfter);

//\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ End of After section

var first = "a",
    last = "z";

var after = new After();
after.charIndex = first.charCodeAt(0);

for (var i = first.charCodeAt(0); i <= last.charCodeAt(0); i++) {

    after
        .after(0.3, function () {
            $('#channel_actions_toggle').click();
        })

        .after(0.3, function () {
            $('#channel_invite_item').click();
        })

        .after(0.3, function () {
            $("#channel_invite_filter").focus();
            $("#channel_invite_filter").val(String.fromCharCode(after.charIndex)); // type in character
            $("#channel_invite_filter").trigger("input");
            after.charIndex++;
        })

        .after(0.5, function () {
            $(".add_icon").click();
        })

        .after(0.5, function () {
            $(".invite_go").click();
        })

        .after(0.5, function () {
            $("#fs_modal_close_btn").click();
        })
}
yehyaawad
quelle