SlideShare a Scribd company logo
1 of 29
Download to read offline
WebSocket in
TYPO3 Flow
WebSocket
By: Ninja Bug
28th February 2014
Agenda
I. Team Introduction
II. TYPO3 Flow
III. WebSocket
IV. Config WebSocket to Flow
V. Demo
VI. Conclusion
Team Introduction

3
29
Ninja Bug
■ Form in 2013
■ 3 core team
■ First generation of agile team at Web
Essentials
■ Deliver working software
■ Working with TYPO3, TYPO3 Flow,
TYPO3 Neos ...

4
29
Ngeth Chanthorn
■ Certified TYPO3 Integrator
■ From Samrong, Takeo
■ Like TYPO3 Coding,
Typoscript Code
■ Working at Web Essentials
■ Email: chanthorn@web-essentials.asia
5
29
Nim Chanthou
■ Web Developer
■ From Samrong, Takeo
■ Like Playing Pool,
Football, PHP code
■ Working at Web Essentials
■ Email: chanthou@web-essentials.asia
6
29
John Odom
■ Web Developer
■ From Phnom Penh
■ Like Javascript, PHP
Google and Facebook API
■ Working at Web Essentials
■ Email: odom@web-essentials.asia
7
29
TYPO3 Flow
■ What is TYPO3 Flow?
■ Why TYPO3 Flow?
■ Requirements
■ Structure
8
29
What is TYPO3 Flow?
■ PHP-based Web Application Platform
■ Creates excellent web solutions
■ Fast results!
■ Keep your head clear and let you focus on the
essentials part
■ Reliable foundation for complex applications
9
29
Why TYPO3 Flow?
■ Well-suited for enterprise-grade applications
■ Easy-to-read source code
■ Stability, Secure code
■ User experience
■ Backed by one of the biggest PHP
communities (6000 + contributors)
10
29
Requirements
Supported Operating System:
■ Linux
■ Mac OSX
■ Windows

11
29
Requirements
Supported HTTP server platforms:
■ Apache with mod_rewrite
module enabled

12
29
Requirements
PHP:
■ Requires PHP 5.3.2 or higher
Supported Database Systems:
■ All systems supported by Doctrine DBAL can
be used with TYPO3 Flow
13
29
Directory Structure
Configuration/

The global configuration folder, grouped by contexts

Data/

Persistent and temporary data, including caches

Packages/

Contains sub directories which in turn
contain package directories

Packages/Framework/

The Framework directory contains packages of the TYPO3 Flow
distribution.

Packages/Application/

The Application directory contains your own / application specific
packages.

Packages/Libraries/

The Libraries directory contains 3rd party packages.

Web/

Public web root
3
14
29
29
WebSocket
■
■
■
■
■
■
■

What is WebSocket?
Why use WebSocket?
Where is it use?
Browser Support
Basically work
PHP WebSocket (Server Side)
Javascript API (Client Side)

15
29
What is WebSocket?
■ Supported in HTML5 browsers
■ Communication Protocol
■ Real time interaction
■ Full Duplex communication channel

16
29
Why WebSocket?

17
29
Where is it use?
■ Chat Application
■ Online Game
■ Streaming Application
- Real time news
- Real time alert
■ Other

18
29
Browser Support
■ Chrome 4+
■ Safari 5+
■ Firefox 4+
■ Opera 10.7+
■ IE 10+
19
29
Basically Work

20
29
PHP WebSocket (Server Side)
■ Handshake
■ Unmasking/Encoding
data frame
■ Pushing data

21
29
Javascript API (Client Side)
■ Connection
■ Receive
■ Leave

22
29
Javascript API (Client Side)
websocket = new WebSocket(‘ws://address:
port’);
websocket.onopen = function(evt) {}
websocket.onmessage = function(evt) {
// use evt.data
}
websocket.onclose = function(evt) {}
websocket.onerror = function(evt) {}

23
29
Config WebSocket to Flow
Understand Structure of TYPO3 Flow

Where we put our package.
(Flow.WebSocket)

24
29
Config WebSocket to Flow
Understand Structure of Flow Package
Where we put WebSocket
Library

HTML Template

