ฉันจะเชิญสมาชิกทุกคนในทีมไปยังช่องทาง Slack ใหม่ได้อย่างไร


42

เป็นไปได้ไหมที่จะเชิญผู้ใช้ทั้งหมด (ทั้งทีม) เข้าร่วมแชนเนล Slack ใหม่ ดูเหมือนว่ามีการ จำกัด จำนวนคนที่สามารถเชิญได้ในครั้งเดียว


ที่เกี่ยวข้อง (เป็นไปได้หรือไม่ที่ซ้ำกัน?) เชิญผู้ใช้ Slack หลายคนเข้าร่วมช่อง
ale

ใช่ว่ามีความเกี่ยวข้อง แต่ไม่ซ้ำกันจริงๆ คำถามนั้นไม่ได้ช่วยแก้ปัญหาของฉัน
Abram

1
หากคุณกำลังใช้โซลูชัน multi-workspace (Slack Enterprise Grid) รายการผู้ใช้ของคุณอาจรวมถึงผู้ที่อยู่นอกพื้นที่ทำงานของคุณ หาก #channel ของคุณเฉพาะพื้นที่ทำงานโซลูชันเหล่านี้อาจเพิ่มผู้ใช้ทั้งหมดในช่อง
Choovermonium

คำตอบ:


3

วิธีนี้เป็นไปได้ด้วย/invite @listname- เมื่อคุณพิมพ์/invite @การแนะนำอัตโนมัติจะให้ตัวเลือกมากกว่าการเชื่อมโยง "เชิญคน"


42

ตั้งแต่ @Abram โซลูชันหยุดทำงานฉันเล่นนิดหน่อย อันนี้ใช้งานได้บางส่วนสำหรับฉันตอนนี้คุณอาจต้องใช้มันสองสามครั้ง

คำแนะนำของเขา: เพียงเรียกดูช่องทางที่เหมาะสมและวางสคริปต์นี้ (ด้านล่าง) ลงในคอนโซล Chrome / Firefox dev ของคุณแล้วกด 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
ขอบคุณที่ให้คำตอบที่ใช้ได้ ฉันจะลบของฉันออกเนื่องจากมันหยุดทำงาน
Abram

1
ความสนใจนี่ก็เชิญบอทในช่องด้วย
Tib

ใช่แล้ว. นอกจากนี้ด้วยเหตุผลบางอย่างกับกลุ่มใหญ่คุณต้องเรียกใช้สองครั้ง
John Alexis Guerra Gómez

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.