::class-exe

Tag: Neta

LINEでベクターキャノンを準備してもらう

September 18, 2017

LINEのMessaging APIで、ボットにセリフを喋ってもらいます。

ボット用アカウントをつくる

LINE Business Centerでボット用アカウントを作ります。詳しくは割愛しますが、個人用だったのでDeveloper Trialで作っています。

LINE Business Center

bot_account

HTTPSが使えるサーバを準備する

Webhook使ってメッセージを受け取るので、HTTPSで受け取れるようなサーバを準備してください。

ボット用のSDKを手に入れて、実装する

便利なSDKがあるのでinstallしましょう。

line/line-bot-sdk-python: SDK of the LINE Messaging API for Python.

Usage:にサンプルがあるので利用します。セリフを喋るためにちょっと手を加えたのがこちらです。

from flask import Flask, request, abort
from dotenv import load_dotenv, find_dotenv
import time
import os

from linebot import (
    LineBotApi, WebhookHandler
)
from linebot.exceptions import (
    InvalidSignatureError
)
from linebot.models import (
    MessageEvent, TextMessage, TextSendMessage,
)

app = Flask(__name__)
load_dotenv(find_dotenv())

line_bot_api = LineBotApi(os.environ.get('CHANNEL_ACCESS_TOKEN'))
handler = WebhookHandler(os.environ.get('CHANNEL_SECRET'))


@app.route("/ada", methods=['POST'])
def callback():
    # get X-Line-Signature header value
    signature = request.headers['X-Line-Signature']

    # get request body as text
    body = request.get_data(as_text=True)
    app.logger.info("Request body: " + body)
    print(body)

    # handle webhook body
    try:
        handler.handle(body, signature)
    except InvalidSignatureError:
        abort(400)

    return 'OK'


@handler.add(MessageEvent, message=TextMessage)
def handle_message(event):
    to = ''
    if event.source.type == 'group':
        to = event.source.group_id
    if event.source.type == 'user':
        to = event.source.user_id
    if event.message.text == "ベクターキャノン":
        line_bot_api.push_message(to, TextSendMessage(text='ベクターキャノンモードへ移行'))
        time.sleep(3)
        line_bot_api.push_message(to, TextSendMessage(text='エネルギーライン全段直結'))
        time.sleep(2)
        line_bot_api.push_message(to, TextSendMessage(text='ランディングギア、アイゼン、ロック'))
        time.sleep(3)
        line_bot_api.push_message(to, TextSendMessage(text='チャンバー内、正常加圧中'))
        time.sleep(2)
        line_bot_api.push_message(to, TextSendMessage(text='ライフリング回転開始'))
        time.sleep(7)
        line_bot_api.push_message(to, TextSendMessage(text='撃てます'))


if __name__ == "__main__":
    app.run()

できました

こちらが「ベクターキャノン」と言うと、ボットは某ゲームのセリフを喋ります。

line_ada_bot

退社したらお疲れさまと言ってもらう

September 4, 2017

退社したらお疲れさまと言ってもらいます。IFTTTでやってみます。

トリガー

Locationサービスで会社の建物を設定します。

trigger

アクション

LINEサービスで通知メッセージを設定します。

action

レシピ

できあがったレシピはこんなのです。

recipe

LINE Notifyから、お疲れさま、って言ってもらえました。

line-notify

Wikipediaに寄付してみる

September 6, 2015

Wikipediaに寄付してみました。

クレジットカードの用意

card

手元にVプリカギフトがありましたのでそれで寄付してみます。

Vプリカ|Vプリカギフト|ネット専用Visaプリペイドカード

下記のSTEP3にカード情報確認のリンクがありましたが、今回は必要なかったかもしれません。

Vプリカ|Vプリカギフトのご利用方法|ネット専用Visaプリペイドカード

Wikipediaに寄付

メインページから寄付ページへ。

今すぐ寄付を - Donate

donation_screen

card_info

Vプリカギフトカードの裏を削って、カード番号を出します。カードホルダー名は"LIFECARD"で姓名がないので困りましたが、適当に分割すれば良いようです。

販売先サイトに「姓」と「名」を入力するにはどうしたらいい?|ライフカード

success

無事寄付できました。過去にこんなのWikipediaから寄付バナーを取り除くGreasemonkeyスクリプトを作ってた場合ではありませんでしたね。

再配達が保管期限過ぎてキャンセルされた件

March 10, 2013

Amazonで注文したらメール便で配達され、結局、再配達が自宅で受け取れませんでした。郵便局の保管期限を過ぎるとキャンセルされるようですね。

「キャンセルされます」とAmazonのヘルプに書いてありますね。Amazon.co.jp ヘルプ: 配送情報

商品はAmazon.co.jp の配送センターに返送され、ご注文はキャンセルされます。キャンセルされた注文の再発送は承っておりませんので、購入をご希望の場合はあらためてご注文ください。

簡易カウントダウン(秒)

January 11, 2011

カウントダウン

簡易なカウントダウンをjQueryで作ってみました。カウントダウンのプラグインを利用しています。プラグインはこちらjQuery Countdownです。機能は日付と時刻の変更と、全画面表示のみです。クリックすると全画面になります。

実際に動いているカウントダウンは以下から。

 
期限の日付と時刻


小文字文章メーカー

December 20, 2010

小文字文章メーカー

㍆㍉㌜㌏㌜(クリスマス)な小文字の単位の文章を簡単に作れるように、小文字文章メーカーを作ってみました。jQueryを使っています。

jQueryで<textarea>のカーソル位置に文字を挿入するのに、textareaのカーソル位置に文字列挿入 - PSLブログ(仮)、要素をソートするのに、Sorting elements with jQuery – James Padolseyを参考にしました(というかコピペしました)。

使い方は、対応するボタンを押してください。二つあるテキストボックスのうち、上に小文字の文章が、下に小文字の下部分の読みを表示します。完成したらTwitterに投稿してみてください

月曜日は怖いよプログラム

November 17, 2010

monday

明日は月曜日ネタのAAをプログラムにしました。プログラムはこちらです。右上の[x]では閉じないので、キーボードのどれかを押下してください。

││┝┥┌──────────────────┴┐<  明日は月曜日
│││┝┥┌──────────────────┴┐\  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
││││┝┥┌──────────────────┴┐< 明日は月曜日
│││││┝┥        .明日は月曜日          [×]|  \/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
┤│││││┝━━━━━━━━━━━━━━━━━━| \カチ<  明日は月曜日
└┤│││││    |      ̄ ̄ ̄    ヽ         ヽゝカチ \ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  └┤││││    | ̄ ̄ ̄月曜日 ̄ ̄ ̄)           │ カチ <  明日は月曜日
    └┤│││    | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄.\           | カチ   \ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      └┤││    |ヽ-=・=-′ ヽ-=・=-  / やあ       | カチ   < 明日は月曜日
        └┤│    |::    \___/    /          | カチ    \___________
          └┤    |:::::::    \/     /           | カチ
            └─────────────────――┘ カチ