diff --git a/proto/certificate.proto b/proto/certificate.proto deleted file mode 100644 index 86fcac5..0000000 --- a/proto/certificate.proto +++ /dev/null @@ -1,20 +0,0 @@ -syntax = "proto2"; - -package pb; - -enum KeyType { - UNKNOWN_PUBLIC_KEY_TYPE = 0; - NIST256p = 1; - NIST384p = 2; - SECP256k1 = 3; -} - -message Certificate { - enum Version { - UNKNOWN_VERSION = 0; - _0_0_1 = 1; - } - required Version version = 1; - required KeyType keyType = 2; - required bytes publicKey = 4; -} diff --git a/proto/channel.proto b/proto/channel.proto new file mode 100644 index 0000000..347f853 --- /dev/null +++ b/proto/channel.proto @@ -0,0 +1,11 @@ +syntax = "proto3"; + +package pb; + +message Channel { + bytes public_key = 1; + string name = 2; + string description = 3; + string thumbnail_url = 4; // url or claim ID? + string cover_url = 5; // url or claim ID? +} diff --git a/proto/claim.proto b/proto/claim.proto index ff590f1..9362748 100644 --- a/proto/claim.proto +++ b/proto/claim.proto @@ -1,24 +1,17 @@ -syntax = "proto2"; +syntax = "proto3"; package pb; import "stream.proto"; -import "certificate.proto"; -import "signature.proto"; +import "channel.proto"; message Claim { - enum Version { - UNKNOWN_VERSION = 0; - _0_0_1 = 1; + enum Type { + STREAM = 0; + CHANNEL = 1; } - required Version version = 1; - enum ClaimType { - UNKNOWN_CLAIM_TYPE = 0; - streamType = 1; - certificateType = 2; - } - required ClaimType claimType = 2; - optional Stream stream = 3; - optional Certificate certificate = 4; - optional Signature publisherSignature = 5; + + Type type = 1; // do we need this? + Stream stream = 2; + Channel channel = 3; } diff --git a/proto/fee.proto b/proto/fee.proto index dedbd8c..9ba2851 100644 --- a/proto/fee.proto +++ b/proto/fee.proto @@ -1,20 +1,15 @@ -syntax = "proto2"; +syntax = "proto3"; package pb; message Fee { - enum Version { - UNKNOWN_VERSION = 0; - _0_0_1 = 1; - } enum Currency { - UNKNOWN_CURRENCY = 0; - LBC = 1; - BTC = 2; - USD = 3; + LBC = 0; + BTC = 1; + USD = 2; } - required Version version = 1; - required Currency currency = 2; - required bytes address = 3; - required float amount = 4; + + Currency currency = 1; + bytes address = 2; + float amount = 3; } diff --git a/proto/file.proto b/proto/file.proto new file mode 100644 index 0000000..4cc52d1 --- /dev/null +++ b/proto/file.proto @@ -0,0 +1,8 @@ +syntax = "proto3"; + +package pb; + +message File { + string name = 1; + uint64 size = 2; +} diff --git a/proto/metadata.proto b/proto/metadata.proto deleted file mode 100644 index 618a5f2..0000000 --- a/proto/metadata.proto +++ /dev/null @@ -1,214 +0,0 @@ -syntax = "proto2"; - -package pb; - -import "fee.proto"; - -message Metadata { - enum Version { - UNKNOWN_VERSION = 0; - _0_0_1 = 1; - _0_0_2 = 2; - _0_0_3 = 3; - _0_1_0 = 4; - } - enum Language { - UNKNOWN_LANGUAGE = 0; - en = 1; - aa = 2; - ab = 3; - ae = 4; - af = 5; - ak = 6; - am = 7; - an = 8; - ar = 9; - as = 10; - av = 11; - ay = 12; - az = 13; - ba = 14; - be = 15; - bg = 16; - bh = 17; - bi = 18; - bm = 19; - bn = 20; - bo = 21; - br = 22; - bs = 23; - ca = 24; - ce = 25; - ch = 26; - co = 27; - cr = 28; - cs = 29; - cu = 30; - cv = 31; - cy = 32; - da = 33; - de = 34; - dv = 35; - dz = 36; - ee = 37; - el = 38; - eo = 39; - es = 40; - et = 41; - eu = 42; - fa = 43; - ff = 44; - fi = 45; - fj = 46; - fo = 47; - fr = 48; - fy = 49; - ga = 50; - gd = 51; - gl = 52; - gn = 53; - gu = 54; - gv = 55; - ha = 56; - he = 57; - hi = 58; - ho = 59; - hr = 60; - ht = 61; - hu = 62; - hy = 63; - hz = 64; - ia = 65; - id = 66; - ie = 67; - ig = 68; - ii = 69; - ik = 70; - io = 71; - is = 72; - it = 73; - iu = 74; - ja = 75; - jv = 76; - ka = 77; - kg = 78; - ki = 79; - kj = 80; - kk = 81; - kl = 82; - km = 83; - kn = 84; - ko = 85; - kr = 86; - ks = 87; - ku = 88; - kv = 89; - kw = 90; - ky = 91; - la = 92; - lb = 93; - lg = 94; - li = 95; - ln = 96; - lo = 97; - lt = 98; - lu = 99; - lv = 100; - mg = 101; - mh = 102; - mi = 103; - mk = 104; - ml = 105; - mn = 106; - mr = 107; - ms = 108; - mt = 109; - my = 110; - na = 111; - nb = 112; - nd = 113; - ne = 114; - ng = 115; - nl = 116; - nn = 117; - no = 118; - nr = 119; - nv = 120; - ny = 121; - oc = 122; - oj = 123; - om = 124; - or = 125; - os = 126; - pa = 127; - pi = 128; - pl = 129; - ps = 130; - pt = 131; - qu = 132; - rm = 133; - rn = 134; - ro = 135; - ru = 136; - rw = 137; - sa = 138; - sc = 139; - sd = 140; - se = 141; - sg = 142; - si = 143; - sk = 144; - sl = 145; - sm = 146; - sn = 147; - so = 148; - sq = 149; - sr = 150; - ss = 151; - st = 152; - su = 153; - sv = 154; - sw = 155; - ta = 156; - te = 157; - tg = 158; - th = 159; - ti = 160; - tk = 161; - tl = 162; - tn = 163; - to = 164; - tr = 165; - ts = 166; - tt = 167; - tw = 168; - ty = 169; - ug = 170; - uk = 171; - ur = 172; - uz = 173; - ve = 174; - vi = 175; - vo = 176; - wa = 177; - wo = 178; - xh = 179; - yi = 180; - yo = 181; - za = 182; - zh = 183; - zu = 184; - } - required Version version = 1; - required Language language = 2; - required string title = 3; - required string description = 4; - required string author = 5; - required string license = 6; - required bool nsfw = 7; - - optional Fee fee = 8; - optional string thumbnail = 9; - optional string preview = 10; - optional string licenseUrl = 11; -} diff --git a/proto/signature.proto b/proto/signature.proto deleted file mode 100644 index 9ebfc0b..0000000 --- a/proto/signature.proto +++ /dev/null @@ -1,16 +0,0 @@ -syntax = "proto2"; - -package pb; - -import "certificate.proto"; - -message Signature { - enum Version { - UNKNOWN_VERSION = 0; - _0_0_1 = 1; - } - required Version version = 1; - required KeyType signatureType = 2; - required bytes signature = 3; - required bytes certificateId = 4; -} diff --git a/proto/source.proto b/proto/source.proto deleted file mode 100644 index 4d2b1dc..0000000 --- a/proto/source.proto +++ /dev/null @@ -1,18 +0,0 @@ -syntax = "proto2"; - -package pb; - -message Source { - enum Version { - UNKNOWN_VERSION = 0; - _0_0_1 = 1; - } - required Version version = 1; - enum SourceTypes { - UNKNOWN_SOURCE_TYPE = 0; - lbry_sd_hash = 1; - } - required SourceTypes sourceType = 2; - required bytes source = 3; - required string contentType = 4; -} diff --git a/proto/stream.proto b/proto/stream.proto index c6c666a..77a1051 100644 --- a/proto/stream.proto +++ b/proto/stream.proto @@ -1,17 +1,24 @@ -syntax = "proto2"; +syntax = "proto3"; package pb; -import "metadata.proto"; -import "source.proto"; - +import "fee.proto"; +import "file.proto"; message Stream { - enum Version { - UNKNOWN_VERSION = 0; - _0_0_1 = 1; - } - required Version version = 1; - required Metadata metadata = 2; - required Source source = 3; + bytes hash = 1; + string language = 2; + string title = 3; + string author = 4; + string description = 5; + string media_type = 6; + string license = 7; + File file = 8; + + Fee fee = 16; + string license_url = 17; + string thumbnail_url = 18; + uint32 duration = 19; + repeated string tags = 20; + int64 release_time = 21; // seconds since UNIX epoch }