def rpc_complete_order(self, sender, pubkey, encrypted): try: box = Box(self.signing_key.to_curve25519_private_key(), PublicKey(pubkey)) order = box.decrypt(encrypted) json.loads(order, object_pairs_hook=OrderedDict) temp = Contract(self.db, contract=json.loads(order, object_pairs_hook=OrderedDict), testnet=self.multiplexer.testnet) c = Contract(self.db, hash_value=unhexlify(temp.get_order_id()), testnet=self.multiplexer.testnet) contract_id = c.accept_receipt(self.get_notification_listener(), self.multiplexer.blockchain, receipt_json=json.dumps( temp.contract["buyer_receipt"], indent=4)) self.router.addContact(sender) self.log.info("received receipt for order %s" % contract_id) return ["True"] except Exception, e: self.log.error("unable to parse receipt from %s" % sender) return [e.message]
def rpc_order_confirmation(self, sender, pubkey, encrypted): try: box = Box(self.signing_key.to_curve25519_private_key(), PublicKey(pubkey)) order = box.decrypt(encrypted) c = Contract(self.db, contract=json.loads(order, object_pairs_hook=OrderedDict), testnet=self.multiplexer.testnet) valid = c.accept_order_confirmation(self.get_notification_listener()) if valid is True: self.router.addContact(sender) self.log.info("received confirmation for order %s" % c.get_order_id()) return ["True"] else: self.log.warning("received invalid order confirmation from %s" % sender) return [valid] except Exception, e: self.log.error("unable to decrypt order confirmation from %s" % sender) return [str(e.message)]
def rpc_complete_order(self, sender, pubkey, encrypted): try: box = Box(self.signing_key.to_curve25519_private_key(), PublicKey(pubkey)) order = box.decrypt(encrypted) json.loads(order, object_pairs_hook=OrderedDict) temp = Contract(self.db, contract=json.loads(order, object_pairs_hook=OrderedDict), testnet=self.multiplexer.testnet) c = Contract(self.db, hash_value=unhexlify(temp.get_order_id()), testnet=self.multiplexer.testnet) contract_id = c.accept_receipt(self.get_notification_listener(), self.multiplexer.blockchain, receipt_json=json.dumps(temp.contract["buyer_receipt"], indent=4)) self.router.addContact(sender) self.log.info("received receipt for order %s" % contract_id) return ["True"] except Exception, e: self.log.error("unable to parse receipt from %s" % sender) return [e.message]