All Projects → BelledonneCommunications → linphone-xamarin

BelledonneCommunications / linphone-xamarin

Licence: GPL-3.0 License
Linphone.org mirror for linphone-xamarin (git://git.linphone.org/linphone-xamarin.git)

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to linphone-xamarin

app
studio link - app - mirror repo only -> issues now https://gitlab.com/studio.link/app
Stars: ✭ 56 (+143.48%)
Mutual labels:  sip, voip
kamailioexamples
configurations for voip solution architectures and usecases involving SIP servers
Stars: ✭ 59 (+156.52%)
Mutual labels:  sip, voip
Katari
Katari - Python Session Initiated Protocol Framework
Stars: ✭ 29 (+26.09%)
Mutual labels:  sip, voip
sip3-twig-ce
SIP3 Twig (Community Edition)
Stars: ✭ 56 (+143.48%)
Mutual labels:  sip, voip
ciscoaxl
Python SDK for Cisco CUCM AXL API
Stars: ✭ 51 (+121.74%)
Mutual labels:  sip, voip
Core
Free, easy to setup PBX for small business based on Asterisk 16 core
Stars: ✭ 190 (+726.09%)
Mutual labels:  sip, voip
pyfreebilling
Routing and rating VoIP application for service providers - API based - AGPL v3 - Based on kamailio
Stars: ✭ 75 (+226.09%)
Mutual labels:  sip, voip
vsaudit
VOIP Security Audit Framework
Stars: ✭ 104 (+352.17%)
Mutual labels:  sip, voip
sdp
A Go implementation of the SDP
Stars: ✭ 89 (+286.96%)
Mutual labels:  sip, voip
WireBug
WireBug is a toolset for Voice-over-IP penetration testing
Stars: ✭ 142 (+517.39%)
Mutual labels:  sip, voip
SIPTorch
A "SIP Torture" (RFC 4475) testing suite.
Stars: ✭ 54 (+134.78%)
Mutual labels:  sip, voip
sip3-salto-ce
SIP3 Salto (Community Edition)
Stars: ✭ 71 (+208.7%)
Mutual labels:  sip, voip
SentryPeer
A distributed peer to peer list of bad actor IP addresses and phone numbers collected via a SIP Honeypot.
Stars: ✭ 108 (+369.57%)
Mutual labels:  sip, voip
simlar-android
Simlar for android
Stars: ✭ 61 (+165.22%)
Mutual labels:  sip, voip
Kalbi
Kalbi - Golang Session Initiated Protocol Framework
Stars: ✭ 85 (+269.57%)
Mutual labels:  sip, voip
sip3-captain-ce
SIP3 Captain (Community Edition)
Stars: ✭ 73 (+217.39%)
Mutual labels:  sip, voip
go-sip-ua
Go SIP UA library for client/b2bua
Stars: ✭ 129 (+460.87%)
Mutual labels:  sip, voip
siphub
sip capture server by hep。work with OpenSIPS, Kamailo, and FreeSWITCH。
Stars: ✭ 23 (+0%)
Mutual labels:  sip, voip
AmiClient
Modern .NET Standard client for accessing the Asterisk AMI protocol using async/await and Reactive Extensions (Rx)
Stars: ✭ 30 (+30.43%)
Mutual labels:  sip, voip
qSIP
VoIP/SIP client (softphone)
Stars: ✭ 20 (-13.04%)
Mutual labels:  sip, voip

pipeline status

Xamarin SDK

To use Linphone with Xamarin, you need the Xamarin SDK which contains the native libraries for Android and iOS (for each architecture) and the C# wrapper that matches those libraries.

You can find a nightly build here: Snapshots and our latest release here: Releases

What's in the box

The Xamarin SDK embed the following:

  • The C# wrapper (named LinphoneWrapper.cs) ;
  • The Android libraries for armv7, arm64 and x86_64 ;
  • The Linphone java classes as an AAR (liblinphone-sdk.aar) which is required for Android (debug and release flavors) ;
  • The iOS libraries for armv7, arm64 and x86_64 (as frameworks) ;

Building the SDK

To build the sdk, clone the linphone SDK git repository and follow the README instructions.

Getting started

Using our sample solution in the SDK

The sample we provide is a solution using four projects: one for Android, one for iOS, one for the native libraries and a shared one.

The shared one contains most of the UI stuff. It has an application and a default view that allow the user to register his SIP account to a proxy and make/receive calls. It also includes the C# wrapper from the SDK.

The Android project contains the Android Manifest for the generated APK and an Activity that will load and display the application from the shared project.

The iOS project does the same thing that the Android one, but for iOS (obviously).

Finally, the Liblinphone project contains the native libraries built by linphone-sdk.

Add the SDK binaries and wrapper

For Android

In the linphone sdk xamarin zip file, copy from linphone-sdk-android directory either the debug or release AAR into Xamarin\Xamarin\Liblinphone\liblinphone-sdk.aar (the name must remain the same)

Also copy the file linphone-sdk-ios\linphone-sdk\apple-darwin\share\linphonecs\LinphoneWrapper.cs into Xamarin\Xamarin\Xamarin\LinphoneWrapper.cs (the name must remain the same)

That's all! Generate the solution and you can deploy the sample app on any Android device.

For iOS

For the C# wrapper to work, it needs to find the Linphone native libraries. On IOS, here's the procedure to add them to the project:

  • Import the Frameworks folder with all the frameworks within your Xamarin.iOS project ;
  • Right click on your Xamarin.iOS project then select add -> add native references and select all the frameworks you imported in the project.

Do not forget to add your required permissions in your project Info.plist (i.e: use of microphone etc...) or your app will crash !

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].