모든 팀원을 새로운 슬랙 채널에 초대하는 방법


42

모든 사용자 (팀 전체)를 새로운 슬랙 채널에 초대 할 수 있습니까? 한 번에 초대 할 수있는 사람 수에는 제한이있는 것 같습니다.



예, 관련이 있지만 실제로는 중복되지 않습니다. 그 질문은 내 문제에 대한 해결책을 제공하지 않습니다.
Abram

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
효과적인 답변을 제공해 주셔서 감사합니다. 작동이 멈 췄기 때문에 제거 할 것입니다.
Abram

1
케어, 채널에도 봇을 초대합니다
Tib

그렇습니다. 또한, 큰 그룹이 어떤 이유로 당신은 두 번 실행해야합니다
존 알렉시스 게라 고메즈

19

보다 간단한 해결책을 찾았습니다. 스크립트 없음, 확장자 없음 :

  1. /who추가하려는 사람이 가장 많은 채널에 명령을 입력 하십시오.
  2. 출력 복사
  3. 사람들을 초대 할 채널에 붙여 넣기
  4. 를 눌러 Intro/Enter

슬랙은 "채널에 아직없는"모든 사람들과 어떻게해야하는지 묻습니다. Invite버튼 을 누르면 모든 사람이 초대됩니다


실제로이 답변을 테스트하지는 않았지만 작동한다고 가정하면 올바른 해결책으로 표시해야합니다. 이 솔루션을 솔루션으로 할당했지만 솔루션이 작동한다는 다른 사람들의 확인에 감사드립니다. 감사!
Abram

그것은 나를 위해 일했다. 새 채널에 게시물을 올렸으며 모두가 @했습니다. 그러나 그것은 괜찮습니다.
davepreston

1
그러나 이것은 채널의 처음 99 개 멤버 (복사 / 붙여 넣기 가능)를 표시하도록 제한됩니다.
1

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.