SlideShare a Scribd company logo
 
Rapid Development & Integration of 
Real Time Communication in Websites 
PyCon Kiwi’13 
Chetan Giridhar
Facts 
 Website developers focus 
 Core functionality, Design 
 User Interface, Performance 
 Statistics 
 About 38% customers agree that they made their 
deals from the website due to engagement itself 
 56% of the people prefer live engagement over email 
or social media as preferred communication method 
Could we make websites 
better? Can Python help?
Demo
Development Considerations 
 Asynchronous 
 Real time exchange 
 Full duplex communication 
 Store chat information 
 Easy to use APIs – think reuse 
 Free and Open Source
Pure Python 
 ws4py – python client library for web sockets 
 tornado.websocket.WebSocketHandler 
class Socket(tornado.websocket.WebSocketHandler): 
def on_message(self, message): 
self.write_message(“Msg is” + message) 
from ws4py.client.threadedclient import WebSocketCient 
class Client(WebSocketClient) 
def opened(self): self.send(“Hello”) 
def received_message(self, message): 
print “From server:” + message 
open() 
on_close() 
closed()
Framework 
Tornado Web Server 
End User 
asyncmongo/r 
edis 
Web Sockets / Ajax 
Store Chat 
Messages 
Analyze and 
generate patterns 
feedback 
HTML/CS 
S
Live Chat – Ajax 
function newMessage(form) { 
$.postJSON("/a/message/new", message, 
function(response) { 
updater.showMessage(response); 
}); 
} 
class MessageNewHandler: 
def post(self): 
message = { 
"id": str(uuid.uuid4()), 
"from": self.current_user["first_name"], 
"body": self.get_argument("body"), 
} 
message["html"] = self.render_string 
("message.html", message=message)
Live Chat -Websockets 
var url = "ws://" + location.host + "/chatsocket"; 
updater.socket = new WebSocket(url); 
function newMessage(form) { 
updater.socket.send(JSON.stringify(message)); 
} 
class ChatSocketHandler: 
def on_message(self, message): 
chat = { 
"id": str(uuid.uuid4()), 
"body": parsed["body"], 
} 
chat["html"] = self.render_string 
("message.html", message=chat)
Demo
Development 
 Considerations: 
 Ease of use 
 Availability of service 
 Point to point 
 Tools 
 Web Server: Tornado 
 JavaScript: webrtc
What it means to Business? 
 Better Marketing demonstrations 
 Increased Product up sales 
 Improved Customer Satisfaction Score 
 Convert customer pain points to profits 
 Competitive Edge 
 Reduced Expenses – customer support time/telephone 
 Did someone say more revenue? 
How can developers help? 
 Commercially available 
 Used off the shelf? – Often not 
 Data in the desired format? 
 To analyze and identify patterns 
 Looks like I can develop it myself??! 
 When are you building yours? 
References 
 Market research: Forrester Research and Boldchat 
 Demos hosted on http://heroku.com 
 eAssistance Pro video on youtube.com 
 webrtc-plugin http://freshtilledsoil.com/ 
 Free website templates from 
http://WebsiteTemplatesOnline.com 
 Tornado web server http://tornadoweb.org 
 MongoDB www.mongodb.org
Questions? 
Source Code 
https://github.com/cjgiridhar 
Blog 
http://technobeans.com 
Contact 
cjgiridhar@gmail.com
Live chat demo -Tourism 
Chat 
Window
Demo… 
User login 
with gmail 
(openid) 
Cross 
selling with 
Chat
Video Chat – Interior Design
Rapid development & integration of real time communication in websites
Rapid development & integration of real time communication in websites

More Related Content

Viewers also liked

PyCon India 2012: Rapid development of website search in python
PyCon India 2012: Rapid development of website search in pythonPyCon India 2012: Rapid development of website search in python
PyCon India 2012: Rapid development of website search in pythonChetan Giridhar
 
Bytecode Optimizations
Bytecode OptimizationsBytecode Optimizations
Bytecode OptimizationsESUG
 
Fuse'ing python for rapid development of storage efficient FS
Fuse'ing python for rapid development of storage efficient FSFuse'ing python for rapid development of storage efficient FS
Fuse'ing python for rapid development of storage efficient FS
Chetan Giridhar
 
Allison Kaptur: Bytes in the Machine: Inside the CPython interpreter, PyGotha...
Allison Kaptur: Bytes in the Machine: Inside the CPython interpreter, PyGotha...Allison Kaptur: Bytes in the Machine: Inside the CPython interpreter, PyGotha...
Allison Kaptur: Bytes in the Machine: Inside the CPython interpreter, PyGotha...
akaptur
 
