안경잡이개발자

728x90
반응형

  Xshell 6은 정말 유명한 SSH, Telnet 접속 유틸리티입니다. 일반적으로 간단히 리눅스 서버 실습을 할 때는 퓨티(Putty) 등을 이용합니다. Xshell 6은 조금 더 무거운 접속 도구이지만 기능이 다양하고 사용하기에 편리하다는 점에서 많이 사용되고 있습니다. Xshell 6은 국내 유틸리티입니다. 따라서 설치를 위해서는 넷사랑(Netsarang) 공식 사이트에 접속하시면 됩니다.


  Xshell 6은 학생 개인의 경우 무료로 사용할 수 있습니다. 다음과 같이 무료 라이센스 페이지에 들어가시면 됩니다.


  ▶ 넷사랑 Xshell 6 무료 라이센스 다운로드: https://www.netsarang.co.kr/download/free_license.html



  Xshell 6 다운로드 버튼을 누르시면 다음과 같이 이메일 주소 등을 입력하고 개인 사용자로 등록할 수 있습니다.



  이후에 다음과 같이 이메일 인증을 수행하시면 됩니다.



  이후에 설치 프로그램 다운로드 및 설치를 진행하시면 됩니다.








  설치 완료 이후에 프로그램을 실행하면 됩니다.



  특정한 서버에 접속하고자 한다면 '세션(Session)'을 열어서 서버를 등록하면 됩니다.




  특정 세션에 대한 접속 설정을 할 때 공개키 인증 등 다양한 인증 방법 형태로 설정할 수 있습니다. 이후에는 다음과 같이 [세션 관리] 탭에서 특정 세션을 클릭하여 접속을 시도할 수 있습니다.



  인증 이후에는 성공적으로 로그인을 수행하여 해당 서버를 관리할 수 있습니다.


728x90
반응형

728x90
반응형

  슬랙(Slack) 챗봇(Chat Bot)은 사용자가 슬랙 봇에게 말을 걸었을 때 그에 대한 적절한 응답을 수행하는 봇을 의미합니다. 그래서 슬랙 챗봇을 구현하고자 한다면 사용자가 챗봇을 부르는 과정을 이벤트(Event)로 받아들여 슬랙 챗봇이 동작하도록 해야 합니다. 따라서 이전 시간에 이어서 슬랙 챗봇을 구현해보도록 하겠습니다. 가장 먼저 이벤트 구독(Event Subscriptions) 탭에 들어갑니다.


  이후에 [Enable Events]활성화(On)로 설정할 수 있습니다.



  활성화로 설정한 이후에는 다음과 같이 요청 URL을 입력하는 부분이 활성화 됩니다.



  이후에 아래쪽에서 봇 이벤트(Bot Events)로 app_mention을 설정할 수 있습니다. app_mention을 설정하면 해당 슬랙 앱이 멘션(Mention) 되었을 때 이벤트가 발생합니다.



  이벤트가 발생하면 특정한 URL요청(Request)을 보내게 되는 것입니다. 이제 실제로 요청이 들어왔을 때 이를 처리하는 파이썬 챗봇 모듈을 개발해보겠습니다.


# -*- coding: utf-8 -*-

import json

from slacker import Slacker

from flask import Flask, request, make_response


token  = "봇 유저 토큰 값"

slack = Slacker(token)


app = Flask(__name__)


def get_answer():

    return "안녕하세요."


# 이벤트 핸들하는 함수

def event_handler(event_type, slack_event):

    if event_type == "app_mention":

        channel = slack_event["event"]["channel"]

        text = get_answer()

        slack.chat.post_message(channel, text)

        return make_response("앱 멘션 메시지가 보내졌습니다.", 200, )

    message = "[%s] 이벤트 핸들러를 찾을 수 없습니다." % event_type

    return make_response(message, 200, {"X-Slack-No-Retry": 1})


@app.route("/slack", methods=["GET", "POST"])

