Veri Gönderme
RelatedDigital SDK’sı uygulamanızdan kullanıcının hareketlerine göre veri toplamaya olanak sağlamaktadır.
Aşağıda bu amaç için tasarlanmış metotları ve detaylarını bulabilirsiniz.
Veri Gönderimi için herhangi bir modülün etkinleştirilmesine gerek yoktur. SDK’nın init edilmesi yeterlidir.
Mobil kanaldan gelen verilerinizin RMC'ye yüklenebilmesi için, aktif RMC hesabınızda kullanmış olduğunuz referans değeriniz ne ise (KEY_ID* veya E-Mail) mobil kanaldan gelen verilerin de bu referans ile gelmesine dikkat ediniz."
*KEY_ID: Uygulama sahibi tarafından müşterisinin tekilleştirilmesi için kullanılan id değerleridir. Bunlar CRM id, userId, customerId, accountId gibi farklı isimlerle ifade ediliyor olabilir.
exVisitorId yapınıza göre keyID veya E-Posta olabilir.
Kaydolma
Kotlin
RelatedDigital.signUp(
context = context,
exVisitorId = "exVisitorIdDeğeri"
)
Java
RelatedDigital.signUp(
context,
"exVisitorIdDeğeri"
);
exVisitorId parametresi ile RMC panelinde kullanıcıyı tekilleştirmek için kullandığınız özellik gönderilmelidir. Örneğin, email
Bu metod aracılığıyla ek bilgiler göndermek de mümkündür. Aşağıdaki örnek, OM.sys.TokenID ve OM.sys.AppID parametrelerini içeren özelliklerle signUp()
metodunun çağırılmasını gösterir. OM.sys.TokenID ve OM.sys.AppID push bildirimleri göndermek için gereklidir ve OM.sys.AppID parametresi RMC web panelinden alınabilir.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.sys.TokenID"] = "tokenDeğeri"
parameters["OM.sys.AppID"] = "appAliasDeğeri"
RelatedDigital.signUp(
context = context,
exVisitorId = "exVisitorIdDeğeri",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.sys.TokenID", "tokenDeğeri");
parameters.put("OM.sys.AppID", "appAliasDeğeri");
RelatedDigital.signUp(
context,
"exVisitorIdDeğeri",
parameters
);
Oturum Açma
Kaydolma metodu gibi oturum açma metodu da isteğe bağlı parametre özellikleriyle veya bunlar olmadan çağrılabilir.
Kotlin
RelatedDigital.login(
context = context,
exVisitorId = "exVisitorIdDeğeri"
)
Java
RelatedDigital.login(
context,
"exVisitorIdDeğeri"
);
exVisitorId parametresi ile RMC panelinde kullanıcıyı tekilleştirmek için kullandığınız özellik gönderilmelidir. Örneğin, email
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.sys.TokenID"] = "tokenDeğeri"
parameters["OM.sys.AppID"] = "appAliasDeğeri"
RelatedDigital.login(
context = context,
exVisitorId = "exVisitorIdDeğeri",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.sys.TokenID", "tokenDeğeri");
parameters.put("OM.sys.AppID", "appAliasDeğeri");
RelatedDigital.login(
context,
"exVisitorIdDeğeri",
parameters
);
Ayrıca, kullanıcıyı segmentlemenizi sağlayacak parametreleri de ekleyebilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.sys.TokenID"] = "tokenDeğeri"
parameters["OM.sys.AppID"] = "appAliasDeğeri"
parameters["OM.vseg1"] = "seg1Değeri"
parameters["OM.vseg2"] = "seg2Değeri"
parameters["OM.vseg3"] = "seg3Değeri"
parameters["OM.vseg4"] = "seg4Değeri"
parameters["OM.vseg5"] = "seg5Değeri"
parameters["OM.bd"] = "1995-09-02"
parameters["OM.gn"] = "m"
parameters["OM.loc"] = "istanbul"
RelatedDigital.login(
context = context,
exVisitorId = "exVisitorIdDeğeri",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.sys.TokenID", "tokenDeğeri");
parameters.put("OM.sys.AppID", "appAliasDeğeri");
parameters.put("OM.vseg1", "seg1Değeri");
parameters.put("OM.vseg2", "seg2Değeri");
parameters.put("OM.vseg3", "seg3Değeri");
parameters.put("OM.vseg4", "seg4Değeri");
parameters.put("OM.vseg5", "seg5Değeri");
parameters.put("OM.bd", "1995-09-02");
parameters.put("OM.gn", "m");
parameters.put("OM.loc", "istanbul");
RelatedDigital.login(
context,
"exVisitorIdDeğeri",
parameters
);
Sayfa Görüntüleme
Kullanıcının o anda görüntülemekte olduğu sayfa adını göndermek için aşağıdaki customEvent()
metodunu kullanabilirsiniz. properties'e fazladan parametreler ekleyebilir veya boş bırakabilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
RelatedDigital.customEvent(
context = context,
pageName = "Sıkça Sorulan Sorular",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
RelatedDigital.customEvent(
context,
"Sıkça Sorulan Sorular",
parameters
);
Ürün Görüntüleme
Kullanıcının uygulamanızda bir ürün görüntülediği bilgisini göndermek için aşağıdaki customEvent()
metodunu kullanabilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.pv"] = "Product Code" //Ürün Kodu
parameters["OM.pn"] = "Product Name" //Ürün İsmi
parameters["OM.ppr"] = "Product Price" //Ürün Fiyatı
parameters["OM.pv.1"] = "Product Brand" //Ürün markası
parameters["OM.inv"] = "Number of items in stock" //Stokta kaç tane kaldığı
RelatedDigital.customEvent(
context = context,
pageName = "Product View",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.pv", "Product Code"); //Ürün Kodu
parameters.put("OM.pn", "Product Name"); //Ürün İsmi
parameters.put("OM.ppr", "Product Price"); //Ürün Fiyatı
parameters.put("OM.pv.1", "Product Brand"); //Ürün markası
parameters.put("OM.inv", "Number of items in stock"); //Stokta kaç tane kaldığı
RelatedDigital.customEvent(
context,
"Product View",
parameters
);
Sepete Ekleme
Kullanıcının sepete ürün eklemesi veya çıkarması bilgisini göndermek için aşağıdaki customEvent()
metodunu kullanabilirsiniz.
Sepette bulunan son üründe kullanıcı tarafından silindiğinde OM.pb, OM.pu ve OM.ppr parametrelerini boş string olarak göndermelisiniz. Örnek,
parameters["OM.pb"] = ""
parameters.put("OM.pb", "");
Not: OM.basketType parametresinde value olarak kullanıcının sepet işlemi yaptığı sayfayı gönderin. Sepete ekleme işleminde ve sepet sayfasında aynı event gönderilmektedir. Bu sayfaları ayrıştırmak için OM.basketType parametresinde BasketPage, ProductDetail, CategoryPage vb. şekillerde sepet işleminin yapıldığı sayfayı gönderebilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.pbid"] = "Basket ID" //Sepet ID si
parameters["OM.pb"] = "Product1Code;Product2Code" //Ürün1Kodu;Ürün2Kodu
parameters["OM.pu"] = "Product1Quantity;Product2Quantity" //Ürün1Miktarı;Ürün2Miktarı
parameters["OM.ppr"] = "Product1Price*Product1Quantity;Product2Price*Product2Quantity" //Ürün1Fiyatı*Ürün1Miktarı;Ürün2Fiyatı*Ürün2Miktarı
parameters["OM.basketType"] = "BasketPage"
RelatedDigital.customEvent(
context = context,
pageName = "Cart",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.pbid", "Basket ID"); //Sepet ID si
parameters.put("OM.pb", "Product1Code;Product2Code"); //Ürün1Kodu;Ürün2Kodu
parameters.put("OM.pu", "Product1Quantity;Product2Quantity"); //Ürün1Miktarı;Ürün2Miktarı
parameters.put("OM.ppr", "Product1Price*Product1Quantity;Product2Price*Product2Quantity"); //Ürün1Fiyatı*Ürün1Miktarı;Ürün2Fiyatı*Ürün2Miktarı
parameters.put("OM.basketType", "BasketPage");
RelatedDigital.customEvent(
context,
"Cart",
parameters
);
Satın Alma
Kullanıcının bir ürün satın alması bilgisini göndermek için aşağıdaki customEvent()
metodunu kullanabilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.tid"] = "Transaction ID" //İşlem ID'si
parameters["OM.pp"] = "Product1Code;Product2Code" //Ürün1Kodu;Ürün2Kodu
parameters["OM.pu"] = "Product1Quantity;Product2Quantity" //Ürün1Miktarı;Ürün2Miktarı
parameters["OM.ppr"] = "Product1Price*Product1Quantity;Product2Price*Product2Quantity" //Ürün1Fiyatı*Ürün1Miktarı;Ürün2Fiyatı*Ürün2Miktarı
RelatedDigital.customEvent(
context = context,
pageName = "Product Purchase",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.tid", "Transaction ID"); //İşlem ID'si
parameters.put("OM.pp", "Product1Code;Product2Code"); //Ürün1Kodu;Ürün2Kodu
parameters.put("OM.pu", "Product1Quantity;Product2Quantity"); //Ürün1Miktarı;Ürün2Miktarı
parameters.put("OM.ppr", "Product1Price*Product1Quantity;Product2Price*Product2Quantity"); //Ürün1Fiyatı*Ürün1Miktarı;Ürün2Fiyatı*Ürün2Miktarı
RelatedDigital.customEvent(
context,
Product Purchase",
parameters
);
Kategori Görüntüleme
Kullanıcının bir kategori sayfasını görüntülemesi bilgisini göndermek için aşağıdaki customEvent()
metodunu kullanabilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.clist"] = "Category Code/Category ID" //Kategori Kodu/Kategori ID'si
RelatedDigital.customEvent(
context = context,
pageName = "Category View",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.clist", "Category Code/Category ID"); //Kategori Kodu/Kategori ID'si
RelatedDigital.customEvent(
context,
"Category View",
parameters
);
Arama
Kullanıcının uygulamanızda yaptığı arama bilgisini göndermek için aşağıdaki customEvent()
metodunu kullanabilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.OSS"] = "Text Searched" //Aranan Metin
parameters["OM.OSSR"] = "Number of Results" //Sonuç Sayısı
RelatedDigital.customEvent(
context = context,
pageName = "Search",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.OSS", "Text Searched"); //Aranan Metin
parameters.put("OM.OSSR", "Number of Results"); //Sonuç Sayısı
RelatedDigital.customEvent(
context,
"Search",
parameters
);
Banner Tıklaması
Kullanıcının uygulamanızdaki bir banner a tıklaması bilgisini göndermek için aşağıdaki customEvent()
metodunu kullanabilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.OSB"] = "Banner Name/Banner Code" //Banner İsmi/Banner Kodu
RelatedDigital.customEvent(
context = context,
pageName = "Banner Click",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.OSB", "Banner Name/Banner Code"); //Banner İsmi/Banner Kodu
RelatedDigital.customEvent(
context,
"Banner Click",
parameters
);
Favorilere Ekleme
Kullanıcının favorilerine ürün eklemesi bilgisini göndermek için aşağıdaki customEvent()
metodunu kullanabilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.pf"] = "Product Code" //Ürün Kodu
parameters["OM.pfu"] = "1"
parameters["OM.pfr"] = "Product Price" //Ürün Fiyatı
RelatedDigital.customEvent(
context = context,
pageName = "/om_evt.gif",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.pf", "Product Code"); //Ürün Kodu
parameters.put("OM.pfu", "1");
parameters.put("OM.pfr", "Product Price"); //Ürün Fiyatı
RelatedDigital.customEvent(
context,
"/om_evt.gif",
parameters
);
Favorilere ürün eklendiğinde "OM.pfu"
değeri “1”; çıkarıldığında ise “-1” gönderilmelidir.
Favorilere ürün eklendiğinde veya çıkarıldığında pageName parametresi "/om_evt.gif"
şeklinde gönderilmelidir.
Favorilerden Çıkarma
Kullanıcının favorilerinden ürün çıkarması bilgisini göndermek için aşağıdaki customEvent()
metodunu kullanabilirsiniz.
Kotlin
val parameters = HashMap<String, String>()
parameters["OM.pf"] = "Product Code" //Ürün Kodu
parameters["OM.pfu"] = "-1"
parameters["OM.pfr"] = "Product Price" //Ürün Fiyatı
RelatedDigital.customEvent(
context = context,
pageName = "/om_evt.gif",
properties = parameters
)
Java
HashMap<String, String> parameters = new HashMap<String, String>();
parameters.put("OM.pf", "Product Code"); //Ürün Kodu
parameters.put("OM.pfu", "-1");
parameters.put("OM.pfr", "Product Price"); //Ürün Fiyatı
RelatedDigital.customEvent(
context,
"/om_evt.gif",
parameters
);
Favorilere ürün eklendiğinde "OM.pfu"
değeri “1”; çıkarıldığında ise “-1” gönderilmelidir.
Favorilere ürün eklendiğinde veya çıkarıldığında pageName parametresi "/om_evt.gif"
şeklinde gönderilmelidir.
Uygulama Takibi / App Tracker
Uygulama Takibi özelliği kullanıcının cihazındaki Google Play Store, Amazon App Store ve Huawei App Gallery' den yüklenmiş (ve hala yüklü durumda olan) uygulamaların listesini göndermek içindir. Aşağıdaki sendTheListOfAppsInstalled()
metodunu uygulamanızın isteğinizin yerinden ve istediğiniz zaman aralığıyla çağırabilirsiniz (Örneğin, launcher activity içerisinden haftada bir).
Kotlin
RelatedDigital.sendTheListOfAppsInstalled(
context = context
)
Java
RelatedDigital.sendTheListOfAppsInstalled(
context
);
Android, cihazda yüklü uygulamaların listesine erişmek için 2 seçenek sunmaktadır:
1-) Yüklü olup olmadığı bilgisi alınmak istenilen uygulamalar paket isimleriyle aşağıdaki gibi
AndroidManifest.xml dosyasına girilebilir.
<manifest package="com.example.myApp">
<queries>
<package android:name="com.example.app1" />
<package android:name="com.example.app2" />
</queries>
...
</manifest>
2-) Tüm yüklü uygulamaların listesini alabilmek için aşağıdaki izin AndroidManifest.xml
dosyasına eklenmek zorundadır.
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"
tools:ignore="QueryAllPackagesPermission" />
İkinci yöntemde Google Play Store ne için bu izne neden ihtiyaç duyulduğunun açıklanmasını bekleyebilir.
https://developer.android.com/training/basics/intents/package-visibility
Birinci yöntem herhangi bir izin gerektirmez.
Yukarıda belirtilen 2 yöntemden birisi uygulandıktan sonra
RelatedDigital.sendTheListOfAppsInstalled()
çağırılması yeterlidir.
Lokasyon İzin Bilgisini Yollama
Kullanıcının lokasyon izin durumu bilgisini göndermek için aşağıdaki sendLocationPermission()
metodunu kullanabilirsiniz.
Kotlin
RelatedDigital.sendLocationPermission(
context = context
)
Java
RelatedDigital.sendLocationPermission(
context
);
Bu bilgi “OM.locpermit” parametresiyle beraber gönderilir ve aşağıdaki 3 değerden birini alabilir:
"always" : Lokasyon izni uygulama açıkken ve kapalıyken edinilmiş durumda.
"appopen" : Lokasyon izni yalnızca uygulama açıkken edinilmiş durumda.
"none" : Lokasyon izni edinilmemiş durumda.
Push Mesajı Token Kaydetme
Kullanıcılarınıza push mesajları göndermek için kullanıcılarınızın token bilgilerine ihtiyaç duyulmaktadır. Firebase veya Huawei den alınan token değeri, OM.sys.TokenID parametresiyle gönderilmelidir. OM.sys.AppID parametresinin değeri RMC yönetim panelinden elde edilebilir. Bu linke gidiniz ve ilgili push uygulamasını seçiniz. Uygulama App Alias değeri OM.sys.AppID parametresinin değeri olarak gönderilmelidir. Sorun yaşarsanız lütfen RMC destek ekibiyle iletişime geçiniz.
Aşağıdaki parametreleri yukarıda verilen eventlerin içinde gönderebilirsiniz. Birer örnekleri Oturum Açma ve Kaydolma adımlarında gösterilmiştir.
Kotlin
parameters["OM.sys.TokenID"] = "tokenDeğeri"
parameters["OM.sys.AppID"] = "appAliasDeğeri" // RMC panelden alınacaktır
Java
parameters.put("OM.sys.TokenID", "tokenDeğeri");
parameters.put("OM.sys.AppID", "appAliasDeğeri"); // RMC panelden alınacaktır
Örnek Uygulama
Related content
Copyright 2020 Related Digital