मैं सभी टीम के सदस्यों को एक नए स्लैक चैनल में कैसे आमंत्रित करूं


42

क्या सभी उपयोगकर्ताओं (पूरी टीम) को एक नए स्लैक चैनल में आमंत्रित करना संभव है? ऐसा लगता है कि एक बार में आमंत्रित किए जा सकने वाले लोगों की संख्या की सीमाएँ हैं।



हाँ, यह संबंधित है लेकिन वास्तव में डुप्लिकेट नहीं है। यह प्रश्न मेरी समस्या का समाधान नहीं देता है।
अब्राम

1
यदि आप एक बहु-कार्यक्षेत्र समाधान (सुस्त एंटरप्राइज ग्रिड) का उपयोग कर रहे हैं, तो आपकी उपयोगकर्ता सूची में आपके कार्यक्षेत्र के बाहर के लोग शामिल हो सकते हैं। यदि आपका # चैनल कार्यक्षेत्र-विशिष्ट है, तो ये समाधान संभावित रूप से सभी उपयोगकर्ताओं को चैनल में जोड़ते हैं।
चोवेमोरियम

जवाबों:


3

यह अंत में संभव है /invite @listname- जब आप /invite @ऑटो टाइप करते हैं तो आपको "लोगों को आमंत्रित करें" लिंक की तुलना में अधिक विकल्प मिलेंगे।


42

चूंकि @Abram सॉल्यूशन ने काम करना बंद कर दिया था इसलिए मैंने थोड़ा सा खेला। यह एक आंशिक रूप से मेरे लिए अब काम करता है, आपको इसे दो बार चलाने की आवश्यकता हो सकती है

उनके निर्देश: बस उपयुक्त चैनल पर ब्राउज़ करें और इस स्क्रिप्ट (नीचे) को अपने क्रोम / फ़ायरफ़ॉक्स देव कंसोल और हिट एंटर में पेस्ट करें। तब तक स्क्रिप्ट के पूरा होने तक प्रतीक्षा करें। इसमें समय लग सकता है क्योंकि एक बार में कितने उपयोगकर्ताओं को आमंत्रित किया जा सकता है। टीम के सभी सदस्यों को आमंत्रित किए जाने तक स्क्रिप्ट लूप होगी।

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
एक आकर्षण की तरह काम करता है, धन्यवाद!
पद्द्र

2
काम का जवाब देने के लिए धन्यवाद। मैं अपना काम निकाल दूंगा क्योंकि इसने काम करना बंद कर दिया है।
अब्राम

1
देखभाल, यह चैनल में बॉट को भी आमंत्रित करता है
टीबी

हाँ यह करता है। इसके अलावा, बड़े समूहों के साथ किसी कारण के लिए आपको इसे दो बार चलाने की आवश्यकता है
जॉन एलेक्सिस गुएरा गोमेज़

19

अधिक सरल समाधान मिला। कोई स्क्रिप्ट नहीं, कोई एक्सटेंशन नहीं:

  1. उस /whoचैनल पर कमांड टाइप करें जहां आपके पास (सबसे) ऐसे लोग हैं जिन्हें आप जोड़ना चाहते हैं।
  2. आउटपुट की प्रतिलिपि बनाएँ
  3. इसे चैनल में पेस्ट करें जहाँ आप उन लोगों को आमंत्रित करना चाहते हैं
  4. प्रेस Intro/Enterकुंजी

स्लैक आपसे पूछेगा कि उन सभी लोगों के साथ क्या करना है "जो अभी तक चैनल में नहीं हैं"। यदि आप Inviteबटन दबाते हैं तो आप सभी को आमंत्रित करेंगे


मैंने वास्तव में इस उत्तर का परीक्षण नहीं किया था, लेकिन यह मानकर कि यह काम करता है, इसे सही समाधान के रूप में चिह्नित किया जाना चाहिए। मैंने इसे समाधान के रूप में सौंपा है, लेकिन दूसरों की पुष्टि की सराहना करेगा कि समाधान काम करता है। धन्यवाद!
अब्राम

इसने मेरे लिए काम किया। इसने नए चैनल में सभी के @ के साथ एक पोस्ट डाल दी। लेकिन यह मेरे द्वारा ठीक है।
डेवप्रिस्टन

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 Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.