Plugin Directory

Changeset 2211499


Ignore:
Timestamp:
12/13/2019 10:57:29 AM (6 years ago)
Author:
oometrics
Message:
  • Session accuracy fixed. Bots and automatic visits are handled. UI fixes
Location:
oometrics/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • oometrics/trunk/assets/css/admin.css

    r2211190 r2211499  
    8181.oo-dashboard-sidebar-footer{position: absolute;left: 0;bottom: 0;width: 100%;padding: 30px 15px 20px 15px}
    8282.oo-dashboard-footer{width: 100%;padding: 0;display: inline-block;}
    83 .oo-dashboard-sidebar-body .oo-session-list{overflow-y: auto;height: calc( 100vh - 268px );}
     83.oo-dashboard-sidebar-body .oo-session-list{overflow-y: auto;height: calc( 100vh - 268px );padding-bottom: 5em}
    8484.reports .oo-dashboard-sidebar-body .oo-session-list{overflow-y: auto;height: calc( 100vh - 245px );}
    8585
  • oometrics/trunk/inc/ajax-class.php

    r2211190 r2211499  
    457457                $session_key = $session_obj['key_hash'];
    458458                $session_content = $session_obj['session'];
    459                 $cart_data = unserialize($session_content['cart']);
    460 
    461                 $totals = unserialize($session_content['cart_totals']);
    462                 $cart['cart_items'] = (empty($cart_data)) ? 0 : count($cart_data);
    463                 $cart['cart_total'] = wc_price($totals['total']);
     459                $cart['cart_items'] = 0;
     460                $cart['cart_totals'] = 0;
     461                if(!empty($session_content['cart']) && !empty($session_content['cart_totals'])){
     462                    $cart_data = unserialize($session_content['cart']);
     463
     464                    $totals = unserialize($session_content['cart_totals']);
     465                    $cart['cart_items'] = (empty($cart_data)) ? 0 : count($cart_data);
     466                    $cart['cart_total'] = wc_price($totals['total']);
     467                }
    464468
    465469                if($session->ses_uid == 0 ){
     
    478482                    $cart['purchased_total'] = wc_price(wc_get_customer_total_spent( $session->ses_uid ));
    479483                }
     484
    480485                $chat = new OOChat();
    481486                $rels = $chat->get_conversations(true,array('ses_id'=>$ses_id));
     
    719724                $session_key = $session_obj['key_hash'];
    720725                $session_content = $session_obj['session'];
    721                 $session_cart = unserialize($session_content['cart']);
     726                $session_cart = empty($session_content['cart']) ? null : unserialize($session_content['cart']);
    722727
    723728                $cart_item_keys = [];
     
    729734
    730735
    731 
     736                    if($pid_str == ',' || empty($pid_str)){
     737
     738                        foreach ($cart_item_keys as $key => $cart_item_key) {
     739                            // if(!in_array($cart_item_key,$keys)){
     740                                unset($session_cart[$cart_item_key]);
     741                            // }
     742                        }
     743                        $result = $ses->update_actual_cart($session_key,$data);
     744                        wp_send_json( array('status'=>$result) );
     745                    }
    732746                    $pids = explode(',',$pid_str);
    733747                    $vids = explode(',',$vid_str);
     
    784798                        $status = 0;
    785799                    }
     800
    786801                    wp_send_json( array('status'=>$status) );
    787802                }
  • oometrics/trunk/inc/session-class.php

    r2211190 r2211499  
    106106                        $this->ses_debug = $session->ses_debug;
    107107                        $this->ses_expired = 0;
    108                         // session_id($session->ses_id);
    109108                        return $this;
    110109                }
     
    297296        $wpdb->insert($this->table,$data);
    298297        $this->ses_id = $wpdb->insert_id;
    299         // session_id($this->ses_id);
     298
    300299        return $this;
    301300    }
     
    418417                    "DELETE FROM $this->table
    419418                     WHERE ses_value <= '%d' && ses_date < '%d'",
    420                      array(0,$now - 15)
     419                     array(0,$now - 20)
    421420                )
    422421            );
    423422        }
     423
     424        $wpdb->query(
     425                $wpdb->prepare(
     426                        "DELETE FROM $this->table
     427                         WHERE ses_resolution IS NULL && ses_date < '%d'",
     428                         array($now - 30)
     429                )
     430        );
    424431
    425432        return true;
     
    701708            $wpdb->prepare(
    702709                "SELECT * FROM $this->table
    703                  WHERE ses_expired = '%d' AND ses_uid != '%d' AND ses_last_act > '%d'
     710                 WHERE ses_expired = '%d' AND ses_uid != '%d' AND ses_last_act > '%d' AND ses_value >= '%d' AND ses_resolution IS NOT NULL
    704711                         ORDER BY $order_by DESC",
    705                  array(0,$this->receiver_id,$diff)
     712                 array(0,$this->receiver_id,$diff,0)
    706713            )
    707714        );
     
    803810            $wpdb->prepare(
    804811                "SELECT COUNT(*) FROM $this->table
    805                  WHERE ses_expired = '%d' AND ses_uid != '%d' AND ses_last_act > '%d'
     812                 WHERE ses_expired = '%d' AND ses_uid != '%d' AND ses_last_act > '%d' AND ses_value >= '%d' AND ses_resolution IS NOT NULL
    806813                         ORDER BY ses_last_act DESC",
    807                  array(0,$this->receiver_id,$diff)
     814                 array(0,$this->receiver_id,$diff,0)
    808815            )
    809816        );
     
    818825                $wpdb->prepare(
    819826                        "SELECT COUNT(*) FROM $table
    820                          WHERE act_date > '%d'",
     827                         WHERE act_date > '%d'
     828                         ",
    821829                         $day
    822830                )
     
    831839            $wpdb->prepare(
    832840                "SELECT COUNT(*) FROM $this->table
    833                  WHERE ses_date > '%d'
    834                          GROUP BY ses_ip
     841                 WHERE ses_date > '%d' AND ses_value > '%d' AND ses_resolution IS NOT NULL
    835842                         ORDER BY ses_last_act DESC",
    836                  time() - 86400
     843                 array(time() - 86400,0)
    837844            )
    838845        );
  • oometrics/trunk/oometrics.php

    r2211190 r2211499  
    245245                    'chat_interval' => 2000,
    246246                    'session_interval' => 5000,
    247                     'session_lifetime' => ini_get("session.gc_maxlifetime") ? ini_get("session.gc_maxlifetime") : 600,
     247                    'session_lifetime' => 300, //ini_get("session.gc_maxlifetime") ? ini_get("session.gc_maxlifetime") : 600,
    248248                    'session_value_base' => 15,
    249249                    'clean_zero_values' => 'yes',
  • oometrics/trunk/readme.txt

    r2211197 r2211499  
    1 === OOMetrics - WooCommerce Analytics, Chats and Live Interactions ===
     1=== WooCommerce Live Analytics, Chat and CRM All in One ===
    22Contributors: oometrics
    3 Donate link: https://oometrics.com/donate
     3Donate link: http://oometrics.com/donate
    44Tags: ecommerce, e-commerce, Analytics, chat, CRM, woocommerce live, statistics, customer relationship, woocommerce
    55Requires at least: 4.0
     
    1414== Description ==
    1515
    16 Make WooCommerce Live
     16Turn your WooCommerce Store into a LIVE one! OOMetrics captures every activity and gives you tools to offer something; right away!
     17
     18
     19= Make WooCommerce Live =
    1720You can observe your store and customer activities with powerfull tools to communicate and offer something right away! Even for specific customer only.
    1821
    19 Push Stuff to The Session, Remotely, Individually
     22= Push Stuff to The Session, Remotely, Individually =
    2023You can push Discounts, Coupons and Popups to any session instantly and for each session INDIVIDUALLY. Only the customer selected will see the price changes and other features! You can even pop a chat.
    2124
    22 All in ONE
    23 We designed a software which provides a solution! Powerful features, modern approach and quality UI/UX are parts of it! You have your store statistics, customer activities and a chat panel all in one page to give you speed.
     25= All in ONE =
     26We designed a software which provides a solution! Powerful features, modern approach and quality UI/UX are parts of it! You have your WooCommerce store statistics, customer activities and a push panel all in one page to give you speed. Customr digital info, shopping info and activities alongside powerfull chat and instant push system will give you the tools and speed to interact.  Mix your customer activity, shopping history and dynamic content to increase your customer retention.
    2427
    25 Manipulate Cart Content Remotely
    26 You have the ability to manipulate customer cart content, you can edit, add or delete items in order to assist or give special offers dynamically.
     28= Manipulate Cart Content Remotely =
     29You have the ability to manipulate customer cart content, you can edit, add or delete items in order to assist or give special offers dynamically. As mentioned before you can apply sales prices for each product and customer , apply coupon to customer cart and you can always send the most related pop!
    2730
    28 Reports and Analytics
    29 OOMetrics will keep the data for every customer so you can look back by using reports page.
     31= WooCommerce Reports and Analytics =
     32OOMetrics is a Realtime WooCommerce Analytics with the ability to store the data so you can look back by using reports page. These informations are: Which products the customer landed, visited and what did he/she do (added to cart, visit specific page and ...), shopping history, which pop up delivered and which one clicked, which sessions are the successfull one and ...
     33
     34== Powerfull UI/UX ==
     35Storing user activity is serious and we optimized it. Changing tab, leaving the window and such event is taken into account on storing data and activity accuracy. All the features are accessible on only one page!
    3036
    3137
    32 Key Features:
     38== Key Features: ==
    3339
    3440* Store Analytics + Website Statistics
     
    5056
    5157Automatic installation is the easiest option -- WordPress will handles the file transfer, and you won’t need to leave your web browser. To do an automatic install of OOMetrics, log in to your WordPress dashboard, navigate to the Plugins menu, and click “Add New.”
    52  
     58
    5359In the search field type “OOMetrics,” then click “Search Plugins.” Once you’ve found us,  you can view details about it such as the point release, rating, and description. Most importantly of course, you can install it by! Click “Install Now,” and WordPress will take it from there.
    5460
     
    6066 * Configure your settings via new dashboard menu item "OOMetrics" > Settings
    6167
    62 
     68PLEASE make sure to configure OOMetrics first (Navigation: WP Dashboard / OOMetrics / Settings)
    6369== Frequently Asked Questions ==
    6470
     
    6773Sure, OOMetrics is compatible with GA
    6874
    69 = How accurate is the data = 
     75= How accurate is the data =
    7076
    7177We will clean the data and block most bots and crawlers and remove unneccessary visits
    7278There is an option in settings.
    7379
    74  
     80
    7581
    7682== Screenshots ==
    7783
    78841. OOMetrics main dashboard
    79 2. Push Types 
     852. Push Types
    80863. Push Type: Product Sale Options
    81874. Push Type: PopUp Options
Note: See TracChangeset for help on using the changeset viewer.