SlideShare ist ein Scribd-Unternehmen logo
1 von 41
Funambol Server Architecture Stefano Nichele
Overview ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Funambol Server Architecture We will refer to those as  services . The DS service is the  primary service , without that the Funambol Server cannot run. And we are going to change some names.... Core component of the Funambol Server.  It provides synchronization and push engines Allows push mail by checking email accounts Allows pim push by checking the database Allows Client TCP Push DataSynchronization Server Inbox Listener Pim Listener CTP Server DataSynchronization service Pim Listener service Push Connection service Inbox Listener service
Funambol Server Architecture Synchronization Push DataSynchronization service Pim Listener service Push Connection service Inbox Listener service DB Mail Server
Synchronization ,[object Object],[object Object],[object Object],PDA Backup Repo PDA My laptop
Synchronization ,[object Object],[object Object],[object Object]
SyncML ,[object Object],[object Object],[object Object],[object Object]
SyncML – an example <SyncML xmlns='SYNCML:SYNCML1.2'> <SyncHdr> <VerDTD>1.2</VerDTD> <VerProto>SyncML/1.2</VerProto> <SessionID>1</SessionID> <MsgID>3</MsgID> <Target> <LocURI>IMEI:004400061769830</LocURI> </Target> <Source> <LocURI>http://syncserver.com/servlets/SyncML</LocURI> </Source> ... </SyncHdr> <SyncBody> <Status> <CmdID>1</CmdID> <MsgRef>3</MsgRef> <CmdRef>0</CmdRef> <Cmd>SyncHdr</Cmd> <TargetRef>http://syncserver.com/servlets/SyncML</TargetRef> <SourceRef>IMEI:004400061769830</SourceRef> <Data>200</Data> </Status> </SyncBody> </SyncML>
Data Synchronization service ,[object Object],[object Object],[object Object],[object Object]
Data Synchronization service Admin Manager Pipeline Manager Nokia Synclet Razr Synclet Push Engine Push Sender WebServices API Plugins Manager Plugin A Plugin B Framework Device Inventory SMS Service SMS Provider Synchr. Engine Email Sync Source PIM Sync Source Google Sync Source Officer
Data Synchronization service ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Pipeline Manager Nokia Synclet Razr Synclet
Data Synchronization service ,[object Object],[object Object],[object Object],[object Object],Pipeline Manager Nokia Synclet Razr Synclet Synchr. Engine Email Sync Source PIM Sync Source Google Sync Source Officer S E R V L E T Input pipeline Output pipeline Pipeline Manager Raw data SyncML SyncML
Data Synchronization service ,[object Object],[object Object],[object Object],Example of synclet configuration file <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <java version=&quot;1.5.0_08&quot; class=&quot;java.beans.XMLDecoder&quot;>  <object class=&quot;com.funambol.foundation.synclet.BeanShellSynclet&quot;>  <void property=&quot;header&quot;>  <string> user-agent </string>  </void>  <void property=&quot;pattern&quot;>  <string> NokiaE61 </string>  </void>  <void property=&quot;script&quot;>  <string>com/funambol/server/engine/pipeline/phones-support/bsh/NokiaE65in.bsh</string> </void>  </object>  </java>  Pipeline Manager Nokia Synclet Razr Synclet
Data Synchronization service ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sync. Engine Email SS PIM  SS Google SS Officer
Data Synchronization service ,[object Object],SyncML Messages Sync Session Handler Sync4jEngine Sync4jStrategy Email Sync Source PIM Sync Source Officer It represents the handler  for a SyncML session.  It coordinates and handles messages as dictated  by the protocol. It coordinates the sync process delegating almost all the sync logic to Sync4jStrategy Given two sources of data, it performs the real  synchronization process It checks if the credentials  provided by the client are valid and if the user is authorized. A SyncSource is the interface versus the data store Sync. Engine Email SS PIM  SS Google SS Officer
Data Synchronization service ,[object Object],[object Object],[object Object],[object Object],Sync. Engine Email SS PIM  SS Google SS Officer
Data Synchronization service ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],SMS Infrastructure SMS Message Recipient Sender SMS Service SMS Provider SMS Gateway Usually this is an HTTP request SMS Service SMS Provider
Data Synchronization service ,[object Object],[object Object],[object Object],[object Object],[object Object],SMS Service SMS Provider
Data Synchronization service ,[object Object],[object Object],[object Object],Plugins Manager Plugin A Plugin B
Data Synchronization service ,[object Object],[object Object],[object Object],....the latest DS service components Admin Manager WebServices API Device Inventory
Funambol Server Architecture Push DataSynchronization service Pim Listener service Push Connection service Inbox Listener service DB Mail Server
Push ,[object Object],[object Object],[object Object],[object Object],Funambol Server Data Repository Data Repository 1 2 3
Push ,[object Object],[object Object],[object Object],[object Object],[object Object],STP Push CTP Push SMS Push SMS Push Connection-less Push Connection-oriented Push
Push ,[object Object],DS service Mail Server InboxListener service PIMListener service PIM DB Mail Server WS API Push Engine Push Connection service The Inbox Listener at regular time checks on the mail server if there are users to push If there are devices to push, the IL and the PIM listener call the DS service admin API The Push Engine tries to send the push message using connection-less push The Push Connection service tries to push the device using an existing connection The Push Engine asks to the Push Connection service to push the device using connection-oriented push The PIM Listener at regular time checks on the DB if there are devices to push 1 1 2 3 4 5
Data Synchronization service ,[object Object],[object Object],Push Engine Push  request WS Admin API Notification Engine Notification Builder Notification Sender DB The NotificationEngine uses a NotificationBuilder to create the Push message The NotificationEngine checks in the DB if there are old push messages The sender is the component used to deliver a push message to a device If the sender is not able to deliver a push message, it is stored in the database 1 2 3 4 Push Engine Push Sender
Data Synchronization service ,[object Object],[object Object],[object Object],[object Object],[object Object],SMS Service SMS Provider Push Engine Push Sender
Connection-less push ,[object Object],[object Object],[object Object],[object Object],[object Object]
Connection-less push IP Address Pending Push IP Address ,[object Object],[object Object],Address Listener Servlet DB If the server is able to send the pending push to the client, the IP address is stored in the DB. 1 2 3 The device sends its IP address to the server The server verifies if the client address is reachable trying to send the pending push messages
Connection-less push ,[object Object],[object Object],[object Object],[object Object]
Connection-oriented push ,[object Object],[object Object],[object Object],[object Object]
Connection-oriented push UDP channel Connecting Pushing Push Connection Service 1 The client opens the connection and sends its credentials DS service WS API Push Engine 2 The Push Connection service calls the DS service WS API to authenticate the client The Push Sender sends a multicast UDP message with the push message 2 1 The Push Connection service receives the UDP message and checks if the recipient is connected 3 If the device is connected, the push message is written on the already open (by the client)connection
Push Connection service ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
InboxListener and PIMListener ,[object Object],[object Object],Push Listener Framework InboxListener Task InboxListener Push Listener Framework PimListener Task PIMListener
Push Framework Listener ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Push Framework Listener ,[object Object],UDP  notification ,[object Object],[object Object],InboxListener service Mail Server Polling mode InboxListener service Mail Server Notifiable mode
Push Framework Listener Task executor Tasks queue Scheduled tasks One Shot tasks DB Registry Monitor Plugin Manager UDP Listener At startup it loads from the database the list of tasks to perform and publish it in the tasks queue Thread Pool. Any free thread pickup from the queue a task and starts its execution. It can contain scheduled tasks or “One Shot” tasks It allows notifiable mode ... ... User 1 User 2 User 3 User 4
Push Framework Listener ,[object Object],Instance 1 of 3 Instance 2 of 3 Instance 0 of 3 Cluster It executes the tasks with (id % 3) = 0 It executes the tasks with (id % 3) = 1 It executes the tasks with (id % 3) = 2 InboxListener service A InboxListener service C InboxListener service B Any instance know its index and how many instances are in the cluster Tasks  Repository The cluster is obtained using JGroups
Push Framework Listener ,[object Object],Cluster InboxListener service A InboxListener service C InboxListener service B Tasks  Repository Instance 1 of 3 Instance 2 of 3 Instance 0 of 3 It executes the tasks with (id % 3) = 0 It executes the tasks with (id % 3) = 1 It executes the tasks with (id % 3) = 2 Instance 1 of 2 Instance 0 of 2 It executes the tasks with (id % 2) = 0 It executes the tasks with (id % 2) = 1
Conclusions Monitoring Monitoring WS API Connection-less push Request for connection-oriented push Connection-oriented push Synchronization DS service Mail Server InboxListener service PIMListener service PIM DB Mail Server WS API Push Engine Push Connection service 1 1 2 3 4 5 Sync Engine 6
References ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The End

