You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

27 lines
803 B

import { IpcClientService } from "@autoplex/ipc";
import { Microservice } from "@autoplex/microservice";
import { SOCKET_PATH } from "./constants";
export class IpcClient<M extends Microservice = Microservice> extends IpcClientService<M>
{
/**
* The name of the service
*/
public readonly NAME = "Plex";
/**
* The path to the socket file
*/
protected readonly SOCKET_PATH = SOCKET_PATH;
/**
* Fetch a Plex movie link given the TMDb ID if it exists
*/
public async movieLinks(tmdbIds: (number|string)[]) {
let results = await this.request("movie_links", tmdbIds);
if (results.error) {
throw new Error("Failed to fetch Plex movie link");
}
return <{ [tmdbId: string]: string|null }>results.data;
}
}