File size: 896 Bytes
e05d5a8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import firebase_admin
from firebase_admin import credentials
from firebase_admin import db

# Initialize Firebase Admin with your service account credentials
cred = credentials.Certificate('service.json')
firebase_admin.initialize_app(cred, {
    'databaseURL': 'https://chipling-ai-default-rtdb.firebaseio.com'
})

db = firebase_admin.db

class NimbusAuthKey:
    """
    Nimbus Authentication Key
    """

    def __init__(self):
        self.name = "Nimbus"

    def get_user(self, key):
        """
        Get user from firebase
        """
        try:
            database = db.reference('users')
            users = database.get()
            for uid, user_data in users.items():
                if user_data.get('apiKey') == key:
                    return uid
            return None
        except Exception as e:
            print(f"Error fetching user: {e}")
            return None