Weitere ähnliche Inhalte

Was ist angesagt?

Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009Cathie101
 
Simple Mail Transfer Protocol
Simple Mail Transfer ProtocolSimple Mail Transfer Protocol
Simple Mail Transfer ProtocolUjjayanta Bhaumik
 
transfer protocols,ftp,smtp,pop,imap
transfer protocols,ftp,smtp,pop,imaptransfer protocols,ftp,smtp,pop,imap
transfer protocols,ftp,smtp,pop,imapAKSHIT KOHLI
 
Simple mail transfer protocol (smtp)
Simple mail transfer protocol (smtp) Simple mail transfer protocol (smtp)
Simple mail transfer protocol (smtp) RochakSrivastava3
 
Simple Mail Transfer Protocol
Simple Mail Transfer ProtocolSimple Mail Transfer Protocol
Simple Mail Transfer ProtocolMaitree Patel
 
Lec 7(HTTP Protocol)
Lec 7(HTTP Protocol)Lec 7(HTTP Protocol)
Lec 7(HTTP Protocol)maamir farooq
 
Dictributed application by Waqas
Dictributed application by WaqasDictributed application by Waqas
Dictributed application by WaqasWaqas !!!!
 
SMTP - SIMPLE MAIL TRANSFER PROTOCOL
SMTP - SIMPLE MAIL TRANSFER PROTOCOLSMTP - SIMPLE MAIL TRANSFER PROTOCOL
SMTP - SIMPLE MAIL TRANSFER PROTOCOLVidhu Arora
 