def hears():

    slack_event = json.loads(request.data)

    if "challenge" in slack_event:

        return make_response(slack_event["challenge"], 200, {"content_type": "application/json"})

    if "event" in slack_event:

        event_type = slack_event["event"]["type"]

        return event_handler(event_type, slack_event)

    return make_response("슬랙 요청에 이벤트가 없습니다.", 404, {"X-Slack-No-Retry": 1})


if __name__ == '__main__':

    app.run('0.0.0.0', port=8080)


  이제 테스트를 위해서 엔그록(Ngrok)을 이용해 공인 URL을 일시적으로 만들어보도록 하겠습니다.




  이제 만들어진 공인 URL을 슬랙 봇요청 URL로 설정할 수 있습니다.



  설정했을 때 Verified라고 메시지가 출력되면 성공입니다. 이제 한 번 챗봇을 불러보도록 합시다.



  초대한 이후에 다시 챗봇을 불러보면 챗봇이 성공적으로 응답합니다.



  Ngrok의 로그를 확인해 보았을 때에도 성공적으로 슬랙 API와 통신한 것을 확인할 수 있습니다.


728x90
반응형

728x90
반응형

  슬랙에서는 자신이 직접 슬랙 봇(Slack Bot)을 개발하여 슬랙 앱(Slack App)으로 이용할 수 있습니다. 더불어 파이썬의 슬래커(Slacker) 라이브러리를 이용하여 자신이 만든 슬랙 봇을 매우 쉽고 효과적으로 활용할 수 있습니다. 기본적으로 슬랙 앱(Slack App)을 만들기 위해서는 슬랙 앱 API 페이지로 이동해야 합니다.


  ▶ 슬랙 앱 API 페이지: https://api.slack.com/apps


  해당 API 페이지에서 하나의 앱(App)을 새롭게 만들 수 있습니다.



  저는 다음과 같이 하나의 슬랙 앱을 만들어보도록 하겠습니다.



  가장 먼저 [Bots] 탭으로 이동하여 봇 유저(Bot User)를 만들어 볼 수 있습니다.





  이후에 [OAuth & Permissions] 탭으로 이동해서 워크스페이스에 앱을 설치(Install)할 수 있습니다. 우리가 만든 슬랙 앱을 실제로 프로젝트 상에서 사용할 수 있는 것입니다.




  결과적으로 [Bot User OAuth Access Token] 값이 나옵니다. 이 토큰 값을 이용해서 우리가 만든 슬랙 봇이 슬랙 워크스페이스에서 말을 하게 하는 등의 다양한 기능을 수행할 수 있습니다.



  저는 해당 슬랙 봇이 말을 할 수 있도록 하기 위해서 범위(Scopes)chat:write:user 권한을 줬습니다.



  이제 슬래커(Slacker) 라이브러리를 이용해서 슬랙 토큰 값을 활용해 특정 채널에 메시지를 전송할 수 있습니다.



from slacker import Slacker


# 슬랙 토큰으로 객체 생성

token = '슬랙 토큰 값'

slack = Slacker(token)


# 메시지 전송 (#채널명, 내용)

slack.chat.post_message('#random', 'Slacker 테스트')


  실제로 소스코드를 구동시켜 보면 다음과 같이 슬랙 봇이 메시지를 전송한 것을 알 수 있습니다.



728x90
반응형

