Appboy Integration Guide

This topic describes how to integrate Workspace ONE Intelligence with Appboy. Appboy is mobile marketing automation that empowers marketers to build better relationships with their customers with push, email, in-app and more. This integration allows companies to use improve retention and reduce by sending targeted notifications to users who have had a bad experience.

This document will guide you through the process of activating sending Workspace ONE Intelligence events into Appboy through a few additional lines of code in the SDK.

Requirements

Before you start the integration process, please make sure you have the following:

Note

This integration is currently only available on iOS. Android is coming soon.

Implementation

The Workspace ONE Intelligence SDK will create a notification that fires when the SDK knows that a crash occurred. On iOS, when the user loads the app after a crash occurred, this notification will fire. The notification will contain four pieces of information:

  • Crash Name: The name of the crash (i.e., NSRangeException)
  • Crash Reason: More details on why the crash occurred (i.e., “***-[__NSArrayM objectAtIndex:]:index 18446744073709551615 beyond bounds for empty array”)
  • Crash Date: The date and time at which the crash occurred
  • Crash View: A list of the views that were active at the time of the crash

Sending a Crash Event to Appboy

Note

Make sure the Appboy SDK is initialized before Workspace ONE Intelligence SDK, otherwise the crash event will not be sent.

To send these crash events to Appboy, add two lines of code:

  1. Register an Observer to Capture the Workspace ONE Intelligence Event
[[NSNotificationCenter defaultCenter] addObserver:self
    selector:@selector(crashDidOccur:)
    name:@"CRCrashNotification" object:nil];
  1. Send an Event to Appboy Upon Notification
- (void) crashDidOccur:(NSNotification*)notification {
// Send Event to Appboy
[[Appboy sharedInstance] logCustomEvent:@"WorkspaceONEIntelligenceCrashEvent" withProperties:notification.userInfo}];
[[Appboy sharedInstance].user setCustomAttributeWithKey:@"lastCrashName" andStringValue:crashInfo[@"crashName"]];
[[Appboy sharedInstance].user setCustomAttributeWithKey:@"lastCrashReason" andStringValue:crashInfo[@"crashReason"]];
[[Appboy sharedInstance].user setCustomAttributeWithKey:@"lastCrashDate" andDateValue:crashInfo[@"crashDate"]];
}

For additional assistance, contact Apteligent Support (support@apteligent.com).