Http request and http response
Http request and http responseHttp request and http response
Http request and http responseNuha Noor
 
What is SMTP Server?
What is SMTP Server?What is SMTP Server?
What is SMTP Server?SMTPGET
 
retrieving the mail
retrieving the mailretrieving the mail
retrieving the mailtumetr1
 
E mail transfer .74
E mail transfer .74E mail transfer .74
E mail transfer .74myrajendra
 

Was ist angesagt? (18)

Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009
 
SNMP/SMTP/MIME
SNMP/SMTP/MIMESNMP/SMTP/MIME
SNMP/SMTP/MIME
 
Simple Mail Transfer Protocol
Simple Mail Transfer ProtocolSimple Mail Transfer Protocol
Simple Mail Transfer Protocol
 
transfer protocols,ftp,smtp,pop,imap
transfer protocols,ftp,smtp,pop,imaptransfer protocols,ftp,smtp,pop,imap
transfer protocols,ftp,smtp,pop,imap
 
Internet
InternetInternet
Internet
 
Simple mail transfer protocol (smtp)
Simple mail transfer protocol (smtp) Simple mail transfer protocol (smtp)
Simple mail transfer protocol (smtp)
 
Simple Mail Transfer Protocol
Simple Mail Transfer ProtocolSimple Mail Transfer Protocol
Simple Mail Transfer Protocol
 
Lec 7(HTTP Protocol)
Lec 7(HTTP Protocol)Lec 7(HTTP Protocol)
Lec 7(HTTP Protocol)
 
Dictributed application by Waqas
Dictributed application by WaqasDictributed application by Waqas
Dictributed application by Waqas
 
E mail protocols
E mail protocolsE mail protocols
E mail protocols
 
SMTP - SIMPLE MAIL TRANSFER PROTOCOL
SMTP - SIMPLE MAIL TRANSFER PROTOCOLSMTP - SIMPLE MAIL TRANSFER PROTOCOL
SMTP - SIMPLE MAIL TRANSFER PROTOCOL
 
Smtp
SmtpSmtp
Smtp
 
Smtp, pop3, imapv 4
Smtp, pop3, imapv 4Smtp, pop3, imapv 4
Smtp, pop3, imapv 4
 
Http request and http response
Http request and http responseHttp request and http response
Http request and http response
 
What is SMTP Server?
What is SMTP Server?What is SMTP Server?
What is SMTP Server?
 
Get and post methods
Get and post methodsGet and post methods
Get and post methods
 
retrieving the mail
retrieving the mailretrieving the mail
retrieving the mail
 
E mail transfer .74
E mail transfer .74E mail transfer .74
E mail transfer .74
 

Ähnlich wie Funambol Server Architecture

FMS Administration Seminar
FMS Administration SeminarFMS Administration Seminar
FMS Administration SeminarYoss Cohen
 
NServiceBus_for_Admins
NServiceBus_for_AdminsNServiceBus_for_Admins
NServiceBus_for_AdminsAdam Fyles
 
