LINE Botのお試し。 based on SpringBoot.
herokuの追加
# git clone git@github.com:maruhachi/line-bot-kun.git
# heroku git:remote --app APPNAME
必要とするトークンを環境変数で渡す
# export CHANNEL_SECRET=key
# export CHANNEL_TOKEN=key
# export AZURE_SUBSCRIPTION_KEY=toolongkey
# mvn spring-boot:run
# # if behind proxy
# export WORK_PROXY=proxy.host; mvn spring-boot:run -Drun.profiles=work
applicaton.properties に埋め込むわけにいかないので、herokuの機能を利用。
line.bot.channelSecret=${CHANNEL_SECRET}
line.bot.channelToken=${CHANNEL_TOKEN}
azure.cognitive.SubscriptionKey=${AZURE_SUBSCRIPTION_KEY}
上記の通り設定しておき、herokuの環境変数で置き換える。 ⇒ ここをみた
- LINE アカウントの作成まで
- SpringBootでBotのアプリケーション作成
作成したLINEアカウントの管理画面
以下のリンクがある
- LINE@ MANAGER
- LINE@アカウントとしての挙動制御
- LINE developer
- Botとして必要な情報(シークレットキー、アクセストークン、コールバックURL)
まず、TranslationAPIは、Azureの1機能として追加する形で利用するよう。 そのため、Azureへログインできる環境をまず用意。
そうしたらAPIを用意する
用意したAPIを呼ぶ流れ
- CognitiveService共通のトークンを発行してもらう
- TranslationAPIへ上記トークンをつけてRequest
しかし、ここまでやって得られるResponseは<string honyarara="url">afterTranslate</string>
とかいう謎XML
扱いに困り、暫定で正規表現で取り出してる。