Bot

Callbackの送信先がモバイルかブラウザかをサーバー側で判断する方法に関して

Koshi検証用

2021.10.14既読 2044

担当者様および有識者の方々

お世話になります。

首記の件で相談をさせて下さい。

LineWorksBotのCallbackのリクエスト先を自分のサーバーアプリ(C# ASP.NET)にしているのですが、

送信されてくるリクエストが「ブラウザ」か「モバイル」かを判断する方法をご教授お願いします。

※requestのUserAgentから取得できると思ったのですが無理でした。

UserAgentには固定文字で「security」と入っています

下の記事にもある通り現在はUserAgent廃止が進んでおりその影響かと思われます。

https://qiita.com/paddy-oti/items/fae9ecca9facc9797035

「ブラウザ」か「モバイル」かの判定が必要な理由は

「LineWorksで一括での画像投稿時のリクエスト情報作成時間の差」が異なるからです。

(リクエスト情報作成時間とはCallbackでサーバーに送られてくるjsonの「createdTime」の値を指します

サーバー側では一括投稿か否かを、リクエスト作成時間が前後0.5秒以内かで判断しています。

(実際のcreatedTime値をサンプリングした限りでは皆この時間内に収まっています)

ところがモバイルから一括投稿した場合はこの作成時間の差が5秒ほどになり

上記のロジックがそのままでは使用できません。

そこで「ブラウザ」か「モバイル」かを判定し

それによりリクエスト作成時間を0.5⇒5秒で判定するようにしたいのです。

些細な情報でも助かります。

よろしくお願いいたします。

コメント2

  • 업데이트 된 답글입니다.

    LINE WORKS 公式アカウント

    Callback Event ではトークが送信されたデバイスの情報は取得できません。
    そのため、Callback Event で送信先がモバイルかブラウザかを判断することはできません。

    2021.10.22

    1
  • 업데이트 된 답글입니다.

    Koshi検証用 投稿者

    回答ありがとうございます。
    判断不可能とのこと承知しました。

    2021.10.22

    0
前の投稿Macのアプリでpostbackがサーバー側に送信されない
次の投稿Max Limit for Contacts
リスト

まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。