@primexperts.co/pulse-agent 5.3.0 → 5.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -10
- package/docs/FAQ.md +1 -1
- package/docs/IMPLEMENTATION-GUIDE.md +24 -17
- package/docs/INTEGRATION-CHANNELS.md +1 -1
- package/docs/TROUBLESHOOTING.md +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -59,19 +59,29 @@ The result is a team inbox model: one public channel for customers, multiple int
|
|
|
59
59
|
| WhatsApp | Planned/optional depending on deployment | WhatsApp contact path | Intended shared handling model when enabled; do not promise as active unless configured |
|
|
60
60
|
| Error Monitoring | Supported through this package | No visible customer UI | Browser exceptions and failed request reports tied to the website/application |
|
|
61
61
|
|
|
62
|
-
##
|
|
62
|
+
## Self-Service Setup
|
|
63
63
|
|
|
64
|
-
|
|
64
|
+
Pulse Agent is intended to be usable by any website owner who creates a Pulse workspace and enables Webchat.
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
66
|
+
Before adding the code snippet, do this in Pulse:
|
|
67
|
+
|
|
68
|
+
1. Create or sign in to your Pulse account.
|
|
69
|
+
2. Create your organization or workspace.
|
|
70
|
+
3. Create/select the application or website you want to connect.
|
|
71
|
+
4. Enable the Webchat integration.
|
|
72
|
+
5. Copy the generated setup values into your website environment/config.
|
|
73
|
+
6. Add your website origin, for example `https://www.example.com`, to the allowed origins/CORS settings if your Pulse deployment exposes that setting.
|
|
72
74
|
|
|
73
|
-
|
|
75
|
+
Use these values in your widget config:
|
|
76
|
+
|
|
77
|
+
| Value | Example | Required | How to get it |
|
|
78
|
+
| --- | --- | --- | --- |
|
|
79
|
+
| Organization slug | `acme-support` | Yes | Shown in Pulse for your organization/workspace. |
|
|
80
|
+
| Application key | `app_...` | Recommended when available | Copy from your Pulse application/webchat setup. |
|
|
81
|
+
| API base URL | `https://pulse.service.primexperts.co.za` | Yes | Use the API URL shown by your Pulse environment. |
|
|
82
|
+
| Website origin | `https://www.example.com` | Required for production | Add the exact site origin where the widget will run. |
|
|
74
83
|
|
|
84
|
+
You usually do not need a widget token. Pulse Agent resolves it automatically from your organization slug; when an application key is configured, the agent also sends it for app-aware deployments and reporting context.
|
|
75
85
|
## Configuration Keys
|
|
76
86
|
|
|
77
87
|
| Option | Type | Default | Description |
|
|
@@ -363,7 +373,7 @@ Admin setup endpoints are separate and should remain authenticated.
|
|
|
363
373
|
- Framework-agnostic browser integration.
|
|
364
374
|
- Works with npm or a script tag.
|
|
365
375
|
- Supports runtime configuration, which is useful for Heroku, Docker, static hosting, and multi-environment deployments.
|
|
366
|
-
- Uses `slug
|
|
376
|
+
- Uses the organization `slug`, plus `appKey` when available, so users do not need to handle internal widget tokens.
|
|
367
377
|
- Supports visitor profile capture, history loading, transcript email requests, SSE replies, WhatsApp launcher/contact path where configured, manual open/close, and manual exception reporting.
|
|
368
378
|
- Supports operational workflows verified in the Pulse source: assignment, status/priority updates, internal notes, follow-ups, customer profiles, tags, notifications, activity logs, exports, and dashboard KPIs.
|
|
369
379
|
- Supports role-based team operation: admins manage setup and assignment, while agents work assigned conversations.
|
package/docs/FAQ.md
CHANGED
|
@@ -15,7 +15,7 @@ Do not use dashboard host URLs as API base URLs.
|
|
|
15
15
|
## What slug should I use?
|
|
16
16
|
|
|
17
17
|
Use the organization slug generated from organization name (lowercase, alphanumeric, hyphen-separated).
|
|
18
|
-
Example: `
|
|
18
|
+
Example: `Acme Support` -> `acme-support`
|
|
19
19
|
|
|
20
20
|
## Do users need to log in to use the widget?
|
|
21
21
|
|
|
@@ -32,16 +32,23 @@ The Pulse source supports more than a website chat bubble:
|
|
|
32
32
|
- Error monitoring can post browser error reports to Pulse and feed dashboard summaries.
|
|
33
33
|
|
|
34
34
|
This is why the strongest positioning is: Pulse Agent gets the customer conversation or browser issue into Pulse; Pulse gives the team a controlled workspace to manage it together.
|
|
35
|
-
## 2.
|
|
35
|
+
## 2. Self-Service Pulse Setup
|
|
36
|
+
|
|
37
|
+
Pulse Agent is intended for any website owner. Start in Pulse, then copy the values into your website config.
|
|
38
|
+
|
|
39
|
+
1. Create or sign in to your Pulse account.
|
|
40
|
+
2. Create your organization or workspace.
|
|
41
|
+
3. Create/select the application or website you want to connect.
|
|
42
|
+
4. Enable Webchat.
|
|
43
|
+
5. Copy the generated slug and application key, when available.
|
|
44
|
+
6. Add your website origin to the allowed origins/CORS settings if your Pulse environment exposes that setting.
|
|
36
45
|
|
|
37
46
|
| Value | Required | Example | Notes |
|
|
38
47
|
| --- | --- | --- | --- |
|
|
39
|
-
| `slug` | Yes | `
|
|
40
|
-
| `appKey` | Recommended | `app_abc123...` |
|
|
41
|
-
| `apiBaseUrl` | Yes | `https://pulse.service.primexperts.co.za` |
|
|
42
|
-
| Website origin |
|
|
43
|
-
|
|
44
|
-
The `appKey` is the value that starts with `app_`. It is not the same as `widgetToken`.
|
|
48
|
+
| `slug` | Yes | `acme-support` | Organization/workspace slug shown in Pulse. |
|
|
49
|
+
| `appKey` | Recommended when available | `app_abc123...` | Application key copied from Pulse setup. The agent sends it when present for app-aware deployments and reporting context. |
|
|
50
|
+
| `apiBaseUrl` | Yes | `https://pulse.service.primexperts.co.za` | Use the API URL shown by your Pulse environment. Do not add `/api`. |
|
|
51
|
+
| Website origin | Production only | `https://app.example.com` | Exact site origin where the widget runs. |
|
|
45
52
|
|
|
46
53
|
A `widgetToken` is normally resolved automatically by Pulse from the organization `slug`; when `appKey` is configured, the agent also sends it for app-aware deployments. Do not configure `widgetToken` unless Pulse explicitly provides a token for a special case.
|
|
47
54
|
|
|
@@ -63,10 +70,10 @@ For script-tag usage:
|
|
|
63
70
|
import { createPulseAgent } from '@primexperts.co/pulse-agent';
|
|
64
71
|
|
|
65
72
|
createPulseAgent({
|
|
66
|
-
slug: '
|
|
73
|
+
slug: 'acme-support',
|
|
67
74
|
appKey: 'app_your_public_application_key',
|
|
68
75
|
apiBaseUrl: 'https://pulse.service.primexperts.co.za',
|
|
69
|
-
title: '
|
|
76
|
+
title: 'Acme Support',
|
|
70
77
|
requireProfile: true,
|
|
71
78
|
autoOpen: false
|
|
72
79
|
});
|
|
@@ -78,7 +85,7 @@ Error monitoring is off by default. Enable it explicitly:
|
|
|
78
85
|
|
|
79
86
|
```ts
|
|
80
87
|
createPulseAgent({
|
|
81
|
-
slug: '
|
|
88
|
+
slug: 'acme-support',
|
|
82
89
|
appKey: 'app_your_public_application_key',
|
|
83
90
|
apiBaseUrl: 'https://pulse.service.primexperts.co.za',
|
|
84
91
|
errorMonitoring: true,
|
|
@@ -102,7 +109,7 @@ Manual capture:
|
|
|
102
109
|
|
|
103
110
|
```ts
|
|
104
111
|
const agent = createPulseAgent({
|
|
105
|
-
slug: '
|
|
112
|
+
slug: 'acme-support',
|
|
106
113
|
appKey: 'app_your_public_application_key',
|
|
107
114
|
apiBaseUrl: 'https://pulse.service.primexperts.co.za',
|
|
108
115
|
errorMonitoring: true
|
|
@@ -126,10 +133,10 @@ try {
|
|
|
126
133
|
Use these names in Heroku, Docker, CI, or your hosting platform:
|
|
127
134
|
|
|
128
135
|
```env
|
|
129
|
-
PULSE_AGENT_SLUG=
|
|
136
|
+
PULSE_AGENT_SLUG=acme-support
|
|
130
137
|
PULSE_AGENT_APP_KEY=app_your_public_application_key
|
|
131
138
|
PULSE_AGENT_API_BASE_URL=https://pulse.service.primexperts.co.za
|
|
132
|
-
PULSE_AGENT_TITLE=
|
|
139
|
+
PULSE_AGENT_TITLE=Acme Support
|
|
133
140
|
PULSE_AGENT_ENVIRONMENT=production
|
|
134
141
|
PULSE_AGENT_RELEASE=web-1.0.0
|
|
135
142
|
|
|
@@ -168,10 +175,10 @@ Example `runtime-config.js` output:
|
|
|
168
175
|
```js
|
|
169
176
|
window.__APP_RUNTIME_CONFIG__ = {
|
|
170
177
|
pulseAgent: {
|
|
171
|
-
slug: '
|
|
178
|
+
slug: 'acme-support',
|
|
172
179
|
appKey: 'app_your_public_application_key',
|
|
173
180
|
apiBaseUrl: 'https://pulse.service.primexperts.co.za',
|
|
174
|
-
title: '
|
|
181
|
+
title: 'Acme Support',
|
|
175
182
|
errorMonitoring: true,
|
|
176
183
|
captureUnhandledErrors: true,
|
|
177
184
|
captureUnhandledRejections: true,
|
|
@@ -210,10 +217,10 @@ if (pulseAgentConfig?.slug) {
|
|
|
210
217
|
Set config vars:
|
|
211
218
|
|
|
212
219
|
```bash
|
|
213
|
-
heroku config:set PULSE_AGENT_SLUG=
|
|
220
|
+
heroku config:set PULSE_AGENT_SLUG=acme-support
|
|
214
221
|
heroku config:set PULSE_AGENT_APP_KEY=app_your_public_application_key
|
|
215
222
|
heroku config:set PULSE_AGENT_API_BASE_URL=https://pulse.service.primexperts.co.za
|
|
216
|
-
heroku config:set PULSE_AGENT_TITLE=
|
|
223
|
+
heroku config:set PULSE_AGENT_TITLE=Acme Support
|
|
217
224
|
heroku config:set PULSE_AGENT_ENVIRONMENT=production
|
|
218
225
|
heroku config:set PULSE_AGENT_ERROR_MONITORING=true
|
|
219
226
|
heroku config:set PULSE_AGENT_CAPTURE_UNHANDLED_ERRORS=true
|
|
@@ -47,7 +47,7 @@ This guide documents how to integrate Pulse by channel type and which technologi
|
|
|
47
47
|
import { createPulseAgent } from '@primexperts.co/pulse-agent';
|
|
48
48
|
|
|
49
49
|
createPulseAgent({
|
|
50
|
-
slug: '
|
|
50
|
+
slug: 'acme-support',
|
|
51
51
|
apiBaseUrl: 'https://pulse.service.primexperts.co.za',
|
|
52
52
|
requireProfile: true
|
|
53
53
|
});
|
package/docs/TROUBLESHOOTING.md
CHANGED
|
@@ -71,11 +71,11 @@ regexp_replace(
|
|
|
71
71
|
```
|
|
72
72
|
|
|
73
73
|
Then:
|
|
74
|
-
- `
|
|
74
|
+
- `Acme Support` -> `acme-support`
|
|
75
75
|
|
|
76
76
|
Resolve URL:
|
|
77
77
|
|
|
78
|
-
`https://pulse.service.primexperts.co.za/api/pulse/public/webchat/resolve?slug=
|
|
78
|
+
`https://pulse.service.primexperts.co.za/api/pulse/public/webchat/resolve?slug=acme-support`
|
|
79
79
|
|
|
80
80
|
## 8) Quick verification checklist
|
|
81
81
|
|