Як запросити всіх членів команди на новий канал Slack


42

Чи можна запросити всіх користувачів (всю команду) на новий канал Slack? Здається, існує обмеження кількості людей, яких можна запросити одразу.



Так, це пов'язано, але насправді не дублікат. Це питання не дає вирішення моєї проблеми.
Аврам

1
Якщо ви використовуєте рішення з декількома робочими просторами (Slack Enterprise Grid), ваш список користувачів може включати людей, які не входять у вашу робочу область. Якщо ваш #channel залежить від робочої області, ці рішення потенційно додають ВСІХ користувачів до каналу.
Choovermonium

Відповіді:


3

Це, нарешті, можливо, /invite @listnameколи - коли ви вводите /invite @автоматичну пропозицію, ви отримаєте більше варіантів, ніж через посилання "запросити людей".


42

Оскільки рішення @Abram перестало працювати, я трохи пограв. Зараз це частково працює для мене, можливо, вам доведеться запустити його кілька разів

Його вказівки: просто перейдіть до відповідного каналу та вставте цей скрипт (нижче) у консоль розробника Chrome / Firefox та натисніть клавішу Enter. Потім зачекайте запуску сценарію, поки він не завершиться. Це може зайняти час, оскільки існує обмеження кількості користувачів, які можуть бути запрошені одночасно. Сценарій буде циклічним, поки не будуть запрошені всі члени команди.

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();  

1
Працює як шарм, дякую!
Pwdr

2
Дякуємо за надану робочу відповідь. Я зніму свою, оскільки вона перестала працювати.
Аврам

1
Обережно, це також запрошує ботів на каналі
Tib

Так. Також чомусь із великими групами вам потрібно запустити його двічі
Джон Алексіс Ґерра Ґомез

19

Знайшов більш просте рішення. Ні сценарію, ні розширень:

  1. Введіть /whoкоманду на каналі, де ви маєте (більшість) людей, яких ви хочете додати.
  2. Скопіюйте вихід
  3. Вставте його на канал, куди ви хочете, щоб вас запросили
  4. Натисніть Intro/Enterклавішу

Слабій запитає вас, що робити з усіма цими людьми, "яких ще немає в каналі". Якщо ви натиснете Inviteкнопку, ви отримаєте всіх запрошених


Я насправді не перевіряв цю відповідь, але припускаючи, що вона працює, її слід позначити правильним рішенням. Я призначив це як рішення, але буду вдячний підтвердженню інших, що рішення працює. Дякую!
Аврам

Це працювало для мене. Він поклав пост у новому каналі зі всіма @ в ньому. Але це добре мені.
davepreston

1
Однак це обмежено для показу перших 99 членів каналу (які ви можете скопіювати / вставити).
січня

4

Написав сценарій, який теж робить те ж саме.

Етапи:
1. Перейдіть на сторінку каналу
2. Скопіюйте та вставте код у консоль браузера

Усі користувачі будуть додані.

//////////////////////////////
// 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();
        })
}

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.