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
RustのLINEBot SDKを自作した話
Search
Yuto Takamune
September 29, 2023
Programming
0
2k
RustのLINEBot SDKを自作した話
Yuto Takamune
September 29, 2023
Tweet
Share
More Decks by Yuto Takamune
See All by Yuto Takamune
GPT-3.5 Turbo をファインチューニングして自分のクローンを作った話
shinbunbun_
0
330
セキュリティキャンプ2023 Y3分散合意ゼミ 最終発表
shinbunbun_
0
4.2k
NixOSでもご自宅k8sがしたい!
shinbunbun_
2
4.2k
カーネルレベルでTwitterを禁止しよう
shinbunbun_
0
270
CRDTで始めるコンフリクトしないデータ同期
shinbunbun_
0
550
Haskell初心者がHaskellの楽しさについて語る
shinbunbun_
0
200
Rustで楕円曲線暗号の署名アルゴリズムをフルスクラッチ実装してみた話
shinbunbun_
0
1.9k
IEEE802.1X認証を導入してみた
shinbunbun_
0
290
UBICの食材管理APIを作った話
shinbunbun_
0
230
Other Decks in Programming
See All in Programming
なぜ強調表示できず ** が表示されるのか — Perlで始まったMarkdownの歴史と日本語文書における課題
kwahiro
12
7k
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.2k
Promise.tryで実現する新しいエラーハンドリング New error handling with Promise try
bicstone
3
510
GeistFabrik and AI-augmented software development
adewale
PRO
0
110
例外処理を理解して、設計段階からエラーを見つけやすく、起こりにくく #phpconfuk
kajitack
12
6.3k
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
11
4.8k
r2-image-worker
yusukebe
1
170
Building AI with AI
inesmontani
PRO
1
240
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
20
12k
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
4.6k
開発生産性が組織文化になるまでの軌跡
tonegawa07
0
180
flutter_kaigi_2025.pdf
kyoheig3
1
350
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Practical Orchestrator
shlominoach
190
11k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
We Have a Design System, Now What?
morganepeng
54
7.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
A better future with KSS
kneath
239
18k
RailsConf 2023
tenderlove
30
1.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Transcript
RustのLINEBot SDKを自作した話 しんぶんぶん
自己紹介 • 名前: しんぶんぶん • 所属: 会津大学学部3年 • Twitter: @shinbunbun_,
@4fa19623 • LINE API Expert / seccamp ’23 / Cybozu labyouth 13th ◦ セキュキャン: 分散合意ゼミ(Raft) ◦ ラボユース: CRDTを使ったP2P分散データベースの開発
LINE Messaging APIについて/今回作ったもの • いわゆるLINEBotを作るのに必要な API • 各言語でSDKが公式から提供されて いる •
Rustは公式で提供されていないので 自作してみた • リポジトリ: https://github.com/shinbunbun/line- bot-sdk-rust LINEBot→
実装したもの • 基本的には構造体の型を定義してい く作業 • LINEから送られてくるメッセージと サーバから送信するメッセージそれぞ れの型を、ドキュメントを見ながら地道 に書いた •
いろいろなAPIがあるので、それらの ラッパーを書いた
使用した(主な)Crate • awc ◦ APIを叩くのに使用 • typed-builder ◦ 型レベルビルダーパターンでメッセージの structを構築できるようにした
• thiserror ◦ エラーハンドリングを良い感じにするのに使用
使用イメージ
使用イメージ
SDKを使ったサンプル実装 • Hands-on LINEBOT Rust編 Vol.1 ◦ 技術書典で頒布した本 • リポジトリ
◦ https://github.com/shinbunbun/Hands-on-LINEB OT-Rust-Vol.1
みんなもRustでLINEBot作ろう!