Flex Messeging Services
Flex Messeging ServicesFlex Messeging Services
Flex Messeging Servicesravinxg
 
Intranet Messaging Project Report -phpapp02
Intranet Messaging Project Report -phpapp02Intranet Messaging Project Report -phpapp02
Intranet Messaging Project Report -phpapp02dvicky12
 
Transcend Automation's Kepware OPC Products
Transcend Automation's Kepware OPC ProductsTranscend Automation's Kepware OPC Products
Transcend Automation's Kepware OPC ProductsBaiju P.S.
 
ID304 - Lotus® Connections 3.0 TDI, SSO, and User Life Cycle Management: What...
ID304 - Lotus® Connections 3.0 TDI, SSO, and User Life Cycle Management: What...ID304 - Lotus® Connections 3.0 TDI, SSO, and User Life Cycle Management: What...
ID304 - Lotus® Connections 3.0 TDI, SSO, and User Life Cycle Management: What...Luis Benitez
 
ArcSight Logger Forwarding Connector for HP OM Configuration Guide 5.1.7.6079
ArcSight Logger Forwarding Connector for HP OM Configuration Guide 5.1.7.6079	ArcSight Logger Forwarding Connector for HP OM Configuration Guide 5.1.7.6079
ArcSight Logger Forwarding Connector for HP OM Configuration Guide 5.1.7.6079 Protect724manoj
 
Intro to web services
Intro to web servicesIntro to web services
Intro to web servicesNeil Ghosh
 
PandoraFMS: Free Monitoring System
PandoraFMS: Free Monitoring SystemPandoraFMS: Free Monitoring System
PandoraFMS: Free Monitoring SystemEnrique Verdes
 
Incorporating Web Services in Mobile Applications - Web 2.0 San Fran 2009
Incorporating Web Services in Mobile Applications - Web 2.0 San Fran 2009Incorporating Web Services in Mobile Applications - Web 2.0 San Fran 2009
Incorporating Web Services in Mobile Applications - Web 2.0 San Fran 2009Aduci
 
Pandora FMS: Outlook Anywhere Plugin
Pandora FMS: Outlook Anywhere PluginPandora FMS: Outlook Anywhere Plugin
Pandora FMS: Outlook Anywhere PluginPandora FMS
 
What's New with Windows Phone - FoxCon Talk
What's New with Windows Phone - FoxCon TalkWhat's New with Windows Phone - FoxCon Talk
What's New with Windows Phone - FoxCon TalkSam Basu
 
Logger Forwarding Connector for HPE OMi Configuration Guide 7.1.7.7610.0
Logger Forwarding Connector for HPE OMi Configuration Guide 7.1.7.7610.0	Logger Forwarding Connector for HPE OMi Configuration Guide 7.1.7.7610.0
Logger Forwarding Connector for HPE OMi Configuration Guide 7.1.7.7610.0 Protect724manoj
 
BlazeDS
BlazeDS BlazeDS
BlazeDS Priyank
 
File transfer protocol- Gowdham
File transfer protocol- GowdhamFile transfer protocol- Gowdham
File transfer protocol- GowdhamGowdham P
 
Protocol
ProtocolProtocol
Protocolm_bahba
 
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google InfrastructureLiving in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructureguest517f2f
 
Sending the data already gathered from the client to the Server
Sending the data already gathered from the client to the ServerSending the data already gathered from the client to the Server
Sending the data already gathered from the client to the Serverhussam242
 

Ähnlich wie Funambol Server Architecture (20)

FMS Administration Seminar
FMS Administration SeminarFMS Administration Seminar
FMS Administration Seminar
 
NServiceBus_for_Admins
NServiceBus_for_AdminsNServiceBus_for_Admins
NServiceBus_for_Admins
 
Flex Messeging Services
Flex Messeging ServicesFlex Messeging Services
Flex Messeging Services
 
Intranet Messaging Project Report -phpapp02
Intranet Messaging Project Report -phpapp02Intranet Messaging Project Report -phpapp02
Intranet Messaging Project Report -phpapp02
 
Transcend Automation's Kepware OPC Products
Transcend Automation's Kepware OPC ProductsTranscend Automation's Kepware OPC Products
Transcend Automation's Kepware OPC Products
 
ID304 - Lotus® Connections 3.0 TDI, SSO, and User Life Cycle Management: What...
ID304 - Lotus® Connections 3.0 TDI, SSO, and User Life Cycle Management: What...ID304 - Lotus® Connections 3.0 TDI, SSO, and User Life Cycle Management: What...
ID304 - Lotus® Connections 3.0 TDI, SSO, and User Life Cycle Management: What...
 
