Skip to content

Commit 12409c0

Browse files
Merge branch 'develop' into braze-actions-v2
2 parents e38788f + eaa2906 commit 12409c0

File tree

20 files changed

+380
-106
lines changed

20 files changed

+380
-106
lines changed

src/_data/catalog/destination_categories.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# destination categories last updated 2024-09-26
2+
# destination categories last updated 2024-10-01
33
items:
44
- display_name: A/B Testing
55
slug: a-b-testing

src/_data/catalog/destinations.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# destination data last updated 2024-09-26
2+
# destination data last updated 2024-10-01
33
items:
44
- id: 637e8d185e2dec264895ea89
55
display_name: 1Flow

src/_data/catalog/destinations_private.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# destination data last updated 2024-09-26
2+
# destination data last updated 2024-10-01
33
items:
44
- id: 54521fd925e721e32a72eee1
55
display_name: Pardot

src/_data/catalog/source_categories.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# source categories last updated 2024-09-26
2+
# source categories last updated 2024-10-01
33
items:
44
- display_name: A/B Testing
55
slug: a-b-testing

src/_data/catalog/sources.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PUBLIC API. DO NOT EDIT
2-
# sources last updated 2024-09-26
2+
# sources last updated 2024-10-01
33
items:
44
- id: 8HWbgPTt3k
55
display_name: .NET

src/connections/auto-instrumentation/configuration.md

Lines changed: 3 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -3,48 +3,18 @@ title: Generate Events from Signals
33
hidden: true
44
---
55

6-
This guide is a reference to configuring, generating, and using signals in the Signals SDK with Auto-Instrumentation. On this page, you'll find details on:
6+
This guide details how to use signals, and their associated data, generated in one of the Signals SDKs with the Auto-Instrumentation dashboard in your Segment workspace. On this page, you'll find details on:
77

8-
- Setting up and managing signal types in the Signals SDK
98
- Creating custom rules to capture and translate signals into actionable analytics events
109
- Example rules that you can use as a basis for further customization
1110

12-
This guide assumes that you've already added the Signals SDK to your application. If you haven't yet, see the [Auto-Instrumentation Setup](/docs/connections/auto-instrumentation/setup/) guide for initial setup.
11+
This guide assumes that you've already added the Signals SDK to your application. If you haven't yet, see the [Auto-Instrumentation Setup](/docs/connections/auto-instrumentation/) guide for initial setup.
1312

1413
> info "Auto-Instrumentation Pilot"
1514
> Auto-Instrumentation is currently in pilot and is governed by Segment's [First Access and Beta Preview Terms](https://www.twilio.com/en-us/legal/tos){:target="_blank"}. Segment doesn't recommend Auto-Instrumentation for use in a production environment, as Segment is actively iterating on and improving the user experience.
1615
1716
> success "Enable Auto-Instrumentation"
18-
> To enable Auto-Instrumentation in your Segment workspace, reach out to your dedicated account manager.
19-
20-
## Signals configuration
21-
22-
Using the Signals Configuration object, you can control the destination, frequency, and types of signals that Segment automatically tracks within your application. The following tables detail the configuration options for both Signals-Swift and Signals-Kotlin.
23-
24-
### Signals-Swift
25-
26-
| `Option` | Required | Value | Description |
27-
| ---------------------- | -------- | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
28-
| `writeKey` | Yes | String | Source write key |
29-
| `maximumBufferSize` | No | Integer | The number of signals to be kept for JavaScript inspection. This buffer is first-in, first-out. Default is `1000`. |
30-
| `relayCount` | No | Integer | Relays signals to Segment every Xth event. Default is `20`. |
31-
| `relayInterval` | No | TimeInterval | Relays signals to segment every X seconds. Default is `60`. |
32-
| `broadcasters` | No | `SignalBroadcaster` | An array of broadcasters. These objects forward signal data to their destinations, like `WebhookBroadcaster` or `DebugBroadcaster` writing to the developer console. Default is `SegmentBroadcaster`. |
33-
| `useUIKitAutoSignal` | No | Bool | Tracks UIKit component interactions automatically. Default is `false`. |
34-
| `useSwiftUIAutoSignal` | No | Bool | Tracks SwiftUI component interactions automatically. Default is `false`. |
35-
| `useNetworkAutoSignal` | No | Bool | Tracks network events automatically. Default is `false`. |
36-
| `allowedNetworkHosts` | No | Array | An array of allowed network hosts. |
37-
| `blockedNetworkHosts` | No | Array | An array of blocked network hosts. |
38-
39-
40-
### Signals-Kotlin
41-
42-
| `Option` | Required | Value | Description |
43-
| ------------------- | -------- | ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
44-
| `writeKey` | Yes | String | Source write key |
45-
| `maximumBufferSize` | No | Integer | The number of signals to be kept for JavaScript inspection. This buffer is first-in, first-out. Default is `1000`. |
46-
| `broadcastInterval` | No | Integer | Broadcasts signals to Segment every X event. Default is `60`. |
47-
| `broadcasters` | No | `List<SignalBroadcaster>` | An array of broadcasters. These objects forward signal data to their destinations, like `WebhookBroadcaster` or `DebugBroadcaster` writing to the developer console. Default is `SegmentBroadcaster`. |
17+
> To enable Auto-Instrumentation in your Segment workspace, reach out to your dedicated account manager.
4818
4919

