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
dEXonation
Search
Jeremy Yen
December 16, 2018
Technology
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
dEXonation
DEXON Hackathon Team #15
Jeremy Yen
December 16, 2018
More Decks by Jeremy Yen
See All by Jeremy Yen
A day of full stack developer @ NFU
jeremy5189
0
220
Club Mate and Hacker - 34C3 @ SITCON
jeremy5189
2
740
SITCON 2017 論壇系統開發分享 @ SITCON 2017 Summer
jeremy5189
0
240
poManeuver: Poland into space
jeremy5189
0
480
How we hacked a forum
jeremy5189
0
530
Bdecisive - Booking.com Taipei Hack 2nd Prize
jeremy5189
0
590
Social Intelligence Smart-device project
jeremy5189
0
71
IoT made easy @ SITCON x HK
jeremy5189
0
110
遺失的學校 - SITCON 2014 Lightning Talk
jeremy5189
0
570
Other Decks in Technology
See All in Technology
Breaking the Seal: Static Deobfuscation of Compiled V8 JavaScript Bytecode Malware
hshrzd
0
680
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.9k
第3回しろおびセキュリティスポンサーセッション
log0417
0
160
【Google Cloud Next Tokyo'26】Gemini Enterprise と Oracle AI Database で実現する、業務データ活用を実現する AI エージェント実装
shisyu_gaku
0
230
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
780
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
150
Invisible to AI? Making TYPO3 Sites Quotable by AI Search Systems
wolfgangwagner
0
170
20分でわかるセキュアAPI
nwiizo
2
210
つくって納得、つかって実感! 大規模言語モデルことはじめ ver2.0
recruitengineers
PRO
4
1.2k
サイバー捜査員研修(前半)
nomizone
1
1.9k
社内の7割が使うデータ基盤を、 データチーム2人で回すためにやったこと
koh_yoshi
4
1.3k
Cursor Meetup Sapporo - Cursor物語 続編
cocacola917
0
140
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
360
Making Projects Easy
brettharned
120
6.7k
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
Everyday Curiosity
cassininazir
0
270
Automating Front-end Workflow
addyosmani
1369
210k
Chasing Engaging Ingredients in Design
codingconduct
0
260
The World Runs on Bad Software
bkeepers
PRO
72
12k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Transcript
dEXonation Game Changer of Streaming Industry Fully Decentralized and Low-Latency
Donating Solution Powered By
Our Team #15 Viktor Lin Jeremy Yen Alex Tzeng JavaScript
Developer JavaScript Developer Alvin Hou Blockchain Developer Team Leader
None
現在正在直播,⾺馬上收看
Live Streaming industry is booming in 2018
None
Concurrent Streamers by Platform
Concurrent Viewer by Platform
None
None
Challenge on tipping in live streaming
High Transaction Fee Barriers and Qualifications High Latency
High Transaction Fee
Total Tip Volume
None
Opay (Taiwan) 2.75% / Transaction (Min. NT$5)
Donate NT$30 Fee NT$ 5 Streamer Gets NT$25
Barriers and Qualifications
None
None
None
None
None
High Latency
Realtime Interaction with Streamer and Viewer
None
Introducing dEXonation
dEXonation
Low Fee (Doner pay gas) Fully Decentralized by DEXON High
TPS Low-Latency
Low Fee (Doner pay gas)
Fully Decentralized by DEXON
Fully Decentralized No backend server
dEXonation Geek Streamer Self Deployed Contract Regular Streamer dEXonation service
High TPS Low-Latency
None
Quick Economic Rich UX
How it works?
None
Set your notification URL in streaming application (OBS)
Game Screen dEXonation Notification Overlay
None
Viewer’s Browser (DukuSan) Streamer’s Wallet Show Notification in Streaming dEXonation
Smart Contract event NewDonation( uint value, string donor, string message, address raddr ); donate( address _receiver, string _name, string _message ) Transfer DXN WebSocket
contract DonateContract { struct Donation { uint value; string donor;
} mapping (address => Donation[]) history; event NewDonation(uint value, string donor, string message, address raddr); function donate(address _receiver, string _name, string _message) public payable { require(msg.value >= 0); history[_receiver].push(Donation(msg.value, _name)); NewDonation(msg.value, _name, _message, _receiver); _receiver.transfer(msg.value); } function getDonation(address _addr, uint _id) public view returns(uint value, string name) { require(_id >= 0 && _id < history[_addr].length); return(history[_addr][_id].value, history[_addr][_id].donor); } function getDonationsCount(address _addr) public view returns(uint length) { return(history[_addr].length); } }
Provide donation link to stream viewer https:/cryolite.me/dEXonation/#/noti? addr=0xeE20A6a982E09fD24733b2a9ce2510CFcDbea67F
None
Business Model Stage 1 推廣期 合約免收⼿手續費 實況主可獲得 100% 捐款 捐款者負擔
Gas 費⽤用 Stage 2 成熟期 合約採⽤用累進⼿手續類費率 提供客製化功能 (更更豐富的介⾯面、捐款特效)
Stage 1 已完整上鏈運作 Stage 1 推廣期 合約免收⼿手續費 實況主可獲得 100% 捐款
捐款者負擔 Gas 費⽤用 Stage 2 成熟期 合約採⽤用累進⼿手續類費率 提供客製化功能 (更更豐富的介⾯面、捐款特效)
Live Demo
dEXonation Q & A Powered By
dEXonation Thank You Powered By