From 1d34189a9a2e6981509a93a1d72d00cae14482ab Mon Sep 17 00:00:00 2001 From: zhouzhuo Date: Fri, 1 Aug 2025 18:39:41 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0find=20object=E7=9A=84?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config.py | 5 +++++ firebase_tools/find-object-a08e5-f833603c7dd7.json | 13 +++++++++++++ firebase_tools/firebase_helper.py | 7 +++++++ 3 files changed, 25 insertions(+) create mode 100644 firebase_tools/find-object-a08e5-f833603c7dd7.json diff --git a/config.py b/config.py index 3098f0b..9702bcf 100644 --- a/config.py +++ b/config.py @@ -43,6 +43,7 @@ class project(enum.Enum): find_out = 'find_out' find_master = 'find_master' find_it = 'find_it' + find_object = 'find_object' # endregion @@ -58,6 +59,8 @@ def get_firebase_instance(project_id) -> FirebaseHelper: return firebase_helper.get_firebase_find_master() elif project_id == project.find_it.value: return firebase_helper.get_firebase_find_it() + elif project_id == project.find_object.value: + return firebase_helper.get_firebase_find_object() else: return None # endregion @@ -84,5 +87,7 @@ def get_project_cdn(project_id): return 'https://cdn3-find-master.fungame.cloud' elif project_id == project.find_it.value: return 'https://cdn3-find-it.fungame.cloud' + elif project_id == project.find_object.value: + return 'https://cdn3-find-object.fungame.cloud' else: return None \ No newline at end of file diff --git a/firebase_tools/find-object-a08e5-f833603c7dd7.json b/firebase_tools/find-object-a08e5-f833603c7dd7.json new file mode 100644 index 0000000..764ab4c --- /dev/null +++ b/firebase_tools/find-object-a08e5-f833603c7dd7.json @@ -0,0 +1,13 @@ +{ + "type": "service_account", + "project_id": "infra-387702", + "private_key_id": "dfc4b1577c0dd125b7a466fcfd9f8abefe29bfc8", + "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQD3xyHKnXGrQdU7\nvzii8cl84pTlGKqlqGFMwMHLLELUn82qG1l3n2d6MuPK/wwpnGjlLaY4eu1xfpXr\nLNfYPUpJ2ff4iKIef05c9TaSYfTc1jo7GdWrFXt1dAX686dJH+nAbAFJSUVN7f1c\n/ZjLz9N+ohmsCjasSnZg0eT8cYykhz6UBJIvNxyAgET+bbrvLXAPMtLo6TFnJZ5n\nc4Mw6+GHBIqGdxoJ2jLeICSBgPLM0164CicIC7FNsk4wGfG91GoDRh7VYpMUugNx\nMCFLChFHkoEW+TUpF5CWlpAo5rkXlQnNfYxrEgTuySoFOd3fWVzu6Mwy1sdZS7IF\nSF/SG53zAgMBAAECggEALyVOwrTOih2Oqz2pUyfahM7AMg9NeRPe37HVrgkP9lEp\n2vI1RdOo5tGEEn4RHGHMe78B38FUKMJDWGpB771Jw1+cFUg6QL9Mc9ecuKG268Y/\ncjtqMpF12lVnRebSr9FIsvpaDE3KyBc+nFEMn8s9nNzPMbMH0CSi/a0yeu5IKo3J\ne/aI17PgnkwZYpIEMnaDv4pUbVDOkX21SZjL2K4b/2Y1Z4KujXbB3xKZAm/TnZ2L\niGWyhC4InBQtiFYl2LZO2qB6mab4Xgk/pSzjItXj3w98JQPnfIwMBrdU7kxSmJMX\nfXj8ZqtO72xVmn1hsTAyVYXrZyxoxehYL9hwvrcGkQKBgQD9CbS3Ygq/5LntlZwa\nVTvKEWO0feVBEyqCB3tr+eBAHt8vJZk8yt8ZQy8ohes57xE9CdQIPTz5+ZH7Gryi\nGc83bEMsv0tiO8ep35VZg04nlEgP6jLOl/r67upSBYUNWxtkKxyHGXNNyXhS4u0d\no5t/jOO5P13gWBVRRVAHS6jWlwKBgQD6ram3HeEtTjNRPKbzpyZyApx+ixkLlbW/\nOjGLAsdgleGDAXHhBTnE3Si9eG08wfqaw2nV1W4r2bbvbH9NxoGdKJ5ovibqc9PP\nEdHK3YPafTrbLYNXfTU1O93EPjVEqS8f2p6R84+Sq7cjHc3gVFaHvZM9oSdcd3qo\nBgtNf26bBQKBgEdKFMAVvzGRH1Dwdap1mQK1I4IWdiB/Zdp8gSlKnQNzry15SlL2\nVSSo6QBhuoP39sNboYEwv50t0xML1VlWLCtRNRvGSVbDwNz7QPiXJc3A2Qyizu2l\no/BOn3W8WGAK6wytmLv3T6T6vgucI3HWRlkJOJ9YWvp51oevH3zutALBAoGBALGN\nXb8gv8RKNljc39eGVdm89cE/no6xDFkUy9CNOFC1+FPFKzbZb7B7gQaqjJzTPEBw\nFr9pe649d7Afpg+dgWKiSYkg3gmD3ss08OaCfYi82Hozw2qteYlqDMqZ0Tr/piwm\nudfgrpmRXJbX3mF8+wkMAoVNZsa8rbjjBxBuKRZNAoGBAKpUNzVG5axzLEv8kFti\nCZANiZN0bmZDcNrX/yk+2z8t/96ig7myZYuDyqjmCl9QhS8B9pdFoMSQK00jLjJj\nHCwPU7B4iGWj7DxcTP/Fs5XQod+HCUYxX9Jgs1lUx3SG5etfcFKdSwvkz2Fan/BR\n8tTU1sGcVCu9Vtur6cnRaKcA\n-----END PRIVATE KEY-----\n", + "client_email": "find-object-remoteconfig@infra-387702.iam.gserviceaccount.com", + "client_id": "116313055297389791918", + "auth_uri": "https://accounts.google.com/o/oauth2/auth", + "token_uri": "https://oauth2.googleapis.com/token", + "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", + "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/find-object-remoteconfig%40infra-387702.iam.gserviceaccount.com", + "universe_domain": "googleapis.com" +} diff --git a/firebase_tools/firebase_helper.py b/firebase_tools/firebase_helper.py index 2205afc..ef7bf9b 100644 --- a/firebase_tools/firebase_helper.py +++ b/firebase_tools/firebase_helper.py @@ -22,12 +22,14 @@ D2_GOOGLE_SERVER_FILE = os.path.join(curr_dir, "dof2-b9070.json") FindOut_GOOGLE_SERVER_FILE = os.path.join(curr_dir, "dof2-b9070.json") FindMaster_GOOGLE_SERVER_FILE = os.path.join(curr_dir, "find-master-387702.json") FindIt_GOOGLE_SERVER_FILE = os.path.join(curr_dir, "find-it-a08e5.json") +FindObject_GOOGLE_SERVER_FILE = os.path.join(curr_dir, "find-object-a08e5-f833603c7dd7.json") DOF_PROJECT_ID = "find-differences-65e47" D2_PROJECT_ID = "dof2-b9070" FindOut_PROJECT_ID = "dof2-b9070" FindMaster_PROJECT_ID = "find-master-88ffb" FindIt_PROJECT_ID = "find-it-a08e5" +FindObject_PROJECT_ID = "find-object-45a0d" BASE_URL = "https://firebaseremoteconfig.googleapis.com" @@ -53,6 +55,7 @@ class FirebaseHelperInstance(Singleton): self.firebase_find_out = None self.firebase_find_master = None self.firebase_find_it = None + self.firebase_find_object = None def get_firebase_dof(self): if self.firebase_dof is None: @@ -78,6 +81,10 @@ class FirebaseHelperInstance(Singleton): if self.firebase_find_it is None: self.firebase_find_it = FirebaseHelper(FindIt_PROJECT_ID, FindIt_GOOGLE_SERVER_FILE) return self.firebase_find_it + def get_firebase_find_object(self): + if self.firebase_find_object is None: + self.firebase_find_object = FirebaseHelper(FindObject_PROJECT_ID, FindObject_GOOGLE_SERVER_FILE) + return self.firebase_find_object class FirebaseHelper: