3
3

More than 3 years have passed since last update.

【LINEWORKS API】新機能!BOT でファイルを送受信!

Last updated at Posted at 2020-09-04

ver 2.9 で(個人的に)待望の BOT でのファイル受信が追加されました!ヾ(´∀`)ノ
[リリース] アップデートのお知らせ (8月25日)

ではではさっそく使ってみましょう!

ngrok を使って Callback を受信

おなじみ ngrok さんの登場です!
もう 2年の付き合いになりますか…長いような短いような。
本当に色々助かっております。今回もよろしくお願いしますね!

・・・え、ngrok さんを知らない!?Σ( ゚Д゚)
ngrok さんはローカル PC の外部公開用 URL を取得してくれるステキモジュールなんですよ!
細かい設定は、過去の記事になりますがこちらの記事をどーぞ(*_ _)
ローカル環境で LINEWORKS Bot を動かす話

Bot にファイルを送信する

ファイルの送信はとっても簡単です。
LINEWORKS のトークサービスを開いて、ファイルをクリック&ドロップするだけ!

1599125206.png

すると、Bot がファイルを受信します。

{ type: 'message',
  source: { accountId: 'name@domain.xyz' },
  createdTime: 1599112511707,
  content:
   { type: 'file',
     resourceId: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' } }

受信内容の resourceId を使って LINEWORKS のメンバーにファイルを転送することができます。

別のメンバーに File を送信

これは従来のメッセージ送信 API とほぼ変わりませんね。
LINEWORKS API - メッセージ送信 (File)

contenttypefile に指定します。

const request = require('request');
const options = {
  'method': 'POST',
  'url': 'https://apis.worksmobile.com/r/API ID/message/v1/bot/botNo/message/push',
  'headers': {
    'consumerKey': 'xxxxxxxxxxxxx',
    'Content-Type': 'application/json',
    'Authorization': 'Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  },
  body: JSON.stringify({
    "accountId":"name@domain.xyz",
    "content":{
        "type":"file",
        "resourceId":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    }
  })
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

1599125265.png

別のユーザに転送できました!
これで、色々なファイルのやりとりができますね~♪

おわりに

ここまでお付き合いいただきありがとうございました。

待ちに待った新機能!
ファイル扱えるとなると、Bot の利用幅が凄く広くなると思うんですよね~。
音声や動画ファイルとかもいけるのかな?
色々試してみたいですね!

ではまた!(^^)/

参考にさせていただきましたm(_ _)m

LINEWORKS Developers

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3