import os import pandas as pd from simple_salesforce import Salesforce def connect_salesforce(): return Salesforce( username=os.getenv("SF_USERNAME", "greenenergy@vedavathi.com"), password=os.getenv("SF_PASSWORD", "Vedavathi@04"), security_token=os.getenv("SF_TOKEN", "jqe4His8AcuFJucZz5NBHfGU") ) def fetch_pole_data_from_salesforce(sf): query = """ SELECT Name, Solar_Generation__c, Wind_Generation__c, Power_Required__c, Camera_Status__c, Tilt__c, Vibration__c, Alert_Level__c, Power_Sufficient__c FROM YourObjectAPI__c LIMIT 50 """ # Replace 'YourObjectAPI__c' with correct object name result = sf.query(query) records = result['records'] data = [] for r in records: data.append({ "Pole ID": r['Name'], "Solar Gen (kWh)": r.get('Solar_Generation__c', 0), "Wind Gen (kWh)": r.get('Wind_Generation__c', 0), "Power Required (kWh)": r.get('Power_Required__c', 0), "Power Sufficient": r.get('Power_Sufficient__c', "No"), "Camera Status": r.get('Camera_Status__c', "Offline"), "Tilt (°)": r.get('Tilt__c', 0), "Vibration (g)": r.get('Vibration__c', 0), "Anomalies": "N/A", "Alert Level": r.get('Alert_Level__c', "Green"), "Date": pd.Timestamp.today().date() }) return pd.DataFrame(data)