Javascript Function
25
29
Demo
Hi! Could you go to
simple chat
application with
me?
Okay! Lets go!

26
29
Conclusion
■ TYPO3 Flow is a framework base on PHP
which easy to use and control
■ WebSocket is a new feature of HTML5
which mostly use for real time
interaction
27
29
What … ?
How … ?
When … ?
Why … ?
... ?

28
29
References
TYPO3 Flow
■ http://flow.typo3.org/home
https://github.com/chanthornngeth/Distribution.git
WebSocket
■ http://srchea.com/blog/tag/websocket/
■ http://www.php.net/manual/en/book.sockets.php
■ http://www.slideshare.net/PaulFryer/web-sockets-8963751
■ https://code.google.com/p/pywebsocket/
■ Book: HTML5 Solutions (Chapter 9: HTML5 WebSocket)

29
29

More Related Content

Similar to TYPO3 Flow - Web Sockets

Contributing to the Odoo Community Association (OCA)
Contributing to the Odoo Community Association (OCA)Contributing to the Odoo Community Association (OCA)
Contributing to the Odoo Community Association (OCA)Camptocamp
 
Contributing to the Odoo Community Association
Contributing to the Odoo Community AssociationContributing to the Odoo Community Association
Contributing to the Odoo Community Associationafayolle
 
Fluent 2018: Tracking Performance of the Web with HTTP Archive
Fluent 2018: Tracking Performance of the Web with HTTP ArchiveFluent 2018: Tracking Performance of the Web with HTTP Archive
Fluent 2018: Tracking Performance of the Web with HTTP ArchivePaul Calvano
 
TYPO3 - The Enterprise Open Source CMS - Rania Marou - FOSSCOMM 2015
TYPO3 - The Enterprise Open Source CMS - Rania Marou - FOSSCOMM 2015TYPO3 - The Enterprise Open Source CMS - Rania Marou - FOSSCOMM 2015
TYPO3 - The Enterprise Open Source CMS - Rania Marou - FOSSCOMM 2015Rania Marou
 
Getting started with MariaDB and Python
Getting started with MariaDB and PythonGetting started with MariaDB and Python
Getting started with MariaDB and PythonMariaDB plc
 
2015-09-16 georchestra @ foss4g2015 Seoul
2015-09-16 georchestra @ foss4g2015 Seoul2015-09-16 georchestra @ foss4g2015 Seoul
2015-09-16 georchestra @ foss4g2015 Seoulfvanderbiest
 
geOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDIgeOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDICamptocamp
 
WebSockets in Bravo Dashboard – Exove
WebSockets in Bravo Dashboard – ExoveWebSockets in Bravo Dashboard – Exove
WebSockets in Bravo Dashboard – ExoveExove
 
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13Dominopoint - Italian Lotus User Group
 
Research on Web Browsers ppt
Research on Web Browsers pptResearch on Web Browsers ppt
Research on Web Browsers pptSagar Agarwal
 
The Awesome Python Class Part-1
The Awesome Python Class Part-1The Awesome Python Class Part-1
The Awesome Python Class Part-1Binay Kumar Ray
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntfUlrich Krause
 
Web3 File Storage Options
Web3 File Storage OptionsWeb3 File Storage Options
Web3 File Storage OptionsGene Leybzon
 
TriplePlay-WebAppPenTestingTools
TriplePlay-WebAppPenTestingToolsTriplePlay-WebAppPenTestingTools
TriplePlay-WebAppPenTestingToolsYury Chemerkin
 
Identity & Access Management Briefing
Identity & Access Management BriefingIdentity & Access Management Briefing
Identity & Access Management BriefingCharise Arrowood
 
TYPO3 Flow 2.0 in the field - webtech Conference 2013
TYPO3 Flow 2.0 in the field - webtech Conference 2013TYPO3 Flow 2.0 in the field - webtech Conference 2013
TYPO3 Flow 2.0 in the field - webtech Conference 2013die.agilen GmbH
 

Similar to TYPO3 Flow - Web Sockets (20)

Contributing to the Odoo Community Association (OCA)
Contributing to the Odoo Community Association (OCA)Contributing to the Odoo Community Association (OCA)
Contributing to the Odoo Community Association (OCA)
 
