목적
Slack에서 백업 후 Down 받은 Json파일을 Discord로 이동 시킨다
배경
얼마전에 Slack에서 아래와 같은 메시지가 왔다.
단순화된 한도:
1만 건의 메시지 제한과 5GB의 저장 공간 대신 지난 90일 간의 메시지 내역과 파일 저장 공간에 대한 완전한 액세스를 제공하여 팀이 언제 한도에 달할지 걱정할 필요가 없습니다. 귀하의 팀이 Slack을 얼마나 많이 사용하였든 상관없이 언제든지 지난 90일 간의 내역에 액세스할 수 있습니다.
핵심을 보자면 이제는 용량이나 메시지 수와는 상관없이 90일 간만 데이터를 액세스 할 수 있다는 소리이다.
공부 일기 용으로 Slack을 사용하고 있었는데, 이제 더이상 슬렉을 사용하기 어려워 졌다.
지금까지 무료로 제공해줘서 감사 한 마음이지만...
- 메시지가 일자에 상관없이 보관될 수 있는 공간이 필요하다.
- 물론 이미지까지 되면 더 좋고...
이것을 다 만족시킬 수 있는 Discord로 이사를 가기로 했다.
슬렉 데이터 백업하기
우선 데이터 백업이 필요하다.
백업 하고자 하는 워크스페이스에서 Setting & administration을 선택하고 Workspace settings를 클릭한다.
상기 이미지 우상단에 Import/Export Data를 선택한다.
Export 탭을 선택 후, Entire History를 선택 후 Start Export를 클릭한다.
그러면 53KB의 파일이 생기는 것을 확인 가능하다. 이것을 다운받으면 채널과 일자별 업로드한 데이터가 JSON형식으로 잘 저장 된것을 확인 가능하다.
circleci라는 채널에 2021년 2월 13일 무언가 채팅을 쳤다는 의미가 된다.
Discord 생성하기
Discord client를 다운로드 및 인스톨 한 후에 하기에 '+' 버튼을 눌러서 서버를 만들자
(아... 몬헌과 디아블로 공부나 하지.. 왜 게임에 빠져서)
아픈 역사 아래 더하기 버튼을 클릭하면 된다.
이후 서버 만드는건 어렵지 않아서 패스 한다.
Discord Bot 만들기
Slack데이터를 Discord로 옮기는 것은 다음 프로그램을 사용할 것이다.
https://github.com/thomasloupe/Slackord2
다른 프로그램도 찾아 보고 Slackord1도 써보고 했는데 최종적으로는 그냥 Slackord2를 사용했다.
어짜피 데이터 옮기는건 다 수작업 같은데.. 그나마 Slackord2가 편했다.
이 프로그램은 Slack bot을 이용해서 특정 채널에 로드 된 JSON 데이터를 업로드 하는 방법을 사용한다.
Discord Application 만들기
https://discord.com/developers/applications
이곳에 들어가서 Application을 하나 만들어 보자.
우측에 New Application을 누르면 된다.
아무 이름이나 상관없다. 이후 Create를 클릭하면 된다.
Discord Bot 설정하기
이제 Bot을 내가 만든 Server와 연결하자.
OAuth2에 URL Generator를 선택 후,
Scopes에서 bot을 선택한다.
봇의 권한을 설정해 줘야 하는데, 과감하게 Administrator를 선택해 주자.
그러면 하단에 다음과 같이 url을 확인할 수 있다.
생성된 URL을 브라우저 네비게이션 바에 붙여주면 된다.
그러면 앞서 내가만든 서버(서버 선택하기 부분)를 선택할 수 있고, 선택이 완료 되면 나의 bot이 나의 서버에 참가한 것을 확인할 수 있다.
Bot token 얻기
위에서 만든 Discord Application에서 Bot을 선택하고 우측에 Reset Token을 누르면 Token을 발행할 수 있다.
해당 Token을 저장해 놓자.
Slackord 설치 및 사용하기
설치
https://github.com/thomasloupe/Slackord2/releases
이곳에 있는 파일을 다운로드 받아서 압축을 풀어준다.
참고로 윈도우 용이다. 리눅스나, 맥은 python을 사용하는 1.0을 써야하는데 굉장히 귀찮다. 그냥 윈도우 컴퓨터를 사용하자.
slackord 2.exe를 실행 시킨다.
Bot 토큰 입력 및 연결
Settings > Enter Bot Token
을 선택하면 위와 같은 창이 나온다.
앞서 저장한 토큰을 붙여 넣고 OK를 눌러주자.
여기까지 잘 되었다면 아래와 같이 Connect를 통해서 Bot 접근이 가능하다.
여기까지 성공했다면 아래와 같이 봇이 온라인이 된다.
Json 로드하기
이제 이동시킬 Slack에서 백업받은 JSON을 선택해서 넣어주자.
(굉장히 귀찮긴 한데.. 이게 무슨 봇으로 입력하는데 한계? 이런게 있다보다. 아무튼 다른 방법을 못찾았다.)
Import JSON을 클릭 후 Import할 Json을 선택해 준다.
성공적으로 Load되었다면
위에 Begin과 Parsing사이에 무슨 메시지가 로드 되었는지 표시가 된다.
저렇게 아무것도 표시 되지 않는다면 해당 메시지를 로드할 수 없는 것이다.
뭐... 막 중요한 데이터는 아니어서 나도 많이 포기 했다.
이렇게 로드가 된 다음에 해당 데이터를 업로드할 Discord 채널로 이동한다.
채팅창에 !slackord 라고 입력을 하면, 위에 로드된 데이터가 Discord 채널에 입력이 되게 된다.
이런식으로 slackbackup 봇이 로드 된 '2022-04-12 오전 1:18 등등등'의 데이터를 입력해 준다.
결론
어찌어찌 데이터를 Discord로 옮겨 넣는데 성공했다.
굉장히 귀찮긴 했는데 데이터가 많지 않아서 다행이었다.
데이터가 많으신 분들은 직접 코드를 짜야 할 것 같은 그런 느낌이다.
'Software활용' 카테고리의 다른 글
mac에서 java version 변경하기 (0) | 2022.08.22 |
---|---|
linux에서 json Pretty Print 하기 (jq 명령어) (0) | 2022.08.11 |
Mac에서 zsh 또는 bash shell을 사용하기 (0) | 2022.07.26 |
Bit Operation 모음 (계속) (0) | 2021.08.09 |
MongoDB Windows CMD에서 Background 실행하기 (0) | 2021.06.22 |