PortSIP VoIP SDK Manual for Mac  15.1
PortSIP features our newest, supported, quality-assured VoIP SDK used by Several hundred companies around the world for easy VoIP application develop and quality-assured code.
Welcome to PortSIP VoIP SDK

Create your SIP-based application for multiple platforms (iOS, Android, Windows, Mac OS/Linux) with our SDK.

The rewarding PortSIP VoIP SDK is a powerful and versatile set of tools that dramatically accelerate SIP application development. It includes a suite of stacks, SDKs, and some Sample projects, with each of them enables developers to combine all the necessary components to create an ideal development environment for every application's specific needs.

The PortSIP VoIP SDK complies with IETF and 3GPP standards, and is IMS-compliant (3GPP/3GPP2, TISPAN and PacketCable 2.0). These high performance SDKs provide unified API layers for full user control and flexibility.

Getting Started

You can download PortSIP VoIP SDK Sample projects at our Website. Samples include demos for VC++, C#, VB.NET, Delphi XE, XCode (for iOS and Mac OS), Eclipse (Java, for Android) with the sample project source code provided (SDK source code exclusive). The sample projects demonstrate how to create a powerful SIP application with our SDK easily and quickly.


The sample package for downloading contains almost all of materials for PortSIP SDK: documentation, Dynamic/Static libraries, sources, headers, datasheet, and everything else a SDK user might need!

SDK User Manual

To be started with, it is recommended to read the documentation of PortSIP VoIP SDK, SDK User Manual page, which gives a brief description of each API function.


Some general interest or often changing PortSIP SDK information will be posted on the PortSIP website in real time. The release contains links to the site, so while browsing you may see occasional broken links if you are not connected to the Internet. To be sure everything needed for using the PortSIP VoIP SDK has been contained within the release.


Please send email to our Support team if you need any help.

Installation Prerequisites

Development using the PortSIP VoIP/IMS SDK for iOS requires an Intel-based Macintosh running Snow Leopard (OS X 10.8 or higher), Xcode 5.0 or above.

Frequently Asked Questions

1. Where can I download the PortSIP VoIP SDK for test?

 All sample projects of the PortSIP VoIP SDK can be found and downloaded at: 

2. How can I compile the sample project?

        1. Download the sample project from PortSIP website. 
2. Extract the .zip file.
3. Open the project with your Xcode:
4. Compile the sample project directly. The trial version SDK allows a 2-3 minutes conversation.

3. How can I create a new project base on PortSIP VoIP SDK?

  1. Download the Sample project and evaluation SDK, and extract it to a directory. 
2. Run the Xcode and create a new OS X Cocoa Application Project.
3. Drag and drop PortSIPSDK.framework from Finder to XCode->Frameworks.
4. Copy Frameworks files while building a product:
Click Build Phases at the top of the project editor
Choose Editor > Add Build Phase > Add Copy Files Build Phase
Specify destination frameworks. Click the Add button (+) to select PortSIPSDK.framework to be copied and click Add.
5. Add the code in .h file to import the SDK. For example:
#import <PortSIPSDK/PortSIPSDK.h>
6. Inherit the interface PortSIPEventDelegate to process the callback events.
7. Initialize SDK. For example:
mPortSIPSDK = [[PortSIPSDK alloc] init];
mPortSIPSDK.delegate = self;
8. For more details, please read the Sample project source code.

4. How can I test the P2P call (without SIP server)?

1. Download and extract the SDK sample project ZIP file in local. Compile and run the "P2PSample" project. 

2. Run the P2Psample on two devices. For example, run it on device A and device B, and IP address for A is, IP address for B is

3. Enter a user name and password on A. For example, user name is 111, password is aaa (you can enter anything for the password as the SDK will ignore it). Enter a user name and password on B. For example: user name is 222, password is aaa.

4. Click the "Initialize" button on A and B. If the default port 5060 is already in use, the P2PSample will prompt "Initialize failure". In case of this, please click the "Uninitialize" button and change the local port, and click the "Initialize" button to proceed again.

5. The log box will show "Initialized" if the SDK initialization succeeded.

6. To make call from A to B, please enter sip:222@1.nosp@m.92.1.nosp@m.68.1..nosp@m.11 and click "Dial" button; to make call from B to A, enter sip:111@1.nosp@m.92.1.nosp@m.68.1..nosp@m.10.
Note: If the local sip port is changed to other port, for example A is using local port 5080, and B is using local port 6021, to make call 
from A to B, enter sip:222@1.nosp@m.92.1.nosp@m.68.1..nosp@m.11:6021 and dial; to make call from B to A, enter: sip:111@1.nosp@m.92.1.nosp@m.68.1..nosp@m.10:5080.

5. Is the SDK thread safe?

Yes, the SDK is thread safe. You can call any of the API functions without the need to consider the multiple threads. 
Note: the SDK allows to call API functions in callback events directly - except for the "onAudioRawCallback", "onVideoRawCallback", "onReceivedRtpPacket", "onSendingRtpPacket" callbacks.

6. Does the SDK support native 64 bits?

Yes, the SDK support 64 bits.