tx · 49FFoEg2Skhtwq43ZkHFswZg2y34DTuqMUn5vaUsrGyB

3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV:  -0.05000000 Waves

2023.06.07 23:38 [2612739] smart account 3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV > SELF 0.00000000 Waves

{ "type": 13, "id": "49FFoEg2Skhtwq43ZkHFswZg2y34DTuqMUn5vaUsrGyB", "fee": 5000000, "feeAssetId": null, "timestamp": 1686170398134, "version": 2, "chainId": 84, "sender": "3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV", "senderPublicKey": "DS6HkopS9zypvxX6VhkdNvv6v4wcPZuChRvTwKJeacxE", "proofs": [ "2XWiV8P3AfWLrp8YaHZ18LqhYYNrMvLrVTNxDb6R765cKgwYhC7WL7jpmYFFYaBV8qMyzUotsZA9ssC7vZSEAmoD" ], "script": "base64:BgISCAISAwoBCBIDCgEIEgQKAggIBwARQUlfVE9LRU5fQVNTRVRfSUQBIJPhcjhxBJtq6JpjHwQkt2RTlyw+vGYLg3SvaLskjeJCAAtTVEFUVVNfT1BFTgIEb3BlbgASU1RBVFVTX0NIRUNLRURfT1VUAgtjaGVja2VkX291dAALU1RBVFVTX0RPTkUCBGRvbmUADkNIRUNLRURfT1VUX0JZAg9fY2hlY2tlZF9vdXRfYnkBD2NhbkJlQ2hlY2tlZE91dAEGdGFza0lkBAZzdGF0dXMJAJ0IAgUEdGhpcwkArAICBQZ0YXNrSWQCB19zdGF0dXMJAAACBQZzdGF0dXMFC1NUQVRVU19PUEVOAQ5pc0NvcnJlY3RBZ2VudAIGdGFza0lkB2FnZW50SWQED2NoZWNrb3V0QWdlbnRJZAkAnQgCBQR0aGlzCQCsAgIFBnRhc2tJZAUOQ0hFQ0tFRF9PVVRfQlkJAAACBQ9jaGVja291dEFnZW50SWQFB2FnZW50SWQDAWkBE3JlZ2lzdGVyQ2hhdEdQVFRhc2sBC2Rlc2NyaXB0aW9uBA9jYWxsZXJQdWJsaWNLZXkJALAJAQgFAWkPY2FsbGVyUHVibGljS2V5BAR0eElkCQCwCQEIBQFpDXRyYW5zYWN0aW9uSWQEB3BheW1lbnQJAJEDAggFAWkIcGF5bWVudHMAAAQDZmVlCAUHcGF5bWVudAZhbW91bnQECmZlZUFzc2V0SWQIBQdwYXltZW50B2Fzc2V0SWQDCQECIT0CBQpmZWVBc3NldElkBRFBSV9UT0tFTl9BU1NFVF9JRAkAAgECJlBheW1lbnQgb25seSBwb3NzaWJsZSBpbiB0aGUgQUkgVG9rZW4hAwkAZgIAgMLXLwUDZmVlCQACAQIpUGF5bWVudCBuZWVkcyB0byBiZSBhdCBsZWFzdCBvbiBBSSBUb2tlbiEJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAgxfZGVzY3JpcHRpb24FC2Rlc2NyaXB0aW9uCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUEdHhJZAIMX2luaXRpYWxpemVyBQ9jYWxsZXJQdWJsaWNLZXkJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAgdfc3RhdHVzBQtTVEFUVVNfT1BFTgUDbmlsAWkBE2NoZWNrb3V0Q2hhdEdQVFRhc2sBBnRhc2tJZAQPY2FsbGVyUHVibGljS2V5CQCwCQEIBQFpD2NhbGxlclB1YmxpY0tleQQNdGFza1N0aWxsT3BlbgkBD2NhbkJlQ2hlY2tlZE91dAEFBnRhc2tJZAMJAQEhAQUNdGFza1N0aWxsT3BlbgkAAgECG1Rhc2sgbm90IG9wZW4gZm9yIGNoZWNrb3V0IQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBnRhc2tJZAUOQ0hFQ0tFRF9PVVRfQlkFD2NhbGxlclB1YmxpY0tleQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBnRhc2tJZAIHX3N0YXR1cwUSU1RBVFVTX0NIRUNLRURfT1VUBQNuaWwBaQERZmluaXNoQ2hhdEdQVFRhc2sCBnRhc2tJZAhyZXNwb25zZQQPY2FsbGVyUHVibGljS2V5CQCwCQEIBQFpD2NhbGxlclB1YmxpY0tleQQMY29ycmVjdEFnZW50CQEOaXNDb3JyZWN0QWdlbnQCBQZ0YXNrSWQFD2NhbGxlclB1YmxpY0tleQMJAQEhAQUMY29ycmVjdEFnZW50CQACAQJBVGFzayBtYXkgb25seSBiZSBzdWJtaXR0ZWQgYnkgdGhlIGFnZW50IHdobyBjaGVja2VkIHRoZSB0YXNrIG91dCEJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQZ0YXNrSWQCB19zdGF0dXMFC1NUQVRVU19ET05FCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUGdGFza0lkAgdfcmVzdWx0BQhyZXNwb25zZQUDbmlsAQJ0eAEGdmVyaWZ5AAkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleQKwAJ8=", "height": 2612739, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: FfeFtAriPDgdrzqWU6KTMgPtJX1JewGQSDWrU9ukQReA Next: 88e1FpicY1ovEaZ72UL8zXSdeTFu4BXtCZcd2gjra5sT Diff:
OldNewDifferences
3232 let feeAssetId = payment.assetId
3333 if ((feeAssetId != AI_TOKEN_ASSET_ID))
3434 then throw("Payment only possible in the AI Token!")
35- else [StringEntry((txId + "_description"), description), StringEntry((txId + "_initializer"), callerPublicKey), StringEntry((txId + "_status"), STATUS_OPEN)]
35+ else if ((100000000 > fee))
36+ then throw("Payment needs to be at least on AI Token!")
37+ else [StringEntry((txId + "_description"), description), StringEntry((txId + "_initializer"), callerPublicKey), StringEntry((txId + "_status"), STATUS_OPEN)]
3638 }
3739
3840
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let AI_TOKEN_ASSET_ID = base58'AxGKQRxKo4F2EbhrRq6N2tdLsxtMnpzQsS4QemV6V1W1'
55
66 let STATUS_OPEN = "open"
77
88 let STATUS_CHECKED_OUT = "checked_out"
99
1010 let STATUS_DONE = "done"
1111
1212 let CHECKED_OUT_BY = "_checked_out_by"
1313
1414 func canBeCheckedOut (taskId) = {
1515 let status = getString(this, (taskId + "_status"))
1616 (status == STATUS_OPEN)
1717 }
1818
1919
2020 func isCorrectAgent (taskId,agentId) = {
2121 let checkoutAgentId = getString(this, (taskId + CHECKED_OUT_BY))
2222 (checkoutAgentId == agentId)
2323 }
2424
2525
2626 @Callable(i)
2727 func registerChatGPTTask (description) = {
2828 let callerPublicKey = toUtf8String(i.callerPublicKey)
2929 let txId = toUtf8String(i.transactionId)
3030 let payment = i.payments[0]
3131 let fee = payment.amount
3232 let feeAssetId = payment.assetId
3333 if ((feeAssetId != AI_TOKEN_ASSET_ID))
3434 then throw("Payment only possible in the AI Token!")
35- else [StringEntry((txId + "_description"), description), StringEntry((txId + "_initializer"), callerPublicKey), StringEntry((txId + "_status"), STATUS_OPEN)]
35+ else if ((100000000 > fee))
36+ then throw("Payment needs to be at least on AI Token!")
37+ else [StringEntry((txId + "_description"), description), StringEntry((txId + "_initializer"), callerPublicKey), StringEntry((txId + "_status"), STATUS_OPEN)]
3638 }
3739
3840
3941
4042 @Callable(i)
4143 func checkoutChatGPTTask (taskId) = {
4244 let callerPublicKey = toUtf8String(i.callerPublicKey)
4345 let taskStillOpen = canBeCheckedOut(taskId)
4446 if (!(taskStillOpen))
4547 then throw("Task not open for checkout!")
4648 else [StringEntry((taskId + CHECKED_OUT_BY), callerPublicKey), StringEntry((taskId + "_status"), STATUS_CHECKED_OUT)]
4749 }
4850
4951
5052
5153 @Callable(i)
5254 func finishChatGPTTask (taskId,response) = {
5355 let callerPublicKey = toUtf8String(i.callerPublicKey)
5456 let correctAgent = isCorrectAgent(taskId, callerPublicKey)
5557 if (!(correctAgent))
5658 then throw("Task may only be submitted by the agent who checked the task out!")
5759 else [StringEntry((taskId + "_status"), STATUS_DONE), StringEntry((taskId + "_result"), response)]
5860 }
5961
6062
6163 @Verifier(tx)
6264 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
6365

github/deemru/w8io/3ef1775 
68.21 ms