웹 크롤링 했을 때, 모은 정보들이나, 프로그램의 출력 값 등의 정보를 집 밖에서도 받아야할 때,
많은 공돌이들이 텔레그램 알림봇 @BotFather를 통해 이를 구현한다.
나 또한 텔레그램 봇도 사용한다. 심지어 텔레그램 봇이 더 접근성이 좋기도 하다.
하지만, 한국에서는 불미스러운 n번방 사건 이후로 텔레그램 SNS 자체에 일종의 //stereo type//이 생긴 듯 하다.
아마 대부분의 개발자들은 이런 거 신경 쓰지 않고, 그냥 텔레그램 쓸 거다. 왜냐, 편하그등
물론 나 또한 그런 이미지 신경도 안 쓰지만, 디스코드로도 할 수 있다면 좀 더 멋있지않나 싶어서 한 번 도전해봤다.(홍대병)✌🏼
웹훅을 통한 일방적인 알림봇 방식이라, 텔레그램의 api 방식에 비해 기능이 현저히 떨어지지만, 적어도 알림봇의 구실은 할 수 있다.
우선 디스코드에서 서버를 만들어주자.

서버가 만들어졌다면, 채팅채널에 #일반의 톱니바퀴[채널편집]를 눌러주자

연동 탭에 들어가서 웹 후크 만들기를 눌러준다.

웹후크 프로필과 알림을 주길 원하는 채널을 원하는대로 세팅해주면 된다.

그 후에 웹후크 URL 복사 버튼을 누르면 웹훅 URL이 복사된다.
이제 Python 코드를 작성해 나에게 알림이 오도록 해보자.
우선 간단하게 Hello, World!라는 메시지를 나에게 전송해보도록 하자.
import requests
discordwebhook = "복사한 웹훅 주소"
def Sendmsg(msg):
data = {
"content" : msg,
}
result = requests.post(discordwebhook, json = data)
Sendmsg("Hello, World!")
해당 코드를 작성하고 파이썬을 실행하면 내채널에 바로 메세지가 오는 것을 확인할 수 있다.

만약 아래와 같은 코드를 추가한다면, url과 같은 정보들을 더 함축적으로 전송할 수 있다.
import requests
discordwebhook = "복사한 웹훅 주소"
def Sendmsg(msg, mydesc, mytitle, myurl):
data = {
"content" : msg,
}
data["embeds"] = [
{
"description" : mydesc,
"title" : mytitle,
"url" : myurl
}
]
result = requests.post(discordwebhook, json = data)
Sendmsg("Hello, World! this is additional information", "this is naver url", "NAVER","https://www.naver.com")

이미지 또한 전송할 수 있다.
import requests
discordwebhook = "복사한 웹훅 주소"
def Sendmsg(picturepath):
with open(picturepath, "rb") as image_file :
image_data = image_file.read()
result = requests.post(discordwebhook, files={"file": ("sendfilename.png", image_data)}) #sendfilename.png는 디스코드에서 전송될 때의 파일 이름이므로, 원하는 이름으로 수정해도 된다.
Sendmsg("/home/pi/Downloads/house-solid.png")

웹 크롤링 했을 때, 모은 정보들이나, 프로그램의 출력 값 등의 정보를 집 밖에서도 받아야할 때,
많은 공돌이들이 텔레그램 알림봇 @BotFather를 통해 이를 구현한다.
나 또한 텔레그램 봇도 사용한다. 심지어 텔레그램 봇이 더 접근성이 좋기도 하다.
하지만, 한국에서는 불미스러운 n번방 사건 이후로 텔레그램 SNS 자체에 일종의 //stereo type//이 생긴 듯 하다.
아마 대부분의 개발자들은 이런 거 신경 쓰지 않고, 그냥 텔레그램 쓸 거다. 왜냐, 편하그등
물론 나 또한 그런 이미지 신경도 안 쓰지만, 디스코드로도 할 수 있다면 좀 더 멋있지않나 싶어서 한 번 도전해봤다.(홍대병)✌🏼
웹훅을 통한 일방적인 알림봇 방식이라, 텔레그램의 api 방식에 비해 기능이 현저히 떨어지지만, 적어도 알림봇의 구실은 할 수 있다.
우선 디스코드에서 서버를 만들어주자.

서버가 만들어졌다면, 채팅채널에 #일반의 톱니바퀴[채널편집]를 눌러주자

연동 탭에 들어가서 웹 후크 만들기를 눌러준다.

웹후크 프로필과 알림을 주길 원하는 채널을 원하는대로 세팅해주면 된다.

그 후에 웹후크 URL 복사 버튼을 누르면 웹훅 URL이 복사된다.
이제 Python 코드를 작성해 나에게 알림이 오도록 해보자.
우선 간단하게 Hello, World!라는 메시지를 나에게 전송해보도록 하자.
import requests
discordwebhook = "복사한 웹훅 주소"
def Sendmsg(msg):
data = {
"content" : msg,
}
result = requests.post(discordwebhook, json = data)
Sendmsg("Hello, World!")
해당 코드를 작성하고 파이썬을 실행하면 내채널에 바로 메세지가 오는 것을 확인할 수 있다.

만약 아래와 같은 코드를 추가한다면, url과 같은 정보들을 더 함축적으로 전송할 수 있다.
import requests
discordwebhook = "복사한 웹훅 주소"
def Sendmsg(msg, mydesc, mytitle, myurl):
data = {
"content" : msg,
}
data["embeds"] = [
{
"description" : mydesc,
"title" : mytitle,
"url" : myurl
}
]
result = requests.post(discordwebhook, json = data)
Sendmsg("Hello, World! this is additional information", "this is naver url", "NAVER","https://www.naver.com")

이미지 또한 전송할 수 있다.
import requests
discordwebhook = "복사한 웹훅 주소"
def Sendmsg(picturepath):
with open(picturepath, "rb") as image_file :
image_data = image_file.read()
result = requests.post(discordwebhook, files={"file": ("sendfilename.png", image_data)}) #sendfilename.png는 디스코드에서 전송될 때의 파일 이름이므로, 원하는 이름으로 수정해도 된다.
Sendmsg("/home/pi/Downloads/house-solid.png")