Diving into byte code optimization in python
Diving into byte code optimization in python Diving into byte code optimization in python
Diving into byte code optimization in python
Chetan Giridhar
 
Pycon11: Python threads: Dive into GIL!
Pycon11: Python threads: Dive into GIL!Pycon11: Python threads: Dive into GIL!
Pycon11: Python threads: Dive into GIL!
Chetan Giridhar
 
Async programming and python
Async programming and pythonAsync programming and python
Async programming and python
Chetan Giridhar
 
OOPS Advanced
OOPS AdvancedOOPS Advanced
OOPS Advanced
Madhavan Malolan
 
The Awesome Python Class Part-4
The Awesome Python Class Part-4The Awesome Python Class Part-4
The Awesome Python Class Part-4
Binay Kumar Ray
 
Object Oriented Programming : Part 2
Object Oriented Programming : Part 2Object Oriented Programming : Part 2
Object Oriented Programming : Part 2
Madhavan Malolan
 

Viewers also liked (11)

PyCon India 2012: Rapid development of website search in python
PyCon India 2012: Rapid development of website search in pythonPyCon India 2012: Rapid development of website search in python
PyCon India 2012: Rapid development of website search in python
 
Bytecode Optimizations
Bytecode OptimizationsBytecode Optimizations
Bytecode Optimizations
 
Fuse'ing python for rapid development of storage efficient FS
Fuse'ing python for rapid development of storage efficient FSFuse'ing python for rapid development of storage efficient FS
Fuse'ing python for rapid development of storage efficient FS
 
Allison Kaptur: Bytes in the Machine: Inside the CPython interpreter, PyGotha...
Allison Kaptur: Bytes in the Machine: Inside the CPython interpreter, PyGotha...Allison Kaptur: Bytes in the Machine: Inside the CPython interpreter, PyGotha...
Allison Kaptur: Bytes in the Machine: Inside the CPython interpreter, PyGotha...
 
Oop concepts in python
Oop concepts in pythonOop concepts in python
Oop concepts in python
 
Diving into byte code optimization in python
Diving into byte code optimization in python Diving into byte code optimization in python
Diving into byte code optimization in python
 
Pycon11: Python threads: Dive into GIL!
Pycon11: Python threads: Dive into GIL!Pycon11: Python threads: Dive into GIL!
Pycon11: Python threads: Dive into GIL!
 
Async programming and python
Async programming and pythonAsync programming and python
Async programming and python
 
OOPS Advanced
OOPS AdvancedOOPS Advanced
OOPS Advanced
 
The Awesome Python Class Part-4
The Awesome Python Class Part-4The Awesome Python Class Part-4
The Awesome Python Class Part-4
 
Object Oriented Programming : Part 2
Object Oriented Programming : Part 2Object Oriented Programming : Part 2
Object Oriented Programming : Part 2
 

Similar to Rapid development & integration of real time communication in websites

Bot & AI - A Bot for Productivity
Bot & AI - A Bot for ProductivityBot & AI - A Bot for Productivity
Bot & AI - A Bot for Productivity
Marvin Heng
 
php
phpphp
DODN2009 - Jump Start Silverlight
DODN2009 - Jump Start SilverlightDODN2009 - Jump Start Silverlight
DODN2009 - Jump Start Silverlight
Clint Edmonson
 
Performance Tune Up for Web Developers
Performance Tune Up for Web DevelopersPerformance Tune Up for Web Developers
Performance Tune Up for Web Developers
Lenin Ghazi
 
Facebook Messenger Platform Framework
Facebook Messenger Platform FrameworkFacebook Messenger Platform Framework
Facebook Messenger Platform Framework
Ram Murat Sharma
 
新人訓練:歡迎來到網路業練功
新人訓練:歡迎來到網路業練功新人訓練:歡迎來到網路業練功
新人訓練:歡迎來到網路業練功
Ernest Chiang
 
Benefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkBenefits of the CodeIgniter Framework
Benefits of the CodeIgniter Framework
Toby Beresford
 
Summit Australia 2019 - PowerApp Portals - Andrew Ly & Lachlan Wright
Summit Australia 2019 - PowerApp Portals - Andrew Ly & Lachlan WrightSummit Australia 2019 - PowerApp Portals - Andrew Ly & Lachlan Wright
Summit Australia 2019 - PowerApp Portals - Andrew Ly & Lachlan Wright
Andrew Ly
 
