woach to spoor, anilist to external
THESE LEXICONS ARE NOT FINAL, she screamed into the wind. converts all references to woach.me to spoor.my to reflect the official domain name. Rename "feed" 3ld to "log" since the content here is separate from what an activity feed would look like. Log has more in common with records. I maintained the name activity over "spoor" here, because I want the items to be easily digested by other services. I think "spoor" is actually a more apt term than "activity" since "activity" is more generic, than the specific mediaspoor it is, but it will do. Changes the "anilist" entry to a more generic "external" entry, which will be able to handle tvdb, or similar.
This commit is contained in:
parent
360a3b3fde
commit
60262fed0c
6 changed files with 53 additions and 30 deletions
|
|
@ -1,14 +0,0 @@
|
|||
{
|
||||
"lexicon": 1,
|
||||
"id": "me.woach.content.anilist",
|
||||
"defs": {
|
||||
"main": {
|
||||
"type": "object",
|
||||
"required": ["id"],
|
||||
"key": "nsid",
|
||||
"properties": {
|
||||
"id": { "type": "integer" }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
30
lexicons/my/spoor/content/external.json
Normal file
30
lexicons/my/spoor/content/external.json
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
"lexicon": 1,
|
||||
"id": "my.spoor.content.external",
|
||||
"defs": {
|
||||
"main": {
|
||||
"type": "object",
|
||||
"required": [ "source", "queryable" ],
|
||||
"key": "nsid",
|
||||
"properties": {
|
||||
"source": {
|
||||
"type": "string",
|
||||
"description": "An nsid for a specific data source. The domain authority governs how to process the queryable",
|
||||
"format": "nsid",
|
||||
"knownValues": [
|
||||
"my.spoor.content.external#tvdb"
|
||||
]
|
||||
},
|
||||
"queryable": {
|
||||
"type": "union",
|
||||
"description": "All the data needed to query the content from the source"
|
||||
},
|
||||
"overrides": {
|
||||
"type": "object",
|
||||
"description": "User defined overrides for the returned content",
|
||||
"properties": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"lexicon": 1,
|
||||
"id": "me.woach.content.media",
|
||||
"id": "my.spoor.content.media",
|
||||
"defs": {
|
||||
"main": {
|
||||
"type": "object",
|
||||
|
|
@ -12,14 +12,14 @@
|
|||
"minLength": 1,
|
||||
"items": {
|
||||
"type": "ref",
|
||||
"ref": "me.woach.content.title"
|
||||
"ref": "my.spoor.content.title"
|
||||
}
|
||||
},
|
||||
"durationData": {
|
||||
"type": "union",
|
||||
"refs": [
|
||||
"me.woach.content.media#television",
|
||||
"me.woach.content.media#book"
|
||||
"my.spoor.content.media#television",
|
||||
"my.spoor.content.media#book"
|
||||
]
|
||||
},
|
||||
"posterImage": {
|
||||
|
|
@ -1,16 +1,17 @@
|
|||
{
|
||||
"lexicon": 1,
|
||||
"id": "me.woach.content.title",
|
||||
"id": "my.spoor.content.title",
|
||||
"defs": {
|
||||
"main": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"language": {
|
||||
"type": "string",
|
||||
"format": "nsid",
|
||||
"knownValues": [
|
||||
"me.woach.content.title#romanization",
|
||||
"me.woach.content.title#english",
|
||||
"me.woach.content.title#native"
|
||||
"my.spoor.content.title#romanization",
|
||||
"my.spoor.content.title#english",
|
||||
"my.spoor.content.title#native"
|
||||
]
|
||||
},
|
||||
"value": { "type": "string", "minLength": 1 }
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
{
|
||||
"lexicon": 1,
|
||||
"id": "me.woach.feed.activity",
|
||||
"id": "my.spoor.log.activity",
|
||||
"defs": {
|
||||
"main": {
|
||||
"type": "record",
|
||||
"description": "A single activity log for a specific show",
|
||||
"description": "A single activity (spoor) for a specific session",
|
||||
"key": "tid",
|
||||
"record": {
|
||||
"type": "object",
|
||||
|
|
@ -13,13 +13,15 @@
|
|||
"properties": {
|
||||
"session": { "type": "ref", "ref": "com.atproto.repo.strongRef" },
|
||||
"progress": {
|
||||
"type": "integer",
|
||||
"description": "The episode/chapter number for the content consumed."
|
||||
"type": "union",
|
||||
"refs": [
|
||||
"my.spoor.log.activity#indexProgress"
|
||||
]
|
||||
},
|
||||
"performedAt": {
|
||||
"type": "string",
|
||||
"format": "datetime",
|
||||
"description": "User-declared timestamp for when they performed the activity."
|
||||
"description": "User-declared timestamp for when they performed the activity. Null implies unknown time."
|
||||
},
|
||||
"createdAt": {
|
||||
"type": "string",
|
||||
|
|
@ -28,6 +30,10 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"indexProgress": {
|
||||
"type": "integer",
|
||||
"description": "The index of the content consumed. Content must be indexable"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"lexicon": 1,
|
||||
"id": "me.woach.feed.session",
|
||||
"id": "my.spoor.log.session",
|
||||
"defs": {
|
||||
"main": {
|
||||
"type": "record",
|
||||
|
|
@ -16,9 +16,9 @@
|
|||
"maxGraphemes": 64,
|
||||
"maxLength": 640
|
||||
},
|
||||
"participants": {
|
||||
"otherParticipants": {
|
||||
"type": "array",
|
||||
"items": { "type": "ref", "ref": "com.atproto.repo.strongRef" }
|
||||
"items": { "type": "string", "format": "did" }
|
||||
},
|
||||
"createdAt": {
|
||||
"type": "string",
|
||||
Loading…
Add table
Add a link
Reference in a new issue