minesweeper_game/Library/PackageCache/com.unity.services.analytics@f7e249983920/Samples~/StandardEvents/StandardEventSample.cs
2025-03-15 14:30:26 -04:00

322 lines
12 KiB
C#

using System.Collections.Generic;
namespace Unity.Services.Analytics
{
public class StandardEventSample
{
public static void RecordMinimalAdImpressionEvent()
{
AdImpressionEvent adImpression = new AdImpressionEvent();
adImpression.AdCompletionStatus = AdCompletionStatus.Completed;
adImpression.AdProvider = AdProvider.UnityAds;
adImpression.PlacementName = "PLACEMENTNAME";
adImpression.PlacementId = "PLACEMENTID";
AnalyticsService.Instance.RecordEvent(adImpression);
}
public static void RecordCompleteAdImpressionEvent()
{
AdImpressionEvent adImpression = new AdImpressionEvent();
adImpression.AdCompletionStatus = AdCompletionStatus.Completed;
adImpression.AdProvider = AdProvider.UnityAds;
adImpression.PlacementName = "PLACEMENTNAME";
adImpression.PlacementId = "PLACEMENTID";
adImpression.PlacementType = AdPlacementType.BANNER;
adImpression.AdEcpmUsd = 123.4;
adImpression.AdSdkVersion = "1.2.3";
adImpression.AdImpressionId = "IMPRESSIVE";
adImpression.AdStoreDestinationId = "DSTID";
adImpression.AdMediaType = "MOVIE";
adImpression.AdTimeWatchedMs = 1234;
adImpression.AdTimeCloseButtonShownMs = 5678;
adImpression.AdLengthMs = 2345;
adImpression.AdHasClicked = false;
adImpression.AdSource = "ADSRC";
adImpression.AdStatusCallback = "STATCALL";
AnalyticsService.Instance.RecordEvent(adImpression);
}
public static void RecordSaleTransactionWithOnlyRequiredValues()
{
TransactionEvent transaction = new TransactionEvent();
transaction.TransactionName = "emptySale";
transaction.TransactionType = TransactionType.SALE;
AnalyticsService.Instance.RecordEvent(transaction);
}
public static void RecordSaleTransactionWithRealCurrency()
{
TransactionEvent transaction = new TransactionEvent();
transaction.TransactionName = "sellItem";
transaction.TransactionType = TransactionType.SALE;
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "thePickOfDestiny",
ItemAmount = 1,
ItemType = "collectable"
});
transaction.ReceivedRealCurrency = new TransactionRealCurrency
{
RealCurrencyType = "EUR",
RealCurrencyAmount = AnalyticsService.Instance.ConvertCurrencyToMinorUnits("EUR", 3.99)
};
AnalyticsService.Instance.RecordEvent(transaction);
}
public static void RecordSaleTransactionWithVirtualCurrency()
{
TransactionEvent transaction = new TransactionEvent();
transaction.TransactionName = "sellItem";
transaction.TransactionType = TransactionType.SALE;
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "elucidator",
ItemAmount = 1,
ItemType = "sword"
});
transaction.ReceivedVirtualCurrencies.Add(new TransactionVirtualCurrency
{
VirtualCurrencyType = VirtualCurrencyType.GRIND,
VirtualCurrencyAmount = 125000,
VirtualCurrencyName = "Cor"
});
AnalyticsService.Instance.RecordEvent(transaction);
}
public static void RecordSaleTransactionWithMultipleVirtualCurrencies()
{
TransactionEvent transaction = new TransactionEvent();
transaction.TransactionName = "sellItem";
transaction.TransactionType = TransactionType.SALE;
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "darkRepulser",
ItemAmount = 1,
ItemType = "weapon"
});
transaction.ReceivedVirtualCurrencies.Add(new TransactionVirtualCurrency
{
VirtualCurrencyType = VirtualCurrencyType.PREMIUM,
VirtualCurrencyAmount = 100,
VirtualCurrencyName = "Soul Points"
});
transaction.ReceivedVirtualCurrencies.Add(new TransactionVirtualCurrency
{
VirtualCurrencyType = VirtualCurrencyType.GRIND,
VirtualCurrencyAmount = 50000,
VirtualCurrencyName = "Gold Coins"
});
AnalyticsService.Instance.RecordEvent(transaction);
}
public static void RecordTradeEventWithOneItem()
{
TransactionEvent transaction = new TransactionEvent();
transaction.TransactionName = "tradeItems";
transaction.TransactionType = TransactionType.TRADE;
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "marketStall",
ItemAmount = 1,
ItemType = "special"
});
transaction.ReceivedItems.Add(new TransactionItem
{
ItemName = "cabbage",
ItemAmount = 50,
ItemType = "food"
});
AnalyticsService.Instance.RecordEvent(transaction);
}
public static void RecordTradeEventWithMultipleItems()
{
TransactionEvent transaction = new TransactionEvent();
transaction.TransactionName = "tradeItems";
transaction.TransactionType = TransactionType.TRADE;
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "flour",
ItemAmount = 100,
ItemType = "food",
});
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "egg",
ItemAmount = 1,
ItemType = "food",
});
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "milk",
ItemAmount = 200,
ItemType = "food",
});
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "salt",
ItemAmount = 1,
ItemType = "food",
});
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "heavyCream",
ItemAmount = 150,
ItemType = "food",
});
transaction.SpentItems.Add(new TransactionItem
{
ItemName = "sugar",
ItemAmount = 15,
ItemType = "food",
});
transaction.ReceivedItems.Add(new TransactionItem
{
ItemName = "pancake",
ItemAmount = 2,
ItemType = "food",
});
transaction.ReceivedItems.Add(new TransactionItem
{
ItemName = "whippedCream",
ItemAmount = 165,
ItemType = "food",
});
AnalyticsService.Instance.RecordEvent(transaction);
}
public static void RecordSaleEventWithOptionalParameters()
{
TransactionEvent transaction = new TransactionEvent();
transaction.PaymentCountry = "PL";
transaction.ProductId = "productid987";
transaction.TransactionId = "0118-999-881-999-119-725-3";
transaction.TransactionReceipt = "transactionreceipt";
transaction.TransactionReceiptSignature = "signature";
transaction.TransactionServer = TransactionServer.APPLE;
transaction.TransactorID = "transactorid-0118-999-881-999-119-725-3";
transaction.StoreItemSkuId = "storeitemskuid";
transaction.StoreItemId = "storeitemid";
transaction.StoreId = "storeid";
transaction.StoreSourceId = "storesourceid";
transaction.TransactionName = "transactionName";
transaction.TransactionType = TransactionType.SALE;
AnalyticsService.Instance.RecordEvent(transaction);
}
public static void RecordAcquisitionSourceEventWithOnlyRequiredValues()
{
AcquisitionSourceEvent acquisitionSource = new AcquisitionSourceEvent();
acquisitionSource.AcquisitionChannel = "CHNL";
acquisitionSource.AcquisitionCampaignId = "123-456-efg";
acquisitionSource.AcquisitionCreativeId = "cre-ati-vei-d";
acquisitionSource.AcquisitionCampaignName = "Interstitial:Halloween21";
acquisitionSource.AcquisitionProvider = "AppsFlyer";
AnalyticsService.Instance.RecordEvent(acquisitionSource);
}
public static void RecordAcquisitionSourceEventWithOptionalParameters()
{
AcquisitionSourceEvent acquisitionSource = new AcquisitionSourceEvent();
acquisitionSource.AcquisitionChannel = "CHNL";
acquisitionSource.AcquisitionCampaignId = "123-456-efg";
acquisitionSource.AcquisitionCreativeId = "cre-ati-vei-d";
acquisitionSource.AcquisitionCampaignName = "Interstitial:Halloween21";
acquisitionSource.AcquisitionProvider = "AppsFlyer";
acquisitionSource.AcquisitionCampaignType = "CPI";
acquisitionSource.AcquisitionCost = 123.4f;
acquisitionSource.AcquisitionCostCurrency = "BGN";
acquisitionSource.AcquisitionNetwork = "Ironsource";
AnalyticsService.Instance.RecordEvent(acquisitionSource);
}
public static void RecordPurchaseEventWithOneItem()
{
TransactionEvent transaction = new TransactionEvent();
transaction.TransactionName = "itemPurchase";
transaction.TransactionType = TransactionType.PURCHASE;
transaction.SpentRealCurrency = new TransactionRealCurrency
{
RealCurrencyAmount = AnalyticsService.Instance.ConvertCurrencyToMinorUnits("JPY", 39800),
RealCurrencyType = "JPY"
};
transaction.ReceivedItems.Add(new TransactionItem
{
ItemName = "nerveGear",
ItemAmount = 1,
ItemType = "electronics",
});
AnalyticsService.Instance.RecordEvent(transaction);
}
public static void RecordPurchaseEventWithMultipleItems()
{
TransactionEvent transaction = new TransactionEvent();
transaction.TransactionName = "itemPurchase";
transaction.TransactionType = TransactionType.PURCHASE;
transaction.SpentVirtualCurrencies.Add(new TransactionVirtualCurrency
{
VirtualCurrencyType = VirtualCurrencyType.GRIND,
VirtualCurrencyAmount = 200500,
VirtualCurrencyName = "Pokemon Dollar"
});
transaction.ReceivedItems.Add(new TransactionItem
{
ItemName = "magicarp",
ItemAmount = 1,
ItemType = "pokemon",
});
transaction.ReceivedItems.Add(new TransactionItem
{
ItemName = "rareCandy",
ItemAmount = 20,
ItemType = "item",
});
AnalyticsService.Instance.RecordEvent(transaction);
}
public static void RecordPurchaseEventWithMultipleCurrencies()
{
TransactionEvent transaction = new TransactionEvent();
transaction.TransactionName = "itemPurchase";
transaction.TransactionType = TransactionType.PURCHASE;
transaction.ReceivedItems.Add(new TransactionItem
{
ItemName = "holySwordExcalibur",
ItemAmount = 1,
ItemType = "weapon"
});
transaction.SpentVirtualCurrencies.Add(new TransactionVirtualCurrency
{
VirtualCurrencyType = VirtualCurrencyType.GRIND,
VirtualCurrencyAmount = 4000000,
VirtualCurrencyName = "Cor"
});
transaction.SpentVirtualCurrencies.Add(new TransactionVirtualCurrency
{
VirtualCurrencyType = VirtualCurrencyType.PREMIUM,
VirtualCurrencyAmount = 50000,
VirtualCurrencyName = "Credit"
});
AnalyticsService.Instance.RecordEvent(transaction);
}
}
}