Bagaimana cara mengundang semua anggota tim ke saluran Slack baru

42

Apakah mungkin untuk mengundang semua pengguna (seluruh tim) ke saluran Slack baru? Sepertinya ada batasan jumlah orang yang bisa diundang sekaligus.

Abram
sumber
Terkait (Kemungkinan duplikat?) Undang beberapa pengguna Slack ke saluran
ale
Ya, itu terkait tetapi tidak benar-benar duplikat. Pertanyaan itu tidak memberikan solusi untuk masalah saya.
Abram
1
Jika Anda menggunakan solusi multi-workspace (Slack Enterprise Grid) daftar pengguna Anda mungkin menyertakan orang-orang di luar ruang kerja Anda. Jika # channel Anda khusus untuk ruang kerja, solusi ini berpotensi menambah SEMUA pengguna ke saluran.
Choovermonium

Jawaban:

3

Ini akhirnya mungkin dengan /invite @listname- ketika Anda mengetik /invite @saran otomatis akan memberi Anda lebih banyak opsi daripada melalui tautan "undang orang".

DreamFlasher
sumber
42

Karena solusi @Abram berhenti bekerja saya bermain sedikit. Yang ini berfungsi sebagian untuk saya sekarang, Anda mungkin perlu menjalankannya beberapa kali

Petunjuknya: Cukup telusuri ke saluran yang sesuai dan tempel skrip ini (di bawah) ke konsol dev Chrome / Firefox Anda dan tekan enter. Kemudian tunggu skrip dijalankan hingga selesai. Mungkin perlu waktu karena ada batasan berapa banyak pengguna yang diundang sekaligus. Script akan berulang sampai semua anggota tim diundang.

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
sumber
1
Bekerja seperti pesona, terima kasih!
Pwdr
2
Terima kasih telah memberikan jawaban yang berfungsi. Saya akan menghapus milik saya karena sudah berhenti bekerja.
Abram
1
Peduli, ini juga mengundang bot di saluran
Tib
Ya itu. Juga, untuk beberapa alasan dengan grup besar, Anda harus menjalankannya dua kali
John Alexis Guerra Gómez
20

Menemukan solusi yang lebih mudah. Tanpa skrip, tanpa ekstensi:

  1. Ketikkan /whoperintah pada saluran tempat Anda memiliki (sebagian besar) orang yang ingin Anda tambahkan.
  2. Salin hasilnya
  3. Rekatkan di saluran tempat Anda ingin orang-orang itu diundang
  4. Tekan Intro/Entertombol

Slack akan bertanya kepada Anda apa yang harus dilakukan dengan semua orang "yang belum masuk saluran". Jika Anda menekan Invitetombol Anda akan membuat semua orang diundang

jonayreyes
sumber
Saya sebenarnya tidak menguji jawaban ini, tetapi dengan asumsi itu berfungsi, itu harus ditandai solusi yang benar. Saya telah menetapkan ini sebagai solusinya, tetapi akan sangat menghargai konfirmasi dari orang lain bahwa solusinya bekerja. Terima kasih!
Abram
Itu berhasil untuk saya. Itu memang menempatkan posting di saluran baru dengan @ semua orang di dalamnya. Tapi itu tidak masalah bagi saya.
davepreston
1
Namun ini terbatas untuk menunjukkan 99 anggota pertama saluran (yang dapat Anda salin / tempel).
Jan
4

Menulis naskah yang juga melakukan hal yang sama.

Langkah-langkah:
1. Buka halaman saluran
2. Salin / tempel kode ke konsol browser

Semua pengguna akan ditambahkan.

//////////////////////////////
// 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
sumber