Web 2.0 Tech Talk
Web 2.0 Tech TalkWeb 2.0 Tech Talk
Web 2.0 Tech Talkpooyad
 
XCS110_All_Slides.pdf
XCS110_All_Slides.pdfXCS110_All_Slides.pdf
XCS110_All_Slides.pdf
ssuser01066a
 
PRESENTATION ON PROJECT REPORT
PRESENTATION ON PROJECT REPORTPRESENTATION ON PROJECT REPORT
PRESENTATION ON PROJECT REPORTDiksha Bhargava
 
Daniel Egan Msdn Tech Days Oc
Daniel Egan Msdn Tech Days OcDaniel Egan Msdn Tech Days Oc
Daniel Egan Msdn Tech Days Oc
Daniel Egan
 
EuroIA 2009 Designing Exploding Websites Smit Boersma
EuroIA 2009 Designing Exploding Websites Smit BoersmaEuroIA 2009 Designing Exploding Websites Smit Boersma
EuroIA 2009 Designing Exploding Websites Smit Boersma
Iskander Smit
 
Designing Exploding Websites (Euro IA 2009)
Designing Exploding Websites (Euro IA 2009)Designing Exploding Websites (Euro IA 2009)
Designing Exploding Websites (Euro IA 2009)
Peter Boersma
 
HTML5 Up and Running
HTML5 Up and RunningHTML5 Up and Running
HTML5 Up and Running
Codemotion
 
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok ChernVs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok ChernQuek Lilian
 
Euro Ia Designing Exploding Websites Share
Euro Ia Designing Exploding Websites ShareEuro Ia Designing Exploding Websites Share
Euro Ia Designing Exploding Websites Share
Info.nl
 
The Windows Runtime and the Web
The Windows Runtime and the WebThe Windows Runtime and the Web
The Windows Runtime and the Web
Jeremy Likness
 

Similar to Rapid development & integration of real time communication in websites (20)

Bot & AI - A Bot for Productivity
Bot & AI - A Bot for ProductivityBot & AI - A Bot for Productivity
Bot & AI - A Bot for Productivity
 
Resume
ResumeResume
Resume
 
php
phpphp
php
 
DODN2009 - Jump Start Silverlight
DODN2009 - Jump Start SilverlightDODN2009 - Jump Start Silverlight
DODN2009 - Jump Start Silverlight
 
Performance Tune Up for Web Developers
Performance Tune Up for Web DevelopersPerformance Tune Up for Web Developers
Performance Tune Up for Web Developers
 
Facebook Messenger Platform Framework
Facebook Messenger Platform FrameworkFacebook Messenger Platform Framework
Facebook Messenger Platform Framework
 
新人訓練:歡迎來到網路業練功
新人訓練:歡迎來到網路業練功新人訓練:歡迎來到網路業練功
新人訓練:歡迎來到網路業練功
 
Benefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkBenefits of the CodeIgniter Framework
Benefits of the CodeIgniter Framework
 
Summit Australia 2019 - PowerApp Portals - Andrew Ly & Lachlan Wright
Summit Australia 2019 - PowerApp Portals - Andrew Ly & Lachlan WrightSummit Australia 2019 - PowerApp Portals - Andrew Ly & Lachlan Wright
Summit Australia 2019 - PowerApp Portals - Andrew Ly & Lachlan Wright
 
Web 2.0 Tech Talk
Web 2.0 Tech TalkWeb 2.0 Tech Talk
Web 2.0 Tech Talk
 
XCS110_All_Slides.pdf
XCS110_All_Slides.pdfXCS110_All_Slides.pdf
XCS110_All_Slides.pdf
 
PRESENTATION ON PROJECT REPORT
PRESENTATION ON PROJECT REPORTPRESENTATION ON PROJECT REPORT
PRESENTATION ON PROJECT REPORT
 
Daniel Egan Msdn Tech Days Oc
Daniel Egan Msdn Tech Days OcDaniel Egan Msdn Tech Days Oc
Daniel Egan Msdn Tech Days Oc
 
EuroIA 2009 Designing Exploding Websites Smit Boersma
EuroIA 2009 Designing Exploding Websites Smit BoersmaEuroIA 2009 Designing Exploding Websites Smit Boersma
EuroIA 2009 Designing Exploding Websites Smit Boersma
 
Designing Exploding Websites (Euro IA 2009)
Designing Exploding Websites (Euro IA 2009)Designing Exploding Websites (Euro IA 2009)
Designing Exploding Websites (Euro IA 2009)
 
presentation slides
presentation slidespresentation slides
presentation slides
 