728x90
반응형

  슬랙(Slack)에서는 슬랙 앱(Slack App) 기능을 이용하여 프로젝트를 더욱 효과적으로 관리할 수 있습니다. 이번 시간에는 다른 사람들이 만들어 놓은 슬랙 앱을 간단히 사용해 보며 슬랙 앱을 어떻게 이용할 수 있는지에 대해서 알아보도록 하겠습니다. 기본적으로 슬랙 앱을 관리하고자 한다면 [Manage apps] 탭으로 이동하여 슬랙 앱을 관리할 수 있습니다.



  처음에는 어떠한 앱도 설치가 안 되어 있습니다. [Browse the App Directory]에 들어가서 앱을 찾을 수 있습니다.



  이후에 웹 페이지 환경에서 슬랙 앱을 검색하여 설치를 진행할 수 있습니다. 저는 가장 먼저 지피(Giphy)를 사용해보도록 하겠습니다. 지피는 자동으로 이미지를 검색하여 슬랙 채널에 이미지를 출력해주는 역할을 수행합니다.




  설치 이후에는 설정을 수행할 수 있습니다. 저는 모든 GIF 이미지를 찾아오도록 설정을 진행했습니다.




  설치 이후에는 [Apps] 탭에서 설치된 앱을 확인할 수 있습니다.




  설치된 지피(Giphy)를 사용할 때는 단순히 /giphy {이미지 이름}의 형태로 사용할 수 있습니다.




  이어서 할 일 목록을 관리해주는 투두이스트(Todoist)를 사용해보도록 하겠습니다.



  투두이스트는 관련 사이트에서 설치를 진행해야 사용할 수 있습니다.



  따라서 사용법 글에 있는 링크를 타고 들어가서 연동을 진행하시면 됩니다.




  연동까지 마치고 나면 다음과 같이 /todoist {해야 할 일} 명령어 형태로 투두이스트를 사용할 수 있습니다.



  명령어 실행 결과 다음과 같이 해야 할 일 항목이 작성된 것을 확인할 수 있습니다.




728x90
반응형

728x90
반응형

  이번 시간에는 슬랙(Slack) 기본 설정을 하는 방법에 대해서 알아보도록 하겠습니다. 처음 슬랙을 시작했을 때 초기 설정을 하는 방법에 대해서 잘 모르면 슬랙을 바르게 이용할 수 없습니다. 따라서 개인 프로필 설정을 하는 방법부터, 원하는 기능에 대한 알람을 적절히 받고 방해 금지 모드(Do not disturb mode)를 사용하는 방법 등에 대해서 다루어보도록 하겠습니다.


  맨 처음에 슬랙 워크스페이스에 초대되면 다음과 같은 화면이 등장합니다. 맨 처음에는 계정 정보를 저장하는 것부터 진행하시는게 좋습니다. 'Save Your Account' 버튼을 눌러서 초기 정보를 입력합니다.


※ 프로필 설정 ※



  다음과 같이 이름 및 비밀번호를 설정하고, 팀 정보를 확인할 수 있습니다.




  이후에는 가장 먼저 프로필 설정을 진행해서 자신이 어떤 사람인지 팀 구성원에게 알리는 것이 좋습니다.



  따라서 'Profile & account' 탭에 들어가도록 합니다.



  이후에 프로필 편집을 진행하시면 됩니다.



  저는 다음과 같이 프로필 사진을 설정해보았습니다.




※ 슬랙 워크스페이스 기본 설정 ※


  슬랙 워크스페이스 자체에 대한 기본 설정을 하고자 한다면 관리자(Administration) 탭에서 'Workspace settings'에 들어가시면 됩니다.



  워크스페이스 설정 페이지에서는 워크스페이스의 아이콘(Icon) 등을 설정할 수 있습니다.




  저는 위와 같이 워크스페이스의 아이콘도 설정을 진행해보았습니다.


※ 슬랙 알림 설정 ※


  슬랙 알림 설정을 할 때는 Preferences 탭에 들어가서 진행하면 됩니다.



  일반적으로 알림이 발생했을 때 우리 컴퓨터에서 바로 알림을 확인할 떄는 'Enable desktop notifications'를 누르시면 됩니다.




  크롬(Chrome) 브라우저를 이용하는 경우 위와 같이 알림을 허용하여 알림을 쉽게 받을 수 있습니다. 이후에는 다음과 같이 구체적으로 어떤 상황에서 알림을 받을지 설정할 수 있습니다. 저는 개인 쪽지(Direct Messages) 혹은 멘션 등에 대해서만 알림을 받도록 했습니다.



  또한 방해 금지(Do Not Disturb) 모드를 설정하면 특정한 시간에 대해서는 알림(Notification)을 띄우지 않습니다.