Contributing to the Odoo Community Association
Contributing to the Odoo Community AssociationContributing to the Odoo Community Association
Contributing to the Odoo Community Association
 
CollegeDiveIn presentation
CollegeDiveIn presentationCollegeDiveIn presentation
CollegeDiveIn presentation
 
Fluent 2018: Tracking Performance of the Web with HTTP Archive
Fluent 2018: Tracking Performance of the Web with HTTP ArchiveFluent 2018: Tracking Performance of the Web with HTTP Archive
Fluent 2018: Tracking Performance of the Web with HTTP Archive
 
TYPO3 - The Enterprise Open Source CMS - Rania Marou - FOSSCOMM 2015
TYPO3 - The Enterprise Open Source CMS - Rania Marou - FOSSCOMM 2015TYPO3 - The Enterprise Open Source CMS - Rania Marou - FOSSCOMM 2015
TYPO3 - The Enterprise Open Source CMS - Rania Marou - FOSSCOMM 2015
 
Getting started with MariaDB and Python
Getting started with MariaDB and PythonGetting started with MariaDB and Python
Getting started with MariaDB and Python
 
2015-09-16 georchestra @ foss4g2015 Seoul
2015-09-16 georchestra @ foss4g2015 Seoul2015-09-16 georchestra @ foss4g2015 Seoul
2015-09-16 georchestra @ foss4g2015 Seoul
 
geOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDIgeOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDI
 
TYPO3 v8 LTS in the cloud
TYPO3 v8 LTS in the cloudTYPO3 v8 LTS in the cloud
TYPO3 v8 LTS in the cloud
 
WebSockets in Bravo Dashboard – Exove
WebSockets in Bravo Dashboard – ExoveWebSockets in Bravo Dashboard – Exove
WebSockets in Bravo Dashboard – Exove
 
TYPO3 at UNESCO.org
TYPO3 at UNESCO.orgTYPO3 at UNESCO.org
TYPO3 at UNESCO.org
 
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
 
Research on Web Browsers ppt
Research on Web Browsers pptResearch on Web Browsers ppt
Research on Web Browsers ppt
 
Web Browsers
Web BrowsersWeb Browsers
Web Browsers
 
The Awesome Python Class Part-1
The Awesome Python Class Part-1The Awesome Python Class Part-1
The Awesome Python Class Part-1
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
 
Web3 File Storage Options
Web3 File Storage OptionsWeb3 File Storage Options
Web3 File Storage Options
 
TriplePlay-WebAppPenTestingTools
TriplePlay-WebAppPenTestingToolsTriplePlay-WebAppPenTestingTools
TriplePlay-WebAppPenTestingTools
 
Identity & Access Management Briefing
Identity & Access Management BriefingIdentity & Access Management Briefing
Identity & Access Management Briefing
 
TYPO3 Flow 2.0 in the field - webtech Conference 2013
TYPO3 Flow 2.0 in the field - webtech Conference 2013TYPO3 Flow 2.0 in the field - webtech Conference 2013
TYPO3 Flow 2.0 in the field - webtech Conference 2013
 

Recently uploaded

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetEnjoy Anytime
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Recently uploaded (20)

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

