I'd like to create an app for iOS that does VOIP, presumably by interacting with a website. I can start with Android too.
Does anyone know of any tutorials, suggestions or libraries that would be of any use.
(The app would need to be rewritten for BB and android eventually, too.)
EDIT:
Bonus: What is SIP?
These answers suggest using siphon.
SIP is the Session Initiation Protocol, a transport- and media-agnostic protocol for setting up, modifying and tearing down long-term associations between multiple parties. It's formally defined in RFC 3261.
Usually SIP is paired with the Session Description Protocol which describes the media streams the various parties wish to use. SIP uses an offer/answer model for the parties to exchange these media descriptions.
If you can possibly avoid it, don't write a SIP stack (unless it's for fun, of course). It's a LOT of work.
Consider the Twilio Client iOS VoIP SDK. It makes it dead-simple to integrate VoIP capabilities into iOS apps. No need to know anything about SIP.
The Session Initiation Protocol (SIP) is a signaling communications protocol, widely used for controlling multimedia communication sessions such as voice and video calls over Internet Protocol (IP) networks.
SIP Requests are:- REGISTER: Used by a UA to indicate its current IP address and the URLs for which it would like to receive calls.
INVITE: Used to establish a media session between user agents.
ACK: Confirms reliable message exchanges.
CANCEL: Terminates a pending request.
BYE: Terminates a session between two users in a conference.
OPTIONS: Requests information about the capabilities of a caller, without setting up a call.
SIP Response
Provisional (1xx): Request received and being processed.
Success (2xx): The action was successfully received, understood, and accepted.
Redirection (3xx): Further action needs to be taken (typically by sender) to complete the request.
Client Error (4xx): The request contains bad syntax or cannot be fulfilled at the server.
Server Error (5xx): The server failed to fulfill an apparently valid request.
Global Failure (6xx): The request cannot be fulfilled at any server.
Also you need to check this. apple document on how to use voip app
for SDK you can use paid sdk's or free sdk's those comes under free are siphon,twilio,ozeki etc..Using these SDK's you can easily implement SIP,SDP,RTCP,SRTCP,RTP,SRTCP etc.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With