Out of 5 stars
Team up with an expert provider to deliver premium white-label softphone solutions today, not tomorrow.
Our commitment to user-friendly design, advanced VoIP functionality, and exceptional support is recognized and loved by our 500+ customers.
Out of 5 stars
Out of 5 stars
Out of 5 stars
Cloud Softphone integrates with leading softswitches such as BroadSoft, Metaswitch, Sangoma, NetSapiens, and more. Transition effortlessly and modernize your enterprise communications without disruption.
Fully branded, ready in days, no development required
Launch in days, fully branded, no coding needed.
Easily customize app UI with 300+ options per OS.
Store publishing can be managed entirely by our expert team.
Maintain full ownership of your brand, building customer trust and loyalty.
Break free from vendor limitations without touching your existing infrastructure.
Launch in days, fully branded, no coding needed.
Easily customize app UI with 300+ options per OS.
Store publishing can be managed entirely by our expert team.
Maintain full ownership of your brand, building customer trust and loyalty.
Break free from vendor limitations without touching your existing infrastructure.
Launch in days, fully branded, no coding needed.
Easily customize app UI with 300+ options per OS.
Store publishing can be managed entirely by our expert team.
Maintain full ownership of your brand, building customer trust and loyalty.
Break free from vendor limitations without touching your existing infrastructure.
Customize every aspect of your communications solution, from colors and logos to features and functionality. Create a truly unique offering that stands out in the market. Publish in the stores under your brand.
Trusted deployment
500+Branded VoIP apps live in stores
Global scale
180M+Endpoints deployed worldwide
Immediate savings
95%Monthly savings vs. in-house dev
Built with native code architecture, Cloud Softphone performs across iOS, Android, Windows, and Mac. Unlock full hardware potential, including haptics, push notifications, device sync, and external headset integration. Maintain consistent visual identity across every platform while delivering a cohesive experience tailored to your industry.
Complete management control with zero complexity. External provisioning API automates user provisioning and SIP credential setup, while 300+ customizations deliver flexible feature configuration. Our publishing service handles App Store and Play Store deployment, ensuring security compliance throughout.
Handle with a simple no code portal, extension management, call routing, and SIP account configuration; while SIPIS push notifications maintains reliable connectivity across all platforms. Access custom functions frameworks to enable webhook integrations and CRM connectivity through configurable call screen controls.
Military-grade encryption via ZRTP, SRTP, and TLS protocols keeps communications private and SIP credentials secure. HIPAA and GDPR compliance standards meet regulatory requirements for healthcare, hospitality, and secure communication industries where compliance is mandatory.
Reliable technical support addresses issues promptly. Year-round updates deliver 99% uptime consistency for uninterrupted communication performance.
Your branded softphone. In the app stores. Live next week. Ready?
Book a demoCloud Softphone adapts to meet the specific communication needs of diverse sectors, ensuring reliable, secure, and fully branded user experiences.
Make crystal-clear calls from anywhere. Acrobits Softphone provides secure and user-friendly SIP calling, perfect for individuals and small teams seeking effortless connectivity.
Experience advanced VoIP calling features with exceptional audio quality. Groundwire integrates powerful tools like conferencing and call transfers, all without draining your battery.
Actionable guides, trends, and deep dives, written for CSPs and UCaaS leaders.
Visit our blogTest the Acrobits SDK, a telecom and developer-friendly solution. Integrating with your app is simple with its API.
Softphone SDK// Blf status
val dialogInfo = Instance.Registration.getDialogInfo(accountId, uri)
val blfString = if (dialogInfo.busyLamp) "On call" else "Off call"
busyLampStatusLabel.setText(blfString)
// Busy Lamp field iOS
DialogInfo *dialogInfo = Softphone::instance()->registration()->getDialogInfo(uri);
if (dialogInfo) {
if (dialogInfo->busyLamp) {
busyLampStatusLabel.text = NSLocalizedString(@"On Call", nil);
} else {
busyLampStatusLabel.text = NSLocalizedString(@"Off Call", nil);
}
}
Add busy lamp field integration to your real-time communications platform to see whether users are in an active call.
// OnCall
// ******************************************************************
public void onNewCall(@NonNull CallEvent callEvent) {
val context = AndroidUtil.getContext();
String messageText = "";
Class<?> activity = CallActivity.class;
String activityAction = Activity.ACTION_MAIN;
int notificationId = ID_CALL_IN_PROGRESS;
var extras = new Bundle();
String title = context.getString(R.string.app_name);
Bitmap bitmap = AndroidUtil.getBitmap(R.drawable.icon_notification);
messageText = AndroidUtil.getString(R.string.notification_bullet,
messageText,
callEvent.getAccountName());
Intent intent = new Intent(context, activity)
.setAction(activityAction)
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
.putExtras(extras);
val builder = new NotificationCompat.Builder(context)
.setContentIntent(PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT))
.setContentText(messageText)
.setContentTitle(title)
.setLargeIcon(bitmap);
val notification = builder.build();
val manager = (NotificationManager) AndroidUtil.getSystemService(Context.NOTIFICATION_SERVICE);
manager.notify(notificationId, notification);
}
Allow your users to receive incoming calls more easily by integrating our platforms push to receive functionality.
// Rewriting
rewritingString = "<rewriting><rule><conditions><condition type=\"doesntStartWith\" param=\"+\"/><condition type=\"longerThan\" param=\"8\"/></conditions> <actions> <action type=\"prepend\" param=\"+420\"/> </actions> </rule> </rewriting>";
mRewritingXml = Xml.parse(rewritingString);
if (mRewritingXml != null) {
Instance.Contacts.NumberRewriting.setRewriterRules(null, mRewritingXml);
}
Streamline and automate the dialing out process with our number rewriting capabilities.
// JoinCall
// ******************************************************************
public static void join(String firstConferenceId, String secondConferenceId) {
if (firstConferenceId == null || secondConferenceId == null)
return;
if (firstConferenceId.equals(secondConferenceId))
return;
val firstConferenceCalls = Instance.Calls.Conferences.getCalls(secondConferenceId);
val secConferenceCalls = Instance.Calls.Conferences.getCalls(firstConferenceId);
val newConferenceId = Instance.Calls.Conferences.generate("newConf");
for (val event : firstConferenceCalls)
Instance.Calls.Conferences.move(event, newConferenceId);
for (val event : secConferenceCalls)
Instance.Calls.Conferences.move(event, newConferenceId);
Instance.Calls.Conferences.setActive(newConferenceId);
}
// Split Call
// ******************************************************************
public static void split(CallEvent callEvent) {
Instance.Calls.Conferences.split(callEvent, false);
Instance.Calls.setHeld(callEvent, true);
}
// Split Conference
// ******************************************************************
public static void split(String confId) {
var confCalls = Instance.Calls.Conferences.getCalls(confId);
for (int i = 0; i < confCalls.length; i++) {
val callEvent = confCalls[i];
Instance.Calls.Conferences.split(callEvent, false);
Instance.Calls.setHeld(callEvent, true);
}
}
Take advantage of our reliable and easy to use conference calling function that lets you invite more users.
No spam. Just smart reads on VoIP, softphones, and the future of UCaaS.