HTML5 Up and Running
HTML5 Up and RunningHTML5 Up and Running
HTML5 Up and Running
 
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok ChernVs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
 
Euro Ia Designing Exploding Websites Share
Euro Ia Designing Exploding Websites ShareEuro Ia Designing Exploding Websites Share
Euro Ia Designing Exploding Websites Share
 
The Windows Runtime and the Web
The Windows Runtime and the WebThe Windows Runtime and the Web
The Windows Runtime and the Web
 

Recently uploaded

一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
eutxy
 
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
zyfovom
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
keoku
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Brad Spiegel Macon GA
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
zoowe
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
SEO Article Boost
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
Danica Gill
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
3ipehhoa
 
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
CIOWomenMagazine
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
Arif0071
 
Search Result Showing My Post is Now Buried
Search Result Showing My Post is Now BuriedSearch Result Showing My Post is Now Buried
Search Result Showing My Post is Now Buried
Trish Parr
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
ufdana
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
hackersuli
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
uehowe
 
Bài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docxBài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docx
nhiyenphan2005
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
Trending Blogers
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
vmemo1
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
ysasp1
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
3ipehhoa
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
cuobya
 

Recently uploaded (20)

一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
 
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
 
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
 
Search Result Showing My Post is Now Buried
Search Result Showing My Post is Now BuriedSearch Result Showing My Post is Now Buried
Search Result Showing My Post is Now Buried
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
 
Bài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docxBài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docx
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
 

Rapid development & integration of real time communication in websites

  • 1.  Rapid Development & Integration of Real Time Communication in Websites PyCon Kiwi’13 Chetan Giridhar
  • 2. Facts  Website developers focus  Core functionality, Design  User Interface, Performance  Statistics  About 38% customers agree that they made their deals from the website due to engagement itself  56% of the people prefer live engagement over email or social media as preferred communication method Could we make websites better? Can Python help?
  • 4. Development Considerations  Asynchronous  Real time exchange  Full duplex communication  Store chat information  Easy to use APIs – think reuse  Free and Open Source
  • 5. Pure Python  ws4py – python client library for web sockets  tornado.websocket.WebSocketHandler class Socket(tornado.websocket.WebSocketHandler): def on_message(self, message): self.write_message(“Msg is” + message) from ws4py.client.threadedclient import WebSocketCient class Client(WebSocketClient) def opened(self): self.send(“Hello”) def received_message(self, message): print “From server:” + message open() on_close() closed()
  • 6. Framework Tornado Web Server End User asyncmongo/r edis Web Sockets / Ajax Store Chat Messages Analyze and generate patterns feedback HTML/CS S
  • 7. Live Chat – Ajax function newMessage(form) { $.postJSON("/a/message/new", message, function(response) { updater.showMessage(response); }); } class MessageNewHandler: def post(self): message = { "id": str(uuid.uuid4()), "from": self.current_user["first_name"], "body": self.get_argument("body"), } message["html"] = self.render_string ("message.html", message=message)
  • 8. Live Chat -Websockets var url = "ws://" + location.host + "/chatsocket"; updater.socket = new WebSocket(url); function newMessage(form) { updater.socket.send(JSON.stringify(message)); } class ChatSocketHandler: def on_message(self, message): chat = { "id": str(uuid.uuid4()), "body": parsed["body"], } chat["html"] = self.render_string ("message.html", message=chat)
  • 10. Development  Considerations:  Ease of use  Availability of service  Point to point  Tools  Web Server: Tornado  JavaScript: webrtc
  • 11. What it means to Business?  Better Marketing demonstrations  Increased Product up sales  Improved Customer Satisfaction Score  Convert customer pain points to profits  Competitive Edge  Reduced Expenses – customer support time/telephone  Did someone say more revenue? 
  • 12. How can developers help?  Commercially available  Used off the shelf? – Often not  Data in the desired format?  To analyze and identify patterns  Looks like I can develop it myself??!  When are you building yours? 
  • 13. References  Market research: Forrester Research and Boldchat  Demos hosted on http://heroku.com  eAssistance Pro video on youtube.com  webrtc-plugin http://freshtilledsoil.com/  Free website templates from http://WebsiteTemplatesOnline.com  Tornado web server http://tornadoweb.org  MongoDB www.mongodb.org
  • 14. Questions? Source Code https://github.com/cjgiridhar Blog http://technobeans.com Contact cjgiridhar@gmail.com
  • 15. Live chat demo -Tourism Chat Window
  • 16. Demo… User login with gmail (openid) Cross selling with Chat
  • 17. Video Chat – Interior Design