Làm cách nào để tôi mời tất cả các thành viên trong nhóm vào kênh Slack mới


42

Có thể mời tất cả người dùng (toàn bộ nhóm) vào một kênh Slack mới không? Dường như có giới hạn về số lượng người có thể được mời cùng một lúc.


Liên quan. (Có thể trùng lặp?) Mời nhiều người dùng Slack vào một kênh
ale

Vâng, đó là liên quan nhưng không thực sự là một bản sao. Câu hỏi đó không cung cấp một giải pháp cho vấn đề của tôi.
Abram

1
Nếu bạn đang sử dụng giải pháp nhiều không gian làm việc (Slack Enterprise Grid), danh sách người dùng của bạn có thể bao gồm những người bên ngoài không gian làm việc của bạn. Nếu #channel của bạn dành riêng cho không gian làm việc, các giải pháp này có khả năng thêm TẤT CẢ người dùng vào kênh.
Choovermonium

Câu trả lời:


3

Điều này cuối cùng cũng có thể với /invite @listname- khi bạn nhập /invite @đề xuất tự động sẽ cung cấp cho bạn nhiều tùy chọn hơn thông qua liên kết "mời mọi người".


42

Vì giải pháp @Abram ngừng hoạt động nên tôi đã chơi một chút. Cái này hoạt động một phần cho tôi bây giờ, bạn có thể cần phải chạy nó một vài lần

Hướng dẫn của anh ấy: Chỉ cần duyệt đến kênh thích hợp và dán tập lệnh này (bên dưới) vào bảng điều khiển dành cho nhà phát triển Chrome / Firefox của bạn và nhấn enter. Sau đó chờ kịch bản chạy cho đến khi hoàn thành. Có thể mất thời gian vì có giới hạn số lượng người dùng có thể được mời cùng một lúc. Kịch bản sẽ lặp cho đến khi tất cả các thành viên trong nhóm được mời.

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
Hoạt động như một cơ duyên, cảm ơn!
Pwdr

2
Cảm ơn đã cung cấp một câu trả lời làm việc. Tôi sẽ loại bỏ của tôi vì nó đã ngừng hoạt động.
Abram

1
Tib

Có nó làm. Ngoài ra, vì một số lý do với các nhóm lớn, bạn cần điều hành hai lần
John Alexis Guerra Gómez

20

Tìm thấy một giải pháp đơn giản hơn. Không có kịch bản, không có phần mở rộng:

  1. Nhập /wholệnh trên kênh nơi bạn có (hầu hết) người bạn muốn thêm.
  2. Sao chép đầu ra
  3. Dán nó vào kênh mà bạn muốn những người đó được mời
  4. Nhấn Intro/Enterphím

Slack sẽ hỏi bạn phải làm gì với tất cả những người đó "chưa có trong kênh". Nếu bạn nhấn Invitenút, bạn sẽ được mọi người mời


Tôi đã không thực sự kiểm tra câu trả lời này, nhưng giả sử nó hoạt động, nó sẽ được đánh dấu là giải pháp chính xác. Tôi đã chỉ định đây là giải pháp, nhưng sẽ đánh giá cao sự xác nhận từ những người khác rằng giải pháp đó hoạt động. Cảm ơn!
Abram

Nó làm việc cho tôi. Nó đã đặt một bài đăng trong kênh mới với @ của mọi người trong đó. Nhưng điều đó tốt với tôi.
davepreston

1
Tuy nhiên, điều này bị giới hạn để hiển thị 99 thành viên đầu tiên của kênh (bạn có thể sao chép / dán).
tháng 1

4

Đã viết một kịch bản cũng làm điều tương tự.

Các bước:
1. Chuyển đến trang kênh
2. Sao chép / dán mã vào bảng điều khiển trình duyệt

Tất cả người dùng sẽ được thêm vào.

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

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.