acrobits.net
Open in
urlscan Pro
159.65.119.193
Public Scan
Submitted URL: http://acrobits.cz/
Effective URL: https://acrobits.net/
Submission: On September 28 via manual from NL — Scanned from NL
Effective URL: https://acrobits.net/
Submission: On September 28 via manual from NL — Scanned from NL
Form analysis
0 forms found in the DOMText Content
* Home * White Label UCaaS * Product tour * Features * Pricing * Demo on demand * Mobile SDK * SDK Documentation * Video Conferencing * Individuals * Blog * Client login * Status * Book a discovery call Demo * Home * White Label UCaaS * Product tour * Features * Pricing * Demo on demand * Mobile SDK * SDK Documentation * Video Conferencing * Individuals * Blog * Client login * Status Book a discovery call ACROBITS UCAAS SOLUTIONS CREATE A BEST-IN-CLASS COMMUNICATION EXPERIENCE TODAY — NOT TOMORROW. FOR BUSINESSES CLOUD SOFTPHONE Create your customized UCaaS solution with Cloud Softphone. Design, build, and deploy your collaboration suite quickly. LEARN more → FOR BUSINESSES LINKUP Try LinkUp for custom video conferencing. Add your branding elements to the UI/UX for a unique experience. LEARN more → FOR INDIVIDUALS SOFTPHONES Enhance your VoIP experience with softphone solutions powered by the industry-leading Acrobits SDK LEARN more → FOR DEVELOPERS VOIP SDK Test the developer-friendly Acrobits SDK. Quickly integrate it with your favorite apps with our powerful API. LEARN more → FOR BUSINESSES CLOUD SOFTPHONE Create your customized UCaaS solution with Cloud Softphone. Design, build, and deploy your collaboration suite quickly. LEARN more → FOR BUSINESSES LINKUP Try LinkUp for custom video conferencing. Add your branding elements to the UI/UX for a unique experience. LEARN more → FOR INDIVIDUALS SOFTPHONES Enhance your VoIP experience with softphone solutions powered by the industry-leading Acrobits SDK LEARN more → FOR DEVELOPERS VOIP SDK Test the developer-friendly Acrobits SDK. Quickly integrate it with your favorite apps with our powerful API. LEARN more → CLOUD SOFTPHONE & LINKUP Upgrade your communications with Cloud Softphone and LinkUp. Explore over 100 premium features to customize and build a white label UCaaS app. Enhance your UI/UX with seamless branding across devices. * * * * Discover Watch video INSTANTLY ADD VIDEO CONFERENCING TO YOUR APPS Explore LinkUp → ALL THE FEATURES YOU NEED TO COMPETE * Cloud Softphone * VIdeo Conferencing IOS APPS ANDROID APPS WINDOWS NATIVE APPS MACOS NATIVE APPS PUSH NOTIFICATIONS SELF SERVICE 300+ CUSTOMIZATIONS PER OS 100+ FEATURES 100% NATIVE APPS TRY & BUY WORLD CLASS SUPPORT ONE CLICK APP STORE UPDATES AUTHENTICATED USERS HIGH USER MAXIMUM RECEIVE WORLD-CLASS SUPPORT GLOBAL SERVER INFRASTRUCTURE CALENDAR INTEGRATION CUSTOM MEETING ROOMS CALL RECORDINGS KEEP YOUR CLIENTS CONNECTED MEETING HISTORY VOICE, VIDEO & CHAT SCREEN SHARING PSTN CALL-IN IOS APPS ANDROID APPS WINDOWS NATIVE APPS MACOS NATIVE APPS PUSH NOTIFICATIONS SELF SERVICE 300+ CUSTOMIZATIONS PER OS 100+ FEATURES 100% NATIVE APPS TRY & BUY WORLD CLASS SUPPORT ONE CLICK APP STORE UPDATES AUTHENTICATED USERS HIGH USER MAXIMUM RECEIVE WORLD-CLASS SUPPORT GLOBAL SERVER INFRASTRUCTURE CALENDAR INTEGRATION CUSTOM MEETING ROOMS CALL RECORDINGS KEEP YOUR CLIENTS CONNECTED MEETING HISTORY VOICE, VIDEO & CHAT SCREEN SHARING PSTN CALL-IN BUILD A BRANDED UCAAS APP IN 45 MINUTES Book a demo to build, design, and launch your app while saving 95% on development costs. Book a discovery call SOFTPHONE APPS FOR IOS AND ANDROID LIFETIME LICENSE MEANS A ONE-TIME FEE AND NO MONTHLY PAYMENTS. GROUNDWIRE * Incoming Call via Push * Unlimited Accounts * Video Calls * Messaging * Transfers and Conferencing LEARN more → ACROBITS: VOIP SIP SOFTPHONE * Incoming Call via Push * Unlimited Accounts * Video Calls * Messaging * Transfers and Conferencing LEARN more → READ OUR BLOG SIP AND AI: INTEGRATION OF ARTIFICIAL INTELLIGENCE AND UNIFIED COMMUNICATIONS LOCAL PUSH: HOW ACROBITS INNOVATIVE APPROACH TO PUSH NOTIFICATIONS BECAME AN INDUSTRY STANDARD HOW TO MAINTAIN CONSISTENT BRANDING ACROSS YOUR COMMUNICATION TOOLS HOW TO ENHANCE CUSTOMER EXPERIENCE WITH CUSTOMIZED COMMUNICATION TOOLS THE EVOLUTION OF SIP: TRENDS AND FUTURE OUTLOOK SECURING SIP: BEST PRACTICES FOR PROTECTING YOUR COMMUNICATION INFRASTRUCTURE MEET OUR DEVELOPER-FRIENDLY SDK THE ACROBITS SDK SIMPLIFIES THE ENTIRE DEVELOPMENT PROCESS. Learn more → * Busy Lamp Field * Incoming Call * Number Rewriting * Conference Calling * Add busy lamp field integration to your real-time communications platform to see whether users are in an active call. * Allow your users to receive incoming calls more easily by integrating our platforms push to receive functionality. * Streamline and automate the dialing out process with our number rewriting capabilities. * Take advantage of our reliable and easy to use conference calling function that lets you invite more users. * * * Busy Lamp Field // 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); } } - (void)onNewEvent:(Softphone::EventHistory::Event::Pointer)event { switch (incomingEvent->eventType) { case Softphone::EventHistory::EventType::Call: { Softphone::EventHistory::CallEvent::Pointer callEvent = event.asCall(); UNMutableNotificationContent *notification = [[UNMutableNotificationContent alloc] init]; notification.title = @"Groundwire"; notification.body = [NSString stringWithFormat:NSLocalizedString(@"Incoming call from %@", @"notification"), ali::mac::str::to_nsstring(callEvent->getRemoteUser().getDisplayName())]; notification.sound = [UNNotificationSound defaultSound]; UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:[[NSUUID UUID] UUIDString] content:notification trigger:nil]; UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; [center addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) { if (!error) { // Handle successful notification request } }]; } break; default: break; } } * Incoming 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); } - (void)onNewEvent:(Softphone::EventHistory::Event::Pointer)event { switch (incomingEvent->eventType) { case Softphone::EventHistory::EventType::Call: { Softphone::EventHistory::CallEvent::Pointer callEvent = event.asCall(); UNMutableNotificationContent *notification = [[UNMutableNotificationContent alloc] init]; notification.title = @"Groundwire"; notification.body = [NSString stringWithFormat:NSLocalizedString(@"Incoming call from %@", @"notification"), ali::mac::str::to_nsstring(callEvent->getRemoteUser().getDisplayName())]; notification.sound = [UNNotificationSound defaultSound]; UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:[[NSUUID UUID] UUIDString] content:notification trigger:nil]; UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; [center addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) { if (!error) { // Handle successful notification request } }]; } break; default: break; } } * Number Rewriting // 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); } ali::string_literal rewritingRule{ "<rewriting>\n" " <rule>\n" " <conditions>\n" " <condition type=\"doesntStartWith\" param=\"+\"/>\n" " <condition type=\"longerThan\" param=\"8\"/>\n" " </conditions>\n" " <actions>\n" " <action type=\"prepend\" param=\"+420\"/>\n" " </actions>\n" " </rule>\n" "</rewriting>" }; int errorIndex = 0; bool success; ali::xml::tree rewritingXml; success = ali::xml::parse(rewritingXml, rewritingRule, &errorIndex); if (success) Softphone::instance()->contacts()->numberRewriting()->setRewriterRules(rewritingXml); * Conference Calling // 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); } } //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* - (void)joinCall:(Softphone::EventHistory::CallEvent::Pointer)call toGroup:(const ali::string &)group //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* { Softphone::instance()->calls()->conferences()->move(call, group); } //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* - (void)splitCall:(Softphone::EventHistory::CallEvent::Pointer)call //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* { ali::string groupId = Softphone::instance()->calls()->conferences()->get(call); Softphone::instance()->calls()->conferences()->split(call, true); } //-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* - (void)splitGroup:(ali::string const&)groupId //-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* { ali::array_set<Softphone::EventHistory::CallEvent::Pointer> calls = Softphone::instance()->calls()->conferences()->getCalls(groupId); for (auto call : calls) { Softphone::instance()->calls()->conferences()->split(call, false); } } SEE WHAT OUR 500+ CUSTOMERS ARE SAYING Trustpilot WE'RE TRUSTED BY THE BIGGEST BRANDS PRODUCTS * Cloud Softphone * LinkUp – Video Conferencing * Softphone for iOS/Android * Groundwire for iOS/Android COMMUNITY * Help Desk * Acrobits Documentation * Glossary * FAQs COMPANY * About Acrobits * Reviews * Personal Data Protection * Terms of Services * Privacy Policy Acrobits® 2008—2023