質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Azure

Azureは、マイクロソフトのクラウド プラットフォームで、旧称は Windows Azureです。PaaSとIaaSを組み合わせることで、 コンピューティング・ストレージ・データ・ネットワーキング・アプリケーションなど多くの機能を持ちます。

Q&A

解決済

1回答

795閲覧

LINE botでユーザが送ったメッセージをCosmosDBに保存する方法

mt_engineeeeer

総合スコア3

LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Azure

Azureは、マイクロソフトのクラウド プラットフォームで、旧称は Windows Azureです。PaaSとIaaSを組み合わせることで、 コンピューティング・ストレージ・データ・ネットワーキング・アプリケーションなど多くの機能を持ちます。

0グッド

0クリップ

投稿2022/04/13 04:57

Azure functionsをLINEのボットサーバーとして利用しようと考えています。
ユーザが送ったメッセージをCosmosDBに保存したいのですが、どのように記述していいのか、参考になる記事がなかなか出てきません。
botが何か質問を投げて、ユーザーがAとかBを回答すればその結果とユーザー情報を取得し、DBに保存できるというのが目標です。
有識者のかたご回答をお願いいたします。

現在の状況は
LINEディベロッパーアカウント:作成済み
Azure Functionの関数:作成済み
オウム返しのボットは作成し、動くのは確認。(以下にコード記載)

javaScript

1const line = require('@line/bot-sdk'); 2 3const config = { 4 channelAccessToken: 'XXXX', 5 channelSecret: 'XXXXX', 6}; 7 8const client = new line.Client(config); 9 10module.exports = async function (context, req) { 11 context.log('JavaScript HTTP trigger function processed a request.'); 12 13 if (req.query.message || (req.body && req.body.events)) { 14 if (req.body && req.body.events[0]) { 15 message = { 16 type: "text", 17 text: req.body.events[0].message.text 18 } 19 console.log(message); 20 if (req.body.events[0].replyToken) { 21 client.replyMessage(req.body.events[0].replyToken, message); 22 } 23 } 24 else { 25 context.res = { 26 status: 200, 27 body: req.query.message 28 }; 29 } 30 } 31 else { 32 context.res = { 33 status: 200, 34 body: "Please check the query string in the request body" 35 }; 36 }; 37};

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

こんにちは。

Azure FunctionsのCosmosDBバインディング機能を使うと簡単に実現出来ると思います。
以下の記事はもうそのままです。試してみてください。

https://k-miyake.github.io/blog/functions-cosmosdb-bindings/

投稿2022/04/13 21:01

Tak1wa

総合スコア4791

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mt_engineeeeer

2022/04/14 00:14

ご回答ありがとうございます! 無事DBへ書き込めました。助かりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問