728x90
반응형

728x90
반응형

  슬랙(Slack)을 이용하면 다양한 채널에서 사용자들이 서로 대화를 나눌 수 있습니다. 이 때 채널에 보낼 수 있는 메시지는 굉장히 다양한데요. 단순히 문자열만 보낼 수 있는 것이 아니라 소스코드, 멘션(Mention), 이모티콘 등의 다양한 메시지를 전송할 수 있습니다.


  메시지를 전송하는 방법에 대해서 하나씩 알아보도록 하겠습니다.


※ 다른 사용자 언급하기 ※


  다른 사용자를 언급할 때는 @ 기호를 사용합니다.



  메시지 창에서 오른쪽에 있는 멘션 기호 @를 이용하여 특정 대상을 지칭할 수 있습니다. 흔히 말하는 태그(Tag)와 같습니다.


※ 이미지 첨부 ※


  슬랙에서 이미지 첨부는 매우 간단합니다. 단순히 원하는 이미지를 복사하여 클립보드(Clipboard)에 담은 이후에 슬랙 대화 창에서 붙여넣기(Paste)를 진행하시면 됩니다.




※ 코드 붙여넣기 ※


  코드를 붙여넣고자 할 때는 왼쪽의 (+) 버튼을 눌러서 'Code or text snippet' 탭을 누르시면 됩니다.




  소스코드를 올릴 때는 소스코드의 언어 유형 등을 함께 입력하여 소스코드를 안정적으로 기입할 수 있습니다.



  또한 업로드가 된 소스코드에 대해서는 'More actions' 탭에서 'View details'로 들어가면 구체적인 소스코드를 확인할 수 있습니다.




※ 이모티콘 전송하기 ※


  이모티콘을 전송하고자 할 때는 텍스트 입력창의 오른쪽에 있는 이모티콘 버튼을 누르면 됩니다.



  또한 특정한 댓글에 대해서 감정을 표시할 수 있습니다. 좋아요를 누르듯이 감정을 표시하는 거예요.




※ 이모티콘 추가하기 ※


  슬랙(Slack)은 원하는 이미지를 이용하여 특정한 이모티콘을 추가할 수 있습니다. 'add custom emoji here' 버튼을 누르면 됩니다.



  이모티콘 추가 페이지로 이동해서 실제로 특정한 이미지를 추가하면 됩니다.



  저는 한 번 패럿(Parrot) 이미지를 추가해보도록 하겠습니다.




  일단 위와 같이 저는 .gif 형태로 이미지를 저장했습니다.



  업로드 이후에 저장(Save)을 수행하면 다음과 같이 이모티콘이 등록됩니다.



  이후에 슬랙에서 편하게 이모티콘을 사용할 수 있습니다.



728x90
반응형

