move repeated attributes into Claim directly, added ClaimList #31

Merged
eukreign merged 7 commits from claim_list_etc into master 2019-04-15 20:18:13 +02:00

View file

@ -4,50 +4,64 @@ package pb;
message Claim {
oneof type {
Stream stream = 1;
Channel channel = 2;
}
Stream stream = 1;
Channel channel = 2;
ClaimList claim_list = 3;
ClaimReference repost = 4;
}
string title = 8;
string description = 9;
Source thumbnail = 10;
repeated string tags = 11;
repeated Language languages = 12;
repeated Location locations = 13;
}
message Stream {
Source source = 1;
string author = 2;
string license = 3;
string license_url = 4;
int64 release_time = 5; // seconds since UNIX epoch
Fee fee = 6;
oneof type {
Image image = 16;
Video video = 17;
Audio audio = 18;
Software software = 19;
}
}
message Channel {
bytes public_key = 1;
string title = 2;
string description = 3;
string thumbnail_url = 4;
repeated string tags = 5;
repeated Language languages = 6;
repeated Location locations = 7;
string contact_email = 8;
string homepage_url = 9;
string cover_url = 10;
string contact_email = 2;
string homepage_url = 3;
Source cover = 4;
}
message Stream {
bytes sd_hash = 1;
message ClaimReference {
bytes claim_hash = 1;
}
string title = 2;
string description = 3;
string thumbnail_url = 4;
repeated string tags = 5;
repeated Language languages = 6;
repeated Location locations = 7;
message ClaimList {
enum ListType {
UNKNOWN_LIST_TYPE = 0;
COLLECTION = 1; // play lists, etc
DERIVATION = 2; // movie in multiple languages, software for different OSes
}
ListType list_type = 1;
repeated ClaimReference claim_references = 2;
}
string author = 8;
string license = 9;
string license_url = 10;
int64 release_time = 11; // seconds since UNIX epoch
message Source {
bytes hash = 1;
string name = 2;
uint64 size = 3;
string media_type = 4;
string media_type = 13;
File file = 14;
Fee fee = 15;
oneof type {
Image image = 16;
Video video = 17;
Audio audio = 18;
}
string url = 5;
bytes sd_hash = 6;
//Torrent bittorrent = 7;
}
message Fee {
@ -62,12 +76,6 @@ message Fee {
uint64 amount = 3; // deweys for LBC/BTC, cents for USD
}
message File {
bytes hash = 3;
string name = 1;
uint64 size = 2;
}
message Image {
uint32 width = 1;
uint32 height = 2;
@ -76,13 +84,26 @@ message Image {
message Video {
uint32 width = 1;
uint32 height = 2;
uint32 duration = 3;
Audio audio = 3;
}
message Audio {
uint32 duration = 1;
}
message Software {
enum OS {
UNKNOWN_OS = 0;
ANY = 1;
LINUX = 2;
WINDOWS = 3;
MAC = 4;
ANDROID = 5;
IOS = 6;
}
string os = 1;
}
// RFC 5646
message Language {
Language language = 1;