Siv3D로 Discord Webhook의 클라이언트를 만들어 본 이야기

만든 것



#OpenSiv3D #Discord OpenSiv3D로 간단한 Discord Webhook 클라이언트를 만들었습니다. 지금의 장소 텍스트를 송신할 정도밖에 할 수 없다. 통신은 curllib를 사용하고 있다. 피 c. 라고 r. 이 m/J1rwlyBZMv — 호타 (@hota1024) December 1, 2019


소스 코드는 여기 : htps : // 기주 b. 코 m / 호타 1024 / ぢs 코 rd-u-b-hoo-k는 st-u-th-openshi v3d



Discord Webhook이란?



게이머를 위한 채팅 서비스인 디스코드에는 Webhook이라는 기능이 있습니다.

Webhook을 사용하면 봇을 만들지 않고도 Webhook URL에 POST 요청을 던져 Discord 채팅에 메시지를 보낼 수 있습니다.



또한 예로 Github과 Discord Webook을 함께 사용할 수 있습니다.




git push origin master 했을 때의 스쿠쇼.

참고: https://support.discordapp.com/hc/ko/articles/228383668 - 제목 - Webhooks에 서장




C++에서 HTTP



이번 C++에서 HTTP 통신을 하기 위해 curllib 를 사용했습니다.




main.cpp

// POSTリクエストを送る例
# include <curl/curl.h>

int main()
{
  // curl の初期化
  CURL *curl;
  curl = curl_easy_init();

  // curl の設定
  curl_easy_setopt(curl, CURLOPT_POST, 1); // メソッドをPOSTに設定
  curl_easy_setopt(curl, CURLOPT_URL, "<URL>"); // URLを設定
  curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "<POST_DATA>"); // データを設定
  curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, -1L); // データのサイズを指定

  // 送信
  curl_easy_perform(curl);

  // クリーンアップ
  curl_easy_cleanup(curl);

  return 0;
}



이번 막힌 & 막힌 포인트



이번에 만든 소스 코드라면 왜 json으로 데이터를 보낼 수 없었습니다 ...

아래와 같은 응답이 반환됩니다 ...



{
  "message": "Cannot send an empty message",
  "code": 50006
}


감상



도 좀 열심히 Discord의 Gateway(봇)의 프로그램을 C++로 쓰고 싶다고 생각했습니다.


좋은 웹페이지 즐겨찾기