deepin-sdk
can be used in react, vue, svelte, react-native, flutter, cordova and in other capacities you may require that can run javascript code as follows:
You can use one of the following commands to install the sdk.
npm i deepin-js-sdk
yarn add deepin-js-sdk
The following code shows you how could it be imported in es6 or 7 or typescript.
import deepIn from 'deepin-js-sdk'
...
Copy the following line in an html file
<script src="https://dash.mydeepin.ir/download/deepin-js-sdk-v1.1.3.js"></script>
<script>
const deepIn = window.Deepin
...
</script>
First you need to create a new source(web sdk) in deepin panel and get a writekey then use deepin
instance to be able to initialize it by the following code:
deepIn.init(writeKey);
Now you are ready to send events using this instance, It creates a bundle of events and send them together by default. Thus, for the first time you can use the following code to send a page event instantly and check whether the event has been sent successfully.
deepIn.init(writekey);
deepIn.page(); // calls a page event
deepIn.flush(); // cleanse the queue and sends all the events
In react-native
make sure you call init method after intrack initialization
if (!(await InTrack.isInitialized())) {
//init inTrack
await InTrack.init({
appKey: "INTRACK_APP_KEY__",
iosAuthKey: "ّINTRACK_AUTH_KEY_FOR_IOS__",
androidAuthKey: "INTRACK_AUTH_KEY_FOR_ANDROID__",
});
InTrack.start();
// other inTrack related codes...
// init DeepIn:
DeepIn.init(writekey);
}
Use the init method to initialize the deepIn SDK.
deepIn.init(writeKey);
The given writekey for the source you have created in deepin panel.
Use the identify method to link your users and their actions, to a recognizable userId and traits.
deepIn.identify(userId, [traits], [commonProps]);
The database ID for the user. If you don’t know who the user is yet, you can set the userId an empty string and just record traits.
A dictionary of traits you know about the user, you can read more about traits in the identify traits type
A dictionary of properties, you can read more about common properties in the common properties type
deepIn.identify("12091906-01011992", {
firstName: "Grace Hopper",
username: "grace@usnavy.gov",
});
The Track method lets you record actions your users perform.
deepIn.track(event, [properties]);
The name of the event you’re tracking.
The category of the event you’re tracking.
A dictionary of properties for the event, If the event was 'Added to Cart', it might have properties like price and productType, you can read more about common properties in the common properties type
deepIn.track("Added to Cart", "Sell", {
properties: {
price: 1000,
productType: "mobile",
},
});
The Page method lets you record page views on your website, along with optional extra information about the page viewed by the user.
deepIn.page([category], [channel], [properties]);
The category of the page. Useful for cases like ecommerce where many pages might live under a single category.
The channel of the page.
A dictionary of properties, you can read more about common properties in the common properties type
deepIn.page("Pricing");
deepIn.page("Pricing", "", {
page: {
title: "Deepin Pricing",
url: "https://mydeepin.ir/pricing",
referrer: "https://mydeepin.ir",
},
});
The Group method associates an identified user with a company, organization, project, workspace, team, tribe, platoon, assemblage, cluster, troop, gang, party, society or any other collective noun you come up with for the same concept.
deepIn.group(groupId, [traits], [commonProps]);
The Group ID to associate with the current user.
A dictionary of traits for the group. Example traits for a group include address, website, and employees. you can read more about traits in the group traits type
A dictionary of properties, you can read more about common properties in the common properties type
deepIn.group("UNIVAC Working Group", {
employees: "Eckert–Mauchly",
industry: "IT",
});
The Alias method combines two unassociated user identities. Segment usually handles aliasing automatically when you call identify on a user, however some tools require an explicit alias call.
deepIn.alias(userId, [previousId]);
The new user ID you want to associate with the user.
The previous ID that the user was recognized by. This defaults to the currently identified user’s ID.