Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LINEのおうむ返しbot作ってみた
Search
Yuto Takamune
December 11, 2021
Programming
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
LINEのおうむ返しbot作ってみた
Yuto Takamune
December 11, 2021
More Decks by Yuto Takamune
See All by Yuto Takamune
GPT-3.5 Turbo をファインチューニングして自分のクローンを作った話
shinbunbun_
1
380
RustのLINEBot SDKを自作した話
shinbunbun_
0
2.5k
セキュリティキャンプ2023 Y3分散合意ゼミ 最終発表
shinbunbun_
0
5k
NixOSでもご自宅k8sがしたい!
shinbunbun_
2
5k
カーネルレベルでTwitterを禁止しよう
shinbunbun_
0
310
CRDTで始めるコンフリクトしないデータ同期
shinbunbun_
0
700
Haskell初心者がHaskellの楽しさについて語る
shinbunbun_
0
240
Rustで楕円曲線暗号の署名アルゴリズムをフルスクラッチ実装してみた話
shinbunbun_
0
2.4k
IEEE802.1X認証を導入してみた
shinbunbun_
0
340
Other Decks in Programming
See All in Programming
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
440
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
410
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
460
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.4k
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
3.9k
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
190
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
200
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
210
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
480
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
1
230
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
310
AIが無かった頃の素敵な出会いの話
codmoninc
1
380
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Test your architecture with Archunit
thirion
1
2.3k
Balancing Empowerment & Direction
lara
6
1.2k
Building Adaptive Systems
keathley
44
3.2k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
66
57k
Into the Great Unknown - MozCon
thekraken
41
2.7k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
680
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Transcript
LINEのおうむ返しbotを作ってみた 学部一年 しんぶんぶん(高棟雄斗)
- 人間です - 会津大学学部一年 - 中三からプログラミング始めて高一からいろいろおしごとしてます - LINE Developer Communityとかでコミュニティ活動してます
- 学生エンジニアコミュニティ「すごくなりたいがくせいぐるーぷ( SGG)」運営 - 会津大学プロダクト開発コミュニティ「 ASCs」代表 - FEもBEもインフラ(クラウドからオンプレまで)もだいたい全部やるけど、主に BE をやってます(器用貧乏) - 最近はずっとGo書いてるけどそろそろRustやりたい - 興味分野は認証/アイデンティティ管理 - 好きな仕様書はDecentralized Identifiers (DIDs) v1.0(W3C) - 最近の悩み: オフラインのインターンに行きたい(夏に行った Yahooはオンライン だった) 自己紹介 LINEのおうむ返し botを作ってみた https://shinbunbun.info @shinbunbun_
- 自宅にVPNサーバ立てた話 - 寮のNATを頑張って越えた話 - Gentoo Linuxとたわむれた話 - W3Cの仕様書を読みながら、 Web
Authentication APIの認証サーバをフルスクラッチ実装した話 最近キモいLTしすぎでは問題 LINEのおうむ返し botを作ってみた
僕がもっとまともな人間であることを伝えたい
初心に返ってLINEのおうむ返しbotを作ってみました!!
- 言語: C言語 - 大学の授業でせっかく C言語を勉強したので、 C言語で実装してみました! - socket.hを使ってソケット通信を実装 -
LINEのWebhookサーバはhttps対応する必要があるので、 OpenSSLのライブラリを使って SSL/TLSの コネクションも実装 - サーバ証明書はLet's Encrypt - サーバはAWSのLightsailを使用 - CodepipelineでCDを組もうと思ったけど、そこまでのシステムじゃなかったので VSCodeの Remote Developmentを使ってSSHで開発した 技術構成 LINEのおうむ返し botを作ってみた
デモだよ〜
コード解説だよ〜
- メモリまわりで無限にバグる - 変数の初期化方法が悪かったせいで、前のリクエストのデータが変数内に残ったままになっているというバグが発生 した - mallocを使って動的メモリ確保をし、最後に明示的にfreeで解放するという処理を書いたが、mallocは定数倍遅 いらしいのでそのうち高速化したい - サンプルが少ない
- 単純にsocket通信を実装しているサンプルはたくさんあるが、TLS実装しているサンプルがかなり少なくて大変だった - 数少ないサンプルやOpenSSLの公式ドキュメント、ライブラリのソースコードをよみながらなんとか実装した - 徹夜だめ - 別のLTのネタにしようと思って1晩で徹夜して作ったので、バグや汚い実装がかなり多い - ある程度バグフィックスやリファクタリングはしたが、まだ結構やばいコードが残ってるのでどうにかしたい 苦労した点 LINEのおうむ返し botを作ってみた
Qiitaで記事書きました LINEのおうむ返し botを作ってみた
GitHubあります LINEのおうむ返し botを作ってみた shinbunbun/linebot-c-sample
- ASCs(Aizu Student Creators)は2021/09に発足した会津大学のプロダクト開発コミュニティ - みんなでチーム開発したりハッカソンにでたりすることで開発技術を向上させることが目的 - 1月か2月に部内(or 学内)ハッカソンを開催する予定 -
協賛(協賛賞、懇親会スポンサーなど)募集中なので、協力してくださる企業様がいらっしゃいましたら是 非ご連絡ください! ASCsについて LINEのおうむ返し botを作ってみた
None