@smartico/public-api 0.0.417 → 0.0.419
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/ActivityLog/ActivityLogActivities.d.ts +2 -23
- package/dist/ActivityLog/ActivityLogMeta.d.ts +1 -19
- package/dist/ActivityLog/GetActivityLogResponse.d.ts +2 -4
- package/dist/ActivityLog/PointChangeSourceType.d.ts +2 -1
- package/dist/ActivityLog/index.d.ts +0 -1
- package/dist/Base/ClassId.d.ts +1 -0
- package/dist/WSAPI/WSAPIMiniGames.d.ts +4 -4
- package/dist/WSAPI/WSAPITypes.d.ts +0 -2
- package/dist/index.js +59 -392
- package/dist/index.js.map +1 -1
- package/dist/index.modern.mjs +60 -380
- package/dist/index.modern.mjs.map +1 -1
- package/docs/api/README.md +5 -0
- package/docs/api/classes/WSAPIJackpots.md +3 -1
- package/docs/api/classes/WSAPIMiniGames.md +7 -2
- package/docs/api/classes/WSAPIUser.md +49 -0
- package/docs/api/enumerations/ActivityLogActivities.md +123 -0
- package/docs/api/enumerations/PointChangeSourceType.md +6 -0
- package/docs/api/interfaces/ActivityLogMeta.md +37 -0
- package/docs/api/interfaces/SAWPrizeDropAknowledgeCancelRequest.md +47 -0
- package/docs/api/interfaces/SAWPrizeDropAknowledgeCancelResponse.md +41 -0
- package/docs/api/interfaces/SAWTemplateUI.md +1 -1
- package/docs/api/interfaces/TActivityLogEntry.md +100 -0
- package/docs/capabilities/getActivityLogV2.md +62 -0
- package/docs/capabilities/getJackpotWinners.md +3 -1
- package/docs/capabilities/miniGameWinAcknowledgeRequest.md +1 -1
- package/docs/native/PROTOCOL.md +33 -1
- package/package.json +1 -1
- package/src/ActivityLog/ActivityLogActivities.ts +1 -44
- package/src/ActivityLog/ActivityLogMeta.ts +1 -20
- package/src/ActivityLog/GetActivityLogResponse.ts +59 -25
- package/src/ActivityLog/PointChangeSourceType.ts +1 -0
- package/src/ActivityLog/index.ts +0 -1
- package/src/Base/ClassId.ts +2 -0
- package/src/WSAPI/WSAPIMiniGames.ts +4 -4
- package/src/WSAPI/WSAPITypes.ts +0 -2
- package/tsconfig.json +4 -1
- package/src/ActivityLog/ActivityLogMapper.ts +0 -358
package/docs/api/README.md
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
## Enumerations
|
|
10
10
|
|
|
11
|
+
- [ActivityLogActivities](enumerations/ActivityLogActivities.md)
|
|
11
12
|
- [PointChangeSourceType](enumerations/PointChangeSourceType.md)
|
|
12
13
|
- [UserBalanceType](enumerations/UserBalanceType.md)
|
|
13
14
|
- [AvatarCustomizeErrorCode](enumerations/AvatarCustomizeErrorCode.md)
|
|
@@ -85,6 +86,7 @@
|
|
|
85
86
|
|
|
86
87
|
- [PointsLog](interfaces/PointsLog.md)
|
|
87
88
|
- [GemsDiamondsLog](interfaces/GemsDiamondsLog.md)
|
|
89
|
+
- [ActivityLogMeta](interfaces/ActivityLogMeta.md)
|
|
88
90
|
- [AvatarCustomizeResponse](interfaces/AvatarCustomizeResponse.md)
|
|
89
91
|
- [AvatarCustomized](interfaces/AvatarCustomized.md)
|
|
90
92
|
- [AvatarDefinition](interfaces/AvatarDefinition.md)
|
|
@@ -147,6 +149,8 @@
|
|
|
147
149
|
- [SAWGetTemplatesRequest](interfaces/SAWGetTemplatesRequest.md)
|
|
148
150
|
- [SAWGetTemplatesResponse](interfaces/SAWGetTemplatesResponse.md)
|
|
149
151
|
- [SAWPrize](interfaces/SAWPrize.md)
|
|
152
|
+
- [SAWPrizeDropAknowledgeCancelRequest](interfaces/SAWPrizeDropAknowledgeCancelRequest.md)
|
|
153
|
+
- [SAWPrizeDropAknowledgeCancelResponse](interfaces/SAWPrizeDropAknowledgeCancelResponse.md)
|
|
150
154
|
- [SAWPrizeDropAknowledgeRequest](interfaces/SAWPrizeDropAknowledgeRequest.md)
|
|
151
155
|
- [SAWPrizeDropAknowledgeResponse](interfaces/SAWPrizeDropAknowledgeResponse.md)
|
|
152
156
|
- [SAWPrizeDropWinPush](interfaces/SAWPrizeDropWinPush.md)
|
|
@@ -251,6 +255,7 @@
|
|
|
251
255
|
- [TRaffleDrawRun](interfaces/TRaffleDrawRun.md)
|
|
252
256
|
- [TransformedRaffleClaimPrizeResponse](interfaces/TransformedRaffleClaimPrizeResponse.md)
|
|
253
257
|
- [TActivityLog](interfaces/TActivityLog.md)
|
|
258
|
+
- [TActivityLogEntry](interfaces/TActivityLogEntry.md)
|
|
254
259
|
- [TRaffleOptinResponse](interfaces/TRaffleOptinResponse.md)
|
|
255
260
|
- [TAvatarDefinition](interfaces/TAvatarDefinition.md)
|
|
256
261
|
- [TAvatarCustomized](interfaces/TAvatarCustomized.md)
|
|
@@ -328,7 +328,9 @@ in the jackpot's NATIVE currency, NOT the user's wallet currency. If a
|
|
|
328
328
|
user-currency display is needed, the consumer must convert client-side.
|
|
329
329
|
|
|
330
330
|
**Refresh**
|
|
331
|
-
- The SDK caches per `jp_template_id`
|
|
331
|
+
- The SDK caches each page separately (per `jp_template_id` +
|
|
332
|
+
`limit` + `offset`) for 30 seconds, so paging back and forth is
|
|
333
|
+
served from cache and each page keeps its own fresh copy.
|
|
332
334
|
- Caches clear on jackpot-win push events and on opt-in / opt-out.
|
|
333
335
|
|
|
334
336
|
**Error handling**
|
|
@@ -485,7 +485,7 @@ if (r.err_code === 0) {
|
|
|
485
485
|
|
|
486
486
|
### miniGameWinAcknowledgeRequest()
|
|
487
487
|
|
|
488
|
-
> **miniGameWinAcknowledgeRequest**(`request_id`, `
|
|
488
|
+
> **miniGameWinAcknowledgeRequest**(`request_id`, `lose?`): `Promise`\<[`SAWDoAknowledgeResponse`](../interfaces/SAWDoAknowledgeResponse.md)\>
|
|
489
489
|
|
|
490
490
|
Manually acknowledges a mini-game spin — marks the win delivered
|
|
491
491
|
server-side, or (with `lose: true`) finalises it as lost and
|
|
@@ -507,7 +507,12 @@ Correlation id of the spin to finalise: the
|
|
|
507
507
|
`client_request_id` of a
|
|
508
508
|
[getMiniGamesHistory](#getminigameshistory) row.
|
|
509
509
|
|
|
510
|
-
#####
|
|
510
|
+
##### lose?
|
|
511
|
+
|
|
512
|
+
Optional. When `true`, finalises the spin as
|
|
513
|
+
lost — the prize is not credited and returns
|
|
514
|
+
to the prize pool (see "Finalising as lost").
|
|
515
|
+
Omit (or pass `false`) to deliver the win.
|
|
511
516
|
|
|
512
517
|
###### lose?
|
|
513
518
|
|
|
@@ -646,3 +646,52 @@ for (const row of log) {
|
|
|
646
646
|
console.log('[smartico] activity row — render with', row.type === 0 ? 'points' : row.type === 1 ? 'gems' : 'diamonds', 'icon, color by sign:', sign + row.amount, 'balance after:', row.balance, 'source:', row.source_type_id);
|
|
647
647
|
}
|
|
648
648
|
```
|
|
649
|
+
|
|
650
|
+
***
|
|
651
|
+
|
|
652
|
+
### getActivityLogV2()
|
|
653
|
+
|
|
654
|
+
> **getActivityLogV2**(`__namedParameters`): `Promise`\<[`TActivityLogEntry`](../interfaces/TActivityLogEntry.md)[]\>
|
|
655
|
+
|
|
656
|
+
Returns the full activity log (v2) — wallet changes **and** non-wallet
|
|
657
|
+
activities (missions, badges, levels, tournaments, avatars, …).
|
|
658
|
+
|
|
659
|
+
**Backwards compatibility**: existing integrations should keep using
|
|
660
|
+
[getActivityLog](#getactivitylog), which returns wallet-only [TActivityLog](../interfaces/TActivityLog.md)
|
|
661
|
+
rows with the original field contract unchanged.
|
|
662
|
+
|
|
663
|
+
**Pagination** — same `from` / `to` offset model as [getActivityLog](#getactivitylog)
|
|
664
|
+
(server caps a single response at 50 entries).
|
|
665
|
+
|
|
666
|
+
**Filtering** — pass `types` with [ActivityLogActivities](../enumerations/ActivityLogActivities.md) values to
|
|
667
|
+
request a server-side subset (e.g. missions only). Omit for all activity types.
|
|
668
|
+
|
|
669
|
+
#### Parameters
|
|
670
|
+
|
|
671
|
+
##### \_\_namedParameters
|
|
672
|
+
|
|
673
|
+
###### startTimeSeconds
|
|
674
|
+
|
|
675
|
+
`number`
|
|
676
|
+
|
|
677
|
+
###### endTimeSeconds
|
|
678
|
+
|
|
679
|
+
`number`
|
|
680
|
+
|
|
681
|
+
###### from
|
|
682
|
+
|
|
683
|
+
`number`
|
|
684
|
+
|
|
685
|
+
###### to
|
|
686
|
+
|
|
687
|
+
`number`
|
|
688
|
+
|
|
689
|
+
###### types?
|
|
690
|
+
|
|
691
|
+
`number`[]
|
|
692
|
+
|
|
693
|
+
#### Returns
|
|
694
|
+
|
|
695
|
+
`Promise`\<[`TActivityLogEntry`](../interfaces/TActivityLogEntry.md)[]\>
|
|
696
|
+
|
|
697
|
+
Array of [TActivityLogEntry](../interfaces/TActivityLogEntry.md) ordered newest-first.
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# Enumeration: ActivityLogActivities
|
|
2
|
+
|
|
3
|
+
Activity-log entry type as returned on the v2 wire (`type_id`).
|
|
4
|
+
|
|
5
|
+
## Enumeration Members
|
|
6
|
+
|
|
7
|
+
### Gems
|
|
8
|
+
|
|
9
|
+
> **Gems**: `1`
|
|
10
|
+
|
|
11
|
+
***
|
|
12
|
+
|
|
13
|
+
### Diamonds
|
|
14
|
+
|
|
15
|
+
> **Diamonds**: `2`
|
|
16
|
+
|
|
17
|
+
***
|
|
18
|
+
|
|
19
|
+
### Points
|
|
20
|
+
|
|
21
|
+
> **Points**: `3`
|
|
22
|
+
|
|
23
|
+
***
|
|
24
|
+
|
|
25
|
+
### LevelChanged
|
|
26
|
+
|
|
27
|
+
> **LevelChanged**: `4`
|
|
28
|
+
|
|
29
|
+
***
|
|
30
|
+
|
|
31
|
+
### Bonus
|
|
32
|
+
|
|
33
|
+
> **Bonus**: `5`
|
|
34
|
+
|
|
35
|
+
***
|
|
36
|
+
|
|
37
|
+
### PrizeDrop
|
|
38
|
+
|
|
39
|
+
> **PrizeDrop**: `6`
|
|
40
|
+
|
|
41
|
+
***
|
|
42
|
+
|
|
43
|
+
### Minigame
|
|
44
|
+
|
|
45
|
+
> **Minigame**: `7`
|
|
46
|
+
|
|
47
|
+
***
|
|
48
|
+
|
|
49
|
+
### RaffleTicket
|
|
50
|
+
|
|
51
|
+
> **RaffleTicket**: `8`
|
|
52
|
+
|
|
53
|
+
***
|
|
54
|
+
|
|
55
|
+
### Avatar
|
|
56
|
+
|
|
57
|
+
> **Avatar**: `9`
|
|
58
|
+
|
|
59
|
+
***
|
|
60
|
+
|
|
61
|
+
### Task
|
|
62
|
+
|
|
63
|
+
> **Task**: `10`
|
|
64
|
+
|
|
65
|
+
***
|
|
66
|
+
|
|
67
|
+
### Mission
|
|
68
|
+
|
|
69
|
+
> **Mission**: `11`
|
|
70
|
+
|
|
71
|
+
***
|
|
72
|
+
|
|
73
|
+
### Badge
|
|
74
|
+
|
|
75
|
+
> **Badge**: `12`
|
|
76
|
+
|
|
77
|
+
***
|
|
78
|
+
|
|
79
|
+
### TangiblePrize
|
|
80
|
+
|
|
81
|
+
> **TangiblePrize**: `13`
|
|
82
|
+
|
|
83
|
+
***
|
|
84
|
+
|
|
85
|
+
### Jackpot
|
|
86
|
+
|
|
87
|
+
> **Jackpot**: `14`
|
|
88
|
+
|
|
89
|
+
***
|
|
90
|
+
|
|
91
|
+
### Spin
|
|
92
|
+
|
|
93
|
+
> **Spin**: `15`
|
|
94
|
+
|
|
95
|
+
***
|
|
96
|
+
|
|
97
|
+
### NoPrize
|
|
98
|
+
|
|
99
|
+
> **NoPrize**: `16`
|
|
100
|
+
|
|
101
|
+
***
|
|
102
|
+
|
|
103
|
+
### Leaderboard
|
|
104
|
+
|
|
105
|
+
> **Leaderboard**: `17`
|
|
106
|
+
|
|
107
|
+
***
|
|
108
|
+
|
|
109
|
+
### Tournament
|
|
110
|
+
|
|
111
|
+
> **Tournament**: `18`
|
|
112
|
+
|
|
113
|
+
***
|
|
114
|
+
|
|
115
|
+
### ClanTournament
|
|
116
|
+
|
|
117
|
+
> **ClanTournament**: `19`
|
|
118
|
+
|
|
119
|
+
***
|
|
120
|
+
|
|
121
|
+
### Clan
|
|
122
|
+
|
|
123
|
+
> **Clan**: `20`
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Interface: ActivityLogMeta
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
### name?
|
|
6
|
+
|
|
7
|
+
> `optional` **name?**: `string`
|
|
8
|
+
|
|
9
|
+
***
|
|
10
|
+
|
|
11
|
+
### image\_url?
|
|
12
|
+
|
|
13
|
+
> `optional` **image\_url?**: `string`
|
|
14
|
+
|
|
15
|
+
***
|
|
16
|
+
|
|
17
|
+
### position?
|
|
18
|
+
|
|
19
|
+
> `optional` **position?**: `number`
|
|
20
|
+
|
|
21
|
+
***
|
|
22
|
+
|
|
23
|
+
### user\_points\_balance\_before?
|
|
24
|
+
|
|
25
|
+
> `optional` **user\_points\_balance\_before?**: `number`
|
|
26
|
+
|
|
27
|
+
***
|
|
28
|
+
|
|
29
|
+
### points\_requested?
|
|
30
|
+
|
|
31
|
+
> `optional` **points\_requested?**: `number`
|
|
32
|
+
|
|
33
|
+
***
|
|
34
|
+
|
|
35
|
+
### user\_points\_ever?
|
|
36
|
+
|
|
37
|
+
> `optional` **user\_points\_ever?**: `number`
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Interface: SAWPrizeDropAknowledgeCancelRequest
|
|
2
|
+
|
|
3
|
+
## Extends
|
|
4
|
+
|
|
5
|
+
- `ProtocolMessage`
|
|
6
|
+
|
|
7
|
+
## Properties
|
|
8
|
+
|
|
9
|
+
### cid
|
|
10
|
+
|
|
11
|
+
> **cid**: `number`
|
|
12
|
+
|
|
13
|
+
#### Inherited from
|
|
14
|
+
|
|
15
|
+
`ProtocolMessage.cid`
|
|
16
|
+
|
|
17
|
+
***
|
|
18
|
+
|
|
19
|
+
### ts?
|
|
20
|
+
|
|
21
|
+
> `optional` **ts?**: `number`
|
|
22
|
+
|
|
23
|
+
#### Inherited from
|
|
24
|
+
|
|
25
|
+
`ProtocolMessage.ts`
|
|
26
|
+
|
|
27
|
+
***
|
|
28
|
+
|
|
29
|
+
### uuid?
|
|
30
|
+
|
|
31
|
+
> `optional` **uuid?**: `string`
|
|
32
|
+
|
|
33
|
+
#### Inherited from
|
|
34
|
+
|
|
35
|
+
`ProtocolMessage.uuid`
|
|
36
|
+
|
|
37
|
+
***
|
|
38
|
+
|
|
39
|
+
### request\_id
|
|
40
|
+
|
|
41
|
+
> **request\_id**: `string`
|
|
42
|
+
|
|
43
|
+
***
|
|
44
|
+
|
|
45
|
+
### pending\_message\_id
|
|
46
|
+
|
|
47
|
+
> **pending\_message\_id**: `number`
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Interface: SAWPrizeDropAknowledgeCancelResponse
|
|
2
|
+
|
|
3
|
+
## Extends
|
|
4
|
+
|
|
5
|
+
- `ProtocolMessage`
|
|
6
|
+
|
|
7
|
+
## Properties
|
|
8
|
+
|
|
9
|
+
### cid
|
|
10
|
+
|
|
11
|
+
> **cid**: `number`
|
|
12
|
+
|
|
13
|
+
#### Inherited from
|
|
14
|
+
|
|
15
|
+
`ProtocolMessage.cid`
|
|
16
|
+
|
|
17
|
+
***
|
|
18
|
+
|
|
19
|
+
### ts?
|
|
20
|
+
|
|
21
|
+
> `optional` **ts?**: `number`
|
|
22
|
+
|
|
23
|
+
#### Inherited from
|
|
24
|
+
|
|
25
|
+
`ProtocolMessage.ts`
|
|
26
|
+
|
|
27
|
+
***
|
|
28
|
+
|
|
29
|
+
### uuid?
|
|
30
|
+
|
|
31
|
+
> `optional` **uuid?**: `string`
|
|
32
|
+
|
|
33
|
+
#### Inherited from
|
|
34
|
+
|
|
35
|
+
`ProtocolMessage.uuid`
|
|
36
|
+
|
|
37
|
+
***
|
|
38
|
+
|
|
39
|
+
### request\_id
|
|
40
|
+
|
|
41
|
+
> **request\_id**: `string`
|
|
@@ -572,7 +572,7 @@ controlling obstacle frequency and game speed.
|
|
|
572
572
|
|
|
573
573
|
URL of the operator-hosted custom mini-game, loaded inside an iframe by
|
|
574
574
|
the widget for `SAWGameType.CustomMinigame`. The operator is trusted
|
|
575
|
-
(the URL resolves to the operator's own published
|
|
575
|
+
(the URL resolves to the operator's own published Vibe Studio game), but
|
|
576
576
|
the iframe is still rendered with a restrictive sandbox as defence in
|
|
577
577
|
depth: `sandbox="allow-scripts allow-forms allow-same-origin allow-popups
|
|
578
578
|
allow-pointer-lock"`. Top-level navigation is intentionally not allowed,
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# Interface: TActivityLogEntry
|
|
2
|
+
|
|
3
|
+
Full activity-log row returned by [WSAPIUser.getActivityLogV2](../classes/WSAPIUser.md#getactivitylogv2).
|
|
4
|
+
Includes wallet changes and non-wallet activities (missions, badges, levels, …).
|
|
5
|
+
|
|
6
|
+
## Properties
|
|
7
|
+
|
|
8
|
+
### create\_date
|
|
9
|
+
|
|
10
|
+
> **create\_date**: `number`
|
|
11
|
+
|
|
12
|
+
***
|
|
13
|
+
|
|
14
|
+
### user\_ext\_id
|
|
15
|
+
|
|
16
|
+
> **user\_ext\_id**: `string`
|
|
17
|
+
|
|
18
|
+
***
|
|
19
|
+
|
|
20
|
+
### crm\_brand\_id
|
|
21
|
+
|
|
22
|
+
> **crm\_brand\_id**: `number`
|
|
23
|
+
|
|
24
|
+
***
|
|
25
|
+
|
|
26
|
+
### type
|
|
27
|
+
|
|
28
|
+
> **type**: [`UserBalanceType`](../enumerations/UserBalanceType.md)
|
|
29
|
+
|
|
30
|
+
***
|
|
31
|
+
|
|
32
|
+
### amount
|
|
33
|
+
|
|
34
|
+
> **amount**: `number`
|
|
35
|
+
|
|
36
|
+
***
|
|
37
|
+
|
|
38
|
+
### balance
|
|
39
|
+
|
|
40
|
+
> **balance**: `number`
|
|
41
|
+
|
|
42
|
+
***
|
|
43
|
+
|
|
44
|
+
### total\_ever?
|
|
45
|
+
|
|
46
|
+
> `optional` **total\_ever?**: `number`
|
|
47
|
+
|
|
48
|
+
***
|
|
49
|
+
|
|
50
|
+
### source\_type\_id
|
|
51
|
+
|
|
52
|
+
> **source\_type\_id**: [`PointChangeSourceType`](../enumerations/PointChangeSourceType.md)
|
|
53
|
+
|
|
54
|
+
***
|
|
55
|
+
|
|
56
|
+
### activity\_type\_id?
|
|
57
|
+
|
|
58
|
+
> `optional` **activity\_type\_id?**: [`ActivityLogActivities`](../enumerations/ActivityLogActivities.md)
|
|
59
|
+
|
|
60
|
+
***
|
|
61
|
+
|
|
62
|
+
### context\_value\_1?
|
|
63
|
+
|
|
64
|
+
> `optional` **context\_value\_1?**: `number`
|
|
65
|
+
|
|
66
|
+
***
|
|
67
|
+
|
|
68
|
+
### meta?
|
|
69
|
+
|
|
70
|
+
> `optional` **meta?**: [`ActivityLogMeta`](ActivityLogMeta.md)
|
|
71
|
+
|
|
72
|
+
***
|
|
73
|
+
|
|
74
|
+
### source\_entity\_name?
|
|
75
|
+
|
|
76
|
+
> `optional` **source\_entity\_name?**: `string`
|
|
77
|
+
|
|
78
|
+
***
|
|
79
|
+
|
|
80
|
+
### source\_entity\_id?
|
|
81
|
+
|
|
82
|
+
> `optional` **source\_entity\_id?**: `number`
|
|
83
|
+
|
|
84
|
+
***
|
|
85
|
+
|
|
86
|
+
### source\_reference\_id?
|
|
87
|
+
|
|
88
|
+
> `optional` **source\_reference\_id?**: `number`
|
|
89
|
+
|
|
90
|
+
***
|
|
91
|
+
|
|
92
|
+
### source\_root\_id?
|
|
93
|
+
|
|
94
|
+
> `optional` **source\_root\_id?**: `number`
|
|
95
|
+
|
|
96
|
+
***
|
|
97
|
+
|
|
98
|
+
### is\_wallet\_entry
|
|
99
|
+
|
|
100
|
+
> **is\_wallet\_entry**: `boolean`
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# getActivityLogV2 — API (TActivityLogEntry)
|
|
2
|
+
|
|
3
|
+
> Returns the full activity log (v2) — wallet changes **and** non-wallet activities (missions, badges, levels, tournaments, avatars, …).
|
|
4
|
+
> Import: `import { TActivityLogEntry } from '@smartico/public-api'`
|
|
5
|
+
> Search terms: getActivityLogV2, user, TActivityLogEntry, UserBalanceType, PointChangeSourceType, ActivityLogActivities, ActivityLogMeta
|
|
6
|
+
|
|
7
|
+
## Signature
|
|
8
|
+
```ts
|
|
9
|
+
_smartico.api.getActivityLogV2({
|
|
10
|
+
startTimeSeconds,
|
|
11
|
+
endTimeSeconds,
|
|
12
|
+
from,
|
|
13
|
+
to,
|
|
14
|
+
types,
|
|
15
|
+
}: {
|
|
16
|
+
startTimeSeconds: number;
|
|
17
|
+
endTimeSeconds: number;
|
|
18
|
+
from: number;
|
|
19
|
+
to: number;
|
|
20
|
+
types?: number[];
|
|
21
|
+
}): Promise<TActivityLogEntry[]>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Parameters
|
|
25
|
+
_None._
|
|
26
|
+
|
|
27
|
+
## Returns — `Promise<TActivityLogEntry[]>`
|
|
28
|
+
Array of `TActivityLogEntry`. Each item:
|
|
29
|
+
- `create_date` (number)
|
|
30
|
+
- `user_ext_id` (string)
|
|
31
|
+
- `crm_brand_id` (number)
|
|
32
|
+
- `type` (UserBalanceType)
|
|
33
|
+
- `amount` (number)
|
|
34
|
+
- `balance` (number)
|
|
35
|
+
- `total_ever` (number)
|
|
36
|
+
- `source_type_id` (PointChangeSourceType)
|
|
37
|
+
- `activity_type_id` (ActivityLogActivities)
|
|
38
|
+
- `context_value_1` (number)
|
|
39
|
+
- `meta` (ActivityLogMeta)
|
|
40
|
+
- `name` (string)
|
|
41
|
+
- `image_url` (string)
|
|
42
|
+
- `position` (number)
|
|
43
|
+
- `user_points_balance_before` (number)
|
|
44
|
+
- `points_requested` (number)
|
|
45
|
+
- `user_points_ever` (number)
|
|
46
|
+
- `source_entity_name` (string)
|
|
47
|
+
- `source_entity_id` (number)
|
|
48
|
+
- `source_reference_id` (number)
|
|
49
|
+
- `source_root_id` (number)
|
|
50
|
+
- `is_wallet_entry` (boolean)
|
|
51
|
+
|
|
52
|
+
## Behavioral contract
|
|
53
|
+
See the [UI guide](../ui/user/UIGuide_getActivityLogV2.md) if present.
|
|
54
|
+
|
|
55
|
+
## Errors
|
|
56
|
+
See this method's TSDoc / the mutation pages for `err_code` handling.
|
|
57
|
+
|
|
58
|
+
## Related
|
|
59
|
+
- `getActivityLog`
|
|
60
|
+
- `TActivityLog`
|
|
61
|
+
- `ActivityLogActivities`
|
|
62
|
+
- `TActivityLogEntry`
|
|
@@ -55,7 +55,9 @@ in the jackpot's NATIVE currency, NOT the user's wallet currency. If a
|
|
|
55
55
|
user-currency display is needed, the consumer must convert client-side.
|
|
56
56
|
|
|
57
57
|
**Refresh**
|
|
58
|
-
- The SDK caches per `jp_template_id`
|
|
58
|
+
- The SDK caches each page separately (per `jp_template_id` +
|
|
59
|
+
`limit` + `offset`) for 30 seconds, so paging back and forth is
|
|
60
|
+
served from cache and each page keeps its own fresh copy.
|
|
59
61
|
- Caches clear on jackpot-win push events and on opt-in / opt-out.
|
|
60
62
|
|
|
61
63
|
**Error handling**
|
|
@@ -11,7 +11,7 @@ _smartico.api.miniGameWinAcknowledgeRequest(request_id: string, { lose }: { lose
|
|
|
11
11
|
|
|
12
12
|
## Parameters
|
|
13
13
|
- `request_id` — Correlation id of the spin to finalise: the `request_id` from a `playMiniGame` result (played with `acknowledge: false`), or the `client_request_id` of a `getMiniGamesHistory` row.
|
|
14
|
-
- `
|
|
14
|
+
- `lose` — Optional. When `true`, finalises the spin as lost — the prize is not credited and returns to the prize pool (see "Finalising as lost"). Omit (or pass `false`) to deliver the win.
|
|
15
15
|
|
|
16
16
|
## Returns
|
|
17
17
|
_No return value._
|
package/docs/native/PROTOCOL.md
CHANGED
|
@@ -25,6 +25,7 @@ This document describes the low-level protocol for communicating with Smartico b
|
|
|
25
25
|
- [SAW_SHOW_SPIN_PUSH](#saw_show_spin_push)
|
|
26
26
|
- [JP_WIN_PUSH](#jp_win_push)
|
|
27
27
|
- [SAW_PRIZE_DROP_WIN_PUSH](#saw_prize_drop_win_push)
|
|
28
|
+
- [FORM_SHOW_PUSH](#form_show_push)
|
|
28
29
|
- [CLIENT_EXECUTE_DEEPLINK_EVENT](#client_execute_deeplink_event)
|
|
29
30
|
- [CLIENT_EXECUTE_JS_EVENT](#client_execute_js_event)
|
|
30
31
|
|
|
@@ -409,6 +410,7 @@ Unlike request/response methods, server initiated messages can arrive at any tim
|
|
|
409
410
|
| `707` | SAW_SHOW_SPIN_PUSH | Trigger to show mini-game |
|
|
410
411
|
| `808` | JP_WIN_PUSH | Jackpot win notification |
|
|
411
412
|
| `708` | SAW_PRIZE_DROP_WIN_PUSH | Prize drop win notification |
|
|
413
|
+
| `1050` | FORM_SHOW_PUSH | Trigger to show a data-collection form |
|
|
412
414
|
| `105` | CLIENT_EXECUTE_DEEPLINK_EVENT | Execute deep link on client |
|
|
413
415
|
| `107` | CLIENT_EXECUTE_JS_EVENT | Execute JavaScript on client |
|
|
414
416
|
|
|
@@ -626,6 +628,36 @@ Sent when a prize drop is won by the user.
|
|
|
626
628
|
|
|
627
629
|
---
|
|
628
630
|
|
|
631
|
+
## FORM_SHOW_PUSH
|
|
632
|
+
|
|
633
|
+
Sent as a trigger to display a data-collection form to the user, fired by a campaign's "Show Form" activity. Fire-and-forget — there is no response ClassId; the client reports the funnel back through the regular EVENT channel (`form_viewed` / `form_submitted`).
|
|
634
|
+
|
|
635
|
+
**ClassId:** `1050`
|
|
636
|
+
|
|
637
|
+
**Fields:**
|
|
638
|
+
|
|
639
|
+
| Field | Type | Description |
|
|
640
|
+
|-------|------|-------------|
|
|
641
|
+
| `cid` | `number` | Message type identifier |
|
|
642
|
+
| `form_id` | `number` | ID of the form to display |
|
|
643
|
+
| `engagement_uid` | `string` | Engagement instance uid — pass it back on the form content request and submit so the server ties the display to the campaign engagement |
|
|
644
|
+
| `uuid` | `string` | Message correlation id (not the engagement uid) |
|
|
645
|
+
|
|
646
|
+
**Example:**
|
|
647
|
+
|
|
648
|
+
```json
|
|
649
|
+
{
|
|
650
|
+
"cid": 1050,
|
|
651
|
+
"form_id": 11,
|
|
652
|
+
"engagement_uid": "1322b558-9bd8-4514-9adb-e6c9f8210c1f",
|
|
653
|
+
"uuid": "c6ed2c18-0e76-4863-a090-c17ac5959785"
|
|
654
|
+
}
|
|
655
|
+
```
|
|
656
|
+
|
|
657
|
+
**Recommended action:** Fetch and render the form for `form_id`, forwarding `engagement_uid` on the content fetch and on submit.
|
|
658
|
+
|
|
659
|
+
---
|
|
660
|
+
|
|
629
661
|
## CLIENT_EXECUTE_DEEPLINK_EVENT
|
|
630
662
|
|
|
631
663
|
Server-initiated event to execute a deep link on the client.
|
|
@@ -2956,7 +2988,7 @@ Register a push notifications token for the current user. Required for receiving
|
|
|
2956
2988
|
|
|
2957
2989
|
| Field | Type | Description |
|
|
2958
2990
|
|-------|------|-------------|
|
|
2959
|
-
| `token` | `string` | Push notification token (FCM token for Android, APNs token for iOS).
|
|
2991
|
+
| `token` | `string` | Push notification token (FCM token for Android, APNs token for iOS). |
|
|
2960
2992
|
| `platform` | `number` | Platform: `6`=NATIVE_IOS, `7`=NATIVE_ANDROID |
|
|
2961
2993
|
| `pushNotificationUserStatus` | `number` | Status: `0`=ALLOWED, `1`=ASK, `2`=BLOCKED, `3`=SUSPENDED |
|
|
2962
2994
|
| `app_package_id` | `string` | Application package ID (e.g. "com.example.app") |
|
package/package.json
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { UserBalanceType } from './UserBalanceType';
|
|
2
|
-
|
|
3
1
|
/** Activity-log entry type as returned on the v2 wire (`type_id`). */
|
|
4
2
|
export enum ActivityLogActivities {
|
|
5
3
|
Gems = 1,
|
|
@@ -21,46 +19,5 @@ export enum ActivityLogActivities {
|
|
|
21
19
|
Leaderboard = 17,
|
|
22
20
|
Tournament = 18,
|
|
23
21
|
ClanTournament = 19,
|
|
22
|
+
Clan = 20,
|
|
24
23
|
}
|
|
25
|
-
|
|
26
|
-
export enum WalletChangeType {
|
|
27
|
-
Add = 1,
|
|
28
|
-
Deduct = 2,
|
|
29
|
-
Set = 3,
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export enum LevelChangeType {
|
|
33
|
-
Increase = 1,
|
|
34
|
-
Decrease = 2,
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/** Wire ctx_1 for Mission / Badge / Task — see SMR-44986. */
|
|
38
|
-
export enum AchievementChangeType {
|
|
39
|
-
Complete = 1,
|
|
40
|
-
Unlock = 2,
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
/** Wire ctx_1 for Jackpot rows — SMR-44986. */
|
|
44
|
-
export enum JackpotContextValue {
|
|
45
|
-
Registration = 1,
|
|
46
|
-
Win = 3,
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
const WALLET_TYPE_IDS = new Set<number>([
|
|
50
|
-
ActivityLogActivities.Gems,
|
|
51
|
-
ActivityLogActivities.Diamonds,
|
|
52
|
-
ActivityLogActivities.Points,
|
|
53
|
-
]);
|
|
54
|
-
|
|
55
|
-
export const isWalletActivityTypeId = (typeId: number): boolean => WALLET_TYPE_IDS.has(typeId);
|
|
56
|
-
|
|
57
|
-
export const activityTypeIdToBalanceType = (typeId: ActivityLogActivities): UserBalanceType => {
|
|
58
|
-
switch (typeId) {
|
|
59
|
-
case ActivityLogActivities.Gems:
|
|
60
|
-
return UserBalanceType.Gems;
|
|
61
|
-
case ActivityLogActivities.Diamonds:
|
|
62
|
-
return UserBalanceType.Diamonds;
|
|
63
|
-
default:
|
|
64
|
-
return UserBalanceType.Points;
|
|
65
|
-
}
|
|
66
|
-
};
|