5020
## Converting signals to events

src/connections/auto-instrumentation/index.md

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,27 @@
11
---
22
title: Auto-Instrumentation
33
hidden: true
4+
sources:
5+
- name: Android
6+
url: /connections/auto-instrumentation/kotlin-setup/
7+
logo:
8+
url: https://cdn.filepicker.io/api/file/9BoiIqVRFmsAuBbMMy9D
9+
mark:
10+
url: https://cdn.filepicker.io/api/file/9BoiIqVRFmsAuBbMMy9D
11+
- name: Apple
12+
url: /connections/auto-instrumentation/swift-setup/
13+
logo:
14+
url: https://cdn.filepicker.io/api/file/qWgSP5cpS7eeW2voq13u
15+
mark:
16+
url: https://cdn.filepicker.io/api/file/qWgSP5cpS7eeW2voq13u
17+
- name: Web
18+
url: /connections/auto-instrumentation/web-setup/
19+
logo:
20+
url: https://cdn.filepicker.io/api/file/aRgo4XJQZausZxD4gZQq
21+
mark:
22+
url: https://cdn.filepicker.io/api/file/aRgo4XJQZausZxD4gZQq
23+
redirect_from:
24+
- '/docs/connections/auto-instrumentation/setup/'
425
---
526

627
Auto-Instrumentation simplifies tracking in your websites and apps by eliminating the need for a traditional Segment instrumentation.
@@ -29,10 +50,35 @@ Some Auto-Instrumentation advantages include:
2950

3051
## How it works
3152

32-
After you [integrate the Analytics SDK and Signals SDK into your application](/docs/connections/auto-instrumentation/setup/), Segment begins to passively monitor user activity like button clicks, page navigation, and network data. Segment captures these events as "signals" and sends them to your Auto-Instrumentation source in real time.
53+
Once you integrate the Analytics SDK and Signals SDK into your website or application, Segment begins to passively monitor user activity like button clicks, page navigation, and network data. Segment captures these events as "signals" and sends them to your Auto-Instrumentation source in real time.
3354

3455
In Segment, the Auto-Instrumentation source lets you view raw signals. You can then [use this data to create detailed analytics events](/docs/connections/auto-instrumentation/configuration/) based on those signals, enriching your insights into user behavior and applicatino performance.
3556

57+
## Setup Guides
58+
59+
<div class="auto-instrumentation-catalog">
60+
<div class="auto-insturmentation__section markdown" id="{{ category | slugify }}">
61+
<div class="flex flex--wrap waffle waffle--xlarge">
62+
{% assign category = "source" %}
63+
{% assign resources = page.sources %}
64+
{% for resource in resources %}
65+
<div class="flex__column flex__column--6">
66+
<a class="thumbnail-integration flex flex--middle" href="{{ site.baseurl }}/{{ resource.url }}">
67+
<div class="thumbnail-integration__content">
68+
<div class="flex flex--wrap flex--middle waffle waffle--xlarge@medium">
69+
<div class="flex__column flex__column--12 flex__column--2@medium thumbnail-integration__logo-wrapper">
70+
<img class="thumbnail-integration__logo image" alt="{{resource.name}}" src="{{resource.mark.url}}" />
71+
</div>
72+
<h5 class="flex__column flex__column--12 flex__column--10@medium">{{ resource.name }}</h5>
73+
</div>
74+
</div>
75+
</a>
76+
</div>
77+
{% endfor %}
78+
</div>
79+
</div>
80+
</div>
81+
3682
## Privacy
3783

3884
Auto-Instrumentation removes personally identifiable information (PII) from breadcrumbs before they get sent to Segment. No user data is visible to Segment.

src/connections/auto-instrumentation/setup.md renamed to src/connections/auto-instrumentation/kotlin-setup.md

Lines changed: 19 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Auto-Instrumentation Setup
33
hidden: true
44
---
55

6-
This guide outlines the steps required to set up the Signals SDK in your applications using Swift or Kotlin.
6+
This guide outlines the steps required to set up the Signals SDK in your Android OS applications using Kotlin.
77