TYPO3 Flow - Web Sockets

  • 1. WebSocket in TYPO3 Flow WebSocket By: Ninja Bug 28th February 2014
  • 2. Agenda I. Team Introduction II. TYPO3 Flow III. WebSocket IV. Config WebSocket to Flow V. Demo VI. Conclusion
  • 4. Ninja Bug ■ Form in 2013 ■ 3 core team ■ First generation of agile team at Web Essentials ■ Deliver working software ■ Working with TYPO3, TYPO3 Flow, TYPO3 Neos ... 4 29
  • 5. Ngeth Chanthorn ■ Certified TYPO3 Integrator ■ From Samrong, Takeo ■ Like TYPO3 Coding, Typoscript Code ■ Working at Web Essentials ■ Email: chanthorn@web-essentials.asia 5 29
  • 6. Nim Chanthou ■ Web Developer ■ From Samrong, Takeo ■ Like Playing Pool, Football, PHP code ■ Working at Web Essentials ■ Email: chanthou@web-essentials.asia 6 29
  • 7. John Odom ■ Web Developer ■ From Phnom Penh ■ Like Javascript, PHP Google and Facebook API ■ Working at Web Essentials ■ Email: odom@web-essentials.asia 7 29
  • 8. TYPO3 Flow ■ What is TYPO3 Flow? ■ Why TYPO3 Flow? ■ Requirements ■ Structure 8 29
  • 9. What is TYPO3 Flow? ■ PHP-based Web Application Platform ■ Creates excellent web solutions ■ Fast results! ■ Keep your head clear and let you focus on the essentials part ■ Reliable foundation for complex applications 9 29
  • 10. Why TYPO3 Flow? ■ Well-suited for enterprise-grade applications ■ Easy-to-read source code ■ Stability, Secure code ■ User experience ■ Backed by one of the biggest PHP communities (6000 + contributors) 10 29
  • 11. Requirements Supported Operating System: ■ Linux ■ Mac OSX ■ Windows 11 29
  • 12. Requirements Supported HTTP server platforms: ■ Apache with mod_rewrite module enabled 12 29
  • 13. Requirements PHP: ■ Requires PHP 5.3.2 or higher Supported Database Systems: ■ All systems supported by Doctrine DBAL can be used with TYPO3 Flow 13 29
  • 14. Directory Structure Configuration/ The global configuration folder, grouped by contexts Data/ Persistent and temporary data, including caches Packages/ Contains sub directories which in turn contain package directories Packages/Framework/ The Framework directory contains packages of the TYPO3 Flow distribution. Packages/Application/ The Application directory contains your own / application specific packages. Packages/Libraries/ The Libraries directory contains 3rd party packages. Web/ Public web root 3 14 29 29
  • 15. WebSocket ■ ■ ■ ■ ■ ■ ■ What is WebSocket? Why use WebSocket? Where is it use? Browser Support Basically work PHP WebSocket (Server Side) Javascript API (Client Side) 15 29
  • 16. What is WebSocket? ■ Supported in HTML5 browsers ■ Communication Protocol ■ Real time interaction ■ Full Duplex communication channel 16 29
  • 18. Where is it use? ■ Chat Application ■ Online Game ■ Streaming Application - Real time news - Real time alert ■ Other 18 29
  • 19. Browser Support ■ Chrome 4+ ■ Safari 5+ ■ Firefox 4+ ■ Opera 10.7+ ■ IE 10+ 19 29
  • 21. PHP WebSocket (Server Side) ■ Handshake ■ Unmasking/Encoding data frame ■ Pushing data 21 29
  • 22. Javascript API (Client Side) ■ Connection ■ Receive ■ Leave 22 29
  • 23. Javascript API (Client Side) websocket = new WebSocket(‘ws://address: port’); websocket.onopen = function(evt) {} websocket.onmessage = function(evt) { // use evt.data } websocket.onclose = function(evt) {} websocket.onerror = function(evt) {} 23 29
  • 24. Config WebSocket to Flow Understand Structure of TYPO3 Flow Where we put our package. (Flow.WebSocket) 24 29
  • 25. Config WebSocket to Flow Understand Structure of Flow Package Where we put WebSocket Library HTML Template Javascript Function 25 29
  • 26. Demo Hi! Could you go to simple chat application with me? Okay! Lets go! 26 29
  • 27. Conclusion ■ TYPO3 Flow is a framework base on PHP which easy to use and control ■ WebSocket is a new feature of HTML5 which mostly use for real time interaction 27 29
  • 28. What … ? How … ? When … ? Why … ? ... ? 28 29
  • 29. References TYPO3 Flow ■ http://flow.typo3.org/home https://github.com/chanthornngeth/Distribution.git WebSocket ■ http://srchea.com/blog/tag/websocket/ ■ http://www.php.net/manual/en/book.sockets.php ■ http://www.slideshare.net/PaulFryer/web-sockets-8963751 ■ https://code.google.com/p/pywebsocket/ ■ Book: HTML5 Solutions (Chapter 9: HTML5 WebSocket) 29 29