ArcSight Logger Forwarding Connector for HP OM Configuration Guide 5.1.7.6079
ArcSight Logger Forwarding Connector for HP OM Configuration Guide 5.1.7.6079	ArcSight Logger Forwarding Connector for HP OM Configuration Guide 5.1.7.6079
ArcSight Logger Forwarding Connector for HP OM Configuration Guide 5.1.7.6079
 
Intro to web services
Intro to web servicesIntro to web services
Intro to web services
 
PandoraFMS: Free Monitoring System
PandoraFMS: Free Monitoring SystemPandoraFMS: Free Monitoring System
PandoraFMS: Free Monitoring System
 
Incorporating Web Services in Mobile Applications - Web 2.0 San Fran 2009
Incorporating Web Services in Mobile Applications - Web 2.0 San Fran 2009Incorporating Web Services in Mobile Applications - Web 2.0 San Fran 2009
Incorporating Web Services in Mobile Applications - Web 2.0 San Fran 2009
 
Pandora FMS: Outlook Anywhere Plugin
Pandora FMS: Outlook Anywhere PluginPandora FMS: Outlook Anywhere Plugin
Pandora FMS: Outlook Anywhere Plugin
 
Web services - REST and SOAP
Web services - REST and SOAPWeb services - REST and SOAP
Web services - REST and SOAP
 
What's New with Windows Phone - FoxCon Talk
What's New with Windows Phone - FoxCon TalkWhat's New with Windows Phone - FoxCon Talk
What's New with Windows Phone - FoxCon Talk
 
Lab08Email
Lab08EmailLab08Email
Lab08Email
 
Logger Forwarding Connector for HPE OMi Configuration Guide 7.1.7.7610.0
Logger Forwarding Connector for HPE OMi Configuration Guide 7.1.7.7610.0	Logger Forwarding Connector for HPE OMi Configuration Guide 7.1.7.7610.0
Logger Forwarding Connector for HPE OMi Configuration Guide 7.1.7.7610.0
 
BlazeDS
BlazeDS BlazeDS
BlazeDS
 
File transfer protocol- Gowdham
File transfer protocol- GowdhamFile transfer protocol- Gowdham
File transfer protocol- Gowdham
 
Protocol
ProtocolProtocol
Protocol
 
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google InfrastructureLiving in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
 
Sending the data already gathered from the client to the Server
Sending the data already gathered from the client to the ServerSending the data already gathered from the client to the Server
Sending the data already gathered from the client to the Server
 

Mehr von Funambol

Funambol Automated Tests for SyncML Clients
Funambol Automated Tests for SyncML ClientsFunambol Automated Tests for SyncML Clients
Funambol Automated Tests for SyncML ClientsFunambol
 
Contributing to OSS in a commercial non-OSS environment
Contributing to OSS in a commercial non-OSS environmentContributing to OSS in a commercial non-OSS environment
Contributing to OSS in a commercial non-OSS environmentFunambol
 
Sugar and Spice - linking SugarCRM with Funambol
Sugar and Spice - linking SugarCRM with FunambolSugar and Spice - linking SugarCRM with Funambol
Sugar and Spice - linking SugarCRM with FunambolFunambol
 
Syncevolution: Open Source and Funambol
Syncevolution: Open Source and FunambolSyncevolution: Open Source and Funambol
Syncevolution: Open Source and FunambolFunambol
 
Funambol C++ API
Funambol C++ APIFunambol C++ API
Funambol C++ APIFunambol
 
Funabol Connector Development Roadmap
Funabol Connector Development RoadmapFunabol Connector Development Roadmap
Funabol Connector Development RoadmapFunambol
 
Funambol Java Clients Development: The Blackberry Case
Funambol Java Clients Development: The Blackberry CaseFunambol Java Clients Development: The Blackberry Case
Funambol Java Clients Development: The Blackberry CaseFunambol
 
Funambol Community Programs
Funambol Community ProgramsFunambol Community Programs
Funambol Community ProgramsFunambol
 

Mehr von Funambol (8)

Funambol Automated Tests for SyncML Clients
Funambol Automated Tests for SyncML ClientsFunambol Automated Tests for SyncML Clients
Funambol Automated Tests for SyncML Clients
 
Contributing to OSS in a commercial non-OSS environment
Contributing to OSS in a commercial non-OSS environmentContributing to OSS in a commercial non-OSS environment
Contributing to OSS in a commercial non-OSS environment
 
