Download monetization/revenue_tracker.py from mgbam/robosage: direct link, hf CLI and curl.
- Browser
- Download file 1.34 kB
-
https://huggingface.co/spaces/mgbam/robosage/resolve/f6b05dc604c3dc8c59a50df72963d1adf238e9a7/monetization/revenue_tracker.py
- Command line
-
hf download hf://spaces/mgbam/robosage@f6b05dc604c3dc8c59a50df72963d1adf238e9a7/monetization/revenue_tracker.py
-
curl -L -o revenue_tracker.py https://huggingface.co/spaces/mgbam/robosage/resolve/f6b05dc604c3dc8c59a50df72963d1adf238e9a7/monetization/revenue_tracker.py
1.34 kB
| # revenue_tracker.py - Tracks clicks and affiliate earnings from robot apps | |
| import logging | |
| from collections import defaultdict | |
| logging.basicConfig(level=logging.INFO) | |
| # Simulated database: user_id -> list of (app_title, clicks, revenue) | |
| USER_REVENUE = defaultdict(list) | |
| class RevenueTracker: | |
| def __init__(self): | |
| self.revenue_data = USER_REVENUE | |
| def log_affiliate_click(self, user_id: str, app_title: str, earning: float = 0.30): | |
| found = False | |
| for app in self.revenue_data[user_id]: | |
| if app[0] == app_title: | |
| app[1] += 1 | |
| app[2] += earning | |
| found = True | |
| break | |
| if not found: | |
| self.revenue_data[user_id].append([app_title, 1, earning]) | |
| logging.info(f"[💰] Click tracked: {user_id} - {app_title} +${earning:.2f}") | |
| def get_user_earnings(self, user_id: str): | |
| return [ | |
| {"title": a[0], "clicks": a[1], "revenue": a[2]} | |
| for a in self.revenue_data.get(user_id, []) | |
| ] | |
| # Example usage | |
| if __name__ == "__main__": | |
| tracker = RevenueTracker() | |
| tracker.log_affiliate_click("user_001", "WaveBot") | |
| tracker.log_affiliate_click("user_001", "WaveBot") | |
| tracker.log_affiliate_click("user_001", "EduHelper", 0.45) | |
| print(tracker.get_user_earnings("user_001")) | |