a state of the art, easy to use sip client
DESCRIPTION
A state of the art, easy to use SIP client. MediaProxy CDRTool OpenXCAP MSRP Relay SylkServer. Adrian Georgescu < [email protected] > AG Projects. - PowerPoint PPT PresentationTRANSCRIPT
AG Projects BlinkReal Time Communications Experts
A state of the art, easy to use SIP client
AG Projects BlinkReal Time Communications Experts
Adrian Georgescu <[email protected]>AG Projects
• MediaProxy• CDRTool• OpenXCAP• MSRP Relay• SylkServer
AG Projects BlinkReal Time Communications Experts
Hope You all doing well. I am using pjproject 1.10 for window application. I already completed Graphical user interface, in which there is login, log out, call, end buttons. Which function I have to call for the respective buttons? --- anonymous post from Pjsip mailing list
AG Projects BlinkReal Time Communications Experts
This is the state of the SIP industry
AG Projects BlinkReal Time Communications Experts
Well made SIP servers everywhere
AG Projects BlinkReal Time Communications Experts
While the SIP clients suck big time
AG Projects BlinkReal Time Communications Experts
Ask your coworkers or friends how often they use a SIP client
AG Projects BlinkReal Time Communications Experts
Blink was born out of frustration
AG Projects BlinkReal Time Communications Experts
There must be SIP clients that do not look like a toilet seat, or grandma’s phone, must they not?
AG Projects BlinkReal Time Communications Experts
Use SIP for applications beyond VoIP
AG Projects BlinkReal Time Communications Experts
We went on this road to make a difference
AG Projects BlinkReal Time Communications Experts
Make the best SIP client in the world ;-)
AG Projects BlinkReal Time Communications Experts
This is not a task for the faint hearted individual
AG Projects BlinkReal Time Communications Experts
Real Time Communications in a client is tough stuff
AG Projects BlinkReal Time Communications Experts
There are +1200 standards related to RTC and SIP
AG Projects BlinkReal Time Communications Experts
So we took the time
AG Projects BlinkReal Time Communications Experts
Learning about what it takes
AG Projects BlinkReal Time Communications Experts
Being mentored by the best people in the industry
AG Projects BlinkReal Time Communications Experts
Going to many IETF and SIPIT events
AG Projects BlinkReal Time Communications Experts
It takes passion, not arbitrary deadlines to create perfection
AG Projects BlinkReal Time Communications Experts
Finding the right people for developing it, is key
AG Projects BlinkReal Time Communications Experts
Finding the funds for developing it, a must
AG Projects BlinkReal Time Communications Experts
It helps to have a lucrative business (AG Projects)
AG Projects BlinkReal Time Communications Experts
And generous sponsors (NLNet, FP7, AG Projects Customers)
AG Projects BlinkReal Time Communications Experts
A few years later down the road, in 2009
AG Projects BlinkReal Time Communications Experts
We have released SIP SIMPLE Client SDK
AG Projects BlinkReal Time Communications Experts
SIP SIMPLE Client SDK
SIP SIMPLE Client SDK is a Software Development Kit for development of Real Time Applications based on SIP and related protocols for media transport like Presence, Audio and Instant Messaging (IM). Other media types can be easily added by using an extensible high-level API.
AG Projects BlinkReal Time Communications Experts
Target Platforms
SIP SIMPLE Client SDK has cross platform capabilities on Linux, MacOSX, and MS Windows. The SDK can be ported with minimal changes on any platform that supports C and Python development environments.
• iOS port• Android port
AG Projects BlinkReal Time Communications Experts
Features
Written in PythonNon-blocking, asynchronous high-level middlewareTLS Security for signaling (SIP) and media (MSRP, XCAP)Multiple media type per session (Audio + IM + File Transfer)re-INVITE for adding and removing media to and from SIP sessionsConferencing, Presence, session based IM, Video (roadmap)Wide-band Internet codecs: Speex, G722Narrow-band codecs: G711, iLBC, GSM
AG Projects BlinkReal Time Communications Experts
SIP Signaling
Session Initiation Protocol RFC3261Session Description Protocol RFC4566An Offer/Answer Model with SDP RFC4566
AG Projects BlinkReal Time Communications Experts
Location Discovery
Next hop address resolution RFC3263 Bonjour multicast DNS draft-lee-sip-dns-sd-uri-03 Other next hop lookup mechanisms can be easily added (e.g. P2PSIP)
AG Projects BlinkReal Time Communications Experts
NAT Traversal
SIP Signaling: Symmetric Response Routing Symmetric media RFC3581RTP media (Audio and Video): Interactive Connectivity Establishment (ICE) RFC5245MSRP media (IM and File Transfers): Relay Extension RFC4976 and MSRP-ACM
AG Projects BlinkReal Time Communications Experts
Voice over IP
RTP, A Transport Protocol for Real-Time Applications RFC3550Real Time Control Protocol (RTCP) attribute in Session Description Protocol RFC3605The Secure Real-time Transport Protocol (SRTP) RFC3711Generation and parsing of telephone-events payload in both RTP and SDPMixer, Conferencing, Call Transfer
AG Projects BlinkReal Time Communications Experts
Multi-party Conferencing
Conference Event Package RFC4575A Framework for Conferencing with the SIP RFC4353SIP Call Control - Conferencing for User Agents RFC4579MSRP ad-hoc multi-party chat sessions
AG Projects BlinkReal Time Communications Experts
Instant Messaging
Common Presence and Instant Messaging (CPIM): RFC3862Session Initiation Protocol (SIP) Extension for Instant Messaging RFC3428MSRP Protocol RFC4975Indication of Message Composition for Instant Messaging RFC3994Message Summary Event Package RFC3842File Transfers RFC5547Desktop Sharing: RFB over MSRP
AG Projects BlinkReal Time Communications Experts
Presence
SIP Specific Event Notification RFC3265SIP Extension for Event State Publication RFC3903Presence Data Model (PIDF) RFC3863, RFC3379, RFC4479Watcher-info Event Package RFC3857, RFC3858Rich Presence Extensions to PIDF RFC4480Contact Information Extension to PIDF RFC4482User Agent Capability Extension to PIDF RFC5196XCAP Protocol RFC4825Common Policy RFC4745Presence Rules RFC5025Resource Lists RFC4826RLS Services RFC4826PIDF manipulation RFC4827OMA specifications for Presence and Contacts Management
AG Projects BlinkReal Time Communications Experts
SIP SIMPLE Client SDK available at http://sipsimpleclient.com
AG Projects BlinkReal Time Communications Experts
We had first Blink version for Mac, then Windows and Linux
AG Projects BlinkReal Time Communications Experts
Let's see the first Blink demo we recorded 2 years ago, the lessons we learned since then and where we are today
AG Projects BlinkReal Time Communications Experts
http://icanblink.com/movies/Blink-AudioConference.mov
AG Projects BlinkReal Time Communications Experts
Now, 2 years down the road
400 downloads per day
AG Projects BlinkReal Time Communications Experts
What have we learned?
AG Projects BlinkReal Time Communications Experts
Lesson 1. Open Source does not help much besides adoption
AG Projects BlinkReal Time Communications Experts
We thought about receiving contributions
AG Projects BlinkReal Time Communications Experts
An amazing number of ZERO contributions.
We know. Is complicated ;-)
AG Projects BlinkReal Time Communications Experts
People care for reliability, not for open source
AG Projects BlinkReal Time Communications Experts
Reliability is an intrinsic property of open source
AG Projects BlinkReal Time Communications Experts
Lesson 2. Complexity is found in unexpected places
AG Projects BlinkReal Time Communications Experts
It is roughly ten times easier to make an audio call than implementing Contacts Management and Presence
Lines of Code
Audio
Conference
Core
Presence/Contacts
Chat / File Transfer
Sum of Lines Category TotalAudio 3586Conference 2419Core 13287Presence/Contacts 15364Chat / File Transfer 3714Grand Total 38370
AG Projects BlinkReal Time Communications Experts
Lesson 3. Monetization happened in unexpected ways too!
• Alternative Licensing• Bundle with SIP services• Mac App Store
AG Projects BlinkReal Time Communications Experts
Enough talk, let’s see Blink in action today. If you like it you can buy it in the Mac App Store ;-)
• Contacts Management• Wideband audio• File Transfer• Collaborative Editor• Instant Messaging• Conferencing
AG Projects BlinkReal Time Communications Experts
http://icanblink.com/movies/Blink-ServerConference.mov
AG Projects BlinkReal Time Communications Experts
Adrian Georgescu [email protected] http://twitter.com/agprojects http://facebook.com/agprojects http://icanblink.com