Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MorningKizunaAI

 MorningKizunaAI

2021年4月28日に行われたLT会で紹介したアプリケーションです。

キズナアイのおはようツイートがツイートされた際に、通知を送るBOTです。 現在、Slack BotとDiscord Botに対応しています。 Google fromにwebhookURLを送信すると通知が届くようになります。

Googleフォーム https://docs.google.com/forms/d/e/1FAIpQLScrBF_1cD_vNB3E18jl-2FWkd8REe6OMfvs5YeIG_DsQ6vcyg/viewform
webhookURLの取得方法

Slack: https://slack.com/intl/ja-jp/help/articles/115005265063-Slack-での-Incoming-Webhook-の利用
Discord:https://discord.com/developers/applications からNew Applicationを押して選択をすると取得できます。

kurikinton105

April 28, 2021
Tweet

More Decks by kurikinton105

Other Decks in Programming

Transcript

  1. yamaのその他 ‐ 作詞曲,DTM(M3春参加,VTuberに楽曲提供など) ‐ 旅行(この前京都行った) ‐ ハッカソン ‐ Smoothie Slideの布教中(このプレゼンも使ってる)

    https://smoothie-slide.web.app/ ‐ 注意:VTuberガチ勢とかではないのでご注意を。。 ‐ キズナアイの曲はすごく好き 3
  2. 6

  3. コード詳細 def GetUserTweet_data( Account,tweet_id,option_time =10): ... tweets = api.user_timeline(Account, count=20,

    page=1) BaseURL = f"https://twitter.com/{ Account }/status/" tweet_data =[] for tweet in tweets: if tweet_id < tweet.id: TweetURL = BaseURL+str(tweet.id) tweet_text = f"{tweet.text}\n{TweetURL}" tweet:dict ={"id":tweet.id , "data":tweet_text} tweet_data.append(tweet) return tweet_data https://github.com/kurikinton105/MorningKizunaAI/blob/main/MorningKizunaAI.py Accountのツイートを 20件取得する 取得したツイートが 新規ツイートか判別する
  4. 仕組み2BOT編 def WebhookApp(webhook_url,comment, username,image_URL): if "discord" in webhook_url: ... elif

    "slack" in webhook_url: ... else: return Exception("Not found:Webhook") 28 DiscordとSlack両方 のWebhookに対応
  5. コード解説 def isMorningTweet(tweet,time_now,isTest=False): isMorningTweet = False # 5時にリセットする! if int(time_now.hour)==

    5: ... # 5時代は、0にリセットする elif 6 <= int(time_now.hour) and int(time_now.hour) < 12 : # 時間での判別 if tweet['data'].find("https://t.co") != -1 and tweet['data'] not in "RT": # 動画のツイート&RTじゃない ... 動画ツイートの取得 return isMorningTweet 36
  6. なぜスプレットシート?? ‐ 利点 ‐ Googleフォームとの連携ができる ‐ フロント側を作る必要がない ‐ 来月まで無料 ‐

    スマホから簡単に見れる ‐ 欠点 ‐ GCPで設定が必要 ‐ SQLが使えない ‐ アクセス制限など 38 登録、更新、削除は Googleフォームに おまかせ!