Esempio n. 1
0
        public IDictionary <string, dynamic> removeNullValues(BuildQueryParams val)
        {
            string jsonString  = Newtonsoft.Json.JsonConvert.SerializeObject(val);
            var    allValue    = JsonConvert.DeserializeObject <IDictionary <string, dynamic> >(jsonString);
            var    withoutNull = allValue.Where(f => f.Value != null).ToDictionary(x => x.Key, x => x.Value);

            return(withoutNull);
        }
        /// <summary>
        /// Params For Push Tags.
        /// </summary>
        public static IDictionary <string, dynamic> EventForPushTags(long accountId, string tagKey, string tagValue, string userId, bool isDevelopmentMode)
        {
            BuildQueryParams requestParams =
                BuildQueryParams.Builder.getInstance()
                // .withAp()
                //  .withEd()
                .withMinifiedEventType((int)EVENT_TYPES.PUSH)
                .withMinifiedTags(tagKey, tagValue)
                .withSid(DateTimeOffset.UtcNow.ToUnixTimeSeconds())
                .withUuid(accountId, userId)
                .build();
            IDictionary <string, dynamic> map = requestParams.removeNullValues(requestParams);

            return(map);
        }
        /// <summary>
        /// Params For Tracking Goal.
        /// </summary>
        public static IDictionary <string, dynamic> EventForTrackingGoal(long accountId, int campaignId, int variationId, string userId,
                                                                         int goalId, string revenueValue, bool isDevelopmentMode)
        {
            BuildQueryParams requestParams = BuildQueryParams.Builder.getInstance()
                                             // .withAp()
                                             // .withEd()
                                             .withMinifiedCampaignId(campaignId)
                                             .withMinifiedVariationId(variationId)
                                             .withMinifiedEventType((int)EVENT_TYPES.TRACK_GOAL)
                                             .withMinifiedGoalId(goalId)
                                             .withRevenue(revenueValue)
                                             .withSid(DateTimeOffset.UtcNow.ToUnixTimeSeconds())
                                             .withUuid(accountId, userId)
                                             .build();

            IDictionary <string, dynamic> map = requestParams.removeNullValues(requestParams);

            return(map);
        }