88
You'll learn how to add Auto-Instrumentation sources, integrate dependencies, and ensure that your setup captures and processes data as intended.
99

@@ -25,61 +25,7 @@ You'll first need to add a source and copy its write key:
2525

2626
## Step 2: Add dependencies and initialization code
2727

28-
Next, you'll need to add the Signals SDKs to your Swift and Kotlin development environments.
29-
30-
### Swift
31-
32-
Follow these steps to integrate the Signals SDK into your Swift application:
33-
34-
1. Use Swift Package Manager to add the Signals SDK from the following repository:
35-
36-
```zsh
37-
https://github.com/segmentio/Signals-swift.git
38-
```
39-
40-
2. Add the initialization code:
41-
42-
```swift
43-
// Configure Analytics with your settings
44-
{... <analytics config>....}
45-
46-
// Set up the Signals SDK configuration
47-
let config = Signals.Configuration(
48-
writeKey: "<WRITE_KEY>", // Replace <WRITE_KEY> with the write key you previously copied
49-
maximumBufferSize: 100,
50-
useSwiftUIAutoSignal: true,
51-
useNetworkAutoSignal: true
52-
)
53-
54-
// Locate and set the fallback JavaScript file for edge functions
55-
let fallbackURL = Bundle.main.url(forResource: "MyEdgeFunctions", withExtension: "js")
56-
57-
// Apply the configuration and add the Signals plugin
58-
Signals.shared.useConfiguration(config)
59-
Analytics.main.add(plugin: LivePlugins(fallbackFileURL: fallbackURL))
60-
Analytics.main.add(plugin: Signals.shared)
61-
```
62-
63-
Verify that you replaced `<WRITE_KEY>` with the actual write key you copied in Step 1.
64-
65-
#### SwiftUI projects
66-
67-
If your app is written in SwiftUI, you'll need to add a `TypeAlias.swift` file to your project that captures interaction and navigation Signals, like in this example:
68-
69-
```swift
70-
import Foundation
71-
import Signals
72-
73-
typealias Button = SignalButton
74-
typealias NavigationStack = SignalNavigationStack
75-
typealias NavigationLink = SignalNavigationLink
76-
typealias TextField = SignalTextField
77-
typealias SecureField = SignalSecureField
78-
```
79-
80-
### Kotlin
81-
82-
Follow these steps to integrate the Signals SDK into your Kotlin application:
28+
Next, you'll need to add the Signals SDKs to your Kotlin application.
8329

8430
1. Update your module’s Gradle build file to add the right dependencies:
8531

@@ -98,7 +44,10 @@ Follow these steps to integrate the Signals SDK into your Kotlin application:
9844
}
9945
```
10046

101-
2. Add the following code to your application to initialize the Signals SDK:
47+
2. Add the initialization code and configuration options:
48+
49+
> success ""
50+
> see [configuration options](#configuration-options) for a complete list.
10251

10352
```kotlin
10453
// Configure Analytics with your settings
@@ -143,6 +92,18 @@ Next, you'll need to verify signal emission and [create rules](/docs/connections
14392
14493
Segment displays `Rule updated successfully` to verify that it saved your rule.
14594
95+
## Configuration Options
96+
97+
Using the Signals Configuration object, you can control the destination, frequency, and types of signals that Segment automatically tracks within your application. The following table details the configuration options for Signals-Kotlin.
98+
99+
| `Option` | Required | Value | Description |
100+
| ------------------- | -------- | ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
101+
| `writeKey` | Yes | String | Source write key |
102+
| `maximumBufferSize` | No | Integer | The number of signals to be kept for JavaScript inspection. This buffer is first-in, first-out. Default is `1000`. |
103+
| `broadcastInterval` | No | Integer | Broadcasts signals to Segment every X event. Default is `60`. |
104+
| `broadcasters` | No | `List<SignalBroadcaster>` | An array of broadcasters. These objects forward signal data to their destinations, like `WebhookBroadcaster` or `DebugBroadcaster` writing to the developer console. Default is `SegmentBroadcaster`. |
105+
106+
146107
## Next steps
147108
148-
This guide walked you through initial Signals SDK/Auto-Instrumentation setup. Next, read the [Auto-Instrumentation Signals Implementation Guide](/docs/connections/auto-instrumentation/configuration/), which dives deeper into Signals and offers examples rules.
109+
This guide walked you through initial Signals SDK/Auto-Instrumentation setup. Next, read the [Auto-Instrumentation Signals Implementation Guide](/docs/connections/auto-instrumentation/configuration/), which dives deeper into Signals and offers example rules.

0 commit comments

Comments
 (0)