Git Product home page Git Product logo

linebot-project-template's People

Contributors

uezo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

linebot-project-template's Issues

minette.iniのchannel_access_tokenの記載について

テンプレートのご提供ありがとうございます。大変参考になりました。

最終的にテンプレートでLINEボットの動作まで確認できましたが、気になることがございましたので、ご確認いただけますと幸いです。

質問

LINE Developers Consoleで確認した接続情報をminette.iniに設定した際に、LINEサーバーとの接続時にエラーが発生しました。とりあえず、接続情報をminette.iniではなくハードコーディングすることで解消しました。

channel_access_tokenに=が含まれていることが原因と推測されますが、対処策(=が含まれる場合のminette.iniへの記載方法など)がございましたら教えていただけないでしょうか。

⚠以下機密性の高い情報は一部書き換えています。

状況

minette.iniの設定内容(抜粋)

  • channel_secretchannel_access_tokenの文字数は実際とは異なります
  • channel_access_tokenの途中に/が含まれ=で終わっていました
[line_bot_api]
channel_secret = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
channel_access_token = xxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/99/xxxxxx=

エラーログ

本リポジトリのクローン後 LINE Developersで取得したChannel SecretとChannel Access Tokenを設定し、 ​run.pyを実行したところ、以下のエラーメッセージが表示されました。

2021-06-17 17:02:43,180 - minette - ERROR - Request signiture is invalid: <InvalidSignatureError [Invalid signature. signature=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]>
Traceback (most recent call last):
 ​File "/home/xxxxxxxxxxxxx/.pyenv/versions/3.6.9/lib/python3.6/site-packages/minette/adapter/lineadapter.py", line 99, in handle_http_request
   ​request_headers.get("X-Line-Signature", ""))
 ​File "/home/xxxxxxxxxxxxx/.pyenv/versions/3.6.9/lib/python3.6/site-packages/linebot/webhook.py", line 143, in parse
   ​'Invalid signature. signature=' + signature)
linebot.exceptions.InvalidSignatureError: <InvalidSignatureError [Invalid signature. signature=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]>

暫定対応

エラーログからX-Line-Signatureの付近でエラーが出ていましたが、ngrokで確認したところLINEサーバからX-Line-Signatureは渡されていました。

Channel Access Tokenに=が含まれていることが原因ではないかと考え、次のように接続情報をハードコーディングしたところ、エラーは解消されました。

run.pyを書き換え

padpter = LineAdapter(
   ​config_file="./minette.ini",
   ​dialog_router=MyDialogRouter,
   ​tagger=JanomeTagger,
   ​channel_secret="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
   ​channel_access_token="xxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/99/xxxxxx=",
)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.