Sugar and Spice - linking SugarCRM with Funambol
Sugar and Spice - linking SugarCRM with FunambolSugar and Spice - linking SugarCRM with Funambol
Sugar and Spice - linking SugarCRM with Funambol
 
Syncevolution: Open Source and Funambol
Syncevolution: Open Source and FunambolSyncevolution: Open Source and Funambol
Syncevolution: Open Source and Funambol
 
Funambol C++ API
Funambol C++ APIFunambol C++ API
Funambol C++ API
 
Funabol Connector Development Roadmap
Funabol Connector Development RoadmapFunabol Connector Development Roadmap
Funabol Connector Development Roadmap
 
Funambol Java Clients Development: The Blackberry Case
Funambol Java Clients Development: The Blackberry CaseFunambol Java Clients Development: The Blackberry Case
Funambol Java Clients Development: The Blackberry Case
 
Funambol Community Programs
Funambol Community ProgramsFunambol Community Programs
Funambol Community Programs
 

Kürzlich hochgeladen

BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfUmakantAnnand
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptxPoojaSen20
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 

Kürzlich hochgeladen (20)

BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.Compdf
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptx
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 

Funambol Server Architecture

  • 2.
  • 3. Funambol Server Architecture We will refer to those as services . The DS service is the primary service , without that the Funambol Server cannot run. And we are going to change some names.... Core component of the Funambol Server. It provides synchronization and push engines Allows push mail by checking email accounts Allows pim push by checking the database Allows Client TCP Push DataSynchronization Server Inbox Listener Pim Listener CTP Server DataSynchronization service Pim Listener service Push Connection service Inbox Listener service
  • 4. Funambol Server Architecture Synchronization Push DataSynchronization service Pim Listener service Push Connection service Inbox Listener service DB Mail Server
  • 5.
  • 6.
  • 7.
  • 8. SyncML – an example <SyncML xmlns='SYNCML:SYNCML1.2'> <SyncHdr> <VerDTD>1.2</VerDTD> <VerProto>SyncML/1.2</VerProto> <SessionID>1</SessionID> <MsgID>3</MsgID> <Target> <LocURI>IMEI:004400061769830</LocURI> </Target> <Source> <LocURI>http://syncserver.com/servlets/SyncML</LocURI> </Source> ... </SyncHdr> <SyncBody> <Status> <CmdID>1</CmdID> <MsgRef>3</MsgRef> <CmdRef>0</CmdRef> <Cmd>SyncHdr</Cmd> <TargetRef>http://syncserver.com/servlets/SyncML</TargetRef> <SourceRef>IMEI:004400061769830</SourceRef> <Data>200</Data> </Status> </SyncBody> </SyncML>
  • 9.
  • 10. Data Synchronization service Admin Manager Pipeline Manager Nokia Synclet Razr Synclet Push Engine Push Sender WebServices API Plugins Manager Plugin A Plugin B Framework Device Inventory SMS Service SMS Provider Synchr. Engine Email Sync Source PIM Sync Source Google Sync Source Officer
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21. Funambol Server Architecture Push DataSynchronization service Pim Listener service Push Connection service Inbox Listener service DB Mail Server
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31. Connection-oriented push UDP channel Connecting Pushing Push Connection Service 1 The client opens the connection and sends its credentials DS service WS API Push Engine 2 The Push Connection service calls the DS service WS API to authenticate the client The Push Sender sends a multicast UDP message with the push message 2 1 The Push Connection service receives the UDP message and checks if the recipient is connected 3 If the device is connected, the push message is written on the already open (by the client)connection
  • 32.
  • 33.
  • 34.
  • 35.
  • 36. Push Framework Listener Task executor Tasks queue Scheduled tasks One Shot tasks DB Registry Monitor Plugin Manager UDP Listener At startup it loads from the database the list of tasks to perform and publish it in the tasks queue Thread Pool. Any free thread pickup from the queue a task and starts its execution. It can contain scheduled tasks or “One Shot” tasks It allows notifiable mode ... ... User 1 User 2 User 3 User 4
  • 37.
  • 38.
  • 39. Conclusions Monitoring Monitoring WS API Connection-less push Request for connection-oriented push Connection-oriented push Synchronization DS service Mail Server InboxListener service PIMListener service PIM DB Mail Server WS API Push Engine Push Connection service 1 1 2 3 4 5 Sync Engine 6
  • 40.