728x90
반응형

  슬랙(Slack)에서 채널(Channel)을 잘 관리하면 다양한 채널에서 효율적으로 팀원들이 소통하도록 할 수 있습니다. 일반적으로 채널은 다음과 같이 다양하게 생성하여 활용할 수 있습니다. 팀을 막론하고 general 채널, random 채널은 무조건 존재하는데요. 이러한 채널들의 사용 용도는 팀마다 대부분 흡사합니다. 저는 대략 다음과 같이 분류해보겠습니다.


  ▶ general: 일반적인 공지사항을 전달하는 공간

  ▶ random: 자유롭게 대화를 나누는 공간

  ▶ develop: 개발 관련 내용을 다루는 공간

  ▶ recruit: 신입사원 채용 관련 내용을 다루는 공간


  한 번 다음과 같이 새로운 채널을 생성해서 채널을 관리해보도록 하겠습니다.



  기본적으로 위와 같이 'Channels' 탭 오른쪽에 있는 (+) 버튼을 눌러서 채널을 생성할 수 있습니다.



  저는 위와 같이 develop이라는 이름으로 채널을 생성해보았습니다.



  또한 이어서 recruit 채널을 생성해보겠습니다.



  그러면 위와 같이 채널이 구성됩니다. 이 때 우리가 만든 슬랙 워크스페이스에 초대 된 사람은 모든 채널이 다 보이지 않을 수 있습니다. 이럴 때는 'Channels' 탭을 클릭하여 채널을 검색해 원하는 채널로 이동하여 채널에 가입할 수 있습니다.



  한 번 위와 같이 general 채널로 이동해보겠습니다.



  일반적으로 general 채널은 공지사항 전달 등의 목적으로 사용됩니다.



  또한 이어서 채널에 올라 온 첨부 파일 확인, 사용자 초대 등을 하기 위해서는 'View channel details' 버튼을 누르시면 됩니다.



  위와 같이 채널 정보 탭에서 'Invite more people...' 버튼을 눌러서 새로운 사용자를 채널에 초대할 수 있습니다.



  또한 채널 설정 탭에서는 채널 음소거(Mute) 등의 작업도 수행할 수 있습니다.



728x90
반응형

728x90
반응형

  슬랙(Slack)은 굉장히 많은 회사와 동아리 등의 집단에서 사용하고 있는 협업 메신저 도구입니다. 쉽게 말하면 회사용 카카오톡(Kakao Talk) 정도라고 보시면 됩니다. 실제로 카톡은 정말 편하고 익숙한 앱이지만, 회사 용도로 사용하기에는 기능이 매우 한정적입니다. 하지만 슬랙은 정말 프로젝트 단위의 협업을 목적으로 한다면 가장 강력한 메신저 도구가 될 수 있습니다.


  또한 슬랙은 그다지 복잡한 협업 도구가 아니라는 점에서 단순히 사용하고자 한다면 강좌까지 보지 않아도 잘 사용할 수 있습니다. 하지만 슬랙을 보다 완벽히 다루고자 한다면 슬랙에 대한 구체적인 내용을 알수록 유리합니다.


  ▶ 슬랙(Slack) 공식 사이트: https://slack.com/


  슬랙은 위 사이트에 접속하여 이용할 수 있습니다. 슬랙에서 하나의 프로젝트(Project)를 워크스페이스(Workspace)라고 말합니다. 워크스페이스를 생성하고자 한다면 다음의 경로에 접속하면 됩니다.


  ▶ 슬랙(Slack) 워크스페이스 생성 경로: https://slack.com/create



  워크스페이스를 생성할 때는 관리자 이메일 주소를 입력합니다.



  이후에 자신의 이메일 주소로 가면 인증 코드가 보입니다. 이를 슬랙에 기입하면 됩니다.



  저는 팀 이름을 'Slack Tutorial'이라고 지어보았습니다.



  또한 저는 Education이라고 프로젝트의 이름을 지어주었습니다.



  또한 처음에 프로젝트를 생성하면 프로젝트 구성원을 추가하라는 페이지가 나오는데, 저는 스킵(Skip)을 해주겠습니다.



  이후에 기본적으로 채널 정보를 확인할 수 있습니다.



  그러면 위와 같이 기본 채널이 존재하는 걸 확인할 수 있습니다.



  이제 한 번 가상의 사용자를 초대해보도록 하겠습니다. 설정(Setting) 탭에서 초대(Invite)를 진행하시면 됩니다.




  저는 한 번 제 다른 이메일 주소로 초대 메일을 보내보겠습니다. 이제 한 번 메일을 받은 이메일 계정으로 로그인해보도록 하겠습니다.




  저는 위와 같이 새로운 계정으로 가입을 해보았습니다.



  가입 이후에는 위와 같은 화면을 확인할 수 있습니다. 왼쪽과 오른쪽을 서로 다른 브라우저로 로그인 해보았습니다.



  결과적으로 위와 같이 왼쪽과 오른쪽 사용자가 모두 education 채널에서 소통할 수 있었습니다.

728x90
반응형

728x90
반응형
npm install -g ngrok


  위 명령어를 이용해서 Ngrok을 바로 다운로드 할 수 있습니다.


ngrok http 5000




  이후에 위와 같이 5000번 포트를 외부에서 접속 가능한 URL로 연결할 수 있습니다.



  이제 외부에서 접속할 수 있게 되었습니다.






728x90
반응형

728x90
반응형

윈도우 파일 관리 소프트웨어 에브리띵(Everything) 설치 및 사용 방법

나동빈

 

  일반적으로 윈도우 운영체제를 이용하시는 분들은 흔히 파일 관리의 어려움을 느끼곤 합니다. 저도 용량이 큰 압축 파일의 압축을 푼 뒤에 압축 파일을 제거해주지 않는 등의 귀찮음으로 많은 용량이 낭비되곤 합니다. 다음 사진은 제 컴퓨터의 C 드라이브 용량의 상황입니다.

 

 

  ▶ Everything 다운로드 링크: https://www.voidtools.com/ko-kr/downloads/

 

다운로드 - voidtools

 

www.voidtools.com

 

  Everything 프로그램은 공식 웹 사이트에 방문하여 쉽게 다운로드하여 설치할 수 있습니다. 참고로 Everything은 프리웨어(freeware)라는 점에서 무료로 사용할 수 있는 소프트웨어입니다. 현재 유통되고 있는 Everything 프로그램은 한국어 버전 및 영어 버전으로 유통되고 있습니다. 한국어 버전 및 영어 버전은 기능적으로는 모두 동일합니다. 다음과 같이 자신의 운영체제에 맞는 설치 파일을 다운로드하여 설치하면 됩니다. 저는 [64비트(64 bits) 설치 파일]을 선택했습니다.

 

 

  기본적으로 확인(OK) 버튼만 눌러서 설치를 진행해도 큰 문제가 없습니다.

 

 

  가장 먼저 라이센스에 동의합니다.

 

 

  이후에 Everything을 설치할 경로를 설정합니다.

 

 

  다만 설치를 하실 때는 NTFS 색인을 사용하도록 설정해주는 것을 추천합니다. NTFS윈도우의 파일 시스템 서비스로 빠르게 파일을 검색하고 다양한 확장 기능을 제공합니다.

 

 

  프로그램 설치는 일반적으로 3분 내외의 짧은 시간이 소요되며 설치가 끝나면 바로 프로그램을 이용할 수 있습니다.

 

 

  결과적으로 다음과 같이 Everything 설치가 완료되었습니다.

 

 

  설치가 완료되었으면 바로 Everything 프로그램을 실행할 수 있습니다. 일반적으로 처음 설치된 이후에는 화면에 아무것도 등장하지 않다가, 시간이 조금 소요된 뒤에 아래와 같이 파일 목록이 등장하게 됩니다.

 

 

  가장 많이 사용되는 기능은 크기로 정렬하여 파일을 살펴보는 기능입니다. 단순히 '크기' 탭을 눌러주시면 알아서 정렬이 수행됩니다. 이처럼 Everything은 매우 빠르게 파일의 목록을 보여주기 때문에 손쉽게 큰 용량의 파일을 찾아서 지우는 작업을 할 수 있습니다.

 

 

  또한 Everything은 실제 파일에 바로 접근할 수 있도록 해주기 때문에 우클릭한 뒤에 '열기' 등의 작업을 수행할 수 있습니다.

 

 

  그리고 '고급 검색' 기능을 이용해서 자신이 원하는 내용으로 쉽게 검색할 수 있습니다.

 

 

  저는 C++ 소스코드 파일만 찾아보기 위하여 .cpp라고 검색해보았습니다. 그러면 다음과 같이 성공적으로 cpp 확장자의 파일만 검색되는 것을 알 수 있습니다.

 

728x90
반응형