· 7 years ago · May 12, 2018, 07:18 PM
1import exonum.transactions as tx
2import exonum.datatypes as exonum
3
4transactions = tx.transactions(service_id=128)
5
6
7@transactions
8class Create(metaclass=exonum.EncodingStruct):
9 data_hash = exonum.Hash
10 author_name = exonum.Str
11 author_birthday = exonum.DateTime
12 author_birthplace = exonum.Str
13 created_at = exonum.DateTime
14 was_published = exonum.bool
15 place_of_origin = exonum.Str
16 name = exonum.Str
17 details = exonum.Str
18
19
20def main():
21 # from pysodium import crypto_sign_keypair
22 import json
23 # use nanotime if you need nanoseconds resolution
24 # from datetime import datetime
25
26 secret_key = bytes.fromhex(
27 "5520c351b7760aedeef32687918eb2587ab515e4ae0eeef271"
28 "a0f0a99f1df3710f17189c062e7f3fbb47a21834d41e4d5c53"
29 "88dd7db38c4de1ce732971a38ef9")
30
31 tx = (Create(
32 **{
33 "author_birthday": {
34 "nanos": 696916964,
35 "secs": "1525683304"
36 },
37 "author_birthplace": "dumpster",
38 "author_name": "name",
39 # "created_at" datetime.now():
40 "created_at": {
41 "nanos": 696922154,
42 "secs": "1525683304"
43 },
44 "data_hash": bytes.fromhex("37ec65607daf31e1ec0edd1a18ab8555425320e09e09d97aee0609f3df52fdc3"),
45 "details": "dunno",
46 "name": "test name",
47 "place_of_origin": "dumpster2",
48 "was_published": True
49
50 })
51 .tx(secret_key=secret_key))
52 print(json.dumps(tx, indent=2))
53
54
55if __name__ == "__main__":
56 main()