Wiki source code of React native integration
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | {{box cssClass="floatinginfobox" title="**Page Contents**"}} | ||
2 | {{toc/}} | ||
3 | {{/box}} | ||
4 | |||
5 | = 1. Overview = | ||
6 | |||
7 | The plugin is located at npmjs repositories [[(npm repositories)>>https://www.npmjs.com/package/react-native-mobigate]] | ||
8 | This plugin is built for: | ||
9 | |||
10 | * Mobigate SDK version 1.0.4 | ||
11 | |||
12 | = 2. Adding SDK to the project = | ||
13 | |||
14 | **First, install library from the repository with** | ||
15 | |||
16 | {{code language=""}} | ||
17 | yarn add react-native-mobigate | ||
18 | {{/code}} | ||
19 | |||
20 | or | ||
21 | |||
22 | {{code language=""}} | ||
23 | npm install react-native-mobigate --save | ||
24 | {{/code}} | ||
25 | |||
26 | **Link newly added plugin** | ||
27 | |||
28 | * **React Native >= 0.60** | ||
29 | Starting from React Native 0.60, [[autolinking>>https://github.com/react-native-community/cli/blob/master/docs/autolinking.md]] makes the installation process simpler | ||
30 | |||
31 | * **React Native <= 0.59** | ||
32 | ** Mostly automatic installation: | ||
33 | {{code language=""}}react-native link react-native-mobigate{{/code}} | ||
34 | ** Manual installation:{{showhide id="1" showmessage="Manually link the library on Android" hidemessage="Manually link the library on Android"}}* Add to: android/settings.gradle | ||
35 | |||
36 | {{code language="groovy"}} | ||
37 | include ':react-native-mobigate' | ||
38 | project(':react-native-mobigate').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-mobigate/android') | ||
39 | {{/code}} | ||
40 | * Add to: android/app/build.gradle | ||
41 | |||
42 | {{code language="groovy"}} | ||
43 | dependencies { | ||
44 | implementation project(':react-native-mobigate') | ||
45 | } | ||
46 | {{/code}} | ||
47 | * Add the MobigatePackage class to your list of exported packages into: android/app/src/main/.../MainApplication.java | ||
48 | |||
49 | {{code language="java"}} | ||
50 | ... | ||
51 | import pl.spicymobile.reactmobigate.MobigatePackage; | ||
52 | |||
53 | |||
54 | @Override | ||
55 | protected List<ReactPackage> getPackages() { | ||
56 | return Arrays.<ReactPackage>asList( | ||
57 | new MainReactPackage(), | ||
58 | new MobigatePackage() | ||
59 | ); | ||
60 | } | ||
61 | {{/code}}{{/showhide}} | ||
62 | |||
63 | = 3. Api methods = | ||
64 | |||
65 | To use any method from the plugin add import: | ||
66 | |||
67 | {{code language="javascript"}} | ||
68 | import Mobigate from 'react-native-mobigate' | ||
69 | {{/code}} | ||
70 | |||
71 | == 3.1 SDK initialization == | ||
72 | |||
73 | You must initialize the library before running it. Use //init(apiKey, options, onSuccess, onError)// method for that: | ||
74 | |||
75 | **Mobigate.init(apiKey, options, onSuccess, onError)** | ||
76 | |||
77 | (% class="table-bordered table-hover" style="border-color:powderblue" %) | ||
78 | |=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description | ||
79 | |apiKey|String|Api key provided by your business partner | ||
80 | |options|Json Object|SDK configuration | ||
81 | |onSuccess|Function|returns callback object | ||
82 | |onError|Function|returns callback object | ||
83 | |||
84 | {{showhide id="2" showmessage="Options" hidemessage="Options"}} | ||
85 | (% class="table-bordered table-hover" style="border-color:powderblue" %) | ||
86 | |=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description | ||
87 | | appIdentifier|String| | Application identifier | ||
88 | |appInstallationSource |String| | App installation source e.g., google-play, organic. | ||
89 | |email |String | | Set's user email. | ||
90 | |customUserId |String | | You may use your custom userID for marking data. By default we are using device ID and emails for matching. Set it before starting the service using MobigateSDk.Builder method. | ||
91 | | enableUserFields|Json Array | | Enable custom fields in user data. By default MobienceSDK is gathering all identifiers, which it can read. You can choose one of these field: ["email", "imei", "imsi", "msisdn", "mac", "serial"] DODAĆ LINKA DO CONSTANTS. | ||
92 | | dataGatherPolicy| Json Object| | Enable custom data gater policy. By default MobienceSDK gather all data it can read and hide notification icon. Check below DataGatherPolicy options for more details. | ||
93 | | enableIdProfiles|Boolean |false | turns on / off the IDs profiles system. | ||
94 | {{/showhide}} | ||
95 | |||
96 | {{showhide id="3" showmessage="DataGatherPolicy options" hidemessage="DataGatherPolicy options"}} | ||
97 | (% class="table-bordered table-hover" style="border-color:powderblue" %) | ||
98 | |=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description | ||
99 | | monitorState|String| | Possible monitor states: DODAĆ LINKA DO CONSTANTS. More info about gathering data [[here>>https://wiki.spicymobile.pl/wiki/mobigatesdk/view/Main/mobigatesdkintegrationforandroiddevelopers/#H5.8Datagatherpolicy]] | ||
100 | |notificationText|String| | if state = Mobigate.DATA_GATHER_POLICY_DEFAULT you can pass custom foreground service notification text | ||
101 | {{/showhide}} | ||
102 | |||
103 | |||
104 | When the library is already initialized run it. Use //startSDK(onSuccess, onError)// method for that: | ||
105 | |||
106 | **Mobigate.startSDK(onSuccess, onError)** | ||
107 | |||
108 | (% class="table-bordered table-hover" style="border-color:powderblue" %) | ||
109 | |=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description | ||
110 | |onSuccess|Function|returns callback object | ||
111 | |onError|Function|returns callback object | ||
112 | |||
113 | {{showhide id="3" showmessage="Example" hidemessage="Example"}} | ||
114 | {{code language="javascript"}} | ||
115 | initLibrary = () => { | ||
116 | if (Platform.OS === 'android') { | ||
117 | Mobigate.init("V0K6jhiIfem6CRWHYZ59Nmj3oFBBKbJsnSsWfR2JNq7ktblOUXwbJoBQTpWnw2uSwW76gpiu2kun50jweTY69B", | ||
118 | { | ||
119 | /*custom options, check docs for more details | ||
120 | appIdentifier: 'customUserAppIdentifier', | ||
121 | appInstallationSource: "customAppInstallationSourcexyz", | ||
122 | email: 'testemail@gmail.com', | ||
123 | userAgent: 'customUserAgent', | ||
124 | customUserId: 'customUserId',*/ | ||
125 | }, (success) => { | ||
126 | /* You can configure custom collectors after init | ||
127 | Mobigate.disableAllDataCollector() | ||
128 | Mobigate.configureDataCollectors(true, [Mobigate.DATA_COLLECTOR_APPS_LIST, | ||
129 | Mobigate.DATA_COLLECTOR_BATTERY, | ||
130 | Mobigate.DATA_COLLECTOR_PHONE_INFO])*/ | ||
131 | |||
132 | Mobigate.startSDK((result) => { | ||
133 | this.setState({ | ||
134 | status: 'started', | ||
135 | }); | ||
136 | |||
137 | }, (errorResult) => { | ||
138 | this.setState({ | ||
139 | status: errorResult, | ||
140 | }); | ||
141 | }) | ||
142 | }, (initError) => { | ||
143 | this.setState({ | ||
144 | status: initError, | ||
145 | }); | ||
146 | }) | ||
147 | }else{ | ||
148 | this.setState({ | ||
149 | status: 'Mobigate SDK supports only Android' | ||
150 | }) | ||
151 | } | ||
152 | } | ||
153 | {{/code}} | ||
154 | {{/showhide}} | ||
155 | |||
156 | == 3.2 Tracking in app events == | ||
157 | |||
158 | In-App Events provide insight on what is happening in your app. It is recommended to take the time and define the events you would like to measure. | ||
159 | |||
160 | === 3.2.1 Overview === | ||
161 | |||
162 | An event consists of two fields that you (% style="display:none" %) (%%)can use to describe a user's interaction with your app content: | ||
163 | |||
164 | (% class="table-bordered table-hover" %) | ||
165 | |(% style="background-color:powderblue; width:200px" %)**Field name**|(% style="background-color:powderblue; width:200px" %)**Type**|(% style="background-color:powderblue; width:200px" %)**Required**|(% style="background-color:powderblue; width:200px" %)**Description** | ||
166 | |(% style="width:200px" %)Category|(% style="width:200px" %)String|(% style="width:200px" %)yes|(% style="width:200px" %)Event category | ||
167 | |(% style="width:200px" %)Parameter|(% style="width:200px" %)String|(% style="width:200px" %)no|(% style="width:200px" %)Event parameter. | ||
168 | There can be more than one | ||
169 | |||
170 | You can use any event category or parameter string of your choice. However, react-native-mobigate plugin contains recommended event categories and parameters via String constants (see [[Event categories>>doc:||anchor="H3.2.3Eventcategories"]] and [[Event parameters>>doc:||anchor="H3.2.4Eventparameters"]]). | ||
171 | |||
172 | === 3.2.2 Implementation === | ||
173 | |||
174 | Tracking in-app events is performed by two methods: | ||
175 | |||
176 | **Mobigate.trackEvent(options)** | ||
177 | |||
178 | {{showhide id="2" showmessage="Options" hidemessage="Options" effect="slide" effectduration="0.3"}} | ||
179 | (% class="table-bordered table-hover" style="border-color:powderblue" %) | ||
180 | |=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description | ||
181 | |name|String | | Event category name. | ||
182 | |parameters|Json array| | Array of parameters. Look below on example. | ||
183 | {{/showhide}} | ||
184 | |||
185 | {{showhide id="3" showmessage="Example" hidemessage="Example"}} | ||
186 | {{code language="javascript"}} | ||
187 | sendTrackEvent = () => { | ||
188 | if (Platform.OS === 'android') { | ||
189 | Mobigate.trackEvent({ | ||
190 | name: Mobigate.CATEGORY_PURCHASE, | ||
191 | parameters: { | ||
192 | [Mobigate.PARAMETER_CONTENT_ID]: 42313532, | ||
193 | [Mobigate.PARAMETER_PRICE]: 43.23, | ||
194 | [Mobigate.PARAMETER_QUANTITY]: 2, | ||
195 | 'userCustomParameterName':'simpleName' | ||
196 | }, | ||
197 | }) | ||
198 | } | ||
199 | } | ||
200 | {{/code}} | ||
201 | {{/showhide}} | ||
202 | |||
203 | |||
204 | **Mobigate.trackAppInstall(timestamp)** | ||
205 | |||
206 | (% class="table-bordered table-hover" style="border-color:powderblue" %) | ||
207 | |=(% style="background-color:powderblue" %)Parameter|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Description | ||
208 | |timestamp|double|Unix timestamp in milliseconds | ||
209 | |||
210 | {{showhide id="3" showmessage="Example" hidemessage="Example"}} | ||
211 | {{code language="javascript"}} | ||
212 | sendTrackEvent = () => { | ||
213 | if (Platform.OS === 'android') { | ||
214 | Mobigate.trackAppInstall(1578042916000) | ||
215 | } | ||
216 | } | ||
217 | {{/code}} | ||
218 | {{/showhide}} | ||
219 | |||
220 | === 3.2.3 Event categories === | ||
221 | |||
222 | The following section describes the recommended structure of each event category. In-app events categories are defined as part of plugin String constants. | ||
223 | |||
224 | |||
225 | {{showhide id="1" showmessage="LEVEL_ACCOMPLISHED" hidemessage="LEVEL_ACCOMPLISHED" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: 0px"}} | ||
226 | |||
227 | \\**Description:** Track accomplished game level achievement | ||
228 | **Event category:** LEVEL_ACCOMPLISHED | ||
229 | **Recommended parameters:** LEVEL, SCORE | ||
230 | {{/showhide}} | ||
231 | |||
232 | {{showhide id="2" showmessage="ADD_PAYMENT_INFO" hidemessage="ADD_PAYMENT_INFO" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
233 | |||
234 | \\**Description:** Track payment info | ||
235 | **Event category:** ADD_PAYMENT_INFO | ||
236 | **Recommended parameters:** SUCCESS | ||
237 | {{/showhide}} | ||
238 | |||
239 | {{showhide id="3" showmessage="ADD_TO_BASKET" hidemessage="ADD_TO_BASKET" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
240 | |||
241 | \\**Description:** Track add item to basket | ||
242 | **Event category:** ADD_TO_BASKET | ||
243 | **Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT, CURRENCY, QUANTITY | ||
244 | {{/showhide}} | ||
245 | |||
246 | {{showhide id="4" showmessage="REMOVED_FROM_BASKET" hidemessage="REMOVED_FROM_BASKET" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
247 | |||
248 | \\**Description:** Track removed item from basket | ||
249 | **Event category:** REMOVED_FROM_BASKET | ||
250 | **Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT, CURRENCY, QUANTITY | ||
251 | {{/showhide}} | ||
252 | |||
253 | {{showhide id="5" showmessage="ADD_TO_WISH_LIST" hidemessage="ADD_TO_WISH_LIST" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
254 | |||
255 | \\**Description:** Track add item to wish list | ||
256 | **Event category:** ADD_TO_WISH_LIST | ||
257 | **Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT, CURRENCY, QUANTITY | ||
258 | {{/showhide}} | ||
259 | |||
260 | {{showhide id="6" showmessage="REGISTRATION" hidemessage="REGISTRATION" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
261 | |||
262 | \\**Description:** Track registration | ||
263 | **Event category:** REGISTRATION | ||
264 | **Recommended parameters:** REGISTRATION_METHOD | ||
265 | {{/showhide}} | ||
266 | |||
267 | {{showhide id="7" showmessage="TUTORIAL_COMPLETION" hidemessage="TUTORIAL_COMPLETION" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
268 | |||
269 | \\**Description:** Track tutorial completion | ||
270 | **Event category:** TUTORIAL_COMPLETION | ||
271 | **Recommended parameters:** SUCCESS, CONTENT, CONTENT_ID | ||
272 | {{/showhide}} | ||
273 | |||
274 | {{showhide id="8" showmessage="TRIGGER_CHECKOUT" hidemessage="TRIGGER_CHECKOUT" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
275 | |||
276 | \\**Description:** Track triggered checkout | ||
277 | **Event category:** TRIGGER_CHECKOUT | ||
278 | **Recommended parameters:** PROCE, CONTENT_TYPE, CONTENT_ID, CONTENT, QUANTITY, PAYMENT_INFO_AVAILABLE, CURRENCY | ||
279 | {{/showhide}} | ||
280 | |||
281 | {{showhide id="9" showmessage="PURCHASE" hidemessage="PURCHASE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
282 | |||
283 | \\**Description:** Track purchased item | ||
284 | **Event category:** PURCHASE | ||
285 | **Recommended parameters:** REVENUE, CONTENT_TYPE, CONTENT_ID, CONTENT, PRICE, QUANTITY, CURRENCY, ORDER_ID | ||
286 | {{/showhide}} | ||
287 | |||
288 | {{showhide id="10" showmessage="SUBSCRIBE" hidemessage="SUBSCRIBE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
289 | |||
290 | \\**Description:** Track subscription purchase | ||
291 | **Event category:** SUBSCRIBE | ||
292 | **Recommended parameters:** REVENUE, CURRENCY | ||
293 | {{/showhide}} | ||
294 | |||
295 | {{showhide id="11" showmessage="BEGIN_TRIAL" hidemessage="BEGIN_TRIAL" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
296 | |||
297 | \\**Description:** Track begin trail of product | ||
298 | **Event category:** BEGIN_TRIAL | ||
299 | **Recommended parameters:** PRICE, CURRENCY | ||
300 | {{/showhide}} | ||
301 | |||
302 | {{showhide id="12" showmessage="RATE" hidemessage="RATE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
303 | |||
304 | \\**Description:** Track app/item rate | ||
305 | **Event category:** RATE | ||
306 | **Recommended parameters:** RATING_VALUE, CONTENT_TYPE, CONTENT_ID, CONTENT, MAX_RATING_VALUE | ||
307 | {{/showhide}} | ||
308 | |||
309 | {{showhide id="13" showmessage="SEARCH" hidemessage="SEARCH" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
310 | \\**Description:** Track search event | ||
311 | **Event category:** SEARCH | ||
312 | **Recommended parameters:** CONTENT_TYPE, SEARCH_STRING, SUCCESS | ||
313 | {{/showhide}} | ||
314 | |||
315 | {{showhide id="14" showmessage="USED_CREDIT" hidemessage="USED_CREDIT" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
316 | \\**Description:** Track use of credit | ||
317 | **Event category:** USED_CREDIT | ||
318 | **Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT | ||
319 | {{/showhide}} | ||
320 | |||
321 | {{showhide id="15" showmessage="UNLOCKED_ACHIEVEMENT" hidemessage="UNLOCKED_ACHIEVEMENT" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
322 | \\**Description:** Track achievement unlock | ||
323 | **Event category:** UNLOCKED_ACHIEVEMENT | ||
324 | **Recommended parameters:** DESCRIPTION | ||
325 | {{/showhide}} | ||
326 | |||
327 | {{showhide id="16" showmessage="VIEW_CONTENT" hidemessage="VIEW_CONTENT" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
328 | \\**Description:** Track content view event | ||
329 | **Event category:** VIEW_CONTENT | ||
330 | **Recommended parameters:** PRICE, CONTENT_TYPE, CONTENT_ID, CONTENT, CURRENCY | ||
331 | {{/showhide}} | ||
332 | |||
333 | {{showhide id="17" showmessage="VIEW_LIST" hidemessage="VIEW_LIST" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
334 | \\**Description:** Track list event | ||
335 | **Event category:** VIEW_LIST | ||
336 | **Recommended parameters:** CONTENT_TYPE, CONTENT_LIST | ||
337 | {{/showhide}} | ||
338 | |||
339 | {{showhide id="18" showmessage="CLICK_AD" hidemessage="CLICK_AD" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
340 | \\**Description:** Track ad click | ||
341 | **Event category:** CLICK_AD | ||
342 | **Recommended parameters:** CONTENT_TYPE, CONTENT_ID | ||
343 | {{/showhide}} | ||
344 | |||
345 | {{showhide id="19" showmessage="VIEW_AD" hidemessage="VIEW_AD" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
346 | \\**Description:** Track view ad | ||
347 | **Event category:** VIEW_AD | ||
348 | **Recommended parameters:** CONTENT_TYPE, CONTENT_ID | ||
349 | {{/showhide}} | ||
350 | |||
351 | {{showhide id="20" showmessage="EVENT_BOOKING" hidemessage="EVENT_BOOKING" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
352 | \\**Description:** Track booking event | ||
353 | **Event category:** EVENT_BOOKING | ||
354 | **Recommended parameters:** REVENUE, DESTINATION_A, DESTINATION_B, CLASS, DESCRIPTION, CUSTOMER_USER_ID, CONTENT_TYPE, CONTENT_ID, DATE_A, DATE_B | ||
355 | {{/showhide}} | ||
356 | |||
357 | {{showhide id="21" showmessage="SHARE" hidemessage="SHARE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
358 | \\**Description:** Track share event | ||
359 | **Event category:** SHARE | ||
360 | **Recommended parameters:** DESCRIPTION | ||
361 | {{/showhide}} | ||
362 | |||
363 | {{showhide id="22" showmessage="INVITE" hidemessage="INVITE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
364 | \\**Description:** Track social invite event | ||
365 | **Event category:** INVITE | ||
366 | **Recommended parameters:** NONE | ||
367 | {{/showhide}} | ||
368 | |||
369 | {{showhide id="23" showmessage="LOGIN" hidemessage="LOGIN" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
370 | \\**Description:** Track user login event | ||
371 | **Event category:** LOGIN | ||
372 | **Recommended parameters:** NONE | ||
373 | {{/showhide}} | ||
374 | |||
375 | {{showhide id="24" showmessage="EVENT_RETURN" hidemessage="EVENT_RETURN" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
376 | \\**Description:** Track re engagement event | ||
377 | **Event category:** EVENT_RETURN | ||
378 | **Recommended parameters:** NONE | ||
379 | {{/showhide}} | ||
380 | |||
381 | {{showhide id="25" showmessage="OPENED_PUSH_NOTIFICATION" hidemessage="OPENED_PUSH_NOTIFICATION" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
382 | \\**Description:** Track user opened push notification | ||
383 | **Event category:** OPENED_PUSH_NOTIFICATION | ||
384 | **Recommended parameters:** NONE | ||
385 | {{/showhide}} | ||
386 | |||
387 | {{showhide id="26" showmessage="UPDATE" hidemessage="UPDATE" effect="slide" effectduration="0.3" style="border-radius: 5px; border: 1px solid powderblue; padding: 7px 7px 7px 30px; margin: -1px 0px 0px 0px"}} | ||
388 | \\**Description:** Track update event | ||
389 | **Event category:** UPDATE | ||
390 | **Recommended parameters:** CONTENT_ID | ||
391 | {{/showhide}} | ||
392 | |||
393 | === 3.2.4 Event parameters === | ||
394 | |||
395 | In addition each category that is passed with event may have optional parameters defined as part of the plugin constants, or custom defined as String. Below is a list of recommended parameters. | ||
396 | |||
397 | {{showhide id="1" showmessage="Parameters list" hidemessage="Parameters list" effect="slide" effectduration="0.3"}} | ||
398 | |||
399 | (% class="table-bordered table-hover" %) | ||
400 | |(% style="background-color:powderblue; width:200px" %)**Parameter enum**|(% style="background-color:powderblue; width:200px" %)**Recommended value** | ||
401 | |(% style="width:200px" %)REVENUE|(% style="width:200px" %)FLoat | ||
402 | |(% style="width:200px" %)PRICE|(% style="width:200px" %)Float | ||
403 | |(% style="width:200px" %)LEVEL|(% style="width:200px" %)Integer | ||
404 | |(% style="width:200px" %)SUCCESS|(% style="width:200px" %)Boolean | ||
405 | |(% style="width:200px" %)CONTENT_TYPE|(% style="width:200px" %)String | ||
406 | |(% style="width:200px" %)CONTENT_LIST|(% style="width:200px" %)Array of strings | ||
407 | |(% style="width:200px" %)CONTENT_ID|(% style="width:200px" %)String | ||
408 | |(% style="width:200px" %)CURRENCY|(% style="width:200px" %)String | ||
409 | |(% style="width:200px" %)REGISTRATION_METHOD|(% style="width:200px" %)String | ||
410 | |(% style="width:200px" %)QUANTITY|(% style="width:200px" %)Integer | ||
411 | |(% style="width:200px" %)PAYMENT_INFO_AVAILABLE|(% style="width:200px" %)Boolean | ||
412 | |(% style="width:200px" %)RATING_VALUE|(% style="width:200px" %)Float | ||
413 | |(% style="width:200px" %)MAX_RATING_VALUE|(% style="width:200px" %)Float | ||
414 | |(% style="width:200px" %)SEARCH_STRING|(% style="width:200px" %)String | ||
415 | |(% style="width:200px" %)DESCRIPTION|(% style="width:200px" %)String | ||
416 | |(% style="width:200px" %)SCORE|(% style="width:200px" %)Integer | ||
417 | |(% style="width:200px" %)DESTINATION_A|(% style="width:200px" %)String | ||
418 | |(% style="width:200px" %)DESTINATION_B|(% style="width:200px" %)String | ||
419 | |(% style="width:200px" %)CLASS|(% style="width:200px" %)String | ||
420 | |(% style="width:200px" %)DATE_A|(% style="width:200px" %)String | ||
421 | |(% style="width:200px" %)DATE_B|(% style="width:200px" %)String | ||
422 | |(% style="width:200px" %)EVENT_START|(% style="width:200px" %)Unixtime | ||
423 | |(% style="width:200px" %)EVENT_END|(% style="width:200px" %)Unixtime | ||
424 | |(% style="width:200px" %)LATITUDE|(% style="width:200px" %)Double | ||
425 | |(% style="width:200px" %)LONGITUDE|(% style="width:200px" %)Double | ||
426 | |(% style="width:200px" %)CUSTOMER_USER_ID|(% style="width:200px" %)String | ||
427 | |(% style="width:200px" %)CUSTOMER_SEGMENT|(% style="width:200px" %)String | ||
428 | |(% style="width:200px" %)VALIDATED|(% style="width:200px" %)String | ||
429 | |(% style="width:200px" %)RECEIPT_ID|(% style="width:200px" %)String | ||
430 | |(% style="width:200px" %)ORDER_ID|(% style="width:200px" %)String | ||
431 | |(% style="width:200px" %)TUTORIAL_ID|(% style="width:200px" %)String | ||
432 | |(% style="width:200px" %)ACHIEVEMENT_ID|(% style="width:200px" %)String | ||
433 | |(% style="width:200px" %)VIRTUAL_CURRENCY_NAME|(% style="width:200px" %)String | ||
434 | |(% style="width:200px" %)DEEP_LINK|(% style="width:200px" %)String | ||
435 | |(% style="width:200px" %)OLD_VERSION|(% style="width:200px" %)String | ||
436 | |(% style="width:200px" %)NEW_VERSION|(% style="width:200px" %)String | ||
437 | |(% style="width:200px" %)REVIEW_TEXT|(% style="width:200px" %)String | ||
438 | |(% style="width:200px" %)COUPON_CODE|(% style="width:200px" %)String | ||
439 | |(% style="width:200px" %)DEPARTING_DEPARTURE_DATE|(% style="width:200px" %)String | ||
440 | |(% style="width:200px" %)RETURNING_DEPARTURE_DATE|(% style="width:200px" %)String | ||
441 | |(% style="width:200px" %)DESTINATION_LIST|(% style="width:200px" %)String[] | ||
442 | |(% style="width:200px" %)CITY|(% style="width:200px" %)String | ||
443 | |(% style="width:200px" %)REGION|(% style="width:200px" %)String | ||
444 | |(% style="width:200px" %)COUNTRY|(% style="width:200px" %)String | ||
445 | |(% style="width:200px" %)DEPARTING_ARRIVAL_DATE|(% style="width:200px" %)String | ||
446 | |(% style="width:200px" %)RETURNING_ARRIVAL_DATE|(% style="width:200px" %)String | ||
447 | |(% style="width:200px" %)SUGGESTED_DESTINATIONS|(% style="width:200px" %)String[] | ||
448 | |(% style="width:200px" %)TRAVEL_START|(% style="width:200px" %)String | ||
449 | |(% style="width:200px" %)TRAVEL_END|(% style="width:200px" %)String | ||
450 | |(% style="width:200px" %)NUM_ADULTS|(% style="width:200px" %)Integer | ||
451 | |(% style="width:200px" %)NUM_CHILDREN|(% style="width:200px" %)Integer | ||
452 | |(% style="width:200px" %)NUM_INFANTS|(% style="width:200px" %)Integer | ||
453 | |(% style="width:200px" %)SUGGESTED_HOTELS|(% style="width:200px" %)String[] | ||
454 | |(% style="width:200px" %)USER_SCORE|(% style="width:200px" %)Float | ||
455 | |(% style="width:200px" %)HOTEL_SCORE|(% style="width:200px" %)Float | ||
456 | |(% style="width:200px" %)PURCHASE_CURRENCY|(% style="width:200px" %)String | ||
457 | |(% style="width:200px" %)PREFERRED_STAR_RATINGS|(% style="width:200px" %)Integer[2] | ||
458 | |(% style="width:200px" %)PREFERRED_PRICE_RANGE|(% style="width:200px" %)Integer[2] | ||
459 | |(% style="width:200px" %)PREFERRED_NEIGHBORHOODS|(% style="width:200px" %)String[] | ||
460 | |(% style="width:200px" %)PREFERRED_NUM_STOPS|(% style="width:200px" %)Integer | ||
461 | |(% style="width:200px" %)CONTENT|(% style="width:200px" %)String | ||
462 | |(% style="width:200px" %)PARAM_1|(% style="width:200px" %)String | ||
463 | |(% style="width:200px" %)PARAM_2|(% style="width:200px" %)String | ||
464 | |(% style="width:200px" %)PARAM_3|(% style="width:200px" %)String | ||
465 | |(% style="width:200px" %)PARAM_4|(% style="width:200px" %)String | ||
466 | |(% style="width:200px" %)PARAM_5|(% style="width:200px" %)String | ||
467 | |(% style="width:200px" %)PARAM_6|(% style="width:200px" %)String | ||
468 | |(% style="width:200px" %)PARAM_7|(% style="width:200px" %)String | ||
469 | |(% style="width:200px" %)PARAM_8|(% style="width:200px" %)String | ||
470 | |(% style="width:200px" %)PARAM_9|(% style="width:200px" %)String | ||
471 | |(% style="width:200px" %)PARAM_10|(% style="width:200px" %)String | ||
472 | |||
473 | {{/showhide}} | ||
474 | |||
475 | == 3.3 Remaining methods == | ||
476 | |||
477 | |||
478 | |||
479 | |||
480 | |||
481 | (% class="table-bordered table-hover" style="border-color:powderblue" %) | ||
482 | |=(% style="background-color:powderblue" %)Name|=(% style="background-color:powderblue" %)Type|=(% style="background-color:powderblue" %)Default|=(% style="background-color:powderblue" %)Description | ||
483 | | | | | | ||
484 | |||
485 | = 4. Constants = | ||
486 | |||
487 | = 5. Sample app = | ||
488 | |||
489 | The sample application is located in the github repository [[here>>https://github.com/mobigatesdk/react-native-mobigate]] in //example// folder. |