diff --git a/psl_proof/__main__.py b/psl_proof/__main__.py index 3826e9c..1d9cfb6 100644 --- a/psl_proof/__main__.py +++ b/psl_proof/__main__.py @@ -19,7 +19,7 @@ def load_config() -> Dict[str, Any]: 'input_dir': INPUT_DIR, 'salt': '5EkntCWI', 'validator_base_api_url': 'https://api.vana.genesis.dfusion.ai' - #'validator_base_api_url': 'https://d9d9-169-0-168-109.ngrok-free.app' + #'validator_base_api_url': 'https://a34c-169-0-168-109.ngrok-free.app' } logging.info(f"Using config: {json.dumps(config, indent=2)}") return config diff --git a/psl_proof/models/cargo_data.py b/psl_proof/models/cargo_data.py index 5b4eb42..42dc7a2 100644 --- a/psl_proof/models/cargo_data.py +++ b/psl_proof/models/cargo_data.py @@ -101,48 +101,45 @@ class SourceData: source: DataSource # "telegram" user: str submission_token: str - submission_id: str - submission_by: str submission_date: datetime + proof_token: str source_chats: List[SourceChatData] # List of SourceChatData instances - def __init__(self, source, submission_token, submission_id, submission_by, submission_date, user, source_chats=None): + def __init__(self, source, submission_token, submission_date, user, source_chats=None, proof_token=None, ): self.source = source self.user = user self.submission_token = submission_token - self.submission_id = submission_id - self.submission_by = submission_by self.submission_date = submission_date + proof_token = proof_token self.source_chats = source_chats or [] def to_dict(self): return { "source": self.source.name, # Use .name to convert enum to string - "user": self.user, - "submission_id": self.submission_id, - "submission_by": self.submission_by, + "user": str(self.user), "submission_date": self.submission_date.isoformat() if isinstance(self.submission_date, datetime) else str(self.submission_date), "chats": [source_chat.to_dict() for source_chat in self.source_chats] } def to_submission_json(self) : json = { - "DataSource": self.source.value, # Use .name to convert enum to string - "SourceId": self.submission_id, + "DataSource": self.source.value, # enum value + "SourceId": str(self.user), "ProofToken": self.proof_token, - "SubmittedBy": self.submission_by, + "SubmittedBy": self.submission_by(), "SubmittedOn": self.submission_date.isoformat(), "Chats": [source_chat.to_submission_json() for source_chat in self.source_chats] } #print(f"Submission json:{json}") return json + def submission_by(self): + return f"{self.source.name}:{self.user}" + def to_verification_json(self) -> dict: return { "Token": self.submission_token, - "Reference": self.submission_id #, - #"SubmittedBy": self.submission_by, - #"SubmittedOn": self.submission_date.isoformat(), + "Reference": self.submission_by() } # ChatData for Source (final destination data structure) diff --git a/psl_proof/proof.py b/psl_proof/proof.py index c7dd61e..c6c9734 100644 --- a/psl_proof/proof.py +++ b/psl_proof/proof.py @@ -43,7 +43,6 @@ def generate(self) -> ProofResponse: (source_data.source, source_data.user), salt ) - source_data.submission_by = source_user_hash_64 proof_failed_reason = "" verify_result = verify_token( self.config, @@ -73,7 +72,7 @@ def generate(self) -> ProofResponse: cargo_data.chat_histories = submission_history_data.chat_histories cargo_data.last_submission = submission_history_data.last_submission - cool_down_period = 12 # hours + cool_down_period = 4 # hours submission_time_elapsed = cargo_data.submission_time_elapsed() if is_data_authentic and cargo_data.last_submission and submission_time_elapsed < cool_down_period: is_data_authentic = False @@ -202,8 +201,6 @@ def get_source_data( submission_token = input_data.get('submission_token', '') #print("submission_token: {submission_token}") - submission_id = input_data.get('submission_id', '') - input_user = input_data.get('user') #print(f"input_user: {input_user}") @@ -211,8 +208,6 @@ def get_source_data( source=input_source, user=input_user, submission_token = submission_token, - submission_id = submission_id, - submission_by = input_user, submission_date = submission_timestamp )