@zaplier/sdk 1.2.4 → 1.2.6

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/dist/sdk.js CHANGED
@@ -6994,10 +6994,10 @@
6994
6994
  this.sessionId = sessionId;
6995
6995
  this.config = {
6996
6996
  enabled: true,
6997
- sampleRate: 0.1,
6997
+ sampleRate: 1.0, // 100% for development/testing
6998
6998
  maskSensitiveFields: true,
6999
6999
  maxEventBuffer: 1000,
7000
- batchInterval: 5000,
7000
+ batchInterval: 2000, // Send every 2 seconds for faster testing
7001
7001
  captureClicks: true,
7002
7002
  captureScrolls: true,
7003
7003
  captureInputs: true,
@@ -7253,10 +7253,13 @@
7253
7253
  * Send batch of events
7254
7254
  */
7255
7255
  sendBatch() {
7256
- if (this.events.length === 0)
7256
+ if (this.events.length === 0) {
7257
+ console.log('[Zaplier] No events to send in batch');
7257
7258
  return;
7259
+ }
7258
7260
  const batch = [...this.events];
7259
7261
  this.events = [];
7262
+ console.log(`[Zaplier] Sending batch with ${batch.length} events for session ${this.sessionId}`);
7260
7263
  const payload = {
7261
7264
  sessionId: this.sessionId,
7262
7265
  events: batch,
@@ -7282,23 +7285,55 @@
7282
7285
  try {
7283
7286
  // Try WebRTC first if anti-adblock manager is available
7284
7287
  if (this.antiAdblockManager) {
7285
- const result = await this.antiAdblockManager.send(payload, '/api/replay/record');
7288
+ console.log('[Zaplier] Trying WebRTC transport...');
7289
+ const result = await this.antiAdblockManager.send(payload, '/replays/record');
7286
7290
  if (result.success) {
7291
+ console.log('[Zaplier] Session replay sent via WebRTC');
7287
7292
  return; // Success via WebRTC
7288
7293
  }
7289
- }
7294
+ console.log('[Zaplier] WebRTC failed, falling back to fetch');
7295
+ }
7296
+ // Get API endpoint from global config
7297
+ const apiEndpoint = window.zaplier_config?.apiEndpoint || 'http://localhost:3001';
7298
+ const token = window.zaplier_config?.token || 'ws_demo_token';
7299
+ const url = `${apiEndpoint}/replays/record?token=${token}`;
7300
+ console.log(`[Zaplier] Sending replay batch to ${url}`);
7301
+ console.log(`[Zaplier] Payload:`, {
7302
+ sessionId: payload.sessionId,
7303
+ eventCount: payload.events.length,
7304
+ hasMetadata: !!payload.metadata
7305
+ });
7306
+ const requestBody = {
7307
+ sessionId: payload.sessionId,
7308
+ events: payload.events,
7309
+ metadata: {
7310
+ startUrl: window.location.href,
7311
+ duration: Date.now() - (performance.timeOrigin || Date.now()),
7312
+ funnelSteps: [],
7313
+ hasConversion: false,
7314
+ ...payload.metadata
7315
+ }
7316
+ };
7290
7317
  // Fallback to standard fetch
7291
- const response = await fetch('/api/replay/record', {
7318
+ const response = await fetch(url, {
7292
7319
  method: 'POST',
7293
7320
  headers: { 'Content-Type': 'application/json' },
7294
- body: JSON.stringify(payload)
7321
+ body: JSON.stringify(requestBody)
7295
7322
  });
7323
+ const responseText = await response.text();
7296
7324
  if (!response.ok) {
7297
- console.warn('[Zaplier] Session replay batch failed to send');
7325
+ console.error('[Zaplier] Session replay batch failed:', {
7326
+ status: response.status,
7327
+ statusText: response.statusText,
7328
+ response: responseText
7329
+ });
7330
+ }
7331
+ else {
7332
+ console.log('[Zaplier] Session replay batch sent successfully:', responseText);
7298
7333
  }
7299
7334
  }
7300
7335
  catch (error) {
7301
- console.warn('[Zaplier] Session replay error:', error);
7336
+ console.error('[Zaplier] Session replay error:', error);
7302
7337
  }
7303
7338
  }
7304
7339
  /**