pluginv1

package module
v0.0.0-...-1e0776f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 20, 2026 License: MIT Imports: 9 Imported by: 1

Documentation

Index

Constants

View Source
const (
	Enricher_GetCapabilities_FullMethodName = "/viewra.plugin.v1.Enricher/GetCapabilities"
	Enricher_Enrich_FullMethodName          = "/viewra.plugin.v1.Enricher/Enrich"
)
View Source
const (
	HostData_GetMedia_FullMethodName             = "/viewra.plugin.v1.HostData/GetMedia"
	HostData_GetMediaDetails_FullMethodName      = "/viewra.plugin.v1.HostData/GetMediaDetails"
	HostData_GetMediaByExternalId_FullMethodName = "/viewra.plugin.v1.HostData/GetMediaByExternalId"
	HostData_SearchMedia_FullMethodName          = "/viewra.plugin.v1.HostData/SearchMedia"
	HostData_ListMediaByLibrary_FullMethodName   = "/viewra.plugin.v1.HostData/ListMediaByLibrary"
	HostData_GetLibrary_FullMethodName           = "/viewra.plugin.v1.HostData/GetLibrary"
	HostData_GetFilePath_FullMethodName          = "/viewra.plugin.v1.HostData/GetFilePath"
	HostData_ListMediaByGenre_FullMethodName     = "/viewra.plugin.v1.HostData/ListMediaByGenre"
	HostData_ListMediaByDirector_FullMethodName  = "/viewra.plugin.v1.HostData/ListMediaByDirector"
)
View Source
const (
	HostStorage_KVGet_FullMethodName                = "/viewra.plugin.v1.HostStorage/KVGet"
	HostStorage_KVSet_FullMethodName                = "/viewra.plugin.v1.HostStorage/KVSet"
	HostStorage_KVDelete_FullMethodName             = "/viewra.plugin.v1.HostStorage/KVDelete"
	HostStorage_KVList_FullMethodName               = "/viewra.plugin.v1.HostStorage/KVList"
	HostStorage_GetDatabasePath_FullMethodName      = "/viewra.plugin.v1.HostStorage/GetDatabasePath"
	HostStorage_RegisterSchema_FullMethodName       = "/viewra.plugin.v1.HostStorage/RegisterSchema"
	HostStorage_GetDatabaseStats_FullMethodName     = "/viewra.plugin.v1.HostStorage/GetDatabaseStats"
	HostStorage_ExecuteSQL_FullMethodName           = "/viewra.plugin.v1.HostStorage/ExecuteSQL"
	HostStorage_QuerySQL_FullMethodName             = "/viewra.plugin.v1.HostStorage/QuerySQL"
	HostStorage_VectorStoreEmbedding_FullMethodName = "/viewra.plugin.v1.HostStorage/VectorStoreEmbedding"
	HostStorage_VectorStoreBatch_FullMethodName     = "/viewra.plugin.v1.HostStorage/VectorStoreBatch"
	HostStorage_VectorSearch_FullMethodName         = "/viewra.plugin.v1.HostStorage/VectorSearch"
	HostStorage_VectorSearchText_FullMethodName     = "/viewra.plugin.v1.HostStorage/VectorSearchText"
	HostStorage_VectorGet_FullMethodName            = "/viewra.plugin.v1.HostStorage/VectorGet"
	HostStorage_VectorDelete_FullMethodName         = "/viewra.plugin.v1.HostStorage/VectorDelete"
	HostStorage_VectorDeleteByType_FullMethodName   = "/viewra.plugin.v1.HostStorage/VectorDeleteByType"
	HostStorage_VectorCount_FullMethodName          = "/viewra.plugin.v1.HostStorage/VectorCount"
)
View Source
const (
	HostUserMetadata_Get_FullMethodName      = "/viewra.plugin.v1.HostUserMetadata/Get"
	HostUserMetadata_Set_FullMethodName      = "/viewra.plugin.v1.HostUserMetadata/Set"
	HostUserMetadata_Delete_FullMethodName   = "/viewra.plugin.v1.HostUserMetadata/Delete"
	HostUserMetadata_ListKeys_FullMethodName = "/viewra.plugin.v1.HostUserMetadata/ListKeys"
)
View Source
const (
	HostFileParser_ParseNFO_FullMethodName              = "/viewra.plugin.v1.HostFileParser/ParseNFO"
	HostFileParser_ExtractEmbeddedImages_FullMethodName = "/viewra.plugin.v1.HostFileParser/ExtractEmbeddedImages"
)
View Source
const (
	HostRatings_ListRatings_FullMethodName           = "/viewra.plugin.v1.HostRatings/ListRatings"
	HostRatings_GetRatedEntityIDs_FullMethodName     = "/viewra.plugin.v1.HostRatings/GetRatedEntityIDs"
	HostRatings_GetPositivelyRatedIDs_FullMethodName = "/viewra.plugin.v1.HostRatings/GetPositivelyRatedIDs"
	HostRatings_HasRatings_FullMethodName            = "/viewra.plugin.v1.HostRatings/HasRatings"
)
View Source
const (
	HostPlugins_ListCapabilities_FullMethodName          = "/viewra.plugin.v1.HostPlugins/ListCapabilities"
	HostPlugins_ListProviders_FullMethodName             = "/viewra.plugin.v1.HostPlugins/ListProviders"
	HostPlugins_SetCapabilityPreference_FullMethodName   = "/viewra.plugin.v1.HostPlugins/SetCapabilityPreference"
	HostPlugins_ClearCapabilityPreference_FullMethodName = "/viewra.plugin.v1.HostPlugins/ClearCapabilityPreference"
	HostPlugins_GetCapabilityPreferences_FullMethodName  = "/viewra.plugin.v1.HostPlugins/GetCapabilityPreferences"
	HostPlugins_InvokeCapability_FullMethodName          = "/viewra.plugin.v1.HostPlugins/InvokeCapability"
	HostPlugins_InvokeCapabilityStream_FullMethodName    = "/viewra.plugin.v1.HostPlugins/InvokeCapabilityStream"
	HostPlugins_DescribeCapability_FullMethodName        = "/viewra.plugin.v1.HostPlugins/DescribeCapability"
	HostPlugins_InvokeVectorSearch_FullMethodName        = "/viewra.plugin.v1.HostPlugins/InvokeVectorSearch"
)
View Source
const (
	HostProgress_ListWatchedItems_FullMethodName    = "/viewra.plugin.v1.HostProgress/ListWatchedItems"
	HostProgress_ListInProgressItems_FullMethodName = "/viewra.plugin.v1.HostProgress/ListInProgressItems"
	HostProgress_GetWatchedEntityIDs_FullMethodName = "/viewra.plugin.v1.HostProgress/GetWatchedEntityIDs"
	HostProgress_HasWatchHistory_FullMethodName     = "/viewra.plugin.v1.HostProgress/HasWatchHistory"
)
View Source
const (
	PluginCore_Initialize_FullMethodName        = "/viewra.plugin.v1.PluginCore/Initialize"
	PluginCore_Shutdown_FullMethodName          = "/viewra.plugin.v1.PluginCore/Shutdown"
	PluginCore_HealthCheck_FullMethodName       = "/viewra.plugin.v1.PluginCore/HealthCheck"
	PluginCore_GetSettingsSchema_FullMethodName = "/viewra.plugin.v1.PluginCore/GetSettingsSchema"
	PluginCore_Configure_FullMethodName         = "/viewra.plugin.v1.PluginCore/Configure"
	PluginCore_GetSubscriptions_FullMethodName  = "/viewra.plugin.v1.PluginCore/GetSubscriptions"
	PluginCore_OnEvent_FullMethodName           = "/viewra.plugin.v1.PluginCore/OnEvent"
	PluginCore_GetRoutes_FullMethodName         = "/viewra.plugin.v1.PluginCore/GetRoutes"
	PluginCore_HandleHTTP_FullMethodName        = "/viewra.plugin.v1.PluginCore/HandleHTTP"
	PluginCore_HandleHTTPStream_FullMethodName  = "/viewra.plugin.v1.PluginCore/HandleHTTPStream"
)
View Source
const (
	PluginProvider_Invoke_FullMethodName                 = "/viewra.plugin.v1.PluginProvider/Invoke"
	PluginProvider_InvokeStream_FullMethodName           = "/viewra.plugin.v1.PluginProvider/InvokeStream"
	PluginProvider_DescribeMethods_FullMethodName        = "/viewra.plugin.v1.PluginProvider/DescribeMethods"
	PluginProvider_GetCapabilities_FullMethodName        = "/viewra.plugin.v1.PluginProvider/GetCapabilities"
	PluginProvider_ListModels_FullMethodName             = "/viewra.plugin.v1.PluginProvider/ListModels"
	PluginProvider_GenerateEmbedding_FullMethodName      = "/viewra.plugin.v1.PluginProvider/GenerateEmbedding"
	PluginProvider_GenerateEmbeddingBatch_FullMethodName = "/viewra.plugin.v1.PluginProvider/GenerateEmbeddingBatch"
	PluginProvider_Chat_FullMethodName                   = "/viewra.plugin.v1.PluginProvider/Chat"
	PluginProvider_ChatStream_FullMethodName             = "/viewra.plugin.v1.PluginProvider/ChatStream"
	PluginProvider_HealthCheck_FullMethodName            = "/viewra.plugin.v1.PluginProvider/HealthCheck"
)
View Source
const (
	SearchProviderService_Search_FullMethodName          = "/viewra.plugin.v1.SearchProviderService/Search"
	SearchProviderService_GetSuggestions_FullMethodName  = "/viewra.plugin.v1.SearchProviderService/GetSuggestions"
	SearchProviderService_GetProviderInfo_FullMethodName = "/viewra.plugin.v1.SearchProviderService/GetProviderInfo"
)
View Source
const (
	TrendingProviderService_GetTrending_FullMethodName     = "/viewra.plugin.v1.TrendingProviderService/GetTrending"
	TrendingProviderService_GetProviderInfo_FullMethodName = "/viewra.plugin.v1.TrendingProviderService/GetProviderInfo"
)
View Source
const (
	VectorSearch_Search_FullMethodName         = "/viewra.plugin.v1.VectorSearch/Search"
	VectorSearch_FindSimilar_FullMethodName    = "/viewra.plugin.v1.VectorSearch/FindSimilar"
	VectorSearch_GetStatus_FullMethodName      = "/viewra.plugin.v1.VectorSearch/GetStatus"
	VectorSearch_IndexLibrary_FullMethodName   = "/viewra.plugin.v1.VectorSearch/IndexLibrary"
	VectorSearch_CancelIndexing_FullMethodName = "/viewra.plugin.v1.VectorSearch/CancelIndexing"
)
View Source
const (
	HostWeather_GetCurrentWeather_FullMethodName = "/viewra.plugin.v1.HostWeather/GetCurrentWeather"
)

Variables

View Source
var (
	CapabilityErrorCode_name = map[int32]string{
		0: "CAPABILITY_ERROR_UNSPECIFIED",
		1: "CAPABILITY_ERROR_NOT_FOUND",
		2: "CAPABILITY_ERROR_METHOD_NOT_FOUND",
		3: "CAPABILITY_ERROR_INVALID_REQUEST",
		4: "CAPABILITY_ERROR_PROVIDER_ERROR",
		5: "CAPABILITY_ERROR_TIMEOUT",
		6: "CAPABILITY_ERROR_RATE_LIMITED",
		7: "CAPABILITY_ERROR_NOT_CONFIGURED",
		8: "CAPABILITY_ERROR_VERSION_MISMATCH",
	}
	CapabilityErrorCode_value = map[string]int32{
		"CAPABILITY_ERROR_UNSPECIFIED":      0,
		"CAPABILITY_ERROR_NOT_FOUND":        1,
		"CAPABILITY_ERROR_METHOD_NOT_FOUND": 2,
		"CAPABILITY_ERROR_INVALID_REQUEST":  3,
		"CAPABILITY_ERROR_PROVIDER_ERROR":   4,
		"CAPABILITY_ERROR_TIMEOUT":          5,
		"CAPABILITY_ERROR_RATE_LIMITED":     6,
		"CAPABILITY_ERROR_NOT_CONFIGURED":   7,
		"CAPABILITY_ERROR_VERSION_MISMATCH": 8,
	}
)

Enum value maps for CapabilityErrorCode.

View Source
var (
	HealthStatus_Status_name = map[int32]string{
		0: "UNKNOWN",
		1: "HEALTHY",
		2: "DEGRADED",
		3: "UNHEALTHY",
	}
	HealthStatus_Status_value = map[string]int32{
		"UNKNOWN":   0,
		"HEALTHY":   1,
		"DEGRADED":  2,
		"UNHEALTHY": 3,
	}
)

Enum value maps for HealthStatus_Status.

View Source
var (
	PluginHTTPChunk_Type_name = map[int32]string{
		0: "REQUEST_START",
		1: "REQUEST_BODY",
		2: "REQUEST_END",
		3: "RESPONSE_START",
		4: "RESPONSE_BODY",
		5: "RESPONSE_END",
	}
	PluginHTTPChunk_Type_value = map[string]int32{
		"REQUEST_START":  0,
		"REQUEST_BODY":   1,
		"REQUEST_END":    2,
		"RESPONSE_START": 3,
		"RESPONSE_BODY":  4,
		"RESPONSE_END":   5,
	}
)

Enum value maps for PluginHTTPChunk_Type.

View Source
var Enricher_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.Enricher",
	HandlerType: (*EnricherServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetCapabilities",
			Handler:    _Enricher_GetCapabilities_Handler,
		},
		{
			MethodName: "Enrich",
			Handler:    _Enricher_Enrich_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/enricher.proto",
}

Enricher_ServiceDesc is the grpc.ServiceDesc for Enricher service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var File_api_proto_plugin_common_proto protoreflect.FileDescriptor
View Source
var File_api_proto_plugin_enricher_proto protoreflect.FileDescriptor
View Source
var File_api_proto_plugin_host_services_proto protoreflect.FileDescriptor
View Source
var File_api_proto_plugin_plugin_core_proto protoreflect.FileDescriptor
View Source
var File_api_proto_plugin_provider_proto protoreflect.FileDescriptor
View Source
var File_api_proto_plugin_search_provider_proto protoreflect.FileDescriptor
View Source
var File_api_proto_plugin_trending_proto protoreflect.FileDescriptor
View Source
var File_api_proto_plugin_vector_search_proto protoreflect.FileDescriptor
View Source
var HostData_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.HostData",
	HandlerType: (*HostDataServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetMedia",
			Handler:    _HostData_GetMedia_Handler,
		},
		{
			MethodName: "GetMediaDetails",
			Handler:    _HostData_GetMediaDetails_Handler,
		},
		{
			MethodName: "GetMediaByExternalId",
			Handler:    _HostData_GetMediaByExternalId_Handler,
		},
		{
			MethodName: "SearchMedia",
			Handler:    _HostData_SearchMedia_Handler,
		},
		{
			MethodName: "ListMediaByLibrary",
			Handler:    _HostData_ListMediaByLibrary_Handler,
		},
		{
			MethodName: "GetLibrary",
			Handler:    _HostData_GetLibrary_Handler,
		},
		{
			MethodName: "GetFilePath",
			Handler:    _HostData_GetFilePath_Handler,
		},
		{
			MethodName: "ListMediaByGenre",
			Handler:    _HostData_ListMediaByGenre_Handler,
		},
		{
			MethodName: "ListMediaByDirector",
			Handler:    _HostData_ListMediaByDirector_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/host_services.proto",
}

HostData_ServiceDesc is the grpc.ServiceDesc for HostData service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var HostFileParser_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.HostFileParser",
	HandlerType: (*HostFileParserServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "ParseNFO",
			Handler:    _HostFileParser_ParseNFO_Handler,
		},
		{
			MethodName: "ExtractEmbeddedImages",
			Handler:    _HostFileParser_ExtractEmbeddedImages_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/host_services.proto",
}

HostFileParser_ServiceDesc is the grpc.ServiceDesc for HostFileParser service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var HostPlugins_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.HostPlugins",
	HandlerType: (*HostPluginsServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "ListCapabilities",
			Handler:    _HostPlugins_ListCapabilities_Handler,
		},
		{
			MethodName: "ListProviders",
			Handler:    _HostPlugins_ListProviders_Handler,
		},
		{
			MethodName: "SetCapabilityPreference",
			Handler:    _HostPlugins_SetCapabilityPreference_Handler,
		},
		{
			MethodName: "ClearCapabilityPreference",
			Handler:    _HostPlugins_ClearCapabilityPreference_Handler,
		},
		{
			MethodName: "GetCapabilityPreferences",
			Handler:    _HostPlugins_GetCapabilityPreferences_Handler,
		},
		{
			MethodName: "InvokeCapability",
			Handler:    _HostPlugins_InvokeCapability_Handler,
		},
		{
			MethodName: "DescribeCapability",
			Handler:    _HostPlugins_DescribeCapability_Handler,
		},
		{
			MethodName: "InvokeVectorSearch",
			Handler:    _HostPlugins_InvokeVectorSearch_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "InvokeCapabilityStream",
			Handler:       _HostPlugins_InvokeCapabilityStream_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "api/proto/plugin/host_services.proto",
}

HostPlugins_ServiceDesc is the grpc.ServiceDesc for HostPlugins service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var HostProgress_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.HostProgress",
	HandlerType: (*HostProgressServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "ListWatchedItems",
			Handler:    _HostProgress_ListWatchedItems_Handler,
		},
		{
			MethodName: "ListInProgressItems",
			Handler:    _HostProgress_ListInProgressItems_Handler,
		},
		{
			MethodName: "GetWatchedEntityIDs",
			Handler:    _HostProgress_GetWatchedEntityIDs_Handler,
		},
		{
			MethodName: "HasWatchHistory",
			Handler:    _HostProgress_HasWatchHistory_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/host_services.proto",
}

HostProgress_ServiceDesc is the grpc.ServiceDesc for HostProgress service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var HostRatings_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.HostRatings",
	HandlerType: (*HostRatingsServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "ListRatings",
			Handler:    _HostRatings_ListRatings_Handler,
		},
		{
			MethodName: "GetRatedEntityIDs",
			Handler:    _HostRatings_GetRatedEntityIDs_Handler,
		},
		{
			MethodName: "GetPositivelyRatedIDs",
			Handler:    _HostRatings_GetPositivelyRatedIDs_Handler,
		},
		{
			MethodName: "HasRatings",
			Handler:    _HostRatings_HasRatings_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/host_services.proto",
}

HostRatings_ServiceDesc is the grpc.ServiceDesc for HostRatings service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var HostStorage_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.HostStorage",
	HandlerType: (*HostStorageServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "KVGet",
			Handler:    _HostStorage_KVGet_Handler,
		},
		{
			MethodName: "KVSet",
			Handler:    _HostStorage_KVSet_Handler,
		},
		{
			MethodName: "KVDelete",
			Handler:    _HostStorage_KVDelete_Handler,
		},
		{
			MethodName: "KVList",
			Handler:    _HostStorage_KVList_Handler,
		},
		{
			MethodName: "GetDatabasePath",
			Handler:    _HostStorage_GetDatabasePath_Handler,
		},
		{
			MethodName: "RegisterSchema",
			Handler:    _HostStorage_RegisterSchema_Handler,
		},
		{
			MethodName: "GetDatabaseStats",
			Handler:    _HostStorage_GetDatabaseStats_Handler,
		},
		{
			MethodName: "ExecuteSQL",
			Handler:    _HostStorage_ExecuteSQL_Handler,
		},
		{
			MethodName: "QuerySQL",
			Handler:    _HostStorage_QuerySQL_Handler,
		},
		{
			MethodName: "VectorStoreEmbedding",
			Handler:    _HostStorage_VectorStoreEmbedding_Handler,
		},
		{
			MethodName: "VectorStoreBatch",
			Handler:    _HostStorage_VectorStoreBatch_Handler,
		},
		{
			MethodName: "VectorSearch",
			Handler:    _HostStorage_VectorSearch_Handler,
		},
		{
			MethodName: "VectorSearchText",
			Handler:    _HostStorage_VectorSearchText_Handler,
		},
		{
			MethodName: "VectorGet",
			Handler:    _HostStorage_VectorGet_Handler,
		},
		{
			MethodName: "VectorDelete",
			Handler:    _HostStorage_VectorDelete_Handler,
		},
		{
			MethodName: "VectorDeleteByType",
			Handler:    _HostStorage_VectorDeleteByType_Handler,
		},
		{
			MethodName: "VectorCount",
			Handler:    _HostStorage_VectorCount_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/host_services.proto",
}

HostStorage_ServiceDesc is the grpc.ServiceDesc for HostStorage service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var HostUserMetadata_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.HostUserMetadata",
	HandlerType: (*HostUserMetadataServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Get",
			Handler:    _HostUserMetadata_Get_Handler,
		},
		{
			MethodName: "Set",
			Handler:    _HostUserMetadata_Set_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _HostUserMetadata_Delete_Handler,
		},
		{
			MethodName: "ListKeys",
			Handler:    _HostUserMetadata_ListKeys_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/host_services.proto",
}

HostUserMetadata_ServiceDesc is the grpc.ServiceDesc for HostUserMetadata service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var HostWeather_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.HostWeather",
	HandlerType: (*HostWeatherServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetCurrentWeather",
			Handler:    _HostWeather_GetCurrentWeather_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/host_services.proto",
}

HostWeather_ServiceDesc is the grpc.ServiceDesc for HostWeather service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var PluginCore_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.PluginCore",
	HandlerType: (*PluginCoreServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Initialize",
			Handler:    _PluginCore_Initialize_Handler,
		},
		{
			MethodName: "Shutdown",
			Handler:    _PluginCore_Shutdown_Handler,
		},
		{
			MethodName: "HealthCheck",
			Handler:    _PluginCore_HealthCheck_Handler,
		},
		{
			MethodName: "GetSettingsSchema",
			Handler:    _PluginCore_GetSettingsSchema_Handler,
		},
		{
			MethodName: "Configure",
			Handler:    _PluginCore_Configure_Handler,
		},
		{
			MethodName: "GetSubscriptions",
			Handler:    _PluginCore_GetSubscriptions_Handler,
		},
		{
			MethodName: "OnEvent",
			Handler:    _PluginCore_OnEvent_Handler,
		},
		{
			MethodName: "GetRoutes",
			Handler:    _PluginCore_GetRoutes_Handler,
		},
		{
			MethodName: "HandleHTTP",
			Handler:    _PluginCore_HandleHTTP_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "HandleHTTPStream",
			Handler:       _PluginCore_HandleHTTPStream_Handler,
			ServerStreams: true,
			ClientStreams: true,
		},
	},
	Metadata: "api/proto/plugin/plugin_core.proto",
}

PluginCore_ServiceDesc is the grpc.ServiceDesc for PluginCore service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var PluginProvider_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.PluginProvider",
	HandlerType: (*PluginProviderServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Invoke",
			Handler:    _PluginProvider_Invoke_Handler,
		},
		{
			MethodName: "DescribeMethods",
			Handler:    _PluginProvider_DescribeMethods_Handler,
		},
		{
			MethodName: "GetCapabilities",
			Handler:    _PluginProvider_GetCapabilities_Handler,
		},
		{
			MethodName: "ListModels",
			Handler:    _PluginProvider_ListModels_Handler,
		},
		{
			MethodName: "GenerateEmbedding",
			Handler:    _PluginProvider_GenerateEmbedding_Handler,
		},
		{
			MethodName: "GenerateEmbeddingBatch",
			Handler:    _PluginProvider_GenerateEmbeddingBatch_Handler,
		},
		{
			MethodName: "Chat",
			Handler:    _PluginProvider_Chat_Handler,
		},
		{
			MethodName: "HealthCheck",
			Handler:    _PluginProvider_HealthCheck_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "InvokeStream",
			Handler:       _PluginProvider_InvokeStream_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ChatStream",
			Handler:       _PluginProvider_ChatStream_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "api/proto/plugin/provider.proto",
}

PluginProvider_ServiceDesc is the grpc.ServiceDesc for PluginProvider service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var SearchProviderService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.SearchProviderService",
	HandlerType: (*SearchProviderServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Search",
			Handler:    _SearchProviderService_Search_Handler,
		},
		{
			MethodName: "GetSuggestions",
			Handler:    _SearchProviderService_GetSuggestions_Handler,
		},
		{
			MethodName: "GetProviderInfo",
			Handler:    _SearchProviderService_GetProviderInfo_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/search_provider.proto",
}

SearchProviderService_ServiceDesc is the grpc.ServiceDesc for SearchProviderService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var TrendingProviderService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.TrendingProviderService",
	HandlerType: (*TrendingProviderServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetTrending",
			Handler:    _TrendingProviderService_GetTrending_Handler,
		},
		{
			MethodName: "GetProviderInfo",
			Handler:    _TrendingProviderService_GetProviderInfo_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/trending.proto",
}

TrendingProviderService_ServiceDesc is the grpc.ServiceDesc for TrendingProviderService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var VectorSearch_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "viewra.plugin.v1.VectorSearch",
	HandlerType: (*VectorSearchServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Search",
			Handler:    _VectorSearch_Search_Handler,
		},
		{
			MethodName: "FindSimilar",
			Handler:    _VectorSearch_FindSimilar_Handler,
		},
		{
			MethodName: "GetStatus",
			Handler:    _VectorSearch_GetStatus_Handler,
		},
		{
			MethodName: "IndexLibrary",
			Handler:    _VectorSearch_IndexLibrary_Handler,
		},
		{
			MethodName: "CancelIndexing",
			Handler:    _VectorSearch_CancelIndexing_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "api/proto/plugin/vector_search.proto",
}

VectorSearch_ServiceDesc is the grpc.ServiceDesc for VectorSearch service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterEnricherServer

func RegisterEnricherServer(s grpc.ServiceRegistrar, srv EnricherServer)

func RegisterHostDataServer

func RegisterHostDataServer(s grpc.ServiceRegistrar, srv HostDataServer)

func RegisterHostFileParserServer

func RegisterHostFileParserServer(s grpc.ServiceRegistrar, srv HostFileParserServer)

func RegisterHostPluginsServer

func RegisterHostPluginsServer(s grpc.ServiceRegistrar, srv HostPluginsServer)

func RegisterHostProgressServer

func RegisterHostProgressServer(s grpc.ServiceRegistrar, srv HostProgressServer)

func RegisterHostRatingsServer

func RegisterHostRatingsServer(s grpc.ServiceRegistrar, srv HostRatingsServer)

func RegisterHostStorageServer

func RegisterHostStorageServer(s grpc.ServiceRegistrar, srv HostStorageServer)

func RegisterHostUserMetadataServer

func RegisterHostUserMetadataServer(s grpc.ServiceRegistrar, srv HostUserMetadataServer)

func RegisterHostWeatherServer

func RegisterHostWeatherServer(s grpc.ServiceRegistrar, srv HostWeatherServer)

func RegisterPluginCoreServer

func RegisterPluginCoreServer(s grpc.ServiceRegistrar, srv PluginCoreServer)

func RegisterPluginProviderServer

func RegisterPluginProviderServer(s grpc.ServiceRegistrar, srv PluginProviderServer)

func RegisterSearchProviderServiceServer

func RegisterSearchProviderServiceServer(s grpc.ServiceRegistrar, srv SearchProviderServiceServer)

func RegisterTrendingProviderServiceServer

func RegisterTrendingProviderServiceServer(s grpc.ServiceRegistrar, srv TrendingProviderServiceServer)

func RegisterVectorSearchServer

func RegisterVectorSearchServer(s grpc.ServiceRegistrar, srv VectorSearchServer)

Types

type AlbumMetadata

type AlbumMetadata struct {
	Title              *string `protobuf:"bytes,1,opt,name=title,proto3,oneof" json:"title,omitempty"`
	AlbumArtist        *string `protobuf:"bytes,2,opt,name=album_artist,json=albumArtist,proto3,oneof" json:"album_artist,omitempty"`
	Artist             *string `protobuf:"bytes,3,opt,name=artist,proto3,oneof" json:"artist,omitempty"` // Fallback if album_artist not set
	Year               *int32  `protobuf:"varint,4,opt,name=year,proto3,oneof" json:"year,omitempty"`
	ReleaseDate        *string `protobuf:"bytes,5,opt,name=release_date,json=releaseDate,proto3,oneof" json:"release_date,omitempty"` // YYYY-MM-DD
	Genre              *string `protobuf:"bytes,6,opt,name=genre,proto3,oneof" json:"genre,omitempty"`
	TotalTracks        *int32  `protobuf:"varint,7,opt,name=total_tracks,json=totalTracks,proto3,oneof" json:"total_tracks,omitempty"`
	TotalDiscs         *int32  `protobuf:"varint,8,opt,name=total_discs,json=totalDiscs,proto3,oneof" json:"total_discs,omitempty"`
	RecordLabel        *string `protobuf:"bytes,9,opt,name=record_label,json=recordLabel,proto3,oneof" json:"record_label,omitempty"`
	ReleaseType        *string `protobuf:"bytes,10,opt,name=release_type,json=releaseType,proto3,oneof" json:"release_type,omitempty"` // album, single, ep, compilation, live, remix, soundtrack
	Compilation        *bool   `protobuf:"varint,11,opt,name=compilation,proto3,oneof" json:"compilation,omitempty"`
	MusicbrainzAlbumId *string `protobuf:"bytes,12,opt,name=musicbrainz_album_id,json=musicbrainzAlbumId,proto3,oneof" json:"musicbrainz_album_id,omitempty"`
	SortTitle          *string `protobuf:"bytes,13,opt,name=sort_title,json=sortTitle,proto3,oneof" json:"sort_title,omitempty"`
	// contains filtered or unexported fields
}

AlbumMetadata contains fields specific to music albums.

func (*AlbumMetadata) Descriptor deprecated

func (*AlbumMetadata) Descriptor() ([]byte, []int)

Deprecated: Use AlbumMetadata.ProtoReflect.Descriptor instead.

func (*AlbumMetadata) GetAlbumArtist

func (x *AlbumMetadata) GetAlbumArtist() string

func (*AlbumMetadata) GetArtist

func (x *AlbumMetadata) GetArtist() string

func (*AlbumMetadata) GetCompilation

func (x *AlbumMetadata) GetCompilation() bool

func (*AlbumMetadata) GetGenre

func (x *AlbumMetadata) GetGenre() string

func (*AlbumMetadata) GetMusicbrainzAlbumId

func (x *AlbumMetadata) GetMusicbrainzAlbumId() string

func (*AlbumMetadata) GetRecordLabel

func (x *AlbumMetadata) GetRecordLabel() string

func (*AlbumMetadata) GetReleaseDate

func (x *AlbumMetadata) GetReleaseDate() string

func (*AlbumMetadata) GetReleaseType

func (x *AlbumMetadata) GetReleaseType() string

func (*AlbumMetadata) GetSortTitle

func (x *AlbumMetadata) GetSortTitle() string

func (*AlbumMetadata) GetTitle

func (x *AlbumMetadata) GetTitle() string

func (*AlbumMetadata) GetTotalDiscs

func (x *AlbumMetadata) GetTotalDiscs() int32

func (*AlbumMetadata) GetTotalTracks

func (x *AlbumMetadata) GetTotalTracks() int32

func (*AlbumMetadata) GetYear

func (x *AlbumMetadata) GetYear() int32

func (*AlbumMetadata) ProtoMessage

func (*AlbumMetadata) ProtoMessage()

func (*AlbumMetadata) ProtoReflect

func (x *AlbumMetadata) ProtoReflect() protoreflect.Message

func (*AlbumMetadata) Reset

func (x *AlbumMetadata) Reset()

func (*AlbumMetadata) String

func (x *AlbumMetadata) String() string

type ArtistMetadata

type ArtistMetadata struct {
	Name                *string `protobuf:"bytes,1,opt,name=name,proto3,oneof" json:"name,omitempty"`
	SortName            *string `protobuf:"bytes,2,opt,name=sort_name,json=sortName,proto3,oneof" json:"sort_name,omitempty"`
	MusicbrainzArtistId *string ``                                                                  /* 126-byte string literal not displayed */
	Bio                 *string `protobuf:"bytes,4,opt,name=bio,proto3,oneof" json:"bio,omitempty"` // Artist biography
	Country             *string `protobuf:"bytes,5,opt,name=country,proto3,oneof" json:"country,omitempty"`
	FormedYear          *int32  `protobuf:"varint,6,opt,name=formed_year,json=formedYear,proto3,oneof" json:"formed_year,omitempty"`
	Genre               *string `protobuf:"bytes,7,opt,name=genre,proto3,oneof" json:"genre,omitempty"` // Primary genre
	// contains filtered or unexported fields
}

ArtistMetadata contains fields specific to music artists.

func (*ArtistMetadata) Descriptor deprecated

func (*ArtistMetadata) Descriptor() ([]byte, []int)

Deprecated: Use ArtistMetadata.ProtoReflect.Descriptor instead.

func (*ArtistMetadata) GetBio

func (x *ArtistMetadata) GetBio() string

func (*ArtistMetadata) GetCountry

func (x *ArtistMetadata) GetCountry() string

func (*ArtistMetadata) GetFormedYear

func (x *ArtistMetadata) GetFormedYear() int32

func (*ArtistMetadata) GetGenre

func (x *ArtistMetadata) GetGenre() string

func (*ArtistMetadata) GetMusicbrainzArtistId

func (x *ArtistMetadata) GetMusicbrainzArtistId() string

func (*ArtistMetadata) GetName

func (x *ArtistMetadata) GetName() string

func (*ArtistMetadata) GetSortName

func (x *ArtistMetadata) GetSortName() string

func (*ArtistMetadata) ProtoMessage

func (*ArtistMetadata) ProtoMessage()

func (*ArtistMetadata) ProtoReflect

func (x *ArtistMetadata) ProtoReflect() protoreflect.Message

func (*ArtistMetadata) Reset

func (x *ArtistMetadata) Reset()

func (*ArtistMetadata) String

func (x *ArtistMetadata) String() string

type AudioTrack

type AudioTrack struct {
	Codec         string `protobuf:"bytes,1,opt,name=codec,proto3" json:"codec,omitempty"`                                      // "aac", "ac3", "eac3", "truehd", "dts", "dts-hd", "flac"
	Channels      int32  `protobuf:"varint,2,opt,name=channels,proto3" json:"channels,omitempty"`                               // Number of channels (2, 6, 8, etc.)
	ChannelLayout string `protobuf:"bytes,3,opt,name=channel_layout,json=channelLayout,proto3" json:"channel_layout,omitempty"` // "stereo", "5.1", "7.1", "Atmos"
	Language      string `protobuf:"bytes,4,opt,name=language,proto3" json:"language,omitempty"`                                // ISO 639-1/2 code, e.g., "en", "eng"
	IsDefault     bool   `protobuf:"varint,5,opt,name=is_default,json=isDefault,proto3" json:"is_default,omitempty"`
	IsCommentary  bool   `protobuf:"varint,6,opt,name=is_commentary,json=isCommentary,proto3" json:"is_commentary,omitempty"`
	// contains filtered or unexported fields
}

AudioTrack represents an audio stream in a media file.

func (*AudioTrack) Descriptor deprecated

func (*AudioTrack) Descriptor() ([]byte, []int)

Deprecated: Use AudioTrack.ProtoReflect.Descriptor instead.

func (*AudioTrack) GetChannelLayout

func (x *AudioTrack) GetChannelLayout() string

func (*AudioTrack) GetChannels

func (x *AudioTrack) GetChannels() int32

func (*AudioTrack) GetCodec

func (x *AudioTrack) GetCodec() string

func (*AudioTrack) GetIsCommentary

func (x *AudioTrack) GetIsCommentary() bool

func (*AudioTrack) GetIsDefault

func (x *AudioTrack) GetIsDefault() bool

func (*AudioTrack) GetLanguage

func (x *AudioTrack) GetLanguage() string

func (*AudioTrack) ProtoMessage

func (*AudioTrack) ProtoMessage()

func (*AudioTrack) ProtoReflect

func (x *AudioTrack) ProtoReflect() protoreflect.Message

func (*AudioTrack) Reset

func (x *AudioTrack) Reset()

func (*AudioTrack) String

func (x *AudioTrack) String() string

type CapabilityError

type CapabilityError struct {
	Code      CapabilityErrorCode `protobuf:"varint,1,opt,name=code,proto3,enum=viewra.plugin.v1.CapabilityErrorCode" json:"code,omitempty"`
	Message   string              `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	Details   string              `protobuf:"bytes,3,opt,name=details,proto3" json:"details,omitempty"`      // Additional context (JSON or text)
	Retryable bool                `protobuf:"varint,4,opt,name=retryable,proto3" json:"retryable,omitempty"` // Whether consumer should retry
	// contains filtered or unexported fields
}

CapabilityError represents a structured error from a capability call.

func (*CapabilityError) Descriptor deprecated

func (*CapabilityError) Descriptor() ([]byte, []int)

Deprecated: Use CapabilityError.ProtoReflect.Descriptor instead.

func (*CapabilityError) GetCode

func (x *CapabilityError) GetCode() CapabilityErrorCode

func (*CapabilityError) GetDetails

func (x *CapabilityError) GetDetails() string

func (*CapabilityError) GetMessage

func (x *CapabilityError) GetMessage() string

func (*CapabilityError) GetRetryable

func (x *CapabilityError) GetRetryable() bool

func (*CapabilityError) ProtoMessage

func (*CapabilityError) ProtoMessage()

func (*CapabilityError) ProtoReflect

func (x *CapabilityError) ProtoReflect() protoreflect.Message

func (*CapabilityError) Reset

func (x *CapabilityError) Reset()

func (*CapabilityError) String

func (x *CapabilityError) String() string

type CapabilityErrorCode

type CapabilityErrorCode int32

CapabilityErrorCode enumerates error types for capability invocations.

const (
	CapabilityErrorCode_CAPABILITY_ERROR_UNSPECIFIED      CapabilityErrorCode = 0
	CapabilityErrorCode_CAPABILITY_ERROR_NOT_FOUND        CapabilityErrorCode = 1 // Capability not available
	CapabilityErrorCode_CAPABILITY_ERROR_METHOD_NOT_FOUND CapabilityErrorCode = 2 // Method not supported
	CapabilityErrorCode_CAPABILITY_ERROR_INVALID_REQUEST  CapabilityErrorCode = 3 // Malformed request payload
	CapabilityErrorCode_CAPABILITY_ERROR_PROVIDER_ERROR   CapabilityErrorCode = 4 // Provider returned an error
	CapabilityErrorCode_CAPABILITY_ERROR_TIMEOUT          CapabilityErrorCode = 5 // Provider timed out
	CapabilityErrorCode_CAPABILITY_ERROR_RATE_LIMITED     CapabilityErrorCode = 6 // Too many requests
	CapabilityErrorCode_CAPABILITY_ERROR_NOT_CONFIGURED   CapabilityErrorCode = 7 // Provider not configured
	CapabilityErrorCode_CAPABILITY_ERROR_VERSION_MISMATCH CapabilityErrorCode = 8 // API version incompatible
)

func (CapabilityErrorCode) Descriptor

func (CapabilityErrorCode) Enum

func (CapabilityErrorCode) EnumDescriptor deprecated

func (CapabilityErrorCode) EnumDescriptor() ([]byte, []int)

Deprecated: Use CapabilityErrorCode.Descriptor instead.

func (CapabilityErrorCode) Number

func (CapabilityErrorCode) String

func (x CapabilityErrorCode) String() string

func (CapabilityErrorCode) Type

type CapabilityInfo

type CapabilityInfo struct {
	Name      string                `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Capability name
	Providers []*PluginProviderInfo `protobuf:"bytes,2,rep,name=providers,proto3" json:"providers,omitempty"`
	// contains filtered or unexported fields
}

func (*CapabilityInfo) Descriptor deprecated

func (*CapabilityInfo) Descriptor() ([]byte, []int)

Deprecated: Use CapabilityInfo.ProtoReflect.Descriptor instead.

func (*CapabilityInfo) GetName

func (x *CapabilityInfo) GetName() string

func (*CapabilityInfo) GetProviders

func (x *CapabilityInfo) GetProviders() []*PluginProviderInfo

func (*CapabilityInfo) ProtoMessage

func (*CapabilityInfo) ProtoMessage()

func (*CapabilityInfo) ProtoReflect

func (x *CapabilityInfo) ProtoReflect() protoreflect.Message

func (*CapabilityInfo) Reset

func (x *CapabilityInfo) Reset()

func (*CapabilityInfo) String

func (x *CapabilityInfo) String() string

type CapabilityInvokeRequest

type CapabilityInvokeRequest struct {
	Capability      string            `protobuf:"bytes,1,opt,name=capability,proto3" json:"capability,omitempty"`                                  // e.g., "embedding", "chat"
	Method          string            `protobuf:"bytes,2,opt,name=method,proto3" json:"method,omitempty"`                                          // e.g., "GenerateEmbedding", "Chat"
	RequestPayload  []byte            `protobuf:"bytes,3,opt,name=request_payload,json=requestPayload,proto3" json:"request_payload,omitempty"`    // Serialized protobuf request message
	PreferredPlugin string            `protobuf:"bytes,4,opt,name=preferred_plugin,json=preferredPlugin,proto3" json:"preferred_plugin,omitempty"` // Optional: prefer specific provider
	ApiVersion      string            `protobuf:"bytes,5,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"`                // Optional: capability API version (e.g., "v1")
	Metadata        map[string]string ``                                                                                                           // Optional: request metadata (tracing, etc.)
	/* 143-byte string literal not displayed */
	// contains filtered or unexported fields
}

CapabilityInvokeRequest is sent to invoke a method on a capability provider.

func (*CapabilityInvokeRequest) Descriptor deprecated

func (*CapabilityInvokeRequest) Descriptor() ([]byte, []int)

Deprecated: Use CapabilityInvokeRequest.ProtoReflect.Descriptor instead.

func (*CapabilityInvokeRequest) GetApiVersion

func (x *CapabilityInvokeRequest) GetApiVersion() string

func (*CapabilityInvokeRequest) GetCapability

func (x *CapabilityInvokeRequest) GetCapability() string

func (*CapabilityInvokeRequest) GetMetadata

func (x *CapabilityInvokeRequest) GetMetadata() map[string]string

func (*CapabilityInvokeRequest) GetMethod

func (x *CapabilityInvokeRequest) GetMethod() string

func (*CapabilityInvokeRequest) GetPreferredPlugin

func (x *CapabilityInvokeRequest) GetPreferredPlugin() string

func (*CapabilityInvokeRequest) GetRequestPayload

func (x *CapabilityInvokeRequest) GetRequestPayload() []byte

func (*CapabilityInvokeRequest) ProtoMessage

func (*CapabilityInvokeRequest) ProtoMessage()

func (*CapabilityInvokeRequest) ProtoReflect

func (x *CapabilityInvokeRequest) ProtoReflect() protoreflect.Message

func (*CapabilityInvokeRequest) Reset

func (x *CapabilityInvokeRequest) Reset()

func (*CapabilityInvokeRequest) String

func (x *CapabilityInvokeRequest) String() string

type CapabilityInvokeResponse

type CapabilityInvokeResponse struct {
	ResponsePayload []byte            `protobuf:"bytes,1,opt,name=response_payload,json=responsePayload,proto3" json:"response_payload,omitempty"` // Serialized protobuf response message
	Error           *CapabilityError  `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`                                            // Structured error (null if success)
	ProviderPlugin  string            `protobuf:"bytes,3,opt,name=provider_plugin,json=providerPlugin,proto3" json:"provider_plugin,omitempty"`    // Which plugin handled the request
	LatencyMs       int64             `protobuf:"varint,4,opt,name=latency_ms,json=latencyMs,proto3" json:"latency_ms,omitempty"`                  // How long the provider took
	Metadata        map[string]string ``                                                                                                           // Response metadata from provider
	/* 143-byte string literal not displayed */
	// contains filtered or unexported fields
}

CapabilityInvokeResponse is returned from a capability invocation.

func (*CapabilityInvokeResponse) Descriptor deprecated

func (*CapabilityInvokeResponse) Descriptor() ([]byte, []int)

Deprecated: Use CapabilityInvokeResponse.ProtoReflect.Descriptor instead.

func (*CapabilityInvokeResponse) GetError

func (*CapabilityInvokeResponse) GetLatencyMs

func (x *CapabilityInvokeResponse) GetLatencyMs() int64

func (*CapabilityInvokeResponse) GetMetadata

func (x *CapabilityInvokeResponse) GetMetadata() map[string]string

func (*CapabilityInvokeResponse) GetProviderPlugin

func (x *CapabilityInvokeResponse) GetProviderPlugin() string

func (*CapabilityInvokeResponse) GetResponsePayload

func (x *CapabilityInvokeResponse) GetResponsePayload() []byte

func (*CapabilityInvokeResponse) ProtoMessage

func (*CapabilityInvokeResponse) ProtoMessage()

func (*CapabilityInvokeResponse) ProtoReflect

func (x *CapabilityInvokeResponse) ProtoReflect() protoreflect.Message

func (*CapabilityInvokeResponse) Reset

func (x *CapabilityInvokeResponse) Reset()

func (*CapabilityInvokeResponse) String

func (x *CapabilityInvokeResponse) String() string

type CapabilityListResponse

type CapabilityListResponse struct {
	Capabilities []*CapabilityInfo `protobuf:"bytes,1,rep,name=capabilities,proto3" json:"capabilities,omitempty"`
	// contains filtered or unexported fields
}

func (*CapabilityListResponse) Descriptor deprecated

func (*CapabilityListResponse) Descriptor() ([]byte, []int)

Deprecated: Use CapabilityListResponse.ProtoReflect.Descriptor instead.

func (*CapabilityListResponse) GetCapabilities

func (x *CapabilityListResponse) GetCapabilities() []*CapabilityInfo

func (*CapabilityListResponse) ProtoMessage

func (*CapabilityListResponse) ProtoMessage()

func (*CapabilityListResponse) ProtoReflect

func (x *CapabilityListResponse) ProtoReflect() protoreflect.Message

func (*CapabilityListResponse) Reset

func (x *CapabilityListResponse) Reset()

func (*CapabilityListResponse) String

func (x *CapabilityListResponse) String() string

type CapabilityMethodInfo

type CapabilityMethodInfo struct {
	Name         string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // e.g., "GenerateEmbedding"
	Description  string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	IsStreaming  bool   `protobuf:"varint,3,opt,name=is_streaming,json=isStreaming,proto3" json:"is_streaming,omitempty"`   // Server-streaming method
	RequestType  string `protobuf:"bytes,4,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`    // Proto message type name
	ResponseType string `protobuf:"bytes,5,opt,name=response_type,json=responseType,proto3" json:"response_type,omitempty"` // Proto message type name
	// contains filtered or unexported fields
}

CapabilityMethodInfo describes a method available on a capability.

func (*CapabilityMethodInfo) Descriptor deprecated

func (*CapabilityMethodInfo) Descriptor() ([]byte, []int)

Deprecated: Use CapabilityMethodInfo.ProtoReflect.Descriptor instead.

func (*CapabilityMethodInfo) GetDescription

func (x *CapabilityMethodInfo) GetDescription() string

func (*CapabilityMethodInfo) GetIsStreaming

func (x *CapabilityMethodInfo) GetIsStreaming() bool

func (*CapabilityMethodInfo) GetName

func (x *CapabilityMethodInfo) GetName() string

func (*CapabilityMethodInfo) GetRequestType

func (x *CapabilityMethodInfo) GetRequestType() string

func (*CapabilityMethodInfo) GetResponseType

func (x *CapabilityMethodInfo) GetResponseType() string

func (*CapabilityMethodInfo) ProtoMessage

func (*CapabilityMethodInfo) ProtoMessage()

func (*CapabilityMethodInfo) ProtoReflect

func (x *CapabilityMethodInfo) ProtoReflect() protoreflect.Message

func (*CapabilityMethodInfo) Reset

func (x *CapabilityMethodInfo) Reset()

func (*CapabilityMethodInfo) String

func (x *CapabilityMethodInfo) String() string

type CapabilityPreferenceRequest

type CapabilityPreferenceRequest struct {
	Capability string `protobuf:"bytes,1,opt,name=capability,proto3" json:"capability,omitempty"`             // Capability name, e.g., "embedding", "chat"
	PluginId   string `protobuf:"bytes,2,opt,name=plugin_id,json=pluginId,proto3" json:"plugin_id,omitempty"` // Plugin ID to prefer (empty to clear in ClearCapabilityPreference)
	// contains filtered or unexported fields
}

CapabilityPreferenceRequest sets or clears a capability preference.

func (*CapabilityPreferenceRequest) Descriptor deprecated

func (*CapabilityPreferenceRequest) Descriptor() ([]byte, []int)

Deprecated: Use CapabilityPreferenceRequest.ProtoReflect.Descriptor instead.

func (*CapabilityPreferenceRequest) GetCapability

func (x *CapabilityPreferenceRequest) GetCapability() string

func (*CapabilityPreferenceRequest) GetPluginId

func (x *CapabilityPreferenceRequest) GetPluginId() string

func (*CapabilityPreferenceRequest) ProtoMessage

func (*CapabilityPreferenceRequest) ProtoMessage()

func (*CapabilityPreferenceRequest) ProtoReflect

func (*CapabilityPreferenceRequest) Reset

func (x *CapabilityPreferenceRequest) Reset()

func (*CapabilityPreferenceRequest) String

func (x *CapabilityPreferenceRequest) String() string

type CapabilityPreferencesResponse

type CapabilityPreferencesResponse struct {
	Preferences map[string]string `` // capability -> plugin_id
	/* 149-byte string literal not displayed */
	// contains filtered or unexported fields
}

CapabilityPreferencesResponse returns all configured preferences.

func (*CapabilityPreferencesResponse) Descriptor deprecated

func (*CapabilityPreferencesResponse) Descriptor() ([]byte, []int)

Deprecated: Use CapabilityPreferencesResponse.ProtoReflect.Descriptor instead.

func (*CapabilityPreferencesResponse) GetPreferences

func (x *CapabilityPreferencesResponse) GetPreferences() map[string]string

func (*CapabilityPreferencesResponse) ProtoMessage

func (*CapabilityPreferencesResponse) ProtoMessage()

func (*CapabilityPreferencesResponse) ProtoReflect

func (*CapabilityPreferencesResponse) Reset

func (x *CapabilityPreferencesResponse) Reset()

func (*CapabilityPreferencesResponse) String

type CapabilityRequest

type CapabilityRequest struct {
	Capability      string `protobuf:"bytes,1,opt,name=capability,proto3" json:"capability,omitempty"`                                  // Capability name, e.g., "embedding", "chat"
	PreferredPlugin string `protobuf:"bytes,2,opt,name=preferred_plugin,json=preferredPlugin,proto3" json:"preferred_plugin,omitempty"` // Optional: specific plugin ID to prefer
	// contains filtered or unexported fields
}

func (*CapabilityRequest) Descriptor deprecated

func (*CapabilityRequest) Descriptor() ([]byte, []int)

Deprecated: Use CapabilityRequest.ProtoReflect.Descriptor instead.

func (*CapabilityRequest) GetCapability

func (x *CapabilityRequest) GetCapability() string

func (*CapabilityRequest) GetPreferredPlugin

func (x *CapabilityRequest) GetPreferredPlugin() string

func (*CapabilityRequest) ProtoMessage

func (*CapabilityRequest) ProtoMessage()

func (*CapabilityRequest) ProtoReflect

func (x *CapabilityRequest) ProtoReflect() protoreflect.Message

func (*CapabilityRequest) Reset

func (x *CapabilityRequest) Reset()

func (*CapabilityRequest) String

func (x *CapabilityRequest) String() string

type CastMember

type CastMember struct {
	Name   string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Role   string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
	Thumb  string `protobuf:"bytes,3,opt,name=thumb,proto3" json:"thumb,omitempty"`                  // URL to actor thumbnail
	Order  int32  `protobuf:"varint,4,opt,name=order,proto3" json:"order,omitempty"`                 // Billing order
	TmdbId int32  `protobuf:"varint,5,opt,name=tmdb_id,json=tmdbId,proto3" json:"tmdb_id,omitempty"` // TMDb person ID
	// contains filtered or unexported fields
}

func (*CastMember) Descriptor deprecated

func (*CastMember) Descriptor() ([]byte, []int)

Deprecated: Use CastMember.ProtoReflect.Descriptor instead.

func (*CastMember) GetName

func (x *CastMember) GetName() string

func (*CastMember) GetOrder

func (x *CastMember) GetOrder() int32

func (*CastMember) GetRole

func (x *CastMember) GetRole() string

func (*CastMember) GetThumb

func (x *CastMember) GetThumb() string

func (*CastMember) GetTmdbId

func (x *CastMember) GetTmdbId() int32

func (*CastMember) ProtoMessage

func (*CastMember) ProtoMessage()

func (*CastMember) ProtoReflect

func (x *CastMember) ProtoReflect() protoreflect.Message

func (*CastMember) Reset

func (x *CastMember) Reset()

func (*CastMember) String

func (x *CastMember) String() string

type ConfigureResponse

type ConfigureResponse struct {
	Success bool   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Error   string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
	// Whether the plugin is properly configured (e.g., has required API keys).
	// Plugins that require configuration should set this to false until configured.
	// The host uses this to exclude unconfigured providers from capability resolution.
	IsConfigured bool `protobuf:"varint,3,opt,name=is_configured,json=isConfigured,proto3" json:"is_configured,omitempty"`
	// contains filtered or unexported fields
}

func (*ConfigureResponse) Descriptor deprecated

func (*ConfigureResponse) Descriptor() ([]byte, []int)

Deprecated: Use ConfigureResponse.ProtoReflect.Descriptor instead.

func (*ConfigureResponse) GetError

func (x *ConfigureResponse) GetError() string

func (*ConfigureResponse) GetIsConfigured

func (x *ConfigureResponse) GetIsConfigured() bool

func (*ConfigureResponse) GetSuccess

func (x *ConfigureResponse) GetSuccess() bool

func (*ConfigureResponse) ProtoMessage

func (*ConfigureResponse) ProtoMessage()

func (*ConfigureResponse) ProtoReflect

func (x *ConfigureResponse) ProtoReflect() protoreflect.Message

func (*ConfigureResponse) Reset

func (x *ConfigureResponse) Reset()

func (*ConfigureResponse) String

func (x *ConfigureResponse) String() string

type DatabasePath

type DatabasePath struct {
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// contains filtered or unexported fields
}

func (*DatabasePath) Descriptor deprecated

func (*DatabasePath) Descriptor() ([]byte, []int)

Deprecated: Use DatabasePath.ProtoReflect.Descriptor instead.

func (*DatabasePath) GetPath

func (x *DatabasePath) GetPath() string

func (*DatabasePath) ProtoMessage

func (*DatabasePath) ProtoMessage()

func (*DatabasePath) ProtoReflect

func (x *DatabasePath) ProtoReflect() protoreflect.Message

func (*DatabasePath) Reset

func (x *DatabasePath) Reset()

func (*DatabasePath) String

func (x *DatabasePath) String() string

type DatabaseStats

type DatabaseStats struct {
	SizeBytes  int64 `protobuf:"varint,1,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"`
	QuotaBytes int64 `protobuf:"varint,2,opt,name=quota_bytes,json=quotaBytes,proto3" json:"quota_bytes,omitempty"`
	TableCount int32 `protobuf:"varint,3,opt,name=table_count,json=tableCount,proto3" json:"table_count,omitempty"`
	// contains filtered or unexported fields
}

func (*DatabaseStats) Descriptor deprecated

func (*DatabaseStats) Descriptor() ([]byte, []int)

Deprecated: Use DatabaseStats.ProtoReflect.Descriptor instead.

func (*DatabaseStats) GetQuotaBytes

func (x *DatabaseStats) GetQuotaBytes() int64

func (*DatabaseStats) GetSizeBytes

func (x *DatabaseStats) GetSizeBytes() int64

func (*DatabaseStats) GetTableCount

func (x *DatabaseStats) GetTableCount() int32

func (*DatabaseStats) ProtoMessage

func (*DatabaseStats) ProtoMessage()

func (*DatabaseStats) ProtoReflect

func (x *DatabaseStats) ProtoReflect() protoreflect.Message

func (*DatabaseStats) Reset

func (x *DatabaseStats) Reset()

func (*DatabaseStats) String

func (x *DatabaseStats) String() string

type DescribeCapabilityProviderInfo

type DescribeCapabilityProviderInfo struct {
	PluginId    string `protobuf:"bytes,1,opt,name=plugin_id,json=pluginId,proto3" json:"plugin_id,omitempty"`
	PluginName  string `protobuf:"bytes,2,opt,name=plugin_name,json=pluginName,proto3" json:"plugin_name,omitempty"`
	Enabled     bool   `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Configured  bool   `protobuf:"varint,4,opt,name=configured,proto3" json:"configured,omitempty"`
	IsPreferred bool   `protobuf:"varint,5,opt,name=is_preferred,json=isPreferred,proto3" json:"is_preferred,omitempty"` // Currently the preferred provider
	// contains filtered or unexported fields
}

DescribeCapabilityProviderInfo describes a provider for a capability in DescribeCapability responses.

func (*DescribeCapabilityProviderInfo) Descriptor deprecated

func (*DescribeCapabilityProviderInfo) Descriptor() ([]byte, []int)

Deprecated: Use DescribeCapabilityProviderInfo.ProtoReflect.Descriptor instead.

func (*DescribeCapabilityProviderInfo) GetConfigured

func (x *DescribeCapabilityProviderInfo) GetConfigured() bool

func (*DescribeCapabilityProviderInfo) GetEnabled

func (x *DescribeCapabilityProviderInfo) GetEnabled() bool

func (*DescribeCapabilityProviderInfo) GetIsPreferred

func (x *DescribeCapabilityProviderInfo) GetIsPreferred() bool

func (*DescribeCapabilityProviderInfo) GetPluginId

func (x *DescribeCapabilityProviderInfo) GetPluginId() string

func (*DescribeCapabilityProviderInfo) GetPluginName

func (x *DescribeCapabilityProviderInfo) GetPluginName() string

func (*DescribeCapabilityProviderInfo) ProtoMessage

func (*DescribeCapabilityProviderInfo) ProtoMessage()

func (*DescribeCapabilityProviderInfo) ProtoReflect

func (*DescribeCapabilityProviderInfo) Reset

func (x *DescribeCapabilityProviderInfo) Reset()

func (*DescribeCapabilityProviderInfo) String

type DescribeCapabilityRequest

type DescribeCapabilityRequest struct {
	Capability string `protobuf:"bytes,1,opt,name=capability,proto3" json:"capability,omitempty"`
	// contains filtered or unexported fields
}

DescribeCapabilityRequest asks for metadata about a capability.

func (*DescribeCapabilityRequest) Descriptor deprecated

func (*DescribeCapabilityRequest) Descriptor() ([]byte, []int)

Deprecated: Use DescribeCapabilityRequest.ProtoReflect.Descriptor instead.

func (*DescribeCapabilityRequest) GetCapability

func (x *DescribeCapabilityRequest) GetCapability() string

func (*DescribeCapabilityRequest) ProtoMessage

func (*DescribeCapabilityRequest) ProtoMessage()

func (*DescribeCapabilityRequest) ProtoReflect

func (*DescribeCapabilityRequest) Reset

func (x *DescribeCapabilityRequest) Reset()

func (*DescribeCapabilityRequest) String

func (x *DescribeCapabilityRequest) String() string

type DescribeCapabilityResponse

type DescribeCapabilityResponse struct {
	Capability        string                            `protobuf:"bytes,1,opt,name=capability,proto3" json:"capability,omitempty"`
	ApiVersion        string                            `protobuf:"bytes,2,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"`                      // Current API version
	SupportedVersions []string                          `protobuf:"bytes,3,rep,name=supported_versions,json=supportedVersions,proto3" json:"supported_versions,omitempty"` // All supported versions
	Methods           []*CapabilityMethodInfo           `protobuf:"bytes,4,rep,name=methods,proto3" json:"methods,omitempty"`
	Providers         []*DescribeCapabilityProviderInfo `protobuf:"bytes,5,rep,name=providers,proto3" json:"providers,omitempty"` // Available providers
	// contains filtered or unexported fields
}

DescribeCapabilityResponse contains metadata about a capability.

func (*DescribeCapabilityResponse) Descriptor deprecated

func (*DescribeCapabilityResponse) Descriptor() ([]byte, []int)

Deprecated: Use DescribeCapabilityResponse.ProtoReflect.Descriptor instead.

func (*DescribeCapabilityResponse) GetApiVersion

func (x *DescribeCapabilityResponse) GetApiVersion() string

func (*DescribeCapabilityResponse) GetCapability

func (x *DescribeCapabilityResponse) GetCapability() string

func (*DescribeCapabilityResponse) GetMethods

func (*DescribeCapabilityResponse) GetProviders

func (*DescribeCapabilityResponse) GetSupportedVersions

func (x *DescribeCapabilityResponse) GetSupportedVersions() []string

func (*DescribeCapabilityResponse) ProtoMessage

func (*DescribeCapabilityResponse) ProtoMessage()

func (*DescribeCapabilityResponse) ProtoReflect

func (*DescribeCapabilityResponse) Reset

func (x *DescribeCapabilityResponse) Reset()

func (*DescribeCapabilityResponse) String

func (x *DescribeCapabilityResponse) String() string

type Empty

type Empty struct {
	// contains filtered or unexported fields
}

Empty is the standard empty message for RPCs with no request/response body.

func (*Empty) Descriptor deprecated

func (*Empty) Descriptor() ([]byte, []int)

Deprecated: Use Empty.ProtoReflect.Descriptor instead.

func (*Empty) ProtoMessage

func (*Empty) ProtoMessage()

func (*Empty) ProtoReflect

func (x *Empty) ProtoReflect() protoreflect.Message

func (*Empty) Reset

func (x *Empty) Reset()

func (*Empty) String

func (x *Empty) String() string

type EnrichRequest

type EnrichRequest struct {

	// Media ID in ViewRA database
	MediaId int64 `protobuf:"varint,1,opt,name=media_id,json=mediaId,proto3" json:"media_id,omitempty"`
	// Media type: "movie", "tv", "music"
	MediaType string `protobuf:"bytes,2,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`
	// Full path to the media file
	FilePath string `protobuf:"bytes,3,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
	// Title (from filename or previous enrichers)
	Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title,omitempty"`
	// Year (0 if unknown)
	Year int32 `protobuf:"varint,5,opt,name=year,proto3" json:"year,omitempty"`
	// External IDs from previous stages (e.g., {"imdb": "tt0133093", "tmdb": "603"})
	ExistingIds map[string]string `` /* 168-byte string literal not displayed */
	// TV-specific fields
	Tv *TVMetadata `protobuf:"bytes,7,opt,name=tv,proto3" json:"tv,omitempty"`
	// Music-specific fields
	Music *MusicMetadata `protobuf:"bytes,8,opt,name=music,proto3" json:"music,omitempty"`
	// contains filtered or unexported fields
}

func (*EnrichRequest) Descriptor deprecated

func (*EnrichRequest) Descriptor() ([]byte, []int)

Deprecated: Use EnrichRequest.ProtoReflect.Descriptor instead.

func (*EnrichRequest) GetExistingIds

func (x *EnrichRequest) GetExistingIds() map[string]string

func (*EnrichRequest) GetFilePath

func (x *EnrichRequest) GetFilePath() string

func (*EnrichRequest) GetMediaId

func (x *EnrichRequest) GetMediaId() int64

func (*EnrichRequest) GetMediaType

func (x *EnrichRequest) GetMediaType() string

func (*EnrichRequest) GetMusic

func (x *EnrichRequest) GetMusic() *MusicMetadata

func (*EnrichRequest) GetTitle

func (x *EnrichRequest) GetTitle() string

func (*EnrichRequest) GetTv

func (x *EnrichRequest) GetTv() *TVMetadata

func (*EnrichRequest) GetYear

func (x *EnrichRequest) GetYear() int32

func (*EnrichRequest) ProtoMessage

func (*EnrichRequest) ProtoMessage()

func (*EnrichRequest) ProtoReflect

func (x *EnrichRequest) ProtoReflect() protoreflect.Message

func (*EnrichRequest) Reset

func (x *EnrichRequest) Reset()

func (*EnrichRequest) String

func (x *EnrichRequest) String() string

type EnrichResponse

type EnrichResponse struct {

	// Whether the enricher found a match
	Matched bool `protobuf:"varint,1,opt,name=matched,proto3" json:"matched,omitempty"`
	// Enriched metadata (only non-null fields should be applied)
	Metadata *EnrichedMetadata `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"`
	// External IDs discovered by this enricher
	DiscoveredIds map[string]string `` /* 174-byte string literal not displayed */
	// Images discovered by this enricher
	Images []*EnrichedImage `protobuf:"bytes,4,rep,name=images,proto3" json:"images,omitempty"`
	// Whether the enricher intentionally skipped this item
	Skipped bool `protobuf:"varint,5,opt,name=skipped,proto3" json:"skipped,omitempty"`
	// Reason for skipping (e.g., "no NFO file found")
	SkipReason string `protobuf:"bytes,6,opt,name=skip_reason,json=skipReason,proto3" json:"skip_reason,omitempty"`
	// Confidence score (0.0 to 1.0) for the match
	Confidence float32 `protobuf:"fixed32,7,opt,name=confidence,proto3" json:"confidence,omitempty"`
	// contains filtered or unexported fields
}

func (*EnrichResponse) Descriptor deprecated

func (*EnrichResponse) Descriptor() ([]byte, []int)

Deprecated: Use EnrichResponse.ProtoReflect.Descriptor instead.

func (*EnrichResponse) GetConfidence

func (x *EnrichResponse) GetConfidence() float32

func (*EnrichResponse) GetDiscoveredIds

func (x *EnrichResponse) GetDiscoveredIds() map[string]string

func (*EnrichResponse) GetImages

func (x *EnrichResponse) GetImages() []*EnrichedImage

func (*EnrichResponse) GetMatched

func (x *EnrichResponse) GetMatched() bool

func (*EnrichResponse) GetMetadata

func (x *EnrichResponse) GetMetadata() *EnrichedMetadata

func (*EnrichResponse) GetSkipReason

func (x *EnrichResponse) GetSkipReason() string

func (*EnrichResponse) GetSkipped

func (x *EnrichResponse) GetSkipped() bool

func (*EnrichResponse) ProtoMessage

func (*EnrichResponse) ProtoMessage()

func (*EnrichResponse) ProtoReflect

func (x *EnrichResponse) ProtoReflect() protoreflect.Message

func (*EnrichResponse) Reset

func (x *EnrichResponse) Reset()

func (*EnrichResponse) String

func (x *EnrichResponse) String() string

type EnrichedImage

type EnrichedImage struct {

	// Type of image: "poster", "fanart", "banner", "thumb", "logo", "clearart", "discart"
	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	// Local file path or remote URL
	Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	// Whether path is a URL (needs download) or local file
	IsRemote bool `protobuf:"varint,3,opt,name=is_remote,json=isRemote,proto3" json:"is_remote,omitempty"`
	// Image dimensions (if known)
	Width  int32 `protobuf:"varint,4,opt,name=width,proto3" json:"width,omitempty"`
	Height int32 `protobuf:"varint,5,opt,name=height,proto3" json:"height,omitempty"`
	// Language code (e.g., "en", "de")
	Language string `protobuf:"bytes,6,opt,name=language,proto3" json:"language,omitempty"`
	// Rating/votes for this image (from sources like Fanart.tv)
	Rating float32 `protobuf:"fixed32,7,opt,name=rating,proto3" json:"rating,omitempty"`
	Votes  int32   `protobuf:"varint,8,opt,name=votes,proto3" json:"votes,omitempty"`
	// Season number (for season-specific artwork)
	Season int32 `protobuf:"varint,9,opt,name=season,proto3" json:"season,omitempty"`
	// contains filtered or unexported fields
}

func (*EnrichedImage) Descriptor deprecated

func (*EnrichedImage) Descriptor() ([]byte, []int)

Deprecated: Use EnrichedImage.ProtoReflect.Descriptor instead.

func (*EnrichedImage) GetHeight

func (x *EnrichedImage) GetHeight() int32

func (*EnrichedImage) GetIsRemote

func (x *EnrichedImage) GetIsRemote() bool

func (*EnrichedImage) GetLanguage

func (x *EnrichedImage) GetLanguage() string

func (*EnrichedImage) GetPath

func (x *EnrichedImage) GetPath() string

func (*EnrichedImage) GetRating

func (x *EnrichedImage) GetRating() float32

func (*EnrichedImage) GetSeason

func (x *EnrichedImage) GetSeason() int32

func (*EnrichedImage) GetType

func (x *EnrichedImage) GetType() string

func (*EnrichedImage) GetVotes

func (x *EnrichedImage) GetVotes() int32

func (*EnrichedImage) GetWidth

func (x *EnrichedImage) GetWidth() int32

func (*EnrichedImage) ProtoMessage

func (*EnrichedImage) ProtoMessage()

func (*EnrichedImage) ProtoReflect

func (x *EnrichedImage) ProtoReflect() protoreflect.Message

func (*EnrichedImage) Reset

func (x *EnrichedImage) Reset()

func (*EnrichedImage) String

func (x *EnrichedImage) String() string

type EnrichedMetadata

type EnrichedMetadata struct {

	// Common fields
	Title          *string  `protobuf:"bytes,1,opt,name=title,proto3,oneof" json:"title,omitempty"`
	OriginalTitle  *string  `protobuf:"bytes,2,opt,name=original_title,json=originalTitle,proto3,oneof" json:"original_title,omitempty"`
	SortTitle      *string  `protobuf:"bytes,3,opt,name=sort_title,json=sortTitle,proto3,oneof" json:"sort_title,omitempty"`
	Year           *int32   `protobuf:"varint,4,opt,name=year,proto3,oneof" json:"year,omitempty"`
	Plot           *string  `protobuf:"bytes,5,opt,name=plot,proto3,oneof" json:"plot,omitempty"`
	Tagline        *string  `protobuf:"bytes,6,opt,name=tagline,proto3,oneof" json:"tagline,omitempty"`
	Genres         []string `protobuf:"bytes,7,rep,name=genres,proto3" json:"genres,omitempty"`
	ContentRating  *string  `protobuf:"bytes,8,opt,name=content_rating,json=contentRating,proto3,oneof" json:"content_rating,omitempty"`
	RuntimeMinutes *int32   `protobuf:"varint,9,opt,name=runtime_minutes,json=runtimeMinutes,proto3,oneof" json:"runtime_minutes,omitempty"`
	// Ratings
	Rating      *float32 `protobuf:"fixed32,10,opt,name=rating,proto3,oneof" json:"rating,omitempty"`
	RatingVotes *int32   `protobuf:"varint,11,opt,name=rating_votes,json=ratingVotes,proto3,oneof" json:"rating_votes,omitempty"`
	// People
	Directors []string      `protobuf:"bytes,12,rep,name=directors,proto3" json:"directors,omitempty"`
	Writers   []string      `protobuf:"bytes,13,rep,name=writers,proto3" json:"writers,omitempty"`
	Cast      []*CastMember `protobuf:"bytes,14,rep,name=cast,proto3" json:"cast,omitempty"`
	Producers []string      `protobuf:"bytes,37,rep,name=producers,proto3" json:"producers,omitempty"` // Producers and executive producers
	// TV-specific
	Network   *string `protobuf:"bytes,15,opt,name=network,proto3,oneof" json:"network,omitempty"`
	Status    *string `protobuf:"bytes,16,opt,name=status,proto3,oneof" json:"status,omitempty"`       // "Continuing", "Ended"
	Premiered *string `protobuf:"bytes,17,opt,name=premiered,proto3,oneof" json:"premiered,omitempty"` // Date string (first_air_date)
	// Music-specific
	RecordLabel *string `protobuf:"bytes,18,opt,name=record_label,json=recordLabel,proto3,oneof" json:"record_label,omitempty"`
	ReleaseDate *string `protobuf:"bytes,19,opt,name=release_date,json=releaseDate,proto3,oneof" json:"release_date,omitempty"` // YYYY-MM-DD format
	// Studio (movies) / Production companies
	Studios []string `protobuf:"bytes,20,rep,name=studios,proto3" json:"studios,omitempty"`
	// Movie-specific production details
	Budget  *int64 `protobuf:"varint,21,opt,name=budget,proto3,oneof" json:"budget,omitempty"`
	Revenue *int64 `protobuf:"varint,22,opt,name=revenue,proto3,oneof" json:"revenue,omitempty"`
	// Common production details
	OriginalLanguage *string `protobuf:"bytes,23,opt,name=original_language,json=originalLanguage,proto3,oneof" json:"original_language,omitempty"`
	CountryOfOrigin  *string `protobuf:"bytes,24,opt,name=country_of_origin,json=countryOfOrigin,proto3,oneof" json:"country_of_origin,omitempty"`
	// TV-specific additional fields
	LastAirDate *string  `protobuf:"bytes,25,opt,name=last_air_date,json=lastAirDate,proto3,oneof" json:"last_air_date,omitempty"` // YYYY-MM-DD format
	Creators    []string `protobuf:"bytes,26,rep,name=creators,proto3" json:"creators,omitempty"`                                  // Show creators
	// Music-specific fields (for applying to tracks)
	Artist      *string `protobuf:"bytes,27,opt,name=artist,proto3,oneof" json:"artist,omitempty"`
	Album       *string `protobuf:"bytes,28,opt,name=album,proto3,oneof" json:"album,omitempty"`
	AlbumArtist *string `protobuf:"bytes,29,opt,name=album_artist,json=albumArtist,proto3,oneof" json:"album_artist,omitempty"`
	TrackNumber *int32  `protobuf:"varint,30,opt,name=track_number,json=trackNumber,proto3,oneof" json:"track_number,omitempty"`
	DiscNumber  *int32  `protobuf:"varint,31,opt,name=disc_number,json=discNumber,proto3,oneof" json:"disc_number,omitempty"`
	TotalTracks *int32  `protobuf:"varint,32,opt,name=total_tracks,json=totalTracks,proto3,oneof" json:"total_tracks,omitempty"`
	TotalDiscs  *int32  `protobuf:"varint,33,opt,name=total_discs,json=totalDiscs,proto3,oneof" json:"total_discs,omitempty"`
	// Album-specific metadata (for MediaTypeMusicAlbum)
	AlbumMetadata *AlbumMetadata `protobuf:"bytes,34,opt,name=album_metadata,json=albumMetadata,proto3" json:"album_metadata,omitempty"`
	// Artist-specific metadata (for MediaTypeMusicArtist)
	ArtistMetadata *ArtistMetadata `protobuf:"bytes,35,opt,name=artist_metadata,json=artistMetadata,proto3" json:"artist_metadata,omitempty"`
	// Keywords/tags from external sources (e.g., TMDB)
	Keywords []*Keyword `protobuf:"bytes,36,rep,name=keywords,proto3" json:"keywords,omitempty"`
	// Similar/recommended titles (from TMDb recommendations)
	SimilarTitles []string `protobuf:"bytes,38,rep,name=similar_titles,json=similarTitles,proto3" json:"similar_titles,omitempty"`
	// contains filtered or unexported fields
}

func (*EnrichedMetadata) Descriptor deprecated

func (*EnrichedMetadata) Descriptor() ([]byte, []int)

Deprecated: Use EnrichedMetadata.ProtoReflect.Descriptor instead.

func (*EnrichedMetadata) GetAlbum

func (x *EnrichedMetadata) GetAlbum() string

func (*EnrichedMetadata) GetAlbumArtist

func (x *EnrichedMetadata) GetAlbumArtist() string

func (*EnrichedMetadata) GetAlbumMetadata

func (x *EnrichedMetadata) GetAlbumMetadata() *AlbumMetadata

func (*EnrichedMetadata) GetArtist

func (x *EnrichedMetadata) GetArtist() string

func (*EnrichedMetadata) GetArtistMetadata

func (x *EnrichedMetadata) GetArtistMetadata() *ArtistMetadata

func (*EnrichedMetadata) GetBudget

func (x *EnrichedMetadata) GetBudget() int64

func (*EnrichedMetadata) GetCast

func (x *EnrichedMetadata) GetCast() []*CastMember

func (*EnrichedMetadata) GetContentRating

func (x *EnrichedMetadata) GetContentRating() string

func (*EnrichedMetadata) GetCountryOfOrigin

func (x *EnrichedMetadata) GetCountryOfOrigin() string

func (*EnrichedMetadata) GetCreators

func (x *EnrichedMetadata) GetCreators() []string

func (*EnrichedMetadata) GetDirectors

func (x *EnrichedMetadata) GetDirectors() []string

func (*EnrichedMetadata) GetDiscNumber

func (x *EnrichedMetadata) GetDiscNumber() int32

func (*EnrichedMetadata) GetGenres

func (x *EnrichedMetadata) GetGenres() []string

func (*EnrichedMetadata) GetKeywords

func (x *EnrichedMetadata) GetKeywords() []*Keyword

func (*EnrichedMetadata) GetLastAirDate

func (x *EnrichedMetadata) GetLastAirDate() string

func (*EnrichedMetadata) GetNetwork

func (x *EnrichedMetadata) GetNetwork() string

func (*EnrichedMetadata) GetOriginalLanguage

func (x *EnrichedMetadata) GetOriginalLanguage() string

func (*EnrichedMetadata) GetOriginalTitle

func (x *EnrichedMetadata) GetOriginalTitle() string

func (*EnrichedMetadata) GetPlot

func (x *EnrichedMetadata) GetPlot() string

func (*EnrichedMetadata) GetPremiered

func (x *EnrichedMetadata) GetPremiered() string

func (*EnrichedMetadata) GetProducers

func (x *EnrichedMetadata) GetProducers() []string

func (*EnrichedMetadata) GetRating

func (x *EnrichedMetadata) GetRating() float32

func (*EnrichedMetadata) GetRatingVotes

func (x *EnrichedMetadata) GetRatingVotes() int32

func (*EnrichedMetadata) GetRecordLabel

func (x *EnrichedMetadata) GetRecordLabel() string

func (*EnrichedMetadata) GetReleaseDate

func (x *EnrichedMetadata) GetReleaseDate() string

func (*EnrichedMetadata) GetRevenue

func (x *EnrichedMetadata) GetRevenue() int64

func (*EnrichedMetadata) GetRuntimeMinutes

func (x *EnrichedMetadata) GetRuntimeMinutes() int32

func (*EnrichedMetadata) GetSimilarTitles

func (x *EnrichedMetadata) GetSimilarTitles() []string

func (*EnrichedMetadata) GetSortTitle

func (x *EnrichedMetadata) GetSortTitle() string

func (*EnrichedMetadata) GetStatus

func (x *EnrichedMetadata) GetStatus() string

func (*EnrichedMetadata) GetStudios

func (x *EnrichedMetadata) GetStudios() []string

func (*EnrichedMetadata) GetTagline

func (x *EnrichedMetadata) GetTagline() string

func (*EnrichedMetadata) GetTitle

func (x *EnrichedMetadata) GetTitle() string

func (*EnrichedMetadata) GetTotalDiscs

func (x *EnrichedMetadata) GetTotalDiscs() int32

func (*EnrichedMetadata) GetTotalTracks

func (x *EnrichedMetadata) GetTotalTracks() int32

func (*EnrichedMetadata) GetTrackNumber

func (x *EnrichedMetadata) GetTrackNumber() int32

func (*EnrichedMetadata) GetWriters

func (x *EnrichedMetadata) GetWriters() []string

func (*EnrichedMetadata) GetYear

func (x *EnrichedMetadata) GetYear() int32

func (*EnrichedMetadata) ProtoMessage

func (*EnrichedMetadata) ProtoMessage()

func (*EnrichedMetadata) ProtoReflect

func (x *EnrichedMetadata) ProtoReflect() protoreflect.Message

func (*EnrichedMetadata) Reset

func (x *EnrichedMetadata) Reset()

func (*EnrichedMetadata) String

func (x *EnrichedMetadata) String() string

type EnricherCapabilities

type EnricherCapabilities struct {

	// Media types this enricher supports (e.g., "movie", "tv", "music")
	MediaTypes []string `protobuf:"bytes,1,rep,name=media_types,json=mediaTypes,proto3" json:"media_types,omitempty"`
	// What this enricher provides (e.g., "metadata", "artwork", "external_ids")
	Provides []string `protobuf:"bytes,2,rep,name=provides,proto3" json:"provides,omitempty"`
	// Whether this enricher operates locally (high concurrency) or remotely (rate limited)
	IsLocal bool `protobuf:"varint,3,opt,name=is_local,json=isLocal,proto3" json:"is_local,omitempty"`
	// Requests per minute for remote enrichers (0 = unlimited)
	RateLimit int32 `protobuf:"varint,4,opt,name=rate_limit,json=rateLimit,proto3" json:"rate_limit,omitempty"`
	// External IDs this enricher requires (e.g., ["imdb", "tmdb"])
	// If empty, enricher can work from title/year alone
	Requires []string `protobuf:"bytes,5,rep,name=requires,proto3" json:"requires,omitempty"`
	// Priority hint for ordering when capabilities overlap (higher = earlier)
	Priority int32 `protobuf:"varint,6,opt,name=priority,proto3" json:"priority,omitempty"`
	// contains filtered or unexported fields
}

func (*EnricherCapabilities) Descriptor deprecated

func (*EnricherCapabilities) Descriptor() ([]byte, []int)

Deprecated: Use EnricherCapabilities.ProtoReflect.Descriptor instead.

func (*EnricherCapabilities) GetIsLocal

func (x *EnricherCapabilities) GetIsLocal() bool

func (*EnricherCapabilities) GetMediaTypes

func (x *EnricherCapabilities) GetMediaTypes() []string

func (*EnricherCapabilities) GetPriority

func (x *EnricherCapabilities) GetPriority() int32

func (*EnricherCapabilities) GetProvides

func (x *EnricherCapabilities) GetProvides() []string

func (*EnricherCapabilities) GetRateLimit

func (x *EnricherCapabilities) GetRateLimit() int32

func (*EnricherCapabilities) GetRequires

func (x *EnricherCapabilities) GetRequires() []string

func (*EnricherCapabilities) ProtoMessage

func (*EnricherCapabilities) ProtoMessage()

func (*EnricherCapabilities) ProtoReflect

func (x *EnricherCapabilities) ProtoReflect() protoreflect.Message

func (*EnricherCapabilities) Reset

func (x *EnricherCapabilities) Reset()

func (*EnricherCapabilities) String

func (x *EnricherCapabilities) String() string

type EnricherClient

type EnricherClient interface {
	// GetCapabilities describes what this enricher provides and requires.
	GetCapabilities(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*EnricherCapabilities, error)
	// Enrich processes a single media item and returns enriched metadata.
	Enrich(ctx context.Context, in *EnrichRequest, opts ...grpc.CallOption) (*EnrichResponse, error)
}

EnricherClient is the client API for Enricher service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

Enricher is the interface for metadata enrichment plugins. Plugins that provide metadata (NFO, TMDb, MusicBrainz, etc.) implement this.

func NewEnricherClient

func NewEnricherClient(cc grpc.ClientConnInterface) EnricherClient

type EnricherServer

type EnricherServer interface {
	// GetCapabilities describes what this enricher provides and requires.
	GetCapabilities(context.Context, *Empty) (*EnricherCapabilities, error)
	// Enrich processes a single media item and returns enriched metadata.
	Enrich(context.Context, *EnrichRequest) (*EnrichResponse, error)
	// contains filtered or unexported methods
}

EnricherServer is the server API for Enricher service. All implementations must embed UnimplementedEnricherServer for forward compatibility.

Enricher is the interface for metadata enrichment plugins. Plugins that provide metadata (NFO, TMDb, MusicBrainz, etc.) implement this.

type EntityIDsResponse

type EntityIDsResponse struct {
	EntityIds []int64 `protobuf:"varint,1,rep,packed,name=entity_ids,json=entityIds,proto3" json:"entity_ids,omitempty"`
	// contains filtered or unexported fields
}

EntityIDsResponse contains a list of entity IDs.

func (*EntityIDsResponse) Descriptor deprecated

func (*EntityIDsResponse) Descriptor() ([]byte, []int)

Deprecated: Use EntityIDsResponse.ProtoReflect.Descriptor instead.

func (*EntityIDsResponse) GetEntityIds

func (x *EntityIDsResponse) GetEntityIds() []int64

func (*EntityIDsResponse) ProtoMessage

func (*EntityIDsResponse) ProtoMessage()

func (*EntityIDsResponse) ProtoReflect

func (x *EntityIDsResponse) ProtoReflect() protoreflect.Message

func (*EntityIDsResponse) Reset

func (x *EntityIDsResponse) Reset()

func (*EntityIDsResponse) String

func (x *EntityIDsResponse) String() string

type EntityTypeStats

type EntityTypeStats struct {
	EntityType string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
	Indexed    int64  `protobuf:"varint,2,opt,name=indexed,proto3" json:"indexed,omitempty"`
	Total      int64  `protobuf:"varint,3,opt,name=total,proto3" json:"total,omitempty"` // Total items of this type in library
	// contains filtered or unexported fields
}

func (*EntityTypeStats) Descriptor deprecated

func (*EntityTypeStats) Descriptor() ([]byte, []int)

Deprecated: Use EntityTypeStats.ProtoReflect.Descriptor instead.

func (*EntityTypeStats) GetEntityType

func (x *EntityTypeStats) GetEntityType() string

func (*EntityTypeStats) GetIndexed

func (x *EntityTypeStats) GetIndexed() int64

func (*EntityTypeStats) GetTotal

func (x *EntityTypeStats) GetTotal() int64

func (*EntityTypeStats) ProtoMessage

func (*EntityTypeStats) ProtoMessage()

func (*EntityTypeStats) ProtoReflect

func (x *EntityTypeStats) ProtoReflect() protoreflect.Message

func (*EntityTypeStats) Reset

func (x *EntityTypeStats) Reset()

func (*EntityTypeStats) String

func (x *EntityTypeStats) String() string

type Event

type Event struct {
	Type          string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	Source        string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
	TimestampUnix int64  `protobuf:"varint,3,opt,name=timestamp_unix,json=timestampUnix,proto3" json:"timestamp_unix,omitempty"`
	Payload       []byte `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"` // JSON-encoded payload
	CorrelationId string `protobuf:"bytes,5,opt,name=correlation_id,json=correlationId,proto3" json:"correlation_id,omitempty"`
	// contains filtered or unexported fields
}

func (*Event) Descriptor deprecated

func (*Event) Descriptor() ([]byte, []int)

Deprecated: Use Event.ProtoReflect.Descriptor instead.

func (*Event) GetCorrelationId

func (x *Event) GetCorrelationId() string

func (*Event) GetPayload

func (x *Event) GetPayload() []byte

func (*Event) GetSource

func (x *Event) GetSource() string

func (*Event) GetTimestampUnix

func (x *Event) GetTimestampUnix() int64

func (*Event) GetType

func (x *Event) GetType() string

func (*Event) ProtoMessage

func (*Event) ProtoMessage()

func (*Event) ProtoReflect

func (x *Event) ProtoReflect() protoreflect.Message

func (*Event) Reset

func (x *Event) Reset()

func (*Event) String

func (x *Event) String() string

type EventResponse

type EventResponse struct {
	Handled bool   `protobuf:"varint,1,opt,name=handled,proto3" json:"handled,omitempty"`
	Error   string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*EventResponse) Descriptor deprecated

func (*EventResponse) Descriptor() ([]byte, []int)

Deprecated: Use EventResponse.ProtoReflect.Descriptor instead.

func (*EventResponse) GetError

func (x *EventResponse) GetError() string

func (*EventResponse) GetHandled

func (x *EventResponse) GetHandled() bool

func (*EventResponse) ProtoMessage

func (*EventResponse) ProtoMessage()

func (*EventResponse) ProtoReflect

func (x *EventResponse) ProtoReflect() protoreflect.Message

func (*EventResponse) Reset

func (x *EventResponse) Reset()

func (*EventResponse) String

func (x *EventResponse) String() string

type EventSubscriptions

type EventSubscriptions struct {

	// Event types to subscribe to (e.g., ["media.added", "playback.started"])
	EventTypes []string `protobuf:"bytes,1,rep,name=event_types,json=eventTypes,proto3" json:"event_types,omitempty"`
	// contains filtered or unexported fields
}

func (*EventSubscriptions) Descriptor deprecated

func (*EventSubscriptions) Descriptor() ([]byte, []int)

Deprecated: Use EventSubscriptions.ProtoReflect.Descriptor instead.

func (*EventSubscriptions) GetEventTypes

func (x *EventSubscriptions) GetEventTypes() []string

func (*EventSubscriptions) ProtoMessage

func (*EventSubscriptions) ProtoMessage()

func (*EventSubscriptions) ProtoReflect

func (x *EventSubscriptions) ProtoReflect() protoreflect.Message

func (*EventSubscriptions) Reset

func (x *EventSubscriptions) Reset()

func (*EventSubscriptions) String

func (x *EventSubscriptions) String() string

type ExternalIdQuery

type ExternalIdQuery struct {
	Provider   string `protobuf:"bytes,1,opt,name=provider,proto3" json:"provider,omitempty"` // e.g., "imdb", "tmdb", "musicbrainz"
	ExternalId string `protobuf:"bytes,2,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"`
	// contains filtered or unexported fields
}

func (*ExternalIdQuery) Descriptor deprecated

func (*ExternalIdQuery) Descriptor() ([]byte, []int)

Deprecated: Use ExternalIdQuery.ProtoReflect.Descriptor instead.

func (*ExternalIdQuery) GetExternalId

func (x *ExternalIdQuery) GetExternalId() string

func (*ExternalIdQuery) GetProvider

func (x *ExternalIdQuery) GetProvider() string

func (*ExternalIdQuery) ProtoMessage

func (*ExternalIdQuery) ProtoMessage()

func (*ExternalIdQuery) ProtoReflect

func (x *ExternalIdQuery) ProtoReflect() protoreflect.Message

func (*ExternalIdQuery) Reset

func (x *ExternalIdQuery) Reset()

func (*ExternalIdQuery) String

func (x *ExternalIdQuery) String() string

type ExtractImagesRequest

type ExtractImagesRequest struct {
	FilePath string   `protobuf:"bytes,1,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
	Types    []string `protobuf:"bytes,2,rep,name=types,proto3" json:"types,omitempty"` // e.g., ["poster", "fanart"]
	// contains filtered or unexported fields
}

func (*ExtractImagesRequest) Descriptor deprecated

func (*ExtractImagesRequest) Descriptor() ([]byte, []int)

Deprecated: Use ExtractImagesRequest.ProtoReflect.Descriptor instead.

func (*ExtractImagesRequest) GetFilePath

func (x *ExtractImagesRequest) GetFilePath() string

func (*ExtractImagesRequest) GetTypes

func (x *ExtractImagesRequest) GetTypes() []string

func (*ExtractImagesRequest) ProtoMessage

func (*ExtractImagesRequest) ProtoMessage()

func (*ExtractImagesRequest) ProtoReflect

func (x *ExtractImagesRequest) ProtoReflect() protoreflect.Message

func (*ExtractImagesRequest) Reset

func (x *ExtractImagesRequest) Reset()

func (*ExtractImagesRequest) String

func (x *ExtractImagesRequest) String() string

type ExtractImagesResponse

type ExtractImagesResponse struct {
	Images []*ExtractedImage `protobuf:"bytes,1,rep,name=images,proto3" json:"images,omitempty"`
	// contains filtered or unexported fields
}

func (*ExtractImagesResponse) Descriptor deprecated

func (*ExtractImagesResponse) Descriptor() ([]byte, []int)

Deprecated: Use ExtractImagesResponse.ProtoReflect.Descriptor instead.

func (*ExtractImagesResponse) GetImages

func (x *ExtractImagesResponse) GetImages() []*ExtractedImage

func (*ExtractImagesResponse) ProtoMessage

func (*ExtractImagesResponse) ProtoMessage()

func (*ExtractImagesResponse) ProtoReflect

func (x *ExtractImagesResponse) ProtoReflect() protoreflect.Message

func (*ExtractImagesResponse) Reset

func (x *ExtractImagesResponse) Reset()

func (*ExtractImagesResponse) String

func (x *ExtractImagesResponse) String() string

type ExtractedImage

type ExtractedImage struct {
	Type   string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	Path   string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"` // Path where image was saved
	Width  int32  `protobuf:"varint,3,opt,name=width,proto3" json:"width,omitempty"`
	Height int32  `protobuf:"varint,4,opt,name=height,proto3" json:"height,omitempty"`
	// contains filtered or unexported fields
}

func (*ExtractedImage) Descriptor deprecated

func (*ExtractedImage) Descriptor() ([]byte, []int)

Deprecated: Use ExtractedImage.ProtoReflect.Descriptor instead.

func (*ExtractedImage) GetHeight

func (x *ExtractedImage) GetHeight() int32

func (*ExtractedImage) GetPath

func (x *ExtractedImage) GetPath() string

func (*ExtractedImage) GetType

func (x *ExtractedImage) GetType() string

func (*ExtractedImage) GetWidth

func (x *ExtractedImage) GetWidth() int32

func (*ExtractedImage) ProtoMessage

func (*ExtractedImage) ProtoMessage()

func (*ExtractedImage) ProtoReflect

func (x *ExtractedImage) ProtoReflect() protoreflect.Message

func (*ExtractedImage) Reset

func (x *ExtractedImage) Reset()

func (*ExtractedImage) String

func (x *ExtractedImage) String() string

type FilePath

type FilePath struct {
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// contains filtered or unexported fields
}

func (*FilePath) Descriptor deprecated

func (*FilePath) Descriptor() ([]byte, []int)

Deprecated: Use FilePath.ProtoReflect.Descriptor instead.

func (*FilePath) GetPath

func (x *FilePath) GetPath() string

func (*FilePath) ProtoMessage

func (*FilePath) ProtoMessage()

func (*FilePath) ProtoReflect

func (x *FilePath) ProtoReflect() protoreflect.Message

func (*FilePath) Reset

func (x *FilePath) Reset()

func (*FilePath) String

func (x *FilePath) String() string

type FindSimilarRequest

type FindSimilarRequest struct {
	EntityType string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
	EntityId   int64  `protobuf:"varint,2,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
	Limit      int32  `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
	// contains filtered or unexported fields
}

func (*FindSimilarRequest) Descriptor deprecated

func (*FindSimilarRequest) Descriptor() ([]byte, []int)

Deprecated: Use FindSimilarRequest.ProtoReflect.Descriptor instead.

func (*FindSimilarRequest) GetEntityId

func (x *FindSimilarRequest) GetEntityId() int64

func (*FindSimilarRequest) GetEntityType

func (x *FindSimilarRequest) GetEntityType() string

func (*FindSimilarRequest) GetLimit

func (x *FindSimilarRequest) GetLimit() int32

func (*FindSimilarRequest) ProtoMessage

func (*FindSimilarRequest) ProtoMessage()

func (*FindSimilarRequest) ProtoReflect

func (x *FindSimilarRequest) ProtoReflect() protoreflect.Message

func (*FindSimilarRequest) Reset

func (x *FindSimilarRequest) Reset()

func (*FindSimilarRequest) String

func (x *FindSimilarRequest) String() string

type GetPositivelyRatedIDsRequest

type GetPositivelyRatedIDsRequest struct {
	UserId     string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`             // Required: the user ID
	EntityType string `protobuf:"bytes,2,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"` // Optional: filter by entity type (movie, tv_show, tv_episode)
	Limit      int32  `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`                            // Optional: max results (default: 100)
	// contains filtered or unexported fields
}

GetPositivelyRatedIDsRequest retrieves entity IDs with positive ratings (favorite or up).

func (*GetPositivelyRatedIDsRequest) Descriptor deprecated

func (*GetPositivelyRatedIDsRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetPositivelyRatedIDsRequest.ProtoReflect.Descriptor instead.

func (*GetPositivelyRatedIDsRequest) GetEntityType

func (x *GetPositivelyRatedIDsRequest) GetEntityType() string

func (*GetPositivelyRatedIDsRequest) GetLimit

func (x *GetPositivelyRatedIDsRequest) GetLimit() int32

func (*GetPositivelyRatedIDsRequest) GetUserId

func (x *GetPositivelyRatedIDsRequest) GetUserId() string

func (*GetPositivelyRatedIDsRequest) ProtoMessage

func (*GetPositivelyRatedIDsRequest) ProtoMessage()

func (*GetPositivelyRatedIDsRequest) ProtoReflect

func (*GetPositivelyRatedIDsRequest) Reset

func (x *GetPositivelyRatedIDsRequest) Reset()

func (*GetPositivelyRatedIDsRequest) String

type GetRatedEntityIDsRequest

type GetRatedEntityIDsRequest struct {
	UserId     string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`             // Required: the user ID
	EntityType string `protobuf:"bytes,2,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"` // Optional: filter by entity type (movie, tv_show, tv_episode)
	Rating     string `protobuf:"bytes,3,opt,name=rating,proto3" json:"rating,omitempty"`                           // Required: rating type (favorite, up, down)
	Limit      int32  `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"`                            // Optional: max results (default: 100)
	// contains filtered or unexported fields
}

GetRatedEntityIDsRequest retrieves entity IDs with a specific rating.

func (*GetRatedEntityIDsRequest) Descriptor deprecated

func (*GetRatedEntityIDsRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetRatedEntityIDsRequest.ProtoReflect.Descriptor instead.

func (*GetRatedEntityIDsRequest) GetEntityType

func (x *GetRatedEntityIDsRequest) GetEntityType() string

func (*GetRatedEntityIDsRequest) GetLimit

func (x *GetRatedEntityIDsRequest) GetLimit() int32

func (*GetRatedEntityIDsRequest) GetRating

func (x *GetRatedEntityIDsRequest) GetRating() string

func (*GetRatedEntityIDsRequest) GetUserId

func (x *GetRatedEntityIDsRequest) GetUserId() string

func (*GetRatedEntityIDsRequest) ProtoMessage

func (*GetRatedEntityIDsRequest) ProtoMessage()

func (*GetRatedEntityIDsRequest) ProtoReflect

func (x *GetRatedEntityIDsRequest) ProtoReflect() protoreflect.Message

func (*GetRatedEntityIDsRequest) Reset

func (x *GetRatedEntityIDsRequest) Reset()

func (*GetRatedEntityIDsRequest) String

func (x *GetRatedEntityIDsRequest) String() string

type GetWatchedEntityIDsRequest

type GetWatchedEntityIDsRequest struct {
	UserId    string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`          // Required: the user ID
	MediaType string `protobuf:"bytes,2,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"` // Optional: filter by media type
	Limit     int32  `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`                         // Optional: max results (default: 1000)
	// contains filtered or unexported fields
}

GetWatchedEntityIDsRequest retrieves entity IDs of watched items.

func (*GetWatchedEntityIDsRequest) Descriptor deprecated

func (*GetWatchedEntityIDsRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetWatchedEntityIDsRequest.ProtoReflect.Descriptor instead.

func (*GetWatchedEntityIDsRequest) GetLimit

func (x *GetWatchedEntityIDsRequest) GetLimit() int32

func (*GetWatchedEntityIDsRequest) GetMediaType

func (x *GetWatchedEntityIDsRequest) GetMediaType() string

func (*GetWatchedEntityIDsRequest) GetUserId

func (x *GetWatchedEntityIDsRequest) GetUserId() string

func (*GetWatchedEntityIDsRequest) ProtoMessage

func (*GetWatchedEntityIDsRequest) ProtoMessage()

func (*GetWatchedEntityIDsRequest) ProtoReflect

func (*GetWatchedEntityIDsRequest) Reset

func (x *GetWatchedEntityIDsRequest) Reset()

func (*GetWatchedEntityIDsRequest) String

func (x *GetWatchedEntityIDsRequest) String() string

type HasRatingsRequest

type HasRatingsRequest struct {
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// contains filtered or unexported fields
}

HasRatingsRequest checks if a user has any ratings.

func (*HasRatingsRequest) Descriptor deprecated

func (*HasRatingsRequest) Descriptor() ([]byte, []int)

Deprecated: Use HasRatingsRequest.ProtoReflect.Descriptor instead.

func (*HasRatingsRequest) GetUserId

func (x *HasRatingsRequest) GetUserId() string

func (*HasRatingsRequest) ProtoMessage

func (*HasRatingsRequest) ProtoMessage()

func (*HasRatingsRequest) ProtoReflect

func (x *HasRatingsRequest) ProtoReflect() protoreflect.Message

func (*HasRatingsRequest) Reset

func (x *HasRatingsRequest) Reset()

func (*HasRatingsRequest) String

func (x *HasRatingsRequest) String() string

type HasRatingsResponse

type HasRatingsResponse struct {
	HasRatings bool `protobuf:"varint,1,opt,name=has_ratings,json=hasRatings,proto3" json:"has_ratings,omitempty"`
	// contains filtered or unexported fields
}

HasRatingsResponse indicates whether the user has ratings.

func (*HasRatingsResponse) Descriptor deprecated

func (*HasRatingsResponse) Descriptor() ([]byte, []int)

Deprecated: Use HasRatingsResponse.ProtoReflect.Descriptor instead.

func (*HasRatingsResponse) GetHasRatings

func (x *HasRatingsResponse) GetHasRatings() bool

func (*HasRatingsResponse) ProtoMessage

func (*HasRatingsResponse) ProtoMessage()

func (*HasRatingsResponse) ProtoReflect

func (x *HasRatingsResponse) ProtoReflect() protoreflect.Message

func (*HasRatingsResponse) Reset

func (x *HasRatingsResponse) Reset()

func (*HasRatingsResponse) String

func (x *HasRatingsResponse) String() string

type HasWatchHistoryRequest

type HasWatchHistoryRequest struct {
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// contains filtered or unexported fields
}

HasWatchHistoryRequest checks if a user has any watch history.

func (*HasWatchHistoryRequest) Descriptor deprecated

func (*HasWatchHistoryRequest) Descriptor() ([]byte, []int)

Deprecated: Use HasWatchHistoryRequest.ProtoReflect.Descriptor instead.

func (*HasWatchHistoryRequest) GetUserId

func (x *HasWatchHistoryRequest) GetUserId() string

func (*HasWatchHistoryRequest) ProtoMessage

func (*HasWatchHistoryRequest) ProtoMessage()

func (*HasWatchHistoryRequest) ProtoReflect

func (x *HasWatchHistoryRequest) ProtoReflect() protoreflect.Message

func (*HasWatchHistoryRequest) Reset

func (x *HasWatchHistoryRequest) Reset()

func (*HasWatchHistoryRequest) String

func (x *HasWatchHistoryRequest) String() string

type HasWatchHistoryResponse

type HasWatchHistoryResponse struct {
	HasWatchHistory bool `protobuf:"varint,1,opt,name=has_watch_history,json=hasWatchHistory,proto3" json:"has_watch_history,omitempty"`
	// contains filtered or unexported fields
}

HasWatchHistoryResponse indicates whether the user has watch history.

func (*HasWatchHistoryResponse) Descriptor deprecated

func (*HasWatchHistoryResponse) Descriptor() ([]byte, []int)

Deprecated: Use HasWatchHistoryResponse.ProtoReflect.Descriptor instead.

func (*HasWatchHistoryResponse) GetHasWatchHistory

func (x *HasWatchHistoryResponse) GetHasWatchHistory() bool

func (*HasWatchHistoryResponse) ProtoMessage

func (*HasWatchHistoryResponse) ProtoMessage()

func (*HasWatchHistoryResponse) ProtoReflect

func (x *HasWatchHistoryResponse) ProtoReflect() protoreflect.Message

func (*HasWatchHistoryResponse) Reset

func (x *HasWatchHistoryResponse) Reset()

func (*HasWatchHistoryResponse) String

func (x *HasWatchHistoryResponse) String() string

type HealthStatus

type HealthStatus struct {
	Status  HealthStatus_Status `protobuf:"varint,1,opt,name=status,proto3,enum=viewra.plugin.v1.HealthStatus_Status" json:"status,omitempty"`
	Message string              `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	// Optional metrics
	RequestsTotal int64   `protobuf:"varint,3,opt,name=requests_total,json=requestsTotal,proto3" json:"requests_total,omitempty"`
	ErrorsTotal   int64   `protobuf:"varint,4,opt,name=errors_total,json=errorsTotal,proto3" json:"errors_total,omitempty"`
	AvgLatencyMs  float64 `protobuf:"fixed64,5,opt,name=avg_latency_ms,json=avgLatencyMs,proto3" json:"avg_latency_ms,omitempty"`
	// contains filtered or unexported fields
}

func (*HealthStatus) Descriptor deprecated

func (*HealthStatus) Descriptor() ([]byte, []int)

Deprecated: Use HealthStatus.ProtoReflect.Descriptor instead.

func (*HealthStatus) GetAvgLatencyMs

func (x *HealthStatus) GetAvgLatencyMs() float64

func (*HealthStatus) GetErrorsTotal

func (x *HealthStatus) GetErrorsTotal() int64

func (*HealthStatus) GetMessage

func (x *HealthStatus) GetMessage() string

func (*HealthStatus) GetRequestsTotal

func (x *HealthStatus) GetRequestsTotal() int64

func (*HealthStatus) GetStatus

func (x *HealthStatus) GetStatus() HealthStatus_Status

func (*HealthStatus) ProtoMessage

func (*HealthStatus) ProtoMessage()

func (*HealthStatus) ProtoReflect

func (x *HealthStatus) ProtoReflect() protoreflect.Message

func (*HealthStatus) Reset

func (x *HealthStatus) Reset()

func (*HealthStatus) String

func (x *HealthStatus) String() string

type HealthStatus_Status

type HealthStatus_Status int32
const (
	HealthStatus_UNKNOWN   HealthStatus_Status = 0
	HealthStatus_HEALTHY   HealthStatus_Status = 1
	HealthStatus_DEGRADED  HealthStatus_Status = 2
	HealthStatus_UNHEALTHY HealthStatus_Status = 3
)

func (HealthStatus_Status) Descriptor

func (HealthStatus_Status) Enum

func (HealthStatus_Status) EnumDescriptor deprecated

func (HealthStatus_Status) EnumDescriptor() ([]byte, []int)

Deprecated: Use HealthStatus_Status.Descriptor instead.

func (HealthStatus_Status) Number

func (HealthStatus_Status) String

func (x HealthStatus_Status) String() string

func (HealthStatus_Status) Type

type HostDataClient

type HostDataClient interface {
	// GetMedia retrieves a single media item by ID.
	GetMedia(ctx context.Context, in *MediaQuery, opts ...grpc.CallOption) (*Media, error)
	// GetMediaDetails retrieves full metadata for a media item.
	// Includes plot, cast, genres, mood tags, etc. for AI indexing.
	GetMediaDetails(ctx context.Context, in *MediaQuery, opts ...grpc.CallOption) (*MediaDetails, error)
	// GetMediaByExternalId looks up media by external ID (e.g., IMDB, TMDB).
	GetMediaByExternalId(ctx context.Context, in *ExternalIdQuery, opts ...grpc.CallOption) (*Media, error)
	// SearchMedia searches for media by title/year.
	SearchMedia(ctx context.Context, in *SearchQuery, opts ...grpc.CallOption) (*MediaList, error)
	// ListMediaByLibrary lists all media in a library with pagination.
	ListMediaByLibrary(ctx context.Context, in *ListMediaRequest, opts ...grpc.CallOption) (*MediaDetailsList, error)
	// GetLibrary retrieves library information.
	GetLibrary(ctx context.Context, in *LibraryId, opts ...grpc.CallOption) (*Library, error)
	// GetFilePath returns the full file path for a media item.
	GetFilePath(ctx context.Context, in *MediaId, opts ...grpc.CallOption) (*FilePath, error)
	// ListMediaByGenre lists media items matching a genre pattern.
	// Used for genre-based recommendations when semantic search is unavailable.
	ListMediaByGenre(ctx context.Context, in *ListMediaByGenreRequest, opts ...grpc.CallOption) (*MediaList, error)
	// ListMediaByDirector lists media items featuring work by a specific director.
	// Used for director-based recommendations and themed collections.
	ListMediaByDirector(ctx context.Context, in *ListMediaByDirectorRequest, opts ...grpc.CallOption) (*MediaList, error)
}

HostDataClient is the client API for HostData service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

HostData provides read-only access to ViewRA's media data. Plugins use this to query media information.

func NewHostDataClient

func NewHostDataClient(cc grpc.ClientConnInterface) HostDataClient

type HostDataServer

type HostDataServer interface {
	// GetMedia retrieves a single media item by ID.
	GetMedia(context.Context, *MediaQuery) (*Media, error)
	// GetMediaDetails retrieves full metadata for a media item.
	// Includes plot, cast, genres, mood tags, etc. for AI indexing.
	GetMediaDetails(context.Context, *MediaQuery) (*MediaDetails, error)
	// GetMediaByExternalId looks up media by external ID (e.g., IMDB, TMDB).
	GetMediaByExternalId(context.Context, *ExternalIdQuery) (*Media, error)
	// SearchMedia searches for media by title/year.
	SearchMedia(context.Context, *SearchQuery) (*MediaList, error)
	// ListMediaByLibrary lists all media in a library with pagination.
	ListMediaByLibrary(context.Context, *ListMediaRequest) (*MediaDetailsList, error)
	// GetLibrary retrieves library information.
	GetLibrary(context.Context, *LibraryId) (*Library, error)
	// GetFilePath returns the full file path for a media item.
	GetFilePath(context.Context, *MediaId) (*FilePath, error)
	// ListMediaByGenre lists media items matching a genre pattern.
	// Used for genre-based recommendations when semantic search is unavailable.
	ListMediaByGenre(context.Context, *ListMediaByGenreRequest) (*MediaList, error)
	// ListMediaByDirector lists media items featuring work by a specific director.
	// Used for director-based recommendations and themed collections.
	ListMediaByDirector(context.Context, *ListMediaByDirectorRequest) (*MediaList, error)
	// contains filtered or unexported methods
}

HostDataServer is the server API for HostData service. All implementations must embed UnimplementedHostDataServer for forward compatibility.

HostData provides read-only access to ViewRA's media data. Plugins use this to query media information.

type HostFileParserClient

type HostFileParserClient interface {
	// ParseNFO parses an NFO file and returns its contents.
	ParseNFO(ctx context.Context, in *ParseNFORequest, opts ...grpc.CallOption) (*NFOMetadata, error)
	// ExtractEmbeddedImages extracts images embedded in media files.
	ExtractEmbeddedImages(ctx context.Context, in *ExtractImagesRequest, opts ...grpc.CallOption) (*ExtractImagesResponse, error)
}

HostFileParserClient is the client API for HostFileParser service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

HostFileParser exposes ViewRA's internal parsing capabilities. Useful for external plugins that need to parse local files.

type HostFileParserServer

type HostFileParserServer interface {
	// ParseNFO parses an NFO file and returns its contents.
	ParseNFO(context.Context, *ParseNFORequest) (*NFOMetadata, error)
	// ExtractEmbeddedImages extracts images embedded in media files.
	ExtractEmbeddedImages(context.Context, *ExtractImagesRequest) (*ExtractImagesResponse, error)
	// contains filtered or unexported methods
}

HostFileParserServer is the server API for HostFileParser service. All implementations must embed UnimplementedHostFileParserServer for forward compatibility.

HostFileParser exposes ViewRA's internal parsing capabilities. Useful for external plugins that need to parse local files.

type HostPluginsClient

type HostPluginsClient interface {
	// ListCapabilities returns all available capabilities and their providers.
	ListCapabilities(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*CapabilityListResponse, error)
	// ListProviders returns all plugins providing a specific capability.
	ListProviders(ctx context.Context, in *CapabilityRequest, opts ...grpc.CallOption) (*ProviderListResponse, error)
	// SetCapabilityPreference sets the preferred plugin for a capability.
	// Used by configuration plugins (e.g., ai-local) to route capabilities.
	// The preference is used when InvokeCapability is called without a preferred_plugin.
	SetCapabilityPreference(ctx context.Context, in *CapabilityPreferenceRequest, opts ...grpc.CallOption) (*Empty, error)
	// ClearCapabilityPreference removes the preference for a capability.
	// After clearing, InvokeCapability falls back to first available provider.
	ClearCapabilityPreference(ctx context.Context, in *CapabilityPreferenceRequest, opts ...grpc.CallOption) (*Empty, error)
	// GetCapabilityPreferences returns all configured capability preferences.
	GetCapabilityPreferences(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*CapabilityPreferencesResponse, error)
	// InvokeCapability forwards a request to a capability provider.
	// The host resolves the capability to an available provider and proxies the request.
	// Consumers use typed protos for requests/responses; the transport is generic bytes.
	InvokeCapability(ctx context.Context, in *CapabilityInvokeRequest, opts ...grpc.CallOption) (*CapabilityInvokeResponse, error)
	// InvokeCapabilityStream forwards a streaming request to a capability provider.
	// Used for server-streaming methods like ChatStream.
	InvokeCapabilityStream(ctx context.Context, in *CapabilityInvokeRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[CapabilityInvokeResponse], error)
	// DescribeCapability returns metadata about a capability's available methods.
	// Useful for discovering what methods a capability supports.
	DescribeCapability(ctx context.Context, in *DescribeCapabilityRequest, opts ...grpc.CallOption) (*DescribeCapabilityResponse, error)
	// InvokeVectorSearch forwards a vector search request to a plugin providing vector_search capability.
	// Used for plugin-to-plugin semantic search operations (e.g., recommendations → semantic-search).
	// Unlike InvokeCapability which uses generic bytes, this uses typed messages for vector search.
	InvokeVectorSearch(ctx context.Context, in *VectorSearchInvokeRequest, opts ...grpc.CallOption) (*VectorSearchInvokeResponse, error)
}

HostPluginsClient is the client API for HostPlugins service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

HostPlugins provides plugin discovery and capability-based routing. Plugins use this to discover and connect to other plugins that provide specific capabilities (e.g., "embedding", "chat").

type HostPluginsServer

type HostPluginsServer interface {
	// ListCapabilities returns all available capabilities and their providers.
	ListCapabilities(context.Context, *Empty) (*CapabilityListResponse, error)
	// ListProviders returns all plugins providing a specific capability.
	ListProviders(context.Context, *CapabilityRequest) (*ProviderListResponse, error)
	// SetCapabilityPreference sets the preferred plugin for a capability.
	// Used by configuration plugins (e.g., ai-local) to route capabilities.
	// The preference is used when InvokeCapability is called without a preferred_plugin.
	SetCapabilityPreference(context.Context, *CapabilityPreferenceRequest) (*Empty, error)
	// ClearCapabilityPreference removes the preference for a capability.
	// After clearing, InvokeCapability falls back to first available provider.
	ClearCapabilityPreference(context.Context, *CapabilityPreferenceRequest) (*Empty, error)
	// GetCapabilityPreferences returns all configured capability preferences.
	GetCapabilityPreferences(context.Context, *Empty) (*CapabilityPreferencesResponse, error)
	// InvokeCapability forwards a request to a capability provider.
	// The host resolves the capability to an available provider and proxies the request.
	// Consumers use typed protos for requests/responses; the transport is generic bytes.
	InvokeCapability(context.Context, *CapabilityInvokeRequest) (*CapabilityInvokeResponse, error)
	// InvokeCapabilityStream forwards a streaming request to a capability provider.
	// Used for server-streaming methods like ChatStream.
	InvokeCapabilityStream(*CapabilityInvokeRequest, grpc.ServerStreamingServer[CapabilityInvokeResponse]) error
	// DescribeCapability returns metadata about a capability's available methods.
	// Useful for discovering what methods a capability supports.
	DescribeCapability(context.Context, *DescribeCapabilityRequest) (*DescribeCapabilityResponse, error)
	// InvokeVectorSearch forwards a vector search request to a plugin providing vector_search capability.
	// Used for plugin-to-plugin semantic search operations (e.g., recommendations → semantic-search).
	// Unlike InvokeCapability which uses generic bytes, this uses typed messages for vector search.
	InvokeVectorSearch(context.Context, *VectorSearchInvokeRequest) (*VectorSearchInvokeResponse, error)
	// contains filtered or unexported methods
}

HostPluginsServer is the server API for HostPlugins service. All implementations must embed UnimplementedHostPluginsServer for forward compatibility.

HostPlugins provides plugin discovery and capability-based routing. Plugins use this to discover and connect to other plugins that provide specific capabilities (e.g., "embedding", "chat").

type HostPlugins_InvokeCapabilityStreamClient

type HostPlugins_InvokeCapabilityStreamClient = grpc.ServerStreamingClient[CapabilityInvokeResponse]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type HostPlugins_InvokeCapabilityStreamServer

type HostPlugins_InvokeCapabilityStreamServer = grpc.ServerStreamingServer[CapabilityInvokeResponse]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type HostProgressClient

type HostProgressClient interface {
	// ListWatchedItems returns all watched items for a user.
	// Useful for building collaborative filtering models based on viewing history.
	ListWatchedItems(ctx context.Context, in *ListWatchedItemsRequest, opts ...grpc.CallOption) (*ListWatchedItemsResponse, error)
	// ListInProgressItems returns items the user is currently watching (partial progress).
	// Useful for "continue watching" recommendations and understanding current interests.
	ListInProgressItems(ctx context.Context, in *ListInProgressItemsRequest, opts ...grpc.CallOption) (*ListInProgressItemsResponse, error)
	// GetWatchedEntityIDs returns just the entity IDs of watched items.
	// More efficient than ListWatchedItems when only IDs are needed.
	GetWatchedEntityIDs(ctx context.Context, in *GetWatchedEntityIDsRequest, opts ...grpc.CallOption) (*EntityIDsResponse, error)
	// HasWatchHistory returns whether a user has any watch history.
	HasWatchHistory(ctx context.Context, in *HasWatchHistoryRequest, opts ...grpc.CallOption) (*HasWatchHistoryResponse, error)
}

HostProgressClient is the client API for HostProgress service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

HostProgress provides read-only access to user watch progress data. Plugins use this to query watch history for collaborative filtering and personalized recommendations.

type HostProgressServer

type HostProgressServer interface {
	// ListWatchedItems returns all watched items for a user.
	// Useful for building collaborative filtering models based on viewing history.
	ListWatchedItems(context.Context, *ListWatchedItemsRequest) (*ListWatchedItemsResponse, error)
	// ListInProgressItems returns items the user is currently watching (partial progress).
	// Useful for "continue watching" recommendations and understanding current interests.
	ListInProgressItems(context.Context, *ListInProgressItemsRequest) (*ListInProgressItemsResponse, error)
	// GetWatchedEntityIDs returns just the entity IDs of watched items.
	// More efficient than ListWatchedItems when only IDs are needed.
	GetWatchedEntityIDs(context.Context, *GetWatchedEntityIDsRequest) (*EntityIDsResponse, error)
	// HasWatchHistory returns whether a user has any watch history.
	HasWatchHistory(context.Context, *HasWatchHistoryRequest) (*HasWatchHistoryResponse, error)
	// contains filtered or unexported methods
}

HostProgressServer is the server API for HostProgress service. All implementations must embed UnimplementedHostProgressServer for forward compatibility.

HostProgress provides read-only access to user watch progress data. Plugins use this to query watch history for collaborative filtering and personalized recommendations.

type HostRatingsClient

type HostRatingsClient interface {
	// ListRatings returns all ratings for a user, optionally filtered by entity type and rating type.
	ListRatings(ctx context.Context, in *ListRatingsRequest, opts ...grpc.CallOption) (*ListRatingsResponse, error)
	// GetRatedEntityIDs returns entity IDs with a specific rating type (favorite, up, down).
	GetRatedEntityIDs(ctx context.Context, in *GetRatedEntityIDsRequest, opts ...grpc.CallOption) (*EntityIDsResponse, error)
	// GetPositivelyRatedIDs returns entity IDs the user has rated positively (favorite OR up).
	// This is a convenience method for recommendations that treats both as positive signals.
	GetPositivelyRatedIDs(ctx context.Context, in *GetPositivelyRatedIDsRequest, opts ...grpc.CallOption) (*EntityIDsResponse, error)
	// HasRatings returns whether a user has any ratings.
	HasRatings(ctx context.Context, in *HasRatingsRequest, opts ...grpc.CallOption) (*HasRatingsResponse, error)
}

HostRatingsClient is the client API for HostRatings service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

HostRatings provides read-only access to user ratings data. Plugins use this to query user preferences (favorites, likes, dislikes) for generating personalized recommendations.

type HostRatingsServer

type HostRatingsServer interface {
	// ListRatings returns all ratings for a user, optionally filtered by entity type and rating type.
	ListRatings(context.Context, *ListRatingsRequest) (*ListRatingsResponse, error)
	// GetRatedEntityIDs returns entity IDs with a specific rating type (favorite, up, down).
	GetRatedEntityIDs(context.Context, *GetRatedEntityIDsRequest) (*EntityIDsResponse, error)
	// GetPositivelyRatedIDs returns entity IDs the user has rated positively (favorite OR up).
	// This is a convenience method for recommendations that treats both as positive signals.
	GetPositivelyRatedIDs(context.Context, *GetPositivelyRatedIDsRequest) (*EntityIDsResponse, error)
	// HasRatings returns whether a user has any ratings.
	HasRatings(context.Context, *HasRatingsRequest) (*HasRatingsResponse, error)
	// contains filtered or unexported methods
}

HostRatingsServer is the server API for HostRatings service. All implementations must embed UnimplementedHostRatingsServer for forward compatibility.

HostRatings provides read-only access to user ratings data. Plugins use this to query user preferences (favorites, likes, dislikes) for generating personalized recommendations.

type HostStorageClient

type HostStorageClient interface {
	// KVGet retrieves a value from the plugin's key-value store.
	KVGet(ctx context.Context, in *KVKey, opts ...grpc.CallOption) (*KVValue, error)
	// KVSet stores a value in the plugin's key-value store.
	KVSet(ctx context.Context, in *KVEntry, opts ...grpc.CallOption) (*Empty, error)
	// KVDelete removes a value from the plugin's key-value store.
	KVDelete(ctx context.Context, in *KVKey, opts ...grpc.CallOption) (*Empty, error)
	// KVList lists keys with an optional prefix.
	KVList(ctx context.Context, in *KVListRequest, opts ...grpc.CallOption) (*KVKeyList, error)
	// GetDatabasePath returns the path to the plugin's SQLite database.
	// DEPRECATED: Use ExecuteSQL/QuerySQL instead for managed storage.
	GetDatabasePath(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*DatabasePath, error)
	// RegisterSchema registers a schema version for migration tracking.
	// DEPRECATED: Use ExecuteSQL with migration tracking instead.
	RegisterSchema(ctx context.Context, in *SchemaVersion, opts ...grpc.CallOption) (*Empty, error)
	// GetDatabaseStats returns storage usage statistics.
	GetDatabaseStats(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*DatabaseStats, error)
	// ExecuteSQL runs DDL/DML statements on plugin's namespaced tables.
	// Table names are automatically prefixed with plugin_{id}_
	// Allowed: CREATE TABLE, CREATE INDEX, DROP TABLE, DROP INDEX,
	//
	//	INSERT, UPDATE, DELETE
	ExecuteSQL(ctx context.Context, in *SQLRequest, opts ...grpc.CallOption) (*SQLExecResult, error)
	// QuerySQL runs SELECT queries on plugin's namespaced tables.
	// Table names are automatically prefixed with plugin_{id}_
	QuerySQL(ctx context.Context, in *SQLRequest, opts ...grpc.CallOption) (*SQLQueryResult, error)
	// VectorStoreEmbedding stores or updates an embedding for an entity.
	VectorStoreEmbedding(ctx context.Context, in *VectorStoreRequest, opts ...grpc.CallOption) (*Empty, error)
	// VectorStoreBatch stores multiple embeddings in a single transaction.
	VectorStoreBatch(ctx context.Context, in *VectorStoreBatchRequest, opts ...grpc.CallOption) (*Empty, error)
	// VectorSearch performs similarity search using the query vector.
	VectorSearch(ctx context.Context, in *VectorSearchRequest, opts ...grpc.CallOption) (*VectorSearchResponse, error)
	// VectorSearchText finds embeddings where text contains the query keywords.
	// This is useful for name/title searches where semantic search may fail.
	VectorSearchText(ctx context.Context, in *VectorTextSearchRequest, opts ...grpc.CallOption) (*VectorSearchResponse, error)
	// VectorGet retrieves an embedding by entity type and ID.
	VectorGet(ctx context.Context, in *VectorQuery, opts ...grpc.CallOption) (*VectorGetResponse, error)
	// VectorDelete removes an embedding.
	VectorDelete(ctx context.Context, in *VectorQuery, opts ...grpc.CallOption) (*Empty, error)
	// VectorDeleteByType removes all embeddings for an entity type.
	VectorDeleteByType(ctx context.Context, in *VectorTypeQuery, opts ...grpc.CallOption) (*VectorDeleteResponse, error)
	// VectorCount returns the number of embeddings.
	VectorCount(ctx context.Context, in *VectorTypeQuery, opts ...grpc.CallOption) (*VectorCountResponse, error)
}

HostStorageClient is the client API for HostStorage service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

HostStorage provides plugin-scoped storage. Each plugin gets its own isolated storage namespace.

type HostStorageServer

type HostStorageServer interface {
	// KVGet retrieves a value from the plugin's key-value store.
	KVGet(context.Context, *KVKey) (*KVValue, error)
	// KVSet stores a value in the plugin's key-value store.
	KVSet(context.Context, *KVEntry) (*Empty, error)
	// KVDelete removes a value from the plugin's key-value store.
	KVDelete(context.Context, *KVKey) (*Empty, error)
	// KVList lists keys with an optional prefix.
	KVList(context.Context, *KVListRequest) (*KVKeyList, error)
	// GetDatabasePath returns the path to the plugin's SQLite database.
	// DEPRECATED: Use ExecuteSQL/QuerySQL instead for managed storage.
	GetDatabasePath(context.Context, *Empty) (*DatabasePath, error)
	// RegisterSchema registers a schema version for migration tracking.
	// DEPRECATED: Use ExecuteSQL with migration tracking instead.
	RegisterSchema(context.Context, *SchemaVersion) (*Empty, error)
	// GetDatabaseStats returns storage usage statistics.
	GetDatabaseStats(context.Context, *Empty) (*DatabaseStats, error)
	// ExecuteSQL runs DDL/DML statements on plugin's namespaced tables.
	// Table names are automatically prefixed with plugin_{id}_
	// Allowed: CREATE TABLE, CREATE INDEX, DROP TABLE, DROP INDEX,
	//
	//	INSERT, UPDATE, DELETE
	ExecuteSQL(context.Context, *SQLRequest) (*SQLExecResult, error)
	// QuerySQL runs SELECT queries on plugin's namespaced tables.
	// Table names are automatically prefixed with plugin_{id}_
	QuerySQL(context.Context, *SQLRequest) (*SQLQueryResult, error)
	// VectorStoreEmbedding stores or updates an embedding for an entity.
	VectorStoreEmbedding(context.Context, *VectorStoreRequest) (*Empty, error)
	// VectorStoreBatch stores multiple embeddings in a single transaction.
	VectorStoreBatch(context.Context, *VectorStoreBatchRequest) (*Empty, error)
	// VectorSearch performs similarity search using the query vector.
	VectorSearch(context.Context, *VectorSearchRequest) (*VectorSearchResponse, error)
	// VectorSearchText finds embeddings where text contains the query keywords.
	// This is useful for name/title searches where semantic search may fail.
	VectorSearchText(context.Context, *VectorTextSearchRequest) (*VectorSearchResponse, error)
	// VectorGet retrieves an embedding by entity type and ID.
	VectorGet(context.Context, *VectorQuery) (*VectorGetResponse, error)
	// VectorDelete removes an embedding.
	VectorDelete(context.Context, *VectorQuery) (*Empty, error)
	// VectorDeleteByType removes all embeddings for an entity type.
	VectorDeleteByType(context.Context, *VectorTypeQuery) (*VectorDeleteResponse, error)
	// VectorCount returns the number of embeddings.
	VectorCount(context.Context, *VectorTypeQuery) (*VectorCountResponse, error)
	// contains filtered or unexported methods
}

HostStorageServer is the server API for HostStorage service. All implementations must embed UnimplementedHostStorageServer for forward compatibility.

HostStorage provides plugin-scoped storage. Each plugin gets its own isolated storage namespace.

type HostUserMetadataClient

type HostUserMetadataClient interface {
	// Get retrieves plugin-specific data for a user.
	Get(ctx context.Context, in *UserMetadataKey, opts ...grpc.CallOption) (*UserMetadataValue, error)
	// Set stores plugin-specific data for a user.
	Set(ctx context.Context, in *UserMetadataEntry, opts ...grpc.CallOption) (*Empty, error)
	// Delete removes plugin-specific data for a user.
	Delete(ctx context.Context, in *UserMetadataKey, opts ...grpc.CallOption) (*Empty, error)
	// ListKeys lists all keys for a user.
	ListKeys(ctx context.Context, in *UserId, opts ...grpc.CallOption) (*UserMetadataKeyList, error)
}

HostUserMetadataClient is the client API for HostUserMetadata service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

HostUserMetadata provides per-user metadata storage for plugins. Used by plugins that need to store user-specific data (e.g., Trakt watched status).

type HostUserMetadataServer

type HostUserMetadataServer interface {
	// Get retrieves plugin-specific data for a user.
	Get(context.Context, *UserMetadataKey) (*UserMetadataValue, error)
	// Set stores plugin-specific data for a user.
	Set(context.Context, *UserMetadataEntry) (*Empty, error)
	// Delete removes plugin-specific data for a user.
	Delete(context.Context, *UserMetadataKey) (*Empty, error)
	// ListKeys lists all keys for a user.
	ListKeys(context.Context, *UserId) (*UserMetadataKeyList, error)
	// contains filtered or unexported methods
}

HostUserMetadataServer is the server API for HostUserMetadata service. All implementations must embed UnimplementedHostUserMetadataServer for forward compatibility.

HostUserMetadata provides per-user metadata storage for plugins. Used by plugins that need to store user-specific data (e.g., Trakt watched status).

type HostWeatherClient

type HostWeatherClient interface {
	// GetCurrentWeather returns current weather for a user's location.
	// Returns available=false if the user hasn't enabled location.
	GetCurrentWeather(ctx context.Context, in *WeatherRequest, opts ...grpc.CallOption) (*WeatherResponse, error)
}

HostWeatherClient is the client API for HostWeather service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

HostWeather provides weather and time context for query enrichment. Plugins need weather:read permission to use this service.

type HostWeatherServer

type HostWeatherServer interface {
	// GetCurrentWeather returns current weather for a user's location.
	// Returns available=false if the user hasn't enabled location.
	GetCurrentWeather(context.Context, *WeatherRequest) (*WeatherResponse, error)
	// contains filtered or unexported methods
}

HostWeatherServer is the server API for HostWeather service. All implementations must embed UnimplementedHostWeatherServer for forward compatibility.

HostWeather provides weather and time context for query enrichment. Plugins need weather:read permission to use this service.

type IndexLibraryRequest

type IndexLibraryRequest struct {
	LibraryId   int64  `protobuf:"varint,1,opt,name=library_id,json=libraryId,proto3" json:"library_id,omitempty"`
	LibraryType string `protobuf:"bytes,2,opt,name=library_type,json=libraryType,proto3" json:"library_type,omitempty"` // "movie", "tv", "music"
	// contains filtered or unexported fields
}

func (*IndexLibraryRequest) Descriptor deprecated

func (*IndexLibraryRequest) Descriptor() ([]byte, []int)

Deprecated: Use IndexLibraryRequest.ProtoReflect.Descriptor instead.

func (*IndexLibraryRequest) GetLibraryId

func (x *IndexLibraryRequest) GetLibraryId() int64

func (*IndexLibraryRequest) GetLibraryType

func (x *IndexLibraryRequest) GetLibraryType() string

func (*IndexLibraryRequest) ProtoMessage

func (*IndexLibraryRequest) ProtoMessage()

func (*IndexLibraryRequest) ProtoReflect

func (x *IndexLibraryRequest) ProtoReflect() protoreflect.Message

func (*IndexLibraryRequest) Reset

func (x *IndexLibraryRequest) Reset()

func (*IndexLibraryRequest) String

func (x *IndexLibraryRequest) String() string

type IndexLibraryResponse

type IndexLibraryResponse struct {
	Started bool   `protobuf:"varint,1,opt,name=started,proto3" json:"started,omitempty"`
	Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"` // Error message if not started
	// contains filtered or unexported fields
}

func (*IndexLibraryResponse) Descriptor deprecated

func (*IndexLibraryResponse) Descriptor() ([]byte, []int)

Deprecated: Use IndexLibraryResponse.ProtoReflect.Descriptor instead.

func (*IndexLibraryResponse) GetMessage

func (x *IndexLibraryResponse) GetMessage() string

func (*IndexLibraryResponse) GetStarted

func (x *IndexLibraryResponse) GetStarted() bool

func (*IndexLibraryResponse) ProtoMessage

func (*IndexLibraryResponse) ProtoMessage()

func (*IndexLibraryResponse) ProtoReflect

func (x *IndexLibraryResponse) ProtoReflect() protoreflect.Message

func (*IndexLibraryResponse) Reset

func (x *IndexLibraryResponse) Reset()

func (*IndexLibraryResponse) String

func (x *IndexLibraryResponse) String() string

type IndexingProgress

type IndexingProgress struct {
	EntityType  string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
	Total       int64  `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
	Processed   int64  `protobuf:"varint,3,opt,name=processed,proto3" json:"processed,omitempty"`
	Failed      int64  `protobuf:"varint,4,opt,name=failed,proto3" json:"failed,omitempty"`
	LastError   string `protobuf:"bytes,5,opt,name=last_error,json=lastError,proto3" json:"last_error,omitempty"`
	StartedAt   int64  `protobuf:"varint,6,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"`       // Unix timestamp
	LastUpdated int64  `protobuf:"varint,7,opt,name=last_updated,json=lastUpdated,proto3" json:"last_updated,omitempty"` // Unix timestamp
	// contains filtered or unexported fields
}

func (*IndexingProgress) Descriptor deprecated

func (*IndexingProgress) Descriptor() ([]byte, []int)

Deprecated: Use IndexingProgress.ProtoReflect.Descriptor instead.

func (*IndexingProgress) GetEntityType

func (x *IndexingProgress) GetEntityType() string

func (*IndexingProgress) GetFailed

func (x *IndexingProgress) GetFailed() int64

func (*IndexingProgress) GetLastError

func (x *IndexingProgress) GetLastError() string

func (*IndexingProgress) GetLastUpdated

func (x *IndexingProgress) GetLastUpdated() int64

func (*IndexingProgress) GetProcessed

func (x *IndexingProgress) GetProcessed() int64

func (*IndexingProgress) GetStartedAt

func (x *IndexingProgress) GetStartedAt() int64

func (*IndexingProgress) GetTotal

func (x *IndexingProgress) GetTotal() int64

func (*IndexingProgress) ProtoMessage

func (*IndexingProgress) ProtoMessage()

func (*IndexingProgress) ProtoReflect

func (x *IndexingProgress) ProtoReflect() protoreflect.Message

func (*IndexingProgress) Reset

func (x *IndexingProgress) Reset()

func (*IndexingProgress) String

func (x *IndexingProgress) String() string

type InitRequest

type InitRequest struct {

	// Host version for compatibility checking
	HostVersion string `protobuf:"bytes,1,opt,name=host_version,json=hostVersion,proto3" json:"host_version,omitempty"`
	// Path to plugin's data directory
	DataDir string `protobuf:"bytes,2,opt,name=data_dir,json=dataDir,proto3" json:"data_dir,omitempty"`
	// Initial configuration (if any)
	Config []byte `protobuf:"bytes,3,opt,name=config,proto3" json:"config,omitempty"`
	// Broker ID for host storage service (0 = not available)
	// Plugin can dial this ID to get a HostStorageClient
	HostStorageBrokerId uint32 `protobuf:"varint,4,opt,name=host_storage_broker_id,json=hostStorageBrokerId,proto3" json:"host_storage_broker_id,omitempty"`
	// Broker ID for host data service (0 = not available)
	// Plugin can dial this ID to get a HostDataClient
	HostDataBrokerId uint32 `protobuf:"varint,5,opt,name=host_data_broker_id,json=hostDataBrokerId,proto3" json:"host_data_broker_id,omitempty"`
	// Broker ID for host weather service (0 = not available)
	// Plugin can dial this ID to get a HostWeatherClient
	HostWeatherBrokerId uint32 `protobuf:"varint,8,opt,name=host_weather_broker_id,json=hostWeatherBrokerId,proto3" json:"host_weather_broker_id,omitempty"`
	// System resource information for plugins that need it
	// (e.g., AI providers for model recommendations)
	SystemInfo *SystemInfo `protobuf:"bytes,9,opt,name=system_info,json=systemInfo,proto3" json:"system_info,omitempty"`
	// Broker ID for host plugins service (0 = not available)
	// Plugin can dial this ID to get a HostPluginsClient for capability discovery
	HostPluginsBrokerId uint32 `protobuf:"varint,10,opt,name=host_plugins_broker_id,json=hostPluginsBrokerId,proto3" json:"host_plugins_broker_id,omitempty"`
	// Broker ID for host ratings service (0 = not available)
	// Plugin can dial this ID to get a HostRatingsClient for user ratings access
	HostRatingsBrokerId uint32 `protobuf:"varint,11,opt,name=host_ratings_broker_id,json=hostRatingsBrokerId,proto3" json:"host_ratings_broker_id,omitempty"`
	// Broker ID for host progress service (0 = not available)
	// Plugin can dial this ID to get a HostProgressClient for watch history access
	HostProgressBrokerId uint32 `` /* 127-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*InitRequest) Descriptor deprecated

func (*InitRequest) Descriptor() ([]byte, []int)

Deprecated: Use InitRequest.ProtoReflect.Descriptor instead.

func (*InitRequest) GetConfig

func (x *InitRequest) GetConfig() []byte

func (*InitRequest) GetDataDir

func (x *InitRequest) GetDataDir() string

func (*InitRequest) GetHostDataBrokerId

func (x *InitRequest) GetHostDataBrokerId() uint32

func (*InitRequest) GetHostPluginsBrokerId

func (x *InitRequest) GetHostPluginsBrokerId() uint32

func (*InitRequest) GetHostProgressBrokerId

func (x *InitRequest) GetHostProgressBrokerId() uint32

func (*InitRequest) GetHostRatingsBrokerId

func (x *InitRequest) GetHostRatingsBrokerId() uint32

func (*InitRequest) GetHostStorageBrokerId

func (x *InitRequest) GetHostStorageBrokerId() uint32

func (*InitRequest) GetHostVersion

func (x *InitRequest) GetHostVersion() string

func (*InitRequest) GetHostWeatherBrokerId

func (x *InitRequest) GetHostWeatherBrokerId() uint32

func (*InitRequest) GetSystemInfo

func (x *InitRequest) GetSystemInfo() *SystemInfo

func (*InitRequest) ProtoMessage

func (*InitRequest) ProtoMessage()

func (*InitRequest) ProtoReflect

func (x *InitRequest) ProtoReflect() protoreflect.Message

func (*InitRequest) Reset

func (x *InitRequest) Reset()

func (*InitRequest) String

func (x *InitRequest) String() string

type InitResponse

type InitResponse struct {
	Success bool   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Error   string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*InitResponse) Descriptor deprecated

func (*InitResponse) Descriptor() ([]byte, []int)

Deprecated: Use InitResponse.ProtoReflect.Descriptor instead.

func (*InitResponse) GetError

func (x *InitResponse) GetError() string

func (*InitResponse) GetSuccess

func (x *InitResponse) GetSuccess() bool

func (*InitResponse) ProtoMessage

func (*InitResponse) ProtoMessage()

func (*InitResponse) ProtoReflect

func (x *InitResponse) ProtoReflect() protoreflect.Message

func (*InitResponse) Reset

func (x *InitResponse) Reset()

func (*InitResponse) String

func (x *InitResponse) String() string

type KVEntry

type KVEntry struct {
	Key        string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Value      []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	TtlSeconds int64  `protobuf:"varint,3,opt,name=ttl_seconds,json=ttlSeconds,proto3" json:"ttl_seconds,omitempty"` // 0 = no expiration
	// contains filtered or unexported fields
}

func (*KVEntry) Descriptor deprecated

func (*KVEntry) Descriptor() ([]byte, []int)

Deprecated: Use KVEntry.ProtoReflect.Descriptor instead.

func (*KVEntry) GetKey

func (x *KVEntry) GetKey() string

func (*KVEntry) GetTtlSeconds

func (x *KVEntry) GetTtlSeconds() int64

func (*KVEntry) GetValue

func (x *KVEntry) GetValue() []byte

func (*KVEntry) ProtoMessage

func (*KVEntry) ProtoMessage()

func (*KVEntry) ProtoReflect

func (x *KVEntry) ProtoReflect() protoreflect.Message

func (*KVEntry) Reset

func (x *KVEntry) Reset()

func (*KVEntry) String

func (x *KVEntry) String() string

type KVKey

type KVKey struct {
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// contains filtered or unexported fields
}

func (*KVKey) Descriptor deprecated

func (*KVKey) Descriptor() ([]byte, []int)

Deprecated: Use KVKey.ProtoReflect.Descriptor instead.

func (*KVKey) GetKey

func (x *KVKey) GetKey() string

func (*KVKey) ProtoMessage

func (*KVKey) ProtoMessage()

func (*KVKey) ProtoReflect

func (x *KVKey) ProtoReflect() protoreflect.Message

func (*KVKey) Reset

func (x *KVKey) Reset()

func (*KVKey) String

func (x *KVKey) String() string

type KVKeyList

type KVKeyList struct {
	Keys []string `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"`
	// contains filtered or unexported fields
}

func (*KVKeyList) Descriptor deprecated

func (*KVKeyList) Descriptor() ([]byte, []int)

Deprecated: Use KVKeyList.ProtoReflect.Descriptor instead.

func (*KVKeyList) GetKeys

func (x *KVKeyList) GetKeys() []string

func (*KVKeyList) ProtoMessage

func (*KVKeyList) ProtoMessage()

func (*KVKeyList) ProtoReflect

func (x *KVKeyList) ProtoReflect() protoreflect.Message

func (*KVKeyList) Reset

func (x *KVKeyList) Reset()

func (*KVKeyList) String

func (x *KVKeyList) String() string

type KVListRequest

type KVListRequest struct {
	Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	Limit  int32  `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"`
	// contains filtered or unexported fields
}

func (*KVListRequest) Descriptor deprecated

func (*KVListRequest) Descriptor() ([]byte, []int)

Deprecated: Use KVListRequest.ProtoReflect.Descriptor instead.

func (*KVListRequest) GetLimit

func (x *KVListRequest) GetLimit() int32

func (*KVListRequest) GetPrefix

func (x *KVListRequest) GetPrefix() string

func (*KVListRequest) ProtoMessage

func (*KVListRequest) ProtoMessage()

func (*KVListRequest) ProtoReflect

func (x *KVListRequest) ProtoReflect() protoreflect.Message

func (*KVListRequest) Reset

func (x *KVListRequest) Reset()

func (*KVListRequest) String

func (x *KVListRequest) String() string

type KVValue

type KVValue struct {
	Value  []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	Exists bool   `protobuf:"varint,2,opt,name=exists,proto3" json:"exists,omitempty"`
	// contains filtered or unexported fields
}

func (*KVValue) Descriptor deprecated

func (*KVValue) Descriptor() ([]byte, []int)

Deprecated: Use KVValue.ProtoReflect.Descriptor instead.

func (*KVValue) GetExists

func (x *KVValue) GetExists() bool

func (*KVValue) GetValue

func (x *KVValue) GetValue() []byte

func (*KVValue) ProtoMessage

func (*KVValue) ProtoMessage()

func (*KVValue) ProtoReflect

func (x *KVValue) ProtoReflect() protoreflect.Message

func (*KVValue) Reset

func (x *KVValue) Reset()

func (*KVValue) String

func (x *KVValue) String() string

type Keyword

type Keyword struct {
	Id         int32  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`                                   // External ID (e.g., TMDB keyword ID)
	Name       string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`                                // Keyword text
	IsLocation bool   `protobuf:"varint,3,opt,name=is_location,json=isLocation,proto3" json:"is_location,omitempty"` // Whether this keyword represents a location/setting
	// contains filtered or unexported fields
}

Keyword represents a tag/keyword from external sources like TMDB.

func (*Keyword) Descriptor deprecated

func (*Keyword) Descriptor() ([]byte, []int)

Deprecated: Use Keyword.ProtoReflect.Descriptor instead.

func (*Keyword) GetId

func (x *Keyword) GetId() int32

func (*Keyword) GetIsLocation

func (x *Keyword) GetIsLocation() bool

func (*Keyword) GetName

func (x *Keyword) GetName() string

func (*Keyword) ProtoMessage

func (*Keyword) ProtoMessage()

func (*Keyword) ProtoReflect

func (x *Keyword) ProtoReflect() protoreflect.Message

func (*Keyword) Reset

func (x *Keyword) Reset()

func (*Keyword) String

func (x *Keyword) String() string

type Library

type Library struct {
	Id        int64  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Name      string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Path      string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
	MediaType string `protobuf:"bytes,4,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`
	// contains filtered or unexported fields
}

func (*Library) Descriptor deprecated

func (*Library) Descriptor() ([]byte, []int)

Deprecated: Use Library.ProtoReflect.Descriptor instead.

func (*Library) GetId

func (x *Library) GetId() int64

func (*Library) GetMediaType

func (x *Library) GetMediaType() string

func (*Library) GetName

func (x *Library) GetName() string

func (*Library) GetPath

func (x *Library) GetPath() string

func (*Library) ProtoMessage

func (*Library) ProtoMessage()

func (*Library) ProtoReflect

func (x *Library) ProtoReflect() protoreflect.Message

func (*Library) Reset

func (x *Library) Reset()

func (*Library) String

func (x *Library) String() string

type LibraryId

type LibraryId struct {
	Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*LibraryId) Descriptor deprecated

func (*LibraryId) Descriptor() ([]byte, []int)

Deprecated: Use LibraryId.ProtoReflect.Descriptor instead.

func (*LibraryId) GetId

func (x *LibraryId) GetId() int64

func (*LibraryId) ProtoMessage

func (*LibraryId) ProtoMessage()

func (*LibraryId) ProtoReflect

func (x *LibraryId) ProtoReflect() protoreflect.Message

func (*LibraryId) Reset

func (x *LibraryId) Reset()

func (*LibraryId) String

func (x *LibraryId) String() string

type ListInProgressItemsRequest

type ListInProgressItemsRequest struct {
	UserId    string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`          // Required: the user ID
	MediaType string `protobuf:"bytes,2,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"` // Optional: filter by media type
	Limit     int32  `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`                         // Optional: max results (default: 100)
	Offset    int32  `protobuf:"varint,4,opt,name=offset,proto3" json:"offset,omitempty"`                       // Optional: pagination offset
	// contains filtered or unexported fields
}

ListInProgressItemsRequest filters in-progress items for a user.

func (*ListInProgressItemsRequest) Descriptor deprecated

func (*ListInProgressItemsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListInProgressItemsRequest.ProtoReflect.Descriptor instead.

func (*ListInProgressItemsRequest) GetLimit

func (x *ListInProgressItemsRequest) GetLimit() int32

func (*ListInProgressItemsRequest) GetMediaType

func (x *ListInProgressItemsRequest) GetMediaType() string

func (*ListInProgressItemsRequest) GetOffset

func (x *ListInProgressItemsRequest) GetOffset() int32

func (*ListInProgressItemsRequest) GetUserId

func (x *ListInProgressItemsRequest) GetUserId() string

func (*ListInProgressItemsRequest) ProtoMessage

func (*ListInProgressItemsRequest) ProtoMessage()

func (*ListInProgressItemsRequest) ProtoReflect

func (*ListInProgressItemsRequest) Reset

func (x *ListInProgressItemsRequest) Reset()

func (*ListInProgressItemsRequest) String

func (x *ListInProgressItemsRequest) String() string

type ListInProgressItemsResponse

type ListInProgressItemsResponse struct {
	Items []*WatchProgressItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	Total int32                `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"` // Total count for pagination
	// contains filtered or unexported fields
}

ListInProgressItemsResponse contains the user's in-progress items.

func (*ListInProgressItemsResponse) Descriptor deprecated

func (*ListInProgressItemsResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListInProgressItemsResponse.ProtoReflect.Descriptor instead.

func (*ListInProgressItemsResponse) GetItems

func (*ListInProgressItemsResponse) GetTotal

func (x *ListInProgressItemsResponse) GetTotal() int32

func (*ListInProgressItemsResponse) ProtoMessage

func (*ListInProgressItemsResponse) ProtoMessage()

func (*ListInProgressItemsResponse) ProtoReflect

func (*ListInProgressItemsResponse) Reset

func (x *ListInProgressItemsResponse) Reset()

func (*ListInProgressItemsResponse) String

func (x *ListInProgressItemsResponse) String() string

type ListMediaByDirectorRequest

type ListMediaByDirectorRequest struct {
	MediaType    string  `protobuf:"bytes,1,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`            // "movie" or "tv_show"
	DirectorName string  `protobuf:"bytes,2,opt,name=director_name,json=directorName,proto3" json:"director_name,omitempty"`   // Director name to match (e.g., "Christopher Nolan")
	Limit        int32   `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`                                    // Max results (default: 20)
	ExcludeIds   []int64 `protobuf:"varint,4,rep,packed,name=exclude_ids,json=excludeIds,proto3" json:"exclude_ids,omitempty"` // Entity IDs to exclude from results
	LibraryId    int64   `protobuf:"varint,5,opt,name=library_id,json=libraryId,proto3" json:"library_id,omitempty"`           // Optional: 0 means all libraries
	// contains filtered or unexported fields
}

ListMediaByDirectorRequest requests media items by a specific director.

func (*ListMediaByDirectorRequest) Descriptor deprecated

func (*ListMediaByDirectorRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListMediaByDirectorRequest.ProtoReflect.Descriptor instead.

func (*ListMediaByDirectorRequest) GetDirectorName

func (x *ListMediaByDirectorRequest) GetDirectorName() string

func (*ListMediaByDirectorRequest) GetExcludeIds

func (x *ListMediaByDirectorRequest) GetExcludeIds() []int64

func (*ListMediaByDirectorRequest) GetLibraryId

func (x *ListMediaByDirectorRequest) GetLibraryId() int64

func (*ListMediaByDirectorRequest) GetLimit

func (x *ListMediaByDirectorRequest) GetLimit() int32

func (*ListMediaByDirectorRequest) GetMediaType

func (x *ListMediaByDirectorRequest) GetMediaType() string

func (*ListMediaByDirectorRequest) ProtoMessage

func (*ListMediaByDirectorRequest) ProtoMessage()

func (*ListMediaByDirectorRequest) ProtoReflect

func (*ListMediaByDirectorRequest) Reset

func (x *ListMediaByDirectorRequest) Reset()

func (*ListMediaByDirectorRequest) String

func (x *ListMediaByDirectorRequest) String() string

type ListMediaByGenreRequest

type ListMediaByGenreRequest struct {
	MediaType  string  `protobuf:"bytes,1,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`            // "movie" or "tv_show"
	Genre      string  `protobuf:"bytes,2,opt,name=genre,proto3" json:"genre,omitempty"`                                     // Genre to match (e.g., "Action", "Comedy")
	Limit      int32   `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`                                    // Max results (default: 20)
	ExcludeIds []int64 `protobuf:"varint,4,rep,packed,name=exclude_ids,json=excludeIds,proto3" json:"exclude_ids,omitempty"` // Entity IDs to exclude from results
	LibraryId  int64   `protobuf:"varint,5,opt,name=library_id,json=libraryId,proto3" json:"library_id,omitempty"`           // Optional: 0 means all libraries
	// contains filtered or unexported fields
}

ListMediaByGenreRequest requests media items matching a genre.

func (*ListMediaByGenreRequest) Descriptor deprecated

func (*ListMediaByGenreRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListMediaByGenreRequest.ProtoReflect.Descriptor instead.

func (*ListMediaByGenreRequest) GetExcludeIds

func (x *ListMediaByGenreRequest) GetExcludeIds() []int64

func (*ListMediaByGenreRequest) GetGenre

func (x *ListMediaByGenreRequest) GetGenre() string

func (*ListMediaByGenreRequest) GetLibraryId

func (x *ListMediaByGenreRequest) GetLibraryId() int64

func (*ListMediaByGenreRequest) GetLimit

func (x *ListMediaByGenreRequest) GetLimit() int32

func (*ListMediaByGenreRequest) GetMediaType

func (x *ListMediaByGenreRequest) GetMediaType() string

func (*ListMediaByGenreRequest) ProtoMessage

func (*ListMediaByGenreRequest) ProtoMessage()

func (*ListMediaByGenreRequest) ProtoReflect

func (x *ListMediaByGenreRequest) ProtoReflect() protoreflect.Message

func (*ListMediaByGenreRequest) Reset

func (x *ListMediaByGenreRequest) Reset()

func (*ListMediaByGenreRequest) String

func (x *ListMediaByGenreRequest) String() string

type ListMediaRequest

type ListMediaRequest struct {
	LibraryId int64 `protobuf:"varint,1,opt,name=library_id,json=libraryId,proto3" json:"library_id,omitempty"`
	Limit     int32 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"`   // Max items per page (default: 100)
	Offset    int32 `protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty"` // Offset for pagination
	// contains filtered or unexported fields
}

ListMediaRequest is used for paginated media listing.

func (*ListMediaRequest) Descriptor deprecated

func (*ListMediaRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListMediaRequest.ProtoReflect.Descriptor instead.

func (*ListMediaRequest) GetLibraryId

func (x *ListMediaRequest) GetLibraryId() int64

func (*ListMediaRequest) GetLimit

func (x *ListMediaRequest) GetLimit() int32

func (*ListMediaRequest) GetOffset

func (x *ListMediaRequest) GetOffset() int32

func (*ListMediaRequest) ProtoMessage

func (*ListMediaRequest) ProtoMessage()

func (*ListMediaRequest) ProtoReflect

func (x *ListMediaRequest) ProtoReflect() protoreflect.Message

func (*ListMediaRequest) Reset

func (x *ListMediaRequest) Reset()

func (*ListMediaRequest) String

func (x *ListMediaRequest) String() string

type ListRatingsRequest

type ListRatingsRequest struct {
	UserId     string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`             // Required: the user ID
	EntityType string `protobuf:"bytes,2,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"` // Optional: filter by entity type (movie, tv_show, tv_episode)
	RatingType string `protobuf:"bytes,3,opt,name=rating_type,json=ratingType,proto3" json:"rating_type,omitempty"` // Optional: filter by rating type (favorite, up, down)
	// contains filtered or unexported fields
}

ListRatingsRequest filters ratings for a user.

func (*ListRatingsRequest) Descriptor deprecated

func (*ListRatingsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListRatingsRequest.ProtoReflect.Descriptor instead.

func (*ListRatingsRequest) GetEntityType

func (x *ListRatingsRequest) GetEntityType() string

func (*ListRatingsRequest) GetRatingType

func (x *ListRatingsRequest) GetRatingType() string

func (*ListRatingsRequest) GetUserId

func (x *ListRatingsRequest) GetUserId() string

func (*ListRatingsRequest) ProtoMessage

func (*ListRatingsRequest) ProtoMessage()

func (*ListRatingsRequest) ProtoReflect

func (x *ListRatingsRequest) ProtoReflect() protoreflect.Message

func (*ListRatingsRequest) Reset

func (x *ListRatingsRequest) Reset()

func (*ListRatingsRequest) String

func (x *ListRatingsRequest) String() string

type ListRatingsResponse

type ListRatingsResponse struct {
	Ratings []*UserRating `protobuf:"bytes,1,rep,name=ratings,proto3" json:"ratings,omitempty"`
	// contains filtered or unexported fields
}

ListRatingsResponse contains the user's ratings.

func (*ListRatingsResponse) Descriptor deprecated

func (*ListRatingsResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListRatingsResponse.ProtoReflect.Descriptor instead.

func (*ListRatingsResponse) GetRatings

func (x *ListRatingsResponse) GetRatings() []*UserRating

func (*ListRatingsResponse) ProtoMessage

func (*ListRatingsResponse) ProtoMessage()

func (*ListRatingsResponse) ProtoReflect

func (x *ListRatingsResponse) ProtoReflect() protoreflect.Message

func (*ListRatingsResponse) Reset

func (x *ListRatingsResponse) Reset()

func (*ListRatingsResponse) String

func (x *ListRatingsResponse) String() string

type ListWatchedItemsRequest

type ListWatchedItemsRequest struct {
	UserId    string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`          // Required: the user ID (string for flexibility)
	MediaType string `protobuf:"bytes,2,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"` // Optional: filter by media type (movie, tv_show, tv_episode)
	Limit     int32  `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`                         // Optional: max results (default: 100)
	Offset    int32  `protobuf:"varint,4,opt,name=offset,proto3" json:"offset,omitempty"`                       // Optional: pagination offset
	// contains filtered or unexported fields
}

ListWatchedItemsRequest filters watched items for a user.

func (*ListWatchedItemsRequest) Descriptor deprecated

func (*ListWatchedItemsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListWatchedItemsRequest.ProtoReflect.Descriptor instead.

func (*ListWatchedItemsRequest) GetLimit

func (x *ListWatchedItemsRequest) GetLimit() int32

func (*ListWatchedItemsRequest) GetMediaType

func (x *ListWatchedItemsRequest) GetMediaType() string

func (*ListWatchedItemsRequest) GetOffset

func (x *ListWatchedItemsRequest) GetOffset() int32

func (*ListWatchedItemsRequest) GetUserId

func (x *ListWatchedItemsRequest) GetUserId() string

func (*ListWatchedItemsRequest) ProtoMessage

func (*ListWatchedItemsRequest) ProtoMessage()

func (*ListWatchedItemsRequest) ProtoReflect

func (x *ListWatchedItemsRequest) ProtoReflect() protoreflect.Message

func (*ListWatchedItemsRequest) Reset

func (x *ListWatchedItemsRequest) Reset()

func (*ListWatchedItemsRequest) String

func (x *ListWatchedItemsRequest) String() string

type ListWatchedItemsResponse

type ListWatchedItemsResponse struct {
	Items []*WatchProgressItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	Total int32                `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"` // Total count for pagination
	// contains filtered or unexported fields
}

ListWatchedItemsResponse contains the user's watched items.

func (*ListWatchedItemsResponse) Descriptor deprecated

func (*ListWatchedItemsResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListWatchedItemsResponse.ProtoReflect.Descriptor instead.

func (*ListWatchedItemsResponse) GetItems

func (*ListWatchedItemsResponse) GetTotal

func (x *ListWatchedItemsResponse) GetTotal() int32

func (*ListWatchedItemsResponse) ProtoMessage

func (*ListWatchedItemsResponse) ProtoMessage()

func (*ListWatchedItemsResponse) ProtoReflect

func (x *ListWatchedItemsResponse) ProtoReflect() protoreflect.Message

func (*ListWatchedItemsResponse) Reset

func (x *ListWatchedItemsResponse) Reset()

func (*ListWatchedItemsResponse) String

func (x *ListWatchedItemsResponse) String() string

type Media

type Media struct {
	Id          int64             `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	MediaType   string            `protobuf:"bytes,2,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`
	Title       string            `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"`
	Year        int32             `protobuf:"varint,4,opt,name=year,proto3" json:"year,omitempty"`
	FilePath    string            `protobuf:"bytes,5,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
	LibraryId   int64             `protobuf:"varint,6,opt,name=library_id,json=libraryId,proto3" json:"library_id,omitempty"`
	ExternalIds map[string]string `` /* 168-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*Media) Descriptor deprecated

func (*Media) Descriptor() ([]byte, []int)

Deprecated: Use Media.ProtoReflect.Descriptor instead.

func (*Media) GetExternalIds

func (x *Media) GetExternalIds() map[string]string

func (*Media) GetFilePath

func (x *Media) GetFilePath() string

func (*Media) GetId

func (x *Media) GetId() int64

func (*Media) GetLibraryId

func (x *Media) GetLibraryId() int64

func (*Media) GetMediaType

func (x *Media) GetMediaType() string

func (*Media) GetTitle

func (x *Media) GetTitle() string

func (*Media) GetYear

func (x *Media) GetYear() int32

func (*Media) ProtoMessage

func (*Media) ProtoMessage()

func (*Media) ProtoReflect

func (x *Media) ProtoReflect() protoreflect.Message

func (*Media) Reset

func (x *Media) Reset()

func (*Media) String

func (x *Media) String() string

type MediaCastMember

type MediaCastMember struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"` // Character name
	// contains filtered or unexported fields
}

MediaCastMember represents an actor in a movie/show. Simpler than enricher's CastMember - just what's needed for indexing.

func (*MediaCastMember) Descriptor deprecated

func (*MediaCastMember) Descriptor() ([]byte, []int)

Deprecated: Use MediaCastMember.ProtoReflect.Descriptor instead.

func (*MediaCastMember) GetName

func (x *MediaCastMember) GetName() string

func (*MediaCastMember) GetRole

func (x *MediaCastMember) GetRole() string

func (*MediaCastMember) ProtoMessage

func (*MediaCastMember) ProtoMessage()

func (*MediaCastMember) ProtoReflect

func (x *MediaCastMember) ProtoReflect() protoreflect.Message

func (*MediaCastMember) Reset

func (x *MediaCastMember) Reset()

func (*MediaCastMember) String

func (x *MediaCastMember) String() string

type MediaDetails

type MediaDetails struct {
	Id          int64             `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	MediaType   string            `protobuf:"bytes,2,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"` // "movie", "tv_show", "tv_episode", "music_artist", "music_album", "music_track"
	Title       string            `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"`
	Year        int32             `protobuf:"varint,4,opt,name=year,proto3" json:"year,omitempty"`
	LibraryId   int64             `protobuf:"varint,5,opt,name=library_id,json=libraryId,proto3" json:"library_id,omitempty"`
	ExternalIds map[string]string `` /* 168-byte string literal not displayed */
	// Rich metadata for embedding generation
	Plot             string             `protobuf:"bytes,7,opt,name=plot,proto3" json:"plot,omitempty"`
	Tagline          string             `protobuf:"bytes,8,opt,name=tagline,proto3" json:"tagline,omitempty"`
	Genres           []string           `protobuf:"bytes,9,rep,name=genres,proto3" json:"genres,omitempty"`
	Directors        []string           `protobuf:"bytes,10,rep,name=directors,proto3" json:"directors,omitempty"`
	Writers          []string           `protobuf:"bytes,11,rep,name=writers,proto3" json:"writers,omitempty"`
	Cast             []*MediaCastMember `protobuf:"bytes,12,rep,name=cast,proto3" json:"cast,omitempty"`
	Studios          []string           `protobuf:"bytes,13,rep,name=studios,proto3" json:"studios,omitempty"`
	ContentRating    string             `protobuf:"bytes,14,opt,name=content_rating,json=contentRating,proto3" json:"content_rating,omitempty"`
	RuntimeMinutes   int32              `protobuf:"varint,15,opt,name=runtime_minutes,json=runtimeMinutes,proto3" json:"runtime_minutes,omitempty"`
	OriginalLanguage string             `protobuf:"bytes,16,opt,name=original_language,json=originalLanguage,proto3" json:"original_language,omitempty"` // ISO 639-1 code, e.g., "en", "ko", "ja"
	CountryOfOrigin  string             `protobuf:"bytes,17,opt,name=country_of_origin,json=countryOfOrigin,proto3" json:"country_of_origin,omitempty"`  // e.g., "United States", "South Korea"
	Producers        []string           `protobuf:"bytes,18,rep,name=producers,proto3" json:"producers,omitempty"`                                       // Producers and executive producers
	// TV-specific
	ShowTitle     string `protobuf:"bytes,20,opt,name=show_title,json=showTitle,proto3" json:"show_title,omitempty"` // For episodes: the parent show title
	SeasonNumber  int32  `protobuf:"varint,21,opt,name=season_number,json=seasonNumber,proto3" json:"season_number,omitempty"`
	EpisodeNumber int32  `protobuf:"varint,22,opt,name=episode_number,json=episodeNumber,proto3" json:"episode_number,omitempty"`
	// Music-specific
	ArtistName  string `protobuf:"bytes,30,opt,name=artist_name,json=artistName,proto3" json:"artist_name,omitempty"`    // For albums/tracks
	AlbumTitle  string `protobuf:"bytes,31,opt,name=album_title,json=albumTitle,proto3" json:"album_title,omitempty"`    // For tracks
	Biography   string `protobuf:"bytes,32,opt,name=biography,proto3" json:"biography,omitempty"`                        // For artists
	Country     string `protobuf:"bytes,33,opt,name=country,proto3" json:"country,omitempty"`                            // For artists
	ReleaseType string `protobuf:"bytes,34,opt,name=release_type,json=releaseType,proto3" json:"release_type,omitempty"` // For albums: "album", "single", "ep", etc.
	// Location/setting keywords (from TMDB)
	LocationKeywords []string `protobuf:"bytes,41,rep,name=location_keywords,json=locationKeywords,proto3" json:"location_keywords,omitempty"` // e.g., ["new york city", "manhattan", "paris"]
	// Theme/topic keywords (from TMDB) - non-location keywords for thematic search
	ThemeKeywords []string `protobuf:"bytes,42,rep,name=theme_keywords,json=themeKeywords,proto3" json:"theme_keywords,omitempty"` // e.g., ["redemption", "friendship", "prison escape"]
	// Crew credits for specialized searches
	Composers        []string `protobuf:"bytes,43,rep,name=composers,proto3" json:"composers,omitempty"`               // Music composers (Original Music Composer job)
	Cinematographers []string `protobuf:"bytes,44,rep,name=cinematographers,proto3" json:"cinematographers,omitempty"` // Directors of Photography (Camera department)
	// Similar/recommended titles (from TMDb recommendations)
	SimilarTitles []string `protobuf:"bytes,45,rep,name=similar_titles,json=similarTitles,proto3" json:"similar_titles,omitempty"` // e.g., ["The Dark Knight", "Iron Man", "Spider-Man"]
	// Playback information for filtering by technical specs
	PlaybackInfo *PlaybackInfo `protobuf:"bytes,50,opt,name=playback_info,json=playbackInfo,proto3" json:"playback_info,omitempty"`
	// contains filtered or unexported fields
}

MediaDetails contains full metadata for AI indexing.

func (*MediaDetails) Descriptor deprecated

func (*MediaDetails) Descriptor() ([]byte, []int)

Deprecated: Use MediaDetails.ProtoReflect.Descriptor instead.

func (*MediaDetails) GetAlbumTitle

func (x *MediaDetails) GetAlbumTitle() string

func (*MediaDetails) GetArtistName

func (x *MediaDetails) GetArtistName() string

func (*MediaDetails) GetBiography

func (x *MediaDetails) GetBiography() string

func (*MediaDetails) GetCast

func (x *MediaDetails) GetCast() []*MediaCastMember

func (*MediaDetails) GetCinematographers

func (x *MediaDetails) GetCinematographers() []string

func (*MediaDetails) GetComposers

func (x *MediaDetails) GetComposers() []string

func (*MediaDetails) GetContentRating

func (x *MediaDetails) GetContentRating() string

func (*MediaDetails) GetCountry

func (x *MediaDetails) GetCountry() string

func (*MediaDetails) GetCountryOfOrigin

func (x *MediaDetails) GetCountryOfOrigin() string

func (*MediaDetails) GetDirectors

func (x *MediaDetails) GetDirectors() []string

func (*MediaDetails) GetEpisodeNumber

func (x *MediaDetails) GetEpisodeNumber() int32

func (*MediaDetails) GetExternalIds

func (x *MediaDetails) GetExternalIds() map[string]string

func (*MediaDetails) GetGenres

func (x *MediaDetails) GetGenres() []string

func (*MediaDetails) GetId

func (x *MediaDetails) GetId() int64

func (*MediaDetails) GetLibraryId

func (x *MediaDetails) GetLibraryId() int64

func (*MediaDetails) GetLocationKeywords

func (x *MediaDetails) GetLocationKeywords() []string

func (*MediaDetails) GetMediaType

func (x *MediaDetails) GetMediaType() string

func (*MediaDetails) GetOriginalLanguage

func (x *MediaDetails) GetOriginalLanguage() string

func (*MediaDetails) GetPlaybackInfo

func (x *MediaDetails) GetPlaybackInfo() *PlaybackInfo

func (*MediaDetails) GetPlot

func (x *MediaDetails) GetPlot() string

func (*MediaDetails) GetProducers

func (x *MediaDetails) GetProducers() []string

func (*MediaDetails) GetReleaseType

func (x *MediaDetails) GetReleaseType() string

func (*MediaDetails) GetRuntimeMinutes

func (x *MediaDetails) GetRuntimeMinutes() int32

func (*MediaDetails) GetSeasonNumber

func (x *MediaDetails) GetSeasonNumber() int32

func (*MediaDetails) GetShowTitle

func (x *MediaDetails) GetShowTitle() string

func (*MediaDetails) GetSimilarTitles

func (x *MediaDetails) GetSimilarTitles() []string

func (*MediaDetails) GetStudios

func (x *MediaDetails) GetStudios() []string

func (*MediaDetails) GetTagline

func (x *MediaDetails) GetTagline() string

func (*MediaDetails) GetThemeKeywords

func (x *MediaDetails) GetThemeKeywords() []string

func (*MediaDetails) GetTitle

func (x *MediaDetails) GetTitle() string

func (*MediaDetails) GetWriters

func (x *MediaDetails) GetWriters() []string

func (*MediaDetails) GetYear

func (x *MediaDetails) GetYear() int32

func (*MediaDetails) ProtoMessage

func (*MediaDetails) ProtoMessage()

func (*MediaDetails) ProtoReflect

func (x *MediaDetails) ProtoReflect() protoreflect.Message

func (*MediaDetails) Reset

func (x *MediaDetails) Reset()

func (*MediaDetails) String

func (x *MediaDetails) String() string

type MediaDetailsList

type MediaDetailsList struct {
	Items   []*MediaDetails `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	Total   int32           `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`                    // Total count (for pagination)
	HasMore bool            `protobuf:"varint,3,opt,name=has_more,json=hasMore,proto3" json:"has_more,omitempty"` // Whether more items exist
	// contains filtered or unexported fields
}

MediaDetailsList is a paginated list of media details.

func (*MediaDetailsList) Descriptor deprecated

func (*MediaDetailsList) Descriptor() ([]byte, []int)

Deprecated: Use MediaDetailsList.ProtoReflect.Descriptor instead.

func (*MediaDetailsList) GetHasMore

func (x *MediaDetailsList) GetHasMore() bool

func (*MediaDetailsList) GetItems

func (x *MediaDetailsList) GetItems() []*MediaDetails

func (*MediaDetailsList) GetTotal

func (x *MediaDetailsList) GetTotal() int32

func (*MediaDetailsList) ProtoMessage

func (*MediaDetailsList) ProtoMessage()

func (*MediaDetailsList) ProtoReflect

func (x *MediaDetailsList) ProtoReflect() protoreflect.Message

func (*MediaDetailsList) Reset

func (x *MediaDetailsList) Reset()

func (*MediaDetailsList) String

func (x *MediaDetailsList) String() string

type MediaId

type MediaId struct {
	Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*MediaId) Descriptor deprecated

func (*MediaId) Descriptor() ([]byte, []int)

Deprecated: Use MediaId.ProtoReflect.Descriptor instead.

func (*MediaId) GetId

func (x *MediaId) GetId() int64

func (*MediaId) ProtoMessage

func (*MediaId) ProtoMessage()

func (*MediaId) ProtoReflect

func (x *MediaId) ProtoReflect() protoreflect.Message

func (*MediaId) Reset

func (x *MediaId) Reset()

func (*MediaId) String

func (x *MediaId) String() string

type MediaList

type MediaList struct {
	Items []*Media `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*MediaList) Descriptor deprecated

func (*MediaList) Descriptor() ([]byte, []int)

Deprecated: Use MediaList.ProtoReflect.Descriptor instead.

func (*MediaList) GetItems

func (x *MediaList) GetItems() []*Media

func (*MediaList) ProtoMessage

func (*MediaList) ProtoMessage()

func (*MediaList) ProtoReflect

func (x *MediaList) ProtoReflect() protoreflect.Message

func (*MediaList) Reset

func (x *MediaList) Reset()

func (*MediaList) String

func (x *MediaList) String() string

type MediaQuery

type MediaQuery struct {
	MediaId   int64  `protobuf:"varint,1,opt,name=media_id,json=mediaId,proto3" json:"media_id,omitempty"`
	MediaType string `protobuf:"bytes,2,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"` // "movie", "tv_show", "tv_episode", "music_artist", "music_album", "music_track"
	// contains filtered or unexported fields
}

func (*MediaQuery) Descriptor deprecated

func (*MediaQuery) Descriptor() ([]byte, []int)

Deprecated: Use MediaQuery.ProtoReflect.Descriptor instead.

func (*MediaQuery) GetMediaId

func (x *MediaQuery) GetMediaId() int64

func (*MediaQuery) GetMediaType

func (x *MediaQuery) GetMediaType() string

func (*MediaQuery) ProtoMessage

func (*MediaQuery) ProtoMessage()

func (*MediaQuery) ProtoReflect

func (x *MediaQuery) ProtoReflect() protoreflect.Message

func (*MediaQuery) Reset

func (x *MediaQuery) Reset()

func (*MediaQuery) String

func (x *MediaQuery) String() string

type MusicMetadata

type MusicMetadata struct {
	Artist      string `protobuf:"bytes,1,opt,name=artist,proto3" json:"artist,omitempty"`
	Album       string `protobuf:"bytes,2,opt,name=album,proto3" json:"album,omitempty"`
	TrackTitle  string `protobuf:"bytes,3,opt,name=track_title,json=trackTitle,proto3" json:"track_title,omitempty"`
	TrackNumber int32  `protobuf:"varint,4,opt,name=track_number,json=trackNumber,proto3" json:"track_number,omitempty"`
	DiscNumber  int32  `protobuf:"varint,5,opt,name=disc_number,json=discNumber,proto3" json:"disc_number,omitempty"`
	// Album ID (for enriching tracks after album is matched)
	AlbumId int64 `protobuf:"varint,6,opt,name=album_id,json=albumId,proto3" json:"album_id,omitempty"`
	// contains filtered or unexported fields
}

func (*MusicMetadata) Descriptor deprecated

func (*MusicMetadata) Descriptor() ([]byte, []int)

Deprecated: Use MusicMetadata.ProtoReflect.Descriptor instead.

func (*MusicMetadata) GetAlbum

func (x *MusicMetadata) GetAlbum() string

func (*MusicMetadata) GetAlbumId

func (x *MusicMetadata) GetAlbumId() int64

func (*MusicMetadata) GetArtist

func (x *MusicMetadata) GetArtist() string

func (*MusicMetadata) GetDiscNumber

func (x *MusicMetadata) GetDiscNumber() int32

func (*MusicMetadata) GetTrackNumber

func (x *MusicMetadata) GetTrackNumber() int32

func (*MusicMetadata) GetTrackTitle

func (x *MusicMetadata) GetTrackTitle() string

func (*MusicMetadata) ProtoMessage

func (*MusicMetadata) ProtoMessage()

func (*MusicMetadata) ProtoReflect

func (x *MusicMetadata) ProtoReflect() protoreflect.Message

func (*MusicMetadata) Reset

func (x *MusicMetadata) Reset()

func (*MusicMetadata) String

func (x *MusicMetadata) String() string

type NFOActor

type NFOActor struct {
	Name  string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Role  string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
	Thumb string `protobuf:"bytes,3,opt,name=thumb,proto3" json:"thumb,omitempty"`
	Order int32  `protobuf:"varint,4,opt,name=order,proto3" json:"order,omitempty"`
	// contains filtered or unexported fields
}

func (*NFOActor) Descriptor deprecated

func (*NFOActor) Descriptor() ([]byte, []int)

Deprecated: Use NFOActor.ProtoReflect.Descriptor instead.

func (*NFOActor) GetName

func (x *NFOActor) GetName() string

func (*NFOActor) GetOrder

func (x *NFOActor) GetOrder() int32

func (*NFOActor) GetRole

func (x *NFOActor) GetRole() string

func (*NFOActor) GetThumb

func (x *NFOActor) GetThumb() string

func (*NFOActor) ProtoMessage

func (*NFOActor) ProtoMessage()

func (*NFOActor) ProtoReflect

func (x *NFOActor) ProtoReflect() protoreflect.Message

func (*NFOActor) Reset

func (x *NFOActor) Reset()

func (*NFOActor) String

func (x *NFOActor) String() string

type NFOMetadata

type NFOMetadata struct {
	Found          bool              `protobuf:"varint,1,opt,name=found,proto3" json:"found,omitempty"`
	Title          string            `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	OriginalTitle  string            `protobuf:"bytes,3,opt,name=original_title,json=originalTitle,proto3" json:"original_title,omitempty"`
	Year           int32             `protobuf:"varint,4,opt,name=year,proto3" json:"year,omitempty"`
	Plot           string            `protobuf:"bytes,5,opt,name=plot,proto3" json:"plot,omitempty"`
	Tagline        string            `protobuf:"bytes,6,opt,name=tagline,proto3" json:"tagline,omitempty"`
	Genres         []string          `protobuf:"bytes,7,rep,name=genres,proto3" json:"genres,omitempty"`
	ContentRating  string            `protobuf:"bytes,8,opt,name=content_rating,json=contentRating,proto3" json:"content_rating,omitempty"`
	RuntimeMinutes int32             `protobuf:"varint,9,opt,name=runtime_minutes,json=runtimeMinutes,proto3" json:"runtime_minutes,omitempty"`
	Rating         float32           `protobuf:"fixed32,10,opt,name=rating,proto3" json:"rating,omitempty"`
	ExternalIds    map[string]string `` /* 169-byte string literal not displayed */
	Directors      []string          `protobuf:"bytes,12,rep,name=directors,proto3" json:"directors,omitempty"`
	Writers        []string          `protobuf:"bytes,13,rep,name=writers,proto3" json:"writers,omitempty"`
	Actors         []*NFOActor       `protobuf:"bytes,14,rep,name=actors,proto3" json:"actors,omitempty"`
	Studios        []string          `protobuf:"bytes,15,rep,name=studios,proto3" json:"studios,omitempty"`
	// contains filtered or unexported fields
}

func (*NFOMetadata) Descriptor deprecated

func (*NFOMetadata) Descriptor() ([]byte, []int)

Deprecated: Use NFOMetadata.ProtoReflect.Descriptor instead.

func (*NFOMetadata) GetActors

func (x *NFOMetadata) GetActors() []*NFOActor

func (*NFOMetadata) GetContentRating

func (x *NFOMetadata) GetContentRating() string

func (*NFOMetadata) GetDirectors

func (x *NFOMetadata) GetDirectors() []string

func (*NFOMetadata) GetExternalIds

func (x *NFOMetadata) GetExternalIds() map[string]string

func (*NFOMetadata) GetFound

func (x *NFOMetadata) GetFound() bool

func (*NFOMetadata) GetGenres

func (x *NFOMetadata) GetGenres() []string

func (*NFOMetadata) GetOriginalTitle

func (x *NFOMetadata) GetOriginalTitle() string

func (*NFOMetadata) GetPlot

func (x *NFOMetadata) GetPlot() string

func (*NFOMetadata) GetRating

func (x *NFOMetadata) GetRating() float32

func (*NFOMetadata) GetRuntimeMinutes

func (x *NFOMetadata) GetRuntimeMinutes() int32

func (*NFOMetadata) GetStudios

func (x *NFOMetadata) GetStudios() []string

func (*NFOMetadata) GetTagline

func (x *NFOMetadata) GetTagline() string

func (*NFOMetadata) GetTitle

func (x *NFOMetadata) GetTitle() string

func (*NFOMetadata) GetWriters

func (x *NFOMetadata) GetWriters() []string

func (*NFOMetadata) GetYear

func (x *NFOMetadata) GetYear() int32

func (*NFOMetadata) ProtoMessage

func (*NFOMetadata) ProtoMessage()

func (*NFOMetadata) ProtoReflect

func (x *NFOMetadata) ProtoReflect() protoreflect.Message

func (*NFOMetadata) Reset

func (x *NFOMetadata) Reset()

func (*NFOMetadata) String

func (x *NFOMetadata) String() string

type ParseNFORequest

type ParseNFORequest struct {
	FilePath string `protobuf:"bytes,1,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
	NfoType  string `protobuf:"bytes,2,opt,name=nfo_type,json=nfoType,proto3" json:"nfo_type,omitempty"` // "movie", "tvshow", "episode", "artist", "album"
	// contains filtered or unexported fields
}

func (*ParseNFORequest) Descriptor deprecated

func (*ParseNFORequest) Descriptor() ([]byte, []int)

Deprecated: Use ParseNFORequest.ProtoReflect.Descriptor instead.

func (*ParseNFORequest) GetFilePath

func (x *ParseNFORequest) GetFilePath() string

func (*ParseNFORequest) GetNfoType

func (x *ParseNFORequest) GetNfoType() string

func (*ParseNFORequest) ProtoMessage

func (*ParseNFORequest) ProtoMessage()

func (*ParseNFORequest) ProtoReflect

func (x *ParseNFORequest) ProtoReflect() protoreflect.Message

func (*ParseNFORequest) Reset

func (x *ParseNFORequest) Reset()

func (*ParseNFORequest) String

func (x *ParseNFORequest) String() string

type PlaybackInfo

type PlaybackInfo struct {

	// Video specs
	Width           int32  `protobuf:"varint,1,opt,name=width,proto3" json:"width,omitempty"`                                           // Video width in pixels
	Height          int32  `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"`                                         // Video height in pixels
	ResolutionLabel string `protobuf:"bytes,3,opt,name=resolution_label,json=resolutionLabel,proto3" json:"resolution_label,omitempty"` // "SD", "720p", "1080p", "4K", "8K"
	HdrFormat       string `protobuf:"bytes,4,opt,name=hdr_format,json=hdrFormat,proto3" json:"hdr_format,omitempty"`                   // "SDR", "HDR10", "HDR10+", "Dolby Vision", "HLG"
	VideoCodec      string `protobuf:"bytes,5,opt,name=video_codec,json=videoCodec,proto3" json:"video_codec,omitempty"`                // "h264", "hevc", "av1", etc.
	Bitrate         int64  `protobuf:"varint,6,opt,name=bitrate,proto3" json:"bitrate,omitempty"`                                       // Video bitrate in bits/second
	// Audio tracks
	AudioTracks []*AudioTrack `protobuf:"bytes,10,rep,name=audio_tracks,json=audioTracks,proto3" json:"audio_tracks,omitempty"`
	// Subtitle tracks
	SubtitleTracks []*SubtitleTrack `protobuf:"bytes,11,rep,name=subtitle_tracks,json=subtitleTracks,proto3" json:"subtitle_tracks,omitempty"`
	// contains filtered or unexported fields
}

PlaybackInfo contains technical playback metadata for filtering. Used for queries like "4K movies", "Dolby Vision content", "movies with subtitles".

func (*PlaybackInfo) Descriptor deprecated

func (*PlaybackInfo) Descriptor() ([]byte, []int)

Deprecated: Use PlaybackInfo.ProtoReflect.Descriptor instead.

func (*PlaybackInfo) GetAudioTracks

func (x *PlaybackInfo) GetAudioTracks() []*AudioTrack

func (*PlaybackInfo) GetBitrate

func (x *PlaybackInfo) GetBitrate() int64

func (*PlaybackInfo) GetHdrFormat

func (x *PlaybackInfo) GetHdrFormat() string

func (*PlaybackInfo) GetHeight

func (x *PlaybackInfo) GetHeight() int32

func (*PlaybackInfo) GetResolutionLabel

func (x *PlaybackInfo) GetResolutionLabel() string

func (*PlaybackInfo) GetSubtitleTracks

func (x *PlaybackInfo) GetSubtitleTracks() []*SubtitleTrack

func (*PlaybackInfo) GetVideoCodec

func (x *PlaybackInfo) GetVideoCodec() string

func (*PlaybackInfo) GetWidth

func (x *PlaybackInfo) GetWidth() int32

func (*PlaybackInfo) ProtoMessage

func (*PlaybackInfo) ProtoMessage()

func (*PlaybackInfo) ProtoReflect

func (x *PlaybackInfo) ProtoReflect() protoreflect.Message

func (*PlaybackInfo) Reset

func (x *PlaybackInfo) Reset()

func (*PlaybackInfo) String

func (x *PlaybackInfo) String() string

type PluginCoreClient

type PluginCoreClient interface {
	// Initialize is called when the plugin is loaded.
	Initialize(ctx context.Context, in *InitRequest, opts ...grpc.CallOption) (*InitResponse, error)
	// Shutdown is called before the plugin process is terminated.
	Shutdown(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error)
	// HealthCheck returns the plugin's current health status.
	HealthCheck(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*HealthStatus, error)
	// GetSettingsSchema returns the JSON schema for plugin settings.
	GetSettingsSchema(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*SettingsSchema, error)
	// Configure applies settings to the plugin.
	Configure(ctx context.Context, in *Settings, opts ...grpc.CallOption) (*ConfigureResponse, error)
	// GetSubscriptions returns event types this plugin wants to receive.
	GetSubscriptions(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*EventSubscriptions, error)
	// OnEvent delivers an event to the plugin.
	OnEvent(ctx context.Context, in *Event, opts ...grpc.CallOption) (*EventResponse, error)
	// GetRoutes returns HTTP routes this plugin provides.
	// Called after Initialize to discover plugin endpoints.
	GetRoutes(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*PluginRoutes, error)
	// HandleHTTP handles a simple HTTP request/response.
	// Used for non-streaming routes.
	HandleHTTP(ctx context.Context, in *PluginHTTPRequest, opts ...grpc.CallOption) (*PluginHTTPResponse, error)
	// HandleHTTPStream handles streaming requests/responses.
	// Used for large uploads/downloads or real-time data.
	HandleHTTPStream(ctx context.Context, opts ...grpc.CallOption) (grpc.BidiStreamingClient[PluginHTTPChunk, PluginHTTPChunk], error)
}

PluginCoreClient is the client API for PluginCore service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

PluginCore is the base interface all plugins must implement. Provides lifecycle, health, configuration, and HTTP routing.

Plugin identity comes from plugin.yml manifest file. The host reads the manifest before starting the plugin binary.

func NewPluginCoreClient

func NewPluginCoreClient(cc grpc.ClientConnInterface) PluginCoreClient

type PluginCoreServer

type PluginCoreServer interface {
	// Initialize is called when the plugin is loaded.
	Initialize(context.Context, *InitRequest) (*InitResponse, error)
	// Shutdown is called before the plugin process is terminated.
	Shutdown(context.Context, *Empty) (*Empty, error)
	// HealthCheck returns the plugin's current health status.
	HealthCheck(context.Context, *Empty) (*HealthStatus, error)
	// GetSettingsSchema returns the JSON schema for plugin settings.
	GetSettingsSchema(context.Context, *Empty) (*SettingsSchema, error)
	// Configure applies settings to the plugin.
	Configure(context.Context, *Settings) (*ConfigureResponse, error)
	// GetSubscriptions returns event types this plugin wants to receive.
	GetSubscriptions(context.Context, *Empty) (*EventSubscriptions, error)
	// OnEvent delivers an event to the plugin.
	OnEvent(context.Context, *Event) (*EventResponse, error)
	// GetRoutes returns HTTP routes this plugin provides.
	// Called after Initialize to discover plugin endpoints.
	GetRoutes(context.Context, *Empty) (*PluginRoutes, error)
	// HandleHTTP handles a simple HTTP request/response.
	// Used for non-streaming routes.
	HandleHTTP(context.Context, *PluginHTTPRequest) (*PluginHTTPResponse, error)
	// HandleHTTPStream handles streaming requests/responses.
	// Used for large uploads/downloads or real-time data.
	HandleHTTPStream(grpc.BidiStreamingServer[PluginHTTPChunk, PluginHTTPChunk]) error
	// contains filtered or unexported methods
}

PluginCoreServer is the server API for PluginCore service. All implementations must embed UnimplementedPluginCoreServer for forward compatibility.

PluginCore is the base interface all plugins must implement. Provides lifecycle, health, configuration, and HTTP routing.

Plugin identity comes from plugin.yml manifest file. The host reads the manifest before starting the plugin binary.

type PluginCore_HandleHTTPStreamClient

type PluginCore_HandleHTTPStreamClient = grpc.BidiStreamingClient[PluginHTTPChunk, PluginHTTPChunk]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type PluginCore_HandleHTTPStreamServer

type PluginCore_HandleHTTPStreamServer = grpc.BidiStreamingServer[PluginHTTPChunk, PluginHTTPChunk]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type PluginHTTPChunk

type PluginHTTPChunk struct {
	Type PluginHTTPChunk_Type `protobuf:"varint,1,opt,name=type,proto3,enum=viewra.plugin.v1.PluginHTTPChunk_Type" json:"type,omitempty"`
	// Body data (for REQUEST_BODY and RESPONSE_BODY)
	Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
	// Full request (for REQUEST_START only)
	Request *PluginHTTPRequest `protobuf:"bytes,3,opt,name=request,proto3" json:"request,omitempty"`
	// Response metadata (for RESPONSE_START only)
	StatusCode  int32             `protobuf:"varint,4,opt,name=status_code,json=statusCode,proto3" json:"status_code,omitempty"`
	Headers     map[string]string `` /* 141-byte string literal not displayed */
	ContentType string            `protobuf:"bytes,6,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	// Error message if streaming fails mid-way
	Error string `protobuf:"bytes,7,opt,name=error,proto3" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*PluginHTTPChunk) Descriptor deprecated

func (*PluginHTTPChunk) Descriptor() ([]byte, []int)

Deprecated: Use PluginHTTPChunk.ProtoReflect.Descriptor instead.

func (*PluginHTTPChunk) GetContentType

func (x *PluginHTTPChunk) GetContentType() string

func (*PluginHTTPChunk) GetData

func (x *PluginHTTPChunk) GetData() []byte

func (*PluginHTTPChunk) GetError

func (x *PluginHTTPChunk) GetError() string

func (*PluginHTTPChunk) GetHeaders

func (x *PluginHTTPChunk) GetHeaders() map[string]string

func (*PluginHTTPChunk) GetRequest

func (x *PluginHTTPChunk) GetRequest() *PluginHTTPRequest

func (*PluginHTTPChunk) GetStatusCode

func (x *PluginHTTPChunk) GetStatusCode() int32

func (*PluginHTTPChunk) GetType

func (*PluginHTTPChunk) ProtoMessage

func (*PluginHTTPChunk) ProtoMessage()

func (*PluginHTTPChunk) ProtoReflect

func (x *PluginHTTPChunk) ProtoReflect() protoreflect.Message

func (*PluginHTTPChunk) Reset

func (x *PluginHTTPChunk) Reset()

func (*PluginHTTPChunk) String

func (x *PluginHTTPChunk) String() string

type PluginHTTPChunk_Type

type PluginHTTPChunk_Type int32

Chunk type for streaming protocol

const (
	// Client -> Plugin: First chunk with request metadata
	PluginHTTPChunk_REQUEST_START PluginHTTPChunk_Type = 0
	// Client -> Plugin: Request body chunk
	PluginHTTPChunk_REQUEST_BODY PluginHTTPChunk_Type = 1
	// Client -> Plugin: End of request body
	PluginHTTPChunk_REQUEST_END PluginHTTPChunk_Type = 2
	// Plugin -> Client: Response headers and status
	PluginHTTPChunk_RESPONSE_START PluginHTTPChunk_Type = 3
	// Plugin -> Client: Response body chunk
	PluginHTTPChunk_RESPONSE_BODY PluginHTTPChunk_Type = 4
	// Plugin -> Client: End of response
	PluginHTTPChunk_RESPONSE_END PluginHTTPChunk_Type = 5
)

func (PluginHTTPChunk_Type) Descriptor

func (PluginHTTPChunk_Type) Enum

func (PluginHTTPChunk_Type) EnumDescriptor deprecated

func (PluginHTTPChunk_Type) EnumDescriptor() ([]byte, []int)

Deprecated: Use PluginHTTPChunk_Type.Descriptor instead.

func (PluginHTTPChunk_Type) Number

func (PluginHTTPChunk_Type) String

func (x PluginHTTPChunk_Type) String() string

func (PluginHTTPChunk_Type) Type

type PluginHTTPRequest

type PluginHTTPRequest struct {

	// Request path (relative to plugin, e.g., "/search")
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// HTTP method: GET, POST, etc.
	Method string `protobuf:"bytes,2,opt,name=method,proto3" json:"method,omitempty"`
	// HTTP headers (lowercase keys)
	Headers map[string]string `` /* 141-byte string literal not displayed */
	// Query string parameters
	Query map[string]string `` /* 137-byte string literal not displayed */
	// Path parameters extracted from :param patterns
	PathParams map[string]string `` /* 165-byte string literal not displayed */
	// Request body (for POST, PUT, PATCH)
	Body []byte `protobuf:"bytes,6,opt,name=body,proto3" json:"body,omitempty"`
	// Authenticated user ID (empty if not authenticated, but all plugin routes require auth)
	UserId string `protobuf:"bytes,7,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// Whether the user has admin role
	IsAdmin bool `protobuf:"varint,8,opt,name=is_admin,json=isAdmin,proto3" json:"is_admin,omitempty"`
	// contains filtered or unexported fields
}

func (*PluginHTTPRequest) Descriptor deprecated

func (*PluginHTTPRequest) Descriptor() ([]byte, []int)

Deprecated: Use PluginHTTPRequest.ProtoReflect.Descriptor instead.

func (*PluginHTTPRequest) GetBody

func (x *PluginHTTPRequest) GetBody() []byte

func (*PluginHTTPRequest) GetHeaders

func (x *PluginHTTPRequest) GetHeaders() map[string]string

func (*PluginHTTPRequest) GetIsAdmin

func (x *PluginHTTPRequest) GetIsAdmin() bool

func (*PluginHTTPRequest) GetMethod

func (x *PluginHTTPRequest) GetMethod() string

func (*PluginHTTPRequest) GetPath

func (x *PluginHTTPRequest) GetPath() string

func (*PluginHTTPRequest) GetPathParams

func (x *PluginHTTPRequest) GetPathParams() map[string]string

func (*PluginHTTPRequest) GetQuery

func (x *PluginHTTPRequest) GetQuery() map[string]string

func (*PluginHTTPRequest) GetUserId

func (x *PluginHTTPRequest) GetUserId() string

func (*PluginHTTPRequest) ProtoMessage

func (*PluginHTTPRequest) ProtoMessage()

func (*PluginHTTPRequest) ProtoReflect

func (x *PluginHTTPRequest) ProtoReflect() protoreflect.Message

func (*PluginHTTPRequest) Reset

func (x *PluginHTTPRequest) Reset()

func (*PluginHTTPRequest) String

func (x *PluginHTTPRequest) String() string

type PluginHTTPResponse

type PluginHTTPResponse struct {

	// HTTP status code
	StatusCode int32 `protobuf:"varint,1,opt,name=status_code,json=statusCode,proto3" json:"status_code,omitempty"`
	// Response headers
	Headers map[string]string `` /* 141-byte string literal not displayed */
	// Response body
	Body []byte `protobuf:"bytes,3,opt,name=body,proto3" json:"body,omitempty"`
	// Content-Type header (convenience, also in headers)
	ContentType string `protobuf:"bytes,4,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	// contains filtered or unexported fields
}

func (*PluginHTTPResponse) Descriptor deprecated

func (*PluginHTTPResponse) Descriptor() ([]byte, []int)

Deprecated: Use PluginHTTPResponse.ProtoReflect.Descriptor instead.

func (*PluginHTTPResponse) GetBody

func (x *PluginHTTPResponse) GetBody() []byte

func (*PluginHTTPResponse) GetContentType

func (x *PluginHTTPResponse) GetContentType() string

func (*PluginHTTPResponse) GetHeaders

func (x *PluginHTTPResponse) GetHeaders() map[string]string

func (*PluginHTTPResponse) GetStatusCode

func (x *PluginHTTPResponse) GetStatusCode() int32

func (*PluginHTTPResponse) ProtoMessage

func (*PluginHTTPResponse) ProtoMessage()

func (*PluginHTTPResponse) ProtoReflect

func (x *PluginHTTPResponse) ProtoReflect() protoreflect.Message

func (*PluginHTTPResponse) Reset

func (x *PluginHTTPResponse) Reset()

func (*PluginHTTPResponse) String

func (x *PluginHTTPResponse) String() string

type PluginProviderClient

type PluginProviderClient interface {
	// Invoke dispatches a method call based on method name.
	// The provider deserializes the payload, calls the typed implementation,
	// and returns the serialized response.
	Invoke(ctx context.Context, in *ProviderInvokeRequest, opts ...grpc.CallOption) (*ProviderInvokeResponse, error)
	// InvokeStream handles streaming method calls.
	// Used for methods like ChatStream.
	InvokeStream(ctx context.Context, in *ProviderInvokeRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[ProviderInvokeResponse], error)
	// DescribeMethods returns metadata about available methods.
	// Used by the host to populate DescribeCapability responses.
	DescribeMethods(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*ProviderMethodsResponse, error)
	// GetCapabilities returns what this provider supports.
	GetCapabilities(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*ProviderCapabilities, error)
	// ListModels returns available models for this provider.
	ListModels(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*ProviderModelList, error)
	// GenerateEmbedding generates an embedding for a single text.
	GenerateEmbedding(ctx context.Context, in *ProviderEmbeddingRequest, opts ...grpc.CallOption) (*ProviderEmbeddingResponse, error)
	// GenerateEmbeddingBatch generates embeddings for multiple texts.
	GenerateEmbeddingBatch(ctx context.Context, in *ProviderEmbeddingBatchRequest, opts ...grpc.CallOption) (*ProviderEmbeddingBatchResponse, error)
	// Chat sends a chat completion request.
	Chat(ctx context.Context, in *ProviderChatRequest, opts ...grpc.CallOption) (*ProviderChatResponse, error)
	// ChatStream sends a streaming chat completion request.
	ChatStream(ctx context.Context, in *ProviderChatRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[ProviderChatStreamChunk], error)
	// HealthCheck verifies the provider is working.
	HealthCheck(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*ProviderHealthStatus, error)
}

PluginProviderClient is the client API for PluginProvider service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

PluginProvider is implemented by AI provider plugins (ollama, openai, etc.). The host proxies capability requests to providers via the generic Invoke methods. Typed methods are kept for direct use and backwards compatibility.

type PluginProviderInfo

type PluginProviderInfo struct {
	PluginId   string `protobuf:"bytes,1,opt,name=plugin_id,json=pluginId,proto3" json:"plugin_id,omitempty"`       // Plugin ID
	PluginName string `protobuf:"bytes,2,opt,name=plugin_name,json=pluginName,proto3" json:"plugin_name,omitempty"` // Human-readable name
	Enabled    bool   `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"`                        // Whether the plugin is enabled
	Configured bool   `protobuf:"varint,4,opt,name=configured,proto3" json:"configured,omitempty"`                  // Whether the plugin is properly configured
	// contains filtered or unexported fields
}

func (*PluginProviderInfo) Descriptor deprecated

func (*PluginProviderInfo) Descriptor() ([]byte, []int)

Deprecated: Use PluginProviderInfo.ProtoReflect.Descriptor instead.

func (*PluginProviderInfo) GetConfigured

func (x *PluginProviderInfo) GetConfigured() bool

func (*PluginProviderInfo) GetEnabled

func (x *PluginProviderInfo) GetEnabled() bool

func (*PluginProviderInfo) GetPluginId

func (x *PluginProviderInfo) GetPluginId() string

func (*PluginProviderInfo) GetPluginName

func (x *PluginProviderInfo) GetPluginName() string

func (*PluginProviderInfo) ProtoMessage

func (*PluginProviderInfo) ProtoMessage()

func (*PluginProviderInfo) ProtoReflect

func (x *PluginProviderInfo) ProtoReflect() protoreflect.Message

func (*PluginProviderInfo) Reset

func (x *PluginProviderInfo) Reset()

func (*PluginProviderInfo) String

func (x *PluginProviderInfo) String() string

type PluginProviderServer

type PluginProviderServer interface {
	// Invoke dispatches a method call based on method name.
	// The provider deserializes the payload, calls the typed implementation,
	// and returns the serialized response.
	Invoke(context.Context, *ProviderInvokeRequest) (*ProviderInvokeResponse, error)
	// InvokeStream handles streaming method calls.
	// Used for methods like ChatStream.
	InvokeStream(*ProviderInvokeRequest, grpc.ServerStreamingServer[ProviderInvokeResponse]) error
	// DescribeMethods returns metadata about available methods.
	// Used by the host to populate DescribeCapability responses.
	DescribeMethods(context.Context, *Empty) (*ProviderMethodsResponse, error)
	// GetCapabilities returns what this provider supports.
	GetCapabilities(context.Context, *Empty) (*ProviderCapabilities, error)
	// ListModels returns available models for this provider.
	ListModels(context.Context, *Empty) (*ProviderModelList, error)
	// GenerateEmbedding generates an embedding for a single text.
	GenerateEmbedding(context.Context, *ProviderEmbeddingRequest) (*ProviderEmbeddingResponse, error)
	// GenerateEmbeddingBatch generates embeddings for multiple texts.
	GenerateEmbeddingBatch(context.Context, *ProviderEmbeddingBatchRequest) (*ProviderEmbeddingBatchResponse, error)
	// Chat sends a chat completion request.
	Chat(context.Context, *ProviderChatRequest) (*ProviderChatResponse, error)
	// ChatStream sends a streaming chat completion request.
	ChatStream(*ProviderChatRequest, grpc.ServerStreamingServer[ProviderChatStreamChunk]) error
	// HealthCheck verifies the provider is working.
	HealthCheck(context.Context, *Empty) (*ProviderHealthStatus, error)
	// contains filtered or unexported methods
}

PluginProviderServer is the server API for PluginProvider service. All implementations must embed UnimplementedPluginProviderServer for forward compatibility.

PluginProvider is implemented by AI provider plugins (ollama, openai, etc.). The host proxies capability requests to providers via the generic Invoke methods. Typed methods are kept for direct use and backwards compatibility.

type PluginProvider_ChatStreamClient

type PluginProvider_ChatStreamClient = grpc.ServerStreamingClient[ProviderChatStreamChunk]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type PluginProvider_ChatStreamServer

type PluginProvider_ChatStreamServer = grpc.ServerStreamingServer[ProviderChatStreamChunk]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type PluginProvider_InvokeStreamClient

type PluginProvider_InvokeStreamClient = grpc.ServerStreamingClient[ProviderInvokeResponse]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type PluginProvider_InvokeStreamServer

type PluginProvider_InvokeStreamServer = grpc.ServerStreamingServer[ProviderInvokeResponse]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type PluginRateLimit

type PluginRateLimit struct {

	// Maximum requests per minute (0 = no limit)
	RequestsPerMinute int32 `protobuf:"varint,1,opt,name=requests_per_minute,json=requestsPerMinute,proto3" json:"requests_per_minute,omitempty"`
	// If true, limit is per-user; otherwise global for this route
	PerUser bool `protobuf:"varint,2,opt,name=per_user,json=perUser,proto3" json:"per_user,omitempty"`
	// contains filtered or unexported fields
}

func (*PluginRateLimit) Descriptor deprecated

func (*PluginRateLimit) Descriptor() ([]byte, []int)

Deprecated: Use PluginRateLimit.ProtoReflect.Descriptor instead.

func (*PluginRateLimit) GetPerUser

func (x *PluginRateLimit) GetPerUser() bool

func (*PluginRateLimit) GetRequestsPerMinute

func (x *PluginRateLimit) GetRequestsPerMinute() int32

func (*PluginRateLimit) ProtoMessage

func (*PluginRateLimit) ProtoMessage()

func (*PluginRateLimit) ProtoReflect

func (x *PluginRateLimit) ProtoReflect() protoreflect.Message

func (*PluginRateLimit) Reset

func (x *PluginRateLimit) Reset()

func (*PluginRateLimit) String

func (x *PluginRateLimit) String() string

type PluginRoute

type PluginRoute struct {

	// Path relative to plugin namespace, e.g., "/search" or "/items/:id"
	// Supports :param syntax for path parameters
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// HTTP methods this route handles: GET, POST, PUT, DELETE, PATCH
	Methods []string `protobuf:"bytes,2,rep,name=methods,proto3" json:"methods,omitempty"`
	// If true, requires admin role (otherwise just authenticated)
	AdminOnly bool `protobuf:"varint,3,opt,name=admin_only,json=adminOnly,proto3" json:"admin_only,omitempty"`
	// Human-readable description for API docs
	Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
	// Capability name this route provides (e.g., "semantic_search", "chat")
	// Other plugins can invoke this capability via the host plugins service.
	Capability string `protobuf:"bytes,5,opt,name=capability,proto3" json:"capability,omitempty"`
	// If true, use HandleHTTPStream instead of HandleHTTP
	Streaming bool `protobuf:"varint,6,opt,name=streaming,proto3" json:"streaming,omitempty"`
	// Optional rate limiting for this route
	RateLimit *PluginRateLimit `protobuf:"bytes,7,opt,name=rate_limit,json=rateLimit,proto3" json:"rate_limit,omitempty"`
	// Stable URL alias for this route (e.g., "/api/search")
	// If set, the host will create an alias at this path that proxies to this route.
	// This allows plugins to claim well-known API paths.
	AliasPath string `protobuf:"bytes,8,opt,name=alias_path,json=aliasPath,proto3" json:"alias_path,omitempty"`
	// contains filtered or unexported fields
}

func (*PluginRoute) Descriptor deprecated

func (*PluginRoute) Descriptor() ([]byte, []int)

Deprecated: Use PluginRoute.ProtoReflect.Descriptor instead.

func (*PluginRoute) GetAdminOnly

func (x *PluginRoute) GetAdminOnly() bool

func (*PluginRoute) GetAliasPath

func (x *PluginRoute) GetAliasPath() string

func (*PluginRoute) GetCapability

func (x *PluginRoute) GetCapability() string

func (*PluginRoute) GetDescription

func (x *PluginRoute) GetDescription() string

func (*PluginRoute) GetMethods

func (x *PluginRoute) GetMethods() []string

func (*PluginRoute) GetPath

func (x *PluginRoute) GetPath() string

func (*PluginRoute) GetRateLimit

func (x *PluginRoute) GetRateLimit() *PluginRateLimit

func (*PluginRoute) GetStreaming

func (x *PluginRoute) GetStreaming() bool

func (*PluginRoute) ProtoMessage

func (*PluginRoute) ProtoMessage()

func (*PluginRoute) ProtoReflect

func (x *PluginRoute) ProtoReflect() protoreflect.Message

func (*PluginRoute) Reset

func (x *PluginRoute) Reset()

func (*PluginRoute) String

func (x *PluginRoute) String() string

type PluginRoutes

type PluginRoutes struct {
	Routes []*PluginRoute `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
	// contains filtered or unexported fields
}

func (*PluginRoutes) Descriptor deprecated

func (*PluginRoutes) Descriptor() ([]byte, []int)

Deprecated: Use PluginRoutes.ProtoReflect.Descriptor instead.

func (*PluginRoutes) GetRoutes

func (x *PluginRoutes) GetRoutes() []*PluginRoute

func (*PluginRoutes) ProtoMessage

func (*PluginRoutes) ProtoMessage()

func (*PluginRoutes) ProtoReflect

func (x *PluginRoutes) ProtoReflect() protoreflect.Message

func (*PluginRoutes) Reset

func (x *PluginRoutes) Reset()

func (*PluginRoutes) String

func (x *PluginRoutes) String() string

type ProviderCapabilities

type ProviderCapabilities struct {
	ProviderId            string `protobuf:"bytes,1,opt,name=provider_id,json=providerId,proto3" json:"provider_id,omitempty"`
	DisplayName           string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	Description           string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	SupportsChat          bool   `protobuf:"varint,4,opt,name=supports_chat,json=supportsChat,proto3" json:"supports_chat,omitempty"`
	SupportsEmbeddings    bool   `protobuf:"varint,5,opt,name=supports_embeddings,json=supportsEmbeddings,proto3" json:"supports_embeddings,omitempty"`
	SupportsStreaming     bool   `protobuf:"varint,6,opt,name=supports_streaming,json=supportsStreaming,proto3" json:"supports_streaming,omitempty"`
	RequiresApiKey        bool   `protobuf:"varint,7,opt,name=requires_api_key,json=requiresApiKey,proto3" json:"requires_api_key,omitempty"`
	RequiresUrl           bool   `protobuf:"varint,8,opt,name=requires_url,json=requiresUrl,proto3" json:"requires_url,omitempty"`
	IsLocal               bool   `protobuf:"varint,9,opt,name=is_local,json=isLocal,proto3" json:"is_local,omitempty"`
	DefaultChatModel      string `protobuf:"bytes,10,opt,name=default_chat_model,json=defaultChatModel,proto3" json:"default_chat_model,omitempty"`
	DefaultEmbeddingModel string `` /* 127-byte string literal not displayed */
	// contains filtered or unexported fields
}

ProviderCapabilities describes what an AI provider plugin supports.

func (*ProviderCapabilities) Descriptor deprecated

func (*ProviderCapabilities) Descriptor() ([]byte, []int)

Deprecated: Use ProviderCapabilities.ProtoReflect.Descriptor instead.

func (*ProviderCapabilities) GetDefaultChatModel

func (x *ProviderCapabilities) GetDefaultChatModel() string

func (*ProviderCapabilities) GetDefaultEmbeddingModel

func (x *ProviderCapabilities) GetDefaultEmbeddingModel() string

func (*ProviderCapabilities) GetDescription

func (x *ProviderCapabilities) GetDescription() string

func (*ProviderCapabilities) GetDisplayName

func (x *ProviderCapabilities) GetDisplayName() string

func (*ProviderCapabilities) GetIsLocal

func (x *ProviderCapabilities) GetIsLocal() bool

func (*ProviderCapabilities) GetProviderId

func (x *ProviderCapabilities) GetProviderId() string

func (*ProviderCapabilities) GetRequiresApiKey

func (x *ProviderCapabilities) GetRequiresApiKey() bool

func (*ProviderCapabilities) GetRequiresUrl

func (x *ProviderCapabilities) GetRequiresUrl() bool

func (*ProviderCapabilities) GetSupportsChat

func (x *ProviderCapabilities) GetSupportsChat() bool

func (*ProviderCapabilities) GetSupportsEmbeddings

func (x *ProviderCapabilities) GetSupportsEmbeddings() bool

func (*ProviderCapabilities) GetSupportsStreaming

func (x *ProviderCapabilities) GetSupportsStreaming() bool

func (*ProviderCapabilities) ProtoMessage

func (*ProviderCapabilities) ProtoMessage()

func (*ProviderCapabilities) ProtoReflect

func (x *ProviderCapabilities) ProtoReflect() protoreflect.Message

func (*ProviderCapabilities) Reset

func (x *ProviderCapabilities) Reset()

func (*ProviderCapabilities) String

func (x *ProviderCapabilities) String() string

type ProviderChatMessage

type ProviderChatMessage struct {
	Role    string `protobuf:"bytes,1,opt,name=role,proto3" json:"role,omitempty"` // "system", "user", "assistant"
	Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content,omitempty"`
	// contains filtered or unexported fields
}

ProviderChatMessage represents a single message in a chat conversation.

func (*ProviderChatMessage) Descriptor deprecated

func (*ProviderChatMessage) Descriptor() ([]byte, []int)

Deprecated: Use ProviderChatMessage.ProtoReflect.Descriptor instead.

func (*ProviderChatMessage) GetContent

func (x *ProviderChatMessage) GetContent() string

func (*ProviderChatMessage) GetRole

func (x *ProviderChatMessage) GetRole() string

func (*ProviderChatMessage) ProtoMessage

func (*ProviderChatMessage) ProtoMessage()

func (*ProviderChatMessage) ProtoReflect

func (x *ProviderChatMessage) ProtoReflect() protoreflect.Message

func (*ProviderChatMessage) Reset

func (x *ProviderChatMessage) Reset()

func (*ProviderChatMessage) String

func (x *ProviderChatMessage) String() string

type ProviderChatRequest

type ProviderChatRequest struct {
	Messages    []*ProviderChatMessage `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
	Model       string                 `protobuf:"bytes,2,opt,name=model,proto3" json:"model,omitempty"`
	Temperature float32                `protobuf:"fixed32,3,opt,name=temperature,proto3" json:"temperature,omitempty"`
	MaxTokens   int32                  `protobuf:"varint,4,opt,name=max_tokens,json=maxTokens,proto3" json:"max_tokens,omitempty"`
	// contains filtered or unexported fields
}

ProviderChatRequest is sent to a provider for chat completion.

func (*ProviderChatRequest) Descriptor deprecated

func (*ProviderChatRequest) Descriptor() ([]byte, []int)

Deprecated: Use ProviderChatRequest.ProtoReflect.Descriptor instead.

func (*ProviderChatRequest) GetMaxTokens

func (x *ProviderChatRequest) GetMaxTokens() int32

func (*ProviderChatRequest) GetMessages

func (x *ProviderChatRequest) GetMessages() []*ProviderChatMessage

func (*ProviderChatRequest) GetModel

func (x *ProviderChatRequest) GetModel() string

func (*ProviderChatRequest) GetTemperature

func (x *ProviderChatRequest) GetTemperature() float32

func (*ProviderChatRequest) ProtoMessage

func (*ProviderChatRequest) ProtoMessage()

func (*ProviderChatRequest) ProtoReflect

func (x *ProviderChatRequest) ProtoReflect() protoreflect.Message

func (*ProviderChatRequest) Reset

func (x *ProviderChatRequest) Reset()

func (*ProviderChatRequest) String

func (x *ProviderChatRequest) String() string

type ProviderChatResponse

type ProviderChatResponse struct {
	Content          string `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
	FinishReason     string `protobuf:"bytes,2,opt,name=finish_reason,json=finishReason,proto3" json:"finish_reason,omitempty"`
	PromptTokens     int32  `protobuf:"varint,3,opt,name=prompt_tokens,json=promptTokens,proto3" json:"prompt_tokens,omitempty"`
	CompletionTokens int32  `protobuf:"varint,4,opt,name=completion_tokens,json=completionTokens,proto3" json:"completion_tokens,omitempty"`
	// contains filtered or unexported fields
}

ProviderChatResponse is returned from chat completion.

func (*ProviderChatResponse) Descriptor deprecated

func (*ProviderChatResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProviderChatResponse.ProtoReflect.Descriptor instead.

func (*ProviderChatResponse) GetCompletionTokens

func (x *ProviderChatResponse) GetCompletionTokens() int32

func (*ProviderChatResponse) GetContent

func (x *ProviderChatResponse) GetContent() string

func (*ProviderChatResponse) GetFinishReason

func (x *ProviderChatResponse) GetFinishReason() string

func (*ProviderChatResponse) GetPromptTokens

func (x *ProviderChatResponse) GetPromptTokens() int32

func (*ProviderChatResponse) ProtoMessage

func (*ProviderChatResponse) ProtoMessage()

func (*ProviderChatResponse) ProtoReflect

func (x *ProviderChatResponse) ProtoReflect() protoreflect.Message

func (*ProviderChatResponse) Reset

func (x *ProviderChatResponse) Reset()

func (*ProviderChatResponse) String

func (x *ProviderChatResponse) String() string

type ProviderChatStreamChunk

type ProviderChatStreamChunk struct {
	Content      string `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
	Done         bool   `protobuf:"varint,2,opt,name=done,proto3" json:"done,omitempty"`
	FinishReason string `protobuf:"bytes,3,opt,name=finish_reason,json=finishReason,proto3" json:"finish_reason,omitempty"`
	// contains filtered or unexported fields
}

ProviderChatStreamChunk is sent during streaming chat completions.

func (*ProviderChatStreamChunk) Descriptor deprecated

func (*ProviderChatStreamChunk) Descriptor() ([]byte, []int)

Deprecated: Use ProviderChatStreamChunk.ProtoReflect.Descriptor instead.

func (*ProviderChatStreamChunk) GetContent

func (x *ProviderChatStreamChunk) GetContent() string

func (*ProviderChatStreamChunk) GetDone

func (x *ProviderChatStreamChunk) GetDone() bool

func (*ProviderChatStreamChunk) GetFinishReason

func (x *ProviderChatStreamChunk) GetFinishReason() string

func (*ProviderChatStreamChunk) ProtoMessage

func (*ProviderChatStreamChunk) ProtoMessage()

func (*ProviderChatStreamChunk) ProtoReflect

func (x *ProviderChatStreamChunk) ProtoReflect() protoreflect.Message

func (*ProviderChatStreamChunk) Reset

func (x *ProviderChatStreamChunk) Reset()

func (*ProviderChatStreamChunk) String

func (x *ProviderChatStreamChunk) String() string

type ProviderEmbeddingBatchRequest

type ProviderEmbeddingBatchRequest struct {
	Texts []string `protobuf:"bytes,1,rep,name=texts,proto3" json:"texts,omitempty"`
	Model string   `protobuf:"bytes,2,opt,name=model,proto3" json:"model,omitempty"`
	// contains filtered or unexported fields
}

ProviderEmbeddingBatchRequest is sent for batch embedding generation.

func (*ProviderEmbeddingBatchRequest) Descriptor deprecated

func (*ProviderEmbeddingBatchRequest) Descriptor() ([]byte, []int)

Deprecated: Use ProviderEmbeddingBatchRequest.ProtoReflect.Descriptor instead.

func (*ProviderEmbeddingBatchRequest) GetModel

func (x *ProviderEmbeddingBatchRequest) GetModel() string

func (*ProviderEmbeddingBatchRequest) GetTexts

func (x *ProviderEmbeddingBatchRequest) GetTexts() []string

func (*ProviderEmbeddingBatchRequest) ProtoMessage

func (*ProviderEmbeddingBatchRequest) ProtoMessage()

func (*ProviderEmbeddingBatchRequest) ProtoReflect

func (*ProviderEmbeddingBatchRequest) Reset

func (x *ProviderEmbeddingBatchRequest) Reset()

func (*ProviderEmbeddingBatchRequest) String

type ProviderEmbeddingBatchResponse

type ProviderEmbeddingBatchResponse struct {
	Embeddings  []*ProviderEmbeddingResult `protobuf:"bytes,1,rep,name=embeddings,proto3" json:"embeddings,omitempty"`
	TotalTokens int32                      `protobuf:"varint,2,opt,name=total_tokens,json=totalTokens,proto3" json:"total_tokens,omitempty"`
	// contains filtered or unexported fields
}

ProviderEmbeddingBatchResponse is returned from batch embedding generation.

func (*ProviderEmbeddingBatchResponse) Descriptor deprecated

func (*ProviderEmbeddingBatchResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProviderEmbeddingBatchResponse.ProtoReflect.Descriptor instead.

func (*ProviderEmbeddingBatchResponse) GetEmbeddings

func (*ProviderEmbeddingBatchResponse) GetTotalTokens

func (x *ProviderEmbeddingBatchResponse) GetTotalTokens() int32

func (*ProviderEmbeddingBatchResponse) ProtoMessage

func (*ProviderEmbeddingBatchResponse) ProtoMessage()

func (*ProviderEmbeddingBatchResponse) ProtoReflect

func (*ProviderEmbeddingBatchResponse) Reset

func (x *ProviderEmbeddingBatchResponse) Reset()

func (*ProviderEmbeddingBatchResponse) String

type ProviderEmbeddingRequest

type ProviderEmbeddingRequest struct {
	Text  string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
	Model string `protobuf:"bytes,2,opt,name=model,proto3" json:"model,omitempty"`
	// contains filtered or unexported fields
}

ProviderEmbeddingRequest is sent to a provider for embedding generation.

func (*ProviderEmbeddingRequest) Descriptor deprecated

func (*ProviderEmbeddingRequest) Descriptor() ([]byte, []int)

Deprecated: Use ProviderEmbeddingRequest.ProtoReflect.Descriptor instead.

func (*ProviderEmbeddingRequest) GetModel

func (x *ProviderEmbeddingRequest) GetModel() string

func (*ProviderEmbeddingRequest) GetText

func (x *ProviderEmbeddingRequest) GetText() string

func (*ProviderEmbeddingRequest) ProtoMessage

func (*ProviderEmbeddingRequest) ProtoMessage()

func (*ProviderEmbeddingRequest) ProtoReflect

func (x *ProviderEmbeddingRequest) ProtoReflect() protoreflect.Message

func (*ProviderEmbeddingRequest) Reset

func (x *ProviderEmbeddingRequest) Reset()

func (*ProviderEmbeddingRequest) String

func (x *ProviderEmbeddingRequest) String() string

type ProviderEmbeddingResponse

type ProviderEmbeddingResponse struct {
	Embedding  []float32 `protobuf:"fixed32,1,rep,packed,name=embedding,proto3" json:"embedding,omitempty"`
	Dimensions int32     `protobuf:"varint,2,opt,name=dimensions,proto3" json:"dimensions,omitempty"`
	TokensUsed int32     `protobuf:"varint,3,opt,name=tokens_used,json=tokensUsed,proto3" json:"tokens_used,omitempty"`
	// contains filtered or unexported fields
}

ProviderEmbeddingResponse is returned from embedding generation.

func (*ProviderEmbeddingResponse) Descriptor deprecated

func (*ProviderEmbeddingResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProviderEmbeddingResponse.ProtoReflect.Descriptor instead.

func (*ProviderEmbeddingResponse) GetDimensions

func (x *ProviderEmbeddingResponse) GetDimensions() int32

func (*ProviderEmbeddingResponse) GetEmbedding

func (x *ProviderEmbeddingResponse) GetEmbedding() []float32

func (*ProviderEmbeddingResponse) GetTokensUsed

func (x *ProviderEmbeddingResponse) GetTokensUsed() int32

func (*ProviderEmbeddingResponse) ProtoMessage

func (*ProviderEmbeddingResponse) ProtoMessage()

func (*ProviderEmbeddingResponse) ProtoReflect

func (*ProviderEmbeddingResponse) Reset

func (x *ProviderEmbeddingResponse) Reset()

func (*ProviderEmbeddingResponse) String

func (x *ProviderEmbeddingResponse) String() string

type ProviderEmbeddingResult

type ProviderEmbeddingResult struct {
	Embedding  []float32 `protobuf:"fixed32,1,rep,packed,name=embedding,proto3" json:"embedding,omitempty"`
	Dimensions int32     `protobuf:"varint,2,opt,name=dimensions,proto3" json:"dimensions,omitempty"`
	// contains filtered or unexported fields
}

ProviderEmbeddingResult represents a single embedding in a batch response.

func (*ProviderEmbeddingResult) Descriptor deprecated

func (*ProviderEmbeddingResult) Descriptor() ([]byte, []int)

Deprecated: Use ProviderEmbeddingResult.ProtoReflect.Descriptor instead.

func (*ProviderEmbeddingResult) GetDimensions

func (x *ProviderEmbeddingResult) GetDimensions() int32

func (*ProviderEmbeddingResult) GetEmbedding

func (x *ProviderEmbeddingResult) GetEmbedding() []float32

func (*ProviderEmbeddingResult) ProtoMessage

func (*ProviderEmbeddingResult) ProtoMessage()

func (*ProviderEmbeddingResult) ProtoReflect

func (x *ProviderEmbeddingResult) ProtoReflect() protoreflect.Message

func (*ProviderEmbeddingResult) Reset

func (x *ProviderEmbeddingResult) Reset()

func (*ProviderEmbeddingResult) String

func (x *ProviderEmbeddingResult) String() string

type ProviderError

type ProviderError struct {
	Code      string `protobuf:"bytes,1,opt,name=code,proto3" json:"code,omitempty"` // Provider-specific error code
	Message   string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	Details   string `protobuf:"bytes,3,opt,name=details,proto3" json:"details,omitempty"`      // Additional context
	Retryable bool   `protobuf:"varint,4,opt,name=retryable,proto3" json:"retryable,omitempty"` // Whether the caller should retry
	// contains filtered or unexported fields
}

ProviderError represents an error from a provider.

func (*ProviderError) Descriptor deprecated

func (*ProviderError) Descriptor() ([]byte, []int)

Deprecated: Use ProviderError.ProtoReflect.Descriptor instead.

func (*ProviderError) GetCode

func (x *ProviderError) GetCode() string

func (*ProviderError) GetDetails

func (x *ProviderError) GetDetails() string

func (*ProviderError) GetMessage

func (x *ProviderError) GetMessage() string

func (*ProviderError) GetRetryable

func (x *ProviderError) GetRetryable() bool

func (*ProviderError) ProtoMessage

func (*ProviderError) ProtoMessage()

func (*ProviderError) ProtoReflect

func (x *ProviderError) ProtoReflect() protoreflect.Message

func (*ProviderError) Reset

func (x *ProviderError) Reset()

func (*ProviderError) String

func (x *ProviderError) String() string

type ProviderHealthStatus

type ProviderHealthStatus struct {
	Healthy   bool   `protobuf:"varint,1,opt,name=healthy,proto3" json:"healthy,omitempty"`
	Message   string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	LatencyMs int64  `protobuf:"varint,3,opt,name=latency_ms,json=latencyMs,proto3" json:"latency_ms,omitempty"`
	Error     string `protobuf:"bytes,4,opt,name=error,proto3" json:"error,omitempty"`
	// contains filtered or unexported fields
}

ProviderHealthStatus indicates the health of a provider.

func (*ProviderHealthStatus) Descriptor deprecated

func (*ProviderHealthStatus) Descriptor() ([]byte, []int)

Deprecated: Use ProviderHealthStatus.ProtoReflect.Descriptor instead.

func (*ProviderHealthStatus) GetError

func (x *ProviderHealthStatus) GetError() string

func (*ProviderHealthStatus) GetHealthy

func (x *ProviderHealthStatus) GetHealthy() bool

func (*ProviderHealthStatus) GetLatencyMs

func (x *ProviderHealthStatus) GetLatencyMs() int64

func (*ProviderHealthStatus) GetMessage

func (x *ProviderHealthStatus) GetMessage() string

func (*ProviderHealthStatus) ProtoMessage

func (*ProviderHealthStatus) ProtoMessage()

func (*ProviderHealthStatus) ProtoReflect

func (x *ProviderHealthStatus) ProtoReflect() protoreflect.Message

func (*ProviderHealthStatus) Reset

func (x *ProviderHealthStatus) Reset()

func (*ProviderHealthStatus) String

func (x *ProviderHealthStatus) String() string

type ProviderInvokeRequest

type ProviderInvokeRequest struct {
	Method     string            `protobuf:"bytes,1,opt,name=method,proto3" json:"method,omitempty"`                           // Method to invoke, e.g., "GenerateEmbedding"
	Payload    []byte            `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`                         // Serialized request proto
	ApiVersion string            `protobuf:"bytes,3,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"` // API version requested
	Metadata   map[string]string ``                                                                                            // Request metadata
	/* 143-byte string literal not displayed */
	// contains filtered or unexported fields
}

ProviderInvokeRequest is sent to invoke a method on a provider.

func (*ProviderInvokeRequest) Descriptor deprecated

func (*ProviderInvokeRequest) Descriptor() ([]byte, []int)

Deprecated: Use ProviderInvokeRequest.ProtoReflect.Descriptor instead.

func (*ProviderInvokeRequest) GetApiVersion

func (x *ProviderInvokeRequest) GetApiVersion() string

func (*ProviderInvokeRequest) GetMetadata

func (x *ProviderInvokeRequest) GetMetadata() map[string]string

func (*ProviderInvokeRequest) GetMethod

func (x *ProviderInvokeRequest) GetMethod() string

func (*ProviderInvokeRequest) GetPayload

func (x *ProviderInvokeRequest) GetPayload() []byte

func (*ProviderInvokeRequest) ProtoMessage

func (*ProviderInvokeRequest) ProtoMessage()

func (*ProviderInvokeRequest) ProtoReflect

func (x *ProviderInvokeRequest) ProtoReflect() protoreflect.Message

func (*ProviderInvokeRequest) Reset

func (x *ProviderInvokeRequest) Reset()

func (*ProviderInvokeRequest) String

func (x *ProviderInvokeRequest) String() string

type ProviderInvokeResponse

type ProviderInvokeResponse struct {
	Payload  []byte            `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` // Serialized response proto
	Error    *ProviderError    `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`     // Null if success
	Metadata map[string]string ``                                                                    // Response metadata, e.g., {"tokens_used": "150"}
	/* 143-byte string literal not displayed */
	// contains filtered or unexported fields
}

ProviderInvokeResponse is returned from a provider method invocation.

func (*ProviderInvokeResponse) Descriptor deprecated

func (*ProviderInvokeResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProviderInvokeResponse.ProtoReflect.Descriptor instead.

func (*ProviderInvokeResponse) GetError

func (x *ProviderInvokeResponse) GetError() *ProviderError

func (*ProviderInvokeResponse) GetMetadata

func (x *ProviderInvokeResponse) GetMetadata() map[string]string

func (*ProviderInvokeResponse) GetPayload

func (x *ProviderInvokeResponse) GetPayload() []byte

func (*ProviderInvokeResponse) ProtoMessage

func (*ProviderInvokeResponse) ProtoMessage()

func (*ProviderInvokeResponse) ProtoReflect

func (x *ProviderInvokeResponse) ProtoReflect() protoreflect.Message

func (*ProviderInvokeResponse) Reset

func (x *ProviderInvokeResponse) Reset()

func (*ProviderInvokeResponse) String

func (x *ProviderInvokeResponse) String() string

type ProviderListResponse

type ProviderListResponse struct {
	Providers []*PluginProviderInfo `protobuf:"bytes,1,rep,name=providers,proto3" json:"providers,omitempty"`
	// contains filtered or unexported fields
}

func (*ProviderListResponse) Descriptor deprecated

func (*ProviderListResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProviderListResponse.ProtoReflect.Descriptor instead.

func (*ProviderListResponse) GetProviders

func (x *ProviderListResponse) GetProviders() []*PluginProviderInfo

func (*ProviderListResponse) ProtoMessage

func (*ProviderListResponse) ProtoMessage()

func (*ProviderListResponse) ProtoReflect

func (x *ProviderListResponse) ProtoReflect() protoreflect.Message

func (*ProviderListResponse) Reset

func (x *ProviderListResponse) Reset()

func (*ProviderListResponse) String

func (x *ProviderListResponse) String() string

type ProviderMethodInfo

type ProviderMethodInfo struct {
	Name         string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // e.g., "GenerateEmbedding"
	Description  string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	IsStreaming  bool   `protobuf:"varint,3,opt,name=is_streaming,json=isStreaming,proto3" json:"is_streaming,omitempty"`   // Server-streaming method
	RequestType  string `protobuf:"bytes,4,opt,name=request_type,json=requestType,proto3" json:"request_type,omitempty"`    // e.g., "viewra.plugin.v1.ProviderEmbeddingRequest"
	ResponseType string `protobuf:"bytes,5,opt,name=response_type,json=responseType,proto3" json:"response_type,omitempty"` // e.g., "viewra.plugin.v1.ProviderEmbeddingResponse"
	// contains filtered or unexported fields
}

ProviderMethodInfo describes a single method on a provider.

func (*ProviderMethodInfo) Descriptor deprecated

func (*ProviderMethodInfo) Descriptor() ([]byte, []int)

Deprecated: Use ProviderMethodInfo.ProtoReflect.Descriptor instead.

func (*ProviderMethodInfo) GetDescription

func (x *ProviderMethodInfo) GetDescription() string

func (*ProviderMethodInfo) GetIsStreaming

func (x *ProviderMethodInfo) GetIsStreaming() bool

func (*ProviderMethodInfo) GetName

func (x *ProviderMethodInfo) GetName() string

func (*ProviderMethodInfo) GetRequestType

func (x *ProviderMethodInfo) GetRequestType() string

func (*ProviderMethodInfo) GetResponseType

func (x *ProviderMethodInfo) GetResponseType() string

func (*ProviderMethodInfo) ProtoMessage

func (*ProviderMethodInfo) ProtoMessage()

func (*ProviderMethodInfo) ProtoReflect

func (x *ProviderMethodInfo) ProtoReflect() protoreflect.Message

func (*ProviderMethodInfo) Reset

func (x *ProviderMethodInfo) Reset()

func (*ProviderMethodInfo) String

func (x *ProviderMethodInfo) String() string

type ProviderMethodsResponse

type ProviderMethodsResponse struct {
	ApiVersion        string                `protobuf:"bytes,1,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"`
	SupportedVersions []string              `protobuf:"bytes,2,rep,name=supported_versions,json=supportedVersions,proto3" json:"supported_versions,omitempty"`
	Methods           []*ProviderMethodInfo `protobuf:"bytes,3,rep,name=methods,proto3" json:"methods,omitempty"`
	// contains filtered or unexported fields
}

ProviderMethodsResponse describes available methods on a provider.

func (*ProviderMethodsResponse) Descriptor deprecated

func (*ProviderMethodsResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProviderMethodsResponse.ProtoReflect.Descriptor instead.

func (*ProviderMethodsResponse) GetApiVersion

func (x *ProviderMethodsResponse) GetApiVersion() string

func (*ProviderMethodsResponse) GetMethods

func (x *ProviderMethodsResponse) GetMethods() []*ProviderMethodInfo

func (*ProviderMethodsResponse) GetSupportedVersions

func (x *ProviderMethodsResponse) GetSupportedVersions() []string

func (*ProviderMethodsResponse) ProtoMessage

func (*ProviderMethodsResponse) ProtoMessage()

func (*ProviderMethodsResponse) ProtoReflect

func (x *ProviderMethodsResponse) ProtoReflect() protoreflect.Message

func (*ProviderMethodsResponse) Reset

func (x *ProviderMethodsResponse) Reset()

func (*ProviderMethodsResponse) String

func (x *ProviderMethodsResponse) String() string

type ProviderModel

type ProviderModel struct {
	Id                  string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name                string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Description         string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	IsChat              bool   `protobuf:"varint,4,opt,name=is_chat,json=isChat,proto3" json:"is_chat,omitempty"`
	IsEmbedding         bool   `protobuf:"varint,5,opt,name=is_embedding,json=isEmbedding,proto3" json:"is_embedding,omitempty"`
	ContextLength       int32  `protobuf:"varint,6,opt,name=context_length,json=contextLength,proto3" json:"context_length,omitempty"`
	EmbeddingDimensions int32  `protobuf:"varint,7,opt,name=embedding_dimensions,json=embeddingDimensions,proto3" json:"embedding_dimensions,omitempty"`
	Size                string `protobuf:"bytes,8,opt,name=size,proto3" json:"size,omitempty"`
	Recommended         bool   `protobuf:"varint,9,opt,name=recommended,proto3" json:"recommended,omitempty"`
	// contains filtered or unexported fields
}

ProviderModel describes a model available from a provider.

func (*ProviderModel) Descriptor deprecated

func (*ProviderModel) Descriptor() ([]byte, []int)

Deprecated: Use ProviderModel.ProtoReflect.Descriptor instead.

func (*ProviderModel) GetContextLength

func (x *ProviderModel) GetContextLength() int32

func (*ProviderModel) GetDescription

func (x *ProviderModel) GetDescription() string

func (*ProviderModel) GetEmbeddingDimensions

func (x *ProviderModel) GetEmbeddingDimensions() int32

func (*ProviderModel) GetId

func (x *ProviderModel) GetId() string

func (*ProviderModel) GetIsChat

func (x *ProviderModel) GetIsChat() bool

func (*ProviderModel) GetIsEmbedding

func (x *ProviderModel) GetIsEmbedding() bool

func (*ProviderModel) GetName

func (x *ProviderModel) GetName() string

func (*ProviderModel) GetRecommended

func (x *ProviderModel) GetRecommended() bool

func (*ProviderModel) GetSize

func (x *ProviderModel) GetSize() string

func (*ProviderModel) ProtoMessage

func (*ProviderModel) ProtoMessage()

func (*ProviderModel) ProtoReflect

func (x *ProviderModel) ProtoReflect() protoreflect.Message

func (*ProviderModel) Reset

func (x *ProviderModel) Reset()

func (*ProviderModel) String

func (x *ProviderModel) String() string

type ProviderModelList

type ProviderModelList struct {
	Models []*ProviderModel `protobuf:"bytes,1,rep,name=models,proto3" json:"models,omitempty"`
	// contains filtered or unexported fields
}

ProviderModelList contains models available from a provider.

func (*ProviderModelList) Descriptor deprecated

func (*ProviderModelList) Descriptor() ([]byte, []int)

Deprecated: Use ProviderModelList.ProtoReflect.Descriptor instead.

func (*ProviderModelList) GetModels

func (x *ProviderModelList) GetModels() []*ProviderModel

func (*ProviderModelList) ProtoMessage

func (*ProviderModelList) ProtoMessage()

func (*ProviderModelList) ProtoReflect

func (x *ProviderModelList) ProtoReflect() protoreflect.Message

func (*ProviderModelList) Reset

func (x *ProviderModelList) Reset()

func (*ProviderModelList) String

func (x *ProviderModelList) String() string

type SQLExecResult

type SQLExecResult struct {
	RowsAffected int64 `protobuf:"varint,1,opt,name=rows_affected,json=rowsAffected,proto3" json:"rows_affected,omitempty"`
	LastInsertId int64 `protobuf:"varint,2,opt,name=last_insert_id,json=lastInsertId,proto3" json:"last_insert_id,omitempty"`
	// contains filtered or unexported fields
}

func (*SQLExecResult) Descriptor deprecated

func (*SQLExecResult) Descriptor() ([]byte, []int)

Deprecated: Use SQLExecResult.ProtoReflect.Descriptor instead.

func (*SQLExecResult) GetLastInsertId

func (x *SQLExecResult) GetLastInsertId() int64

func (*SQLExecResult) GetRowsAffected

func (x *SQLExecResult) GetRowsAffected() int64

func (*SQLExecResult) ProtoMessage

func (*SQLExecResult) ProtoMessage()

func (*SQLExecResult) ProtoReflect

func (x *SQLExecResult) ProtoReflect() protoreflect.Message

func (*SQLExecResult) Reset

func (x *SQLExecResult) Reset()

func (*SQLExecResult) String

func (x *SQLExecResult) String() string

type SQLQueryResult

type SQLQueryResult struct {
	Columns []string  `protobuf:"bytes,1,rep,name=columns,proto3" json:"columns,omitempty"`
	Rows    []*SQLRow `protobuf:"bytes,2,rep,name=rows,proto3" json:"rows,omitempty"`
	// contains filtered or unexported fields
}

func (*SQLQueryResult) Descriptor deprecated

func (*SQLQueryResult) Descriptor() ([]byte, []int)

Deprecated: Use SQLQueryResult.ProtoReflect.Descriptor instead.

func (*SQLQueryResult) GetColumns

func (x *SQLQueryResult) GetColumns() []string

func (*SQLQueryResult) GetRows

func (x *SQLQueryResult) GetRows() []*SQLRow

func (*SQLQueryResult) ProtoMessage

func (*SQLQueryResult) ProtoMessage()

func (*SQLQueryResult) ProtoReflect

func (x *SQLQueryResult) ProtoReflect() protoreflect.Message

func (*SQLQueryResult) Reset

func (x *SQLQueryResult) Reset()

func (*SQLQueryResult) String

func (x *SQLQueryResult) String() string

type SQLRequest

type SQLRequest struct {
	Sql  string      `protobuf:"bytes,1,opt,name=sql,proto3" json:"sql,omitempty"`
	Args []*SQLValue `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"`
	// contains filtered or unexported fields
}

func (*SQLRequest) Descriptor deprecated

func (*SQLRequest) Descriptor() ([]byte, []int)

Deprecated: Use SQLRequest.ProtoReflect.Descriptor instead.

func (*SQLRequest) GetArgs

func (x *SQLRequest) GetArgs() []*SQLValue

func (*SQLRequest) GetSql

func (x *SQLRequest) GetSql() string

func (*SQLRequest) ProtoMessage

func (*SQLRequest) ProtoMessage()

func (*SQLRequest) ProtoReflect

func (x *SQLRequest) ProtoReflect() protoreflect.Message

func (*SQLRequest) Reset

func (x *SQLRequest) Reset()

func (*SQLRequest) String

func (x *SQLRequest) String() string

type SQLRow

type SQLRow struct {
	Values []*SQLValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
	// contains filtered or unexported fields
}

func (*SQLRow) Descriptor deprecated

func (*SQLRow) Descriptor() ([]byte, []int)

Deprecated: Use SQLRow.ProtoReflect.Descriptor instead.

func (*SQLRow) GetValues

func (x *SQLRow) GetValues() []*SQLValue

func (*SQLRow) ProtoMessage

func (*SQLRow) ProtoMessage()

func (*SQLRow) ProtoReflect

func (x *SQLRow) ProtoReflect() protoreflect.Message

func (*SQLRow) Reset

func (x *SQLRow) Reset()

func (*SQLRow) String

func (x *SQLRow) String() string

type SQLValue

type SQLValue struct {

	// Types that are valid to be assigned to Value:
	//
	//	*SQLValue_StringValue
	//	*SQLValue_IntValue
	//	*SQLValue_DoubleValue
	//	*SQLValue_BytesValue
	//	*SQLValue_IsNull
	Value isSQLValue_Value `protobuf_oneof:"value"`
	// contains filtered or unexported fields
}

func (*SQLValue) Descriptor deprecated

func (*SQLValue) Descriptor() ([]byte, []int)

Deprecated: Use SQLValue.ProtoReflect.Descriptor instead.

func (*SQLValue) GetBytesValue

func (x *SQLValue) GetBytesValue() []byte

func (*SQLValue) GetDoubleValue

func (x *SQLValue) GetDoubleValue() float64

func (*SQLValue) GetIntValue

func (x *SQLValue) GetIntValue() int64

func (*SQLValue) GetIsNull

func (x *SQLValue) GetIsNull() bool

func (*SQLValue) GetStringValue

func (x *SQLValue) GetStringValue() string

func (*SQLValue) GetValue

func (x *SQLValue) GetValue() isSQLValue_Value

func (*SQLValue) ProtoMessage

func (*SQLValue) ProtoMessage()

func (*SQLValue) ProtoReflect

func (x *SQLValue) ProtoReflect() protoreflect.Message

func (*SQLValue) Reset

func (x *SQLValue) Reset()

func (*SQLValue) String

func (x *SQLValue) String() string

type SQLValue_BytesValue

type SQLValue_BytesValue struct {
	BytesValue []byte `protobuf:"bytes,4,opt,name=bytes_value,json=bytesValue,proto3,oneof"`
}

type SQLValue_DoubleValue

type SQLValue_DoubleValue struct {
	DoubleValue float64 `protobuf:"fixed64,3,opt,name=double_value,json=doubleValue,proto3,oneof"`
}

type SQLValue_IntValue

type SQLValue_IntValue struct {
	IntValue int64 `protobuf:"varint,2,opt,name=int_value,json=intValue,proto3,oneof"`
}

type SQLValue_IsNull

type SQLValue_IsNull struct {
	IsNull bool `protobuf:"varint,5,opt,name=is_null,json=isNull,proto3,oneof"`
}

type SQLValue_StringValue

type SQLValue_StringValue struct {
	StringValue string `protobuf:"bytes,1,opt,name=string_value,json=stringValue,proto3,oneof"`
}

type SchemaVersion

type SchemaVersion struct {
	Version      int32  `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
	MigrationSql string `protobuf:"bytes,2,opt,name=migration_sql,json=migrationSql,proto3" json:"migration_sql,omitempty"`
	// contains filtered or unexported fields
}

func (*SchemaVersion) Descriptor deprecated

func (*SchemaVersion) Descriptor() ([]byte, []int)

Deprecated: Use SchemaVersion.ProtoReflect.Descriptor instead.

func (*SchemaVersion) GetMigrationSql

func (x *SchemaVersion) GetMigrationSql() string

func (*SchemaVersion) GetVersion

func (x *SchemaVersion) GetVersion() int32

func (*SchemaVersion) ProtoMessage

func (*SchemaVersion) ProtoMessage()

func (*SchemaVersion) ProtoReflect

func (x *SchemaVersion) ProtoReflect() protoreflect.Message

func (*SchemaVersion) Reset

func (x *SchemaVersion) Reset()

func (*SchemaVersion) String

func (x *SchemaVersion) String() string

type SearchProviderInfo

type SearchProviderInfo struct {

	// ID is a unique identifier for this provider.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Name is the human-readable name.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Description describes what this provider does.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Icon is the icon name to display.
	Icon string `protobuf:"bytes,4,opt,name=icon,proto3" json:"icon,omitempty"`
	// Priority determines which provider is used by default.
	Priority int32 `protobuf:"varint,5,opt,name=priority,proto3" json:"priority,omitempty"`
	// Capabilities lists what this provider supports.
	Capabilities []string `protobuf:"bytes,6,rep,name=capabilities,proto3" json:"capabilities,omitempty"`
	// contains filtered or unexported fields
}

SearchProviderInfo contains metadata about a search provider.

func (*SearchProviderInfo) Descriptor deprecated

func (*SearchProviderInfo) Descriptor() ([]byte, []int)

Deprecated: Use SearchProviderInfo.ProtoReflect.Descriptor instead.

func (*SearchProviderInfo) GetCapabilities

func (x *SearchProviderInfo) GetCapabilities() []string

func (*SearchProviderInfo) GetDescription

func (x *SearchProviderInfo) GetDescription() string

func (*SearchProviderInfo) GetIcon

func (x *SearchProviderInfo) GetIcon() string

func (*SearchProviderInfo) GetId

func (x *SearchProviderInfo) GetId() string

func (*SearchProviderInfo) GetName

func (x *SearchProviderInfo) GetName() string

func (*SearchProviderInfo) GetPriority

func (x *SearchProviderInfo) GetPriority() int32

func (*SearchProviderInfo) ProtoMessage

func (*SearchProviderInfo) ProtoMessage()

func (*SearchProviderInfo) ProtoReflect

func (x *SearchProviderInfo) ProtoReflect() protoreflect.Message

func (*SearchProviderInfo) Reset

func (x *SearchProviderInfo) Reset()

func (*SearchProviderInfo) String

func (x *SearchProviderInfo) String() string

type SearchProviderRequest

type SearchProviderRequest struct {

	// Query is the search query text.
	Query string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
	// EntityTypes filters results by media types. Empty means all types.
	EntityTypes []string `protobuf:"bytes,2,rep,name=entity_types,json=entityTypes,proto3" json:"entity_types,omitempty"`
	// Limit is the maximum number of results to return.
	Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
	// UserID is the requesting user (for context enrichment).
	UserId string `protobuf:"bytes,4,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// contains filtered or unexported fields
}

SearchProviderRequest contains parameters for a search request.

func (*SearchProviderRequest) Descriptor deprecated

func (*SearchProviderRequest) Descriptor() ([]byte, []int)

Deprecated: Use SearchProviderRequest.ProtoReflect.Descriptor instead.

func (*SearchProviderRequest) GetEntityTypes

func (x *SearchProviderRequest) GetEntityTypes() []string

func (*SearchProviderRequest) GetLimit

func (x *SearchProviderRequest) GetLimit() int32

func (*SearchProviderRequest) GetQuery

func (x *SearchProviderRequest) GetQuery() string

func (*SearchProviderRequest) GetUserId

func (x *SearchProviderRequest) GetUserId() string

func (*SearchProviderRequest) ProtoMessage

func (*SearchProviderRequest) ProtoMessage()

func (*SearchProviderRequest) ProtoReflect

func (x *SearchProviderRequest) ProtoReflect() protoreflect.Message

func (*SearchProviderRequest) Reset

func (x *SearchProviderRequest) Reset()

func (*SearchProviderRequest) String

func (x *SearchProviderRequest) String() string

type SearchProviderResponse

type SearchProviderResponse struct {

	// Results is the list of search results.
	Results []*SearchResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"`
	// Total is the total number of results.
	Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
	// Provider is the ID of the provider that served this result.
	Provider string `protobuf:"bytes,3,opt,name=provider,proto3" json:"provider,omitempty"`
	// Fallback indicates if this is a fallback result.
	Fallback bool `protobuf:"varint,4,opt,name=fallback,proto3" json:"fallback,omitempty"`
	// contains filtered or unexported fields
}

SearchProviderResponse contains search results.

func (*SearchProviderResponse) Descriptor deprecated

func (*SearchProviderResponse) Descriptor() ([]byte, []int)

Deprecated: Use SearchProviderResponse.ProtoReflect.Descriptor instead.

func (*SearchProviderResponse) GetFallback

func (x *SearchProviderResponse) GetFallback() bool

func (*SearchProviderResponse) GetProvider

func (x *SearchProviderResponse) GetProvider() string

func (*SearchProviderResponse) GetResults

func (x *SearchProviderResponse) GetResults() []*SearchResult

func (*SearchProviderResponse) GetTotal

func (x *SearchProviderResponse) GetTotal() int32

func (*SearchProviderResponse) ProtoMessage

func (*SearchProviderResponse) ProtoMessage()

func (*SearchProviderResponse) ProtoReflect

func (x *SearchProviderResponse) ProtoReflect() protoreflect.Message

func (*SearchProviderResponse) Reset

func (x *SearchProviderResponse) Reset()

func (*SearchProviderResponse) String

func (x *SearchProviderResponse) String() string

type SearchProviderServiceClient

type SearchProviderServiceClient interface {
	// Search performs a search with the given query.
	Search(ctx context.Context, in *SearchProviderRequest, opts ...grpc.CallOption) (*SearchProviderResponse, error)
	// GetSuggestions returns contextual suggestions for the search hero.
	GetSuggestions(ctx context.Context, in *SuggestionRequest, opts ...grpc.CallOption) (*SuggestionResponse, error)
	// GetProviderInfo returns metadata about this search provider.
	GetProviderInfo(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*SearchProviderInfo, error)
}

SearchProviderServiceClient is the client API for SearchProviderService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

SearchProviderService is implemented by plugins that provide search functionality. Multiple providers can be registered; the highest priority enabled one is the default.

type SearchProviderServiceServer

type SearchProviderServiceServer interface {
	// Search performs a search with the given query.
	Search(context.Context, *SearchProviderRequest) (*SearchProviderResponse, error)
	// GetSuggestions returns contextual suggestions for the search hero.
	GetSuggestions(context.Context, *SuggestionRequest) (*SuggestionResponse, error)
	// GetProviderInfo returns metadata about this search provider.
	GetProviderInfo(context.Context, *Empty) (*SearchProviderInfo, error)
	// contains filtered or unexported methods
}

SearchProviderServiceServer is the server API for SearchProviderService service. All implementations must embed UnimplementedSearchProviderServiceServer for forward compatibility.

SearchProviderService is implemented by plugins that provide search functionality. Multiple providers can be registered; the highest priority enabled one is the default.

type SearchQuery

type SearchQuery struct {
	Title     string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
	Year      int32  `protobuf:"varint,2,opt,name=year,proto3" json:"year,omitempty"`
	MediaType string `protobuf:"bytes,3,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"` // "movie", "tv", "music"
	Limit     int32  `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"`
	// contains filtered or unexported fields
}

func (*SearchQuery) Descriptor deprecated

func (*SearchQuery) Descriptor() ([]byte, []int)

Deprecated: Use SearchQuery.ProtoReflect.Descriptor instead.

func (*SearchQuery) GetLimit

func (x *SearchQuery) GetLimit() int32

func (*SearchQuery) GetMediaType

func (x *SearchQuery) GetMediaType() string

func (*SearchQuery) GetTitle

func (x *SearchQuery) GetTitle() string

func (*SearchQuery) GetYear

func (x *SearchQuery) GetYear() int32

func (*SearchQuery) ProtoMessage

func (*SearchQuery) ProtoMessage()

func (*SearchQuery) ProtoReflect

func (x *SearchQuery) ProtoReflect() protoreflect.Message

func (*SearchQuery) Reset

func (x *SearchQuery) Reset()

func (*SearchQuery) String

func (x *SearchQuery) String() string

type SearchResult

type SearchResult struct {

	// EntityType is the media type: "movie", "tv_show", etc.
	EntityType string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
	// EntityID is the database ID of the media item.
	EntityId int64 `protobuf:"varint,2,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
	// Title is the display title.
	Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"`
	// Year is the release/air year.
	Year int32 `protobuf:"varint,4,opt,name=year,proto3" json:"year,omitempty"`
	// Poster is the URL to the poster image.
	Poster string `protobuf:"bytes,5,opt,name=poster,proto3" json:"poster,omitempty"`
	// Score is the relevance score (0.0-1.0).
	Score float32 `protobuf:"fixed32,6,opt,name=score,proto3" json:"score,omitempty"`
	// Reason is an optional explanation for why this result matched.
	Reason string `protobuf:"bytes,7,opt,name=reason,proto3" json:"reason,omitempty"`
	// contains filtered or unexported fields
}

SearchResult represents a single search result.

func (*SearchResult) Descriptor deprecated

func (*SearchResult) Descriptor() ([]byte, []int)

Deprecated: Use SearchResult.ProtoReflect.Descriptor instead.

func (*SearchResult) GetEntityId

func (x *SearchResult) GetEntityId() int64

func (*SearchResult) GetEntityType

func (x *SearchResult) GetEntityType() string

func (*SearchResult) GetPoster

func (x *SearchResult) GetPoster() string

func (*SearchResult) GetReason

func (x *SearchResult) GetReason() string

func (*SearchResult) GetScore

func (x *SearchResult) GetScore() float32

func (*SearchResult) GetTitle

func (x *SearchResult) GetTitle() string

func (*SearchResult) GetYear

func (x *SearchResult) GetYear() int32

func (*SearchResult) ProtoMessage

func (*SearchResult) ProtoMessage()

func (*SearchResult) ProtoReflect

func (x *SearchResult) ProtoReflect() protoreflect.Message

func (*SearchResult) Reset

func (x *SearchResult) Reset()

func (*SearchResult) String

func (x *SearchResult) String() string

type SemanticSearchRequest

type SemanticSearchRequest struct {

	// Natural language query
	Query string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
	// Filter by entity types (empty = all types)
	// Values: "movie", "tv_show", "tv_episode", "music_artist", "music_album", "music_track"
	EntityTypes []string `protobuf:"bytes,2,rep,name=entity_types,json=entityTypes,proto3" json:"entity_types,omitempty"`
	// Maximum number of results (default: 20, max: 100)
	Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
	// User ID for context enrichment (optional)
	// When provided, enables location-aware recommendations if the user has opted in
	UserId string `protobuf:"bytes,4,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// contains filtered or unexported fields
}

func (*SemanticSearchRequest) Descriptor deprecated

func (*SemanticSearchRequest) Descriptor() ([]byte, []int)

Deprecated: Use SemanticSearchRequest.ProtoReflect.Descriptor instead.

func (*SemanticSearchRequest) GetEntityTypes

func (x *SemanticSearchRequest) GetEntityTypes() []string

func (*SemanticSearchRequest) GetLimit

func (x *SemanticSearchRequest) GetLimit() int32

func (*SemanticSearchRequest) GetQuery

func (x *SemanticSearchRequest) GetQuery() string

func (*SemanticSearchRequest) GetUserId

func (x *SemanticSearchRequest) GetUserId() string

func (*SemanticSearchRequest) ProtoMessage

func (*SemanticSearchRequest) ProtoMessage()

func (*SemanticSearchRequest) ProtoReflect

func (x *SemanticSearchRequest) ProtoReflect() protoreflect.Message

func (*SemanticSearchRequest) Reset

func (x *SemanticSearchRequest) Reset()

func (*SemanticSearchRequest) String

func (x *SemanticSearchRequest) String() string

type SemanticSearchResponse

type SemanticSearchResponse struct {
	Results []*SemanticSearchResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"`
	Total   int32                   `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"` // Total matching results (may be more than returned)
	// contains filtered or unexported fields
}

func (*SemanticSearchResponse) Descriptor deprecated

func (*SemanticSearchResponse) Descriptor() ([]byte, []int)

Deprecated: Use SemanticSearchResponse.ProtoReflect.Descriptor instead.

func (*SemanticSearchResponse) GetResults

func (x *SemanticSearchResponse) GetResults() []*SemanticSearchResult

func (*SemanticSearchResponse) GetTotal

func (x *SemanticSearchResponse) GetTotal() int32

func (*SemanticSearchResponse) ProtoMessage

func (*SemanticSearchResponse) ProtoMessage()

func (*SemanticSearchResponse) ProtoReflect

func (x *SemanticSearchResponse) ProtoReflect() protoreflect.Message

func (*SemanticSearchResponse) Reset

func (x *SemanticSearchResponse) Reset()

func (*SemanticSearchResponse) String

func (x *SemanticSearchResponse) String() string

type SemanticSearchResult

type SemanticSearchResult struct {
	EntityType string  `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
	EntityId   int64   `protobuf:"varint,2,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
	Similarity float32 `protobuf:"fixed32,3,opt,name=similarity,proto3" json:"similarity,omitempty"` // 0.0 - 1.0
	Text       string  `protobuf:"bytes,4,opt,name=text,proto3" json:"text,omitempty"`               // The indexed text snippet
	// contains filtered or unexported fields
}

func (*SemanticSearchResult) Descriptor deprecated

func (*SemanticSearchResult) Descriptor() ([]byte, []int)

Deprecated: Use SemanticSearchResult.ProtoReflect.Descriptor instead.

func (*SemanticSearchResult) GetEntityId

func (x *SemanticSearchResult) GetEntityId() int64

func (*SemanticSearchResult) GetEntityType

func (x *SemanticSearchResult) GetEntityType() string

func (*SemanticSearchResult) GetSimilarity

func (x *SemanticSearchResult) GetSimilarity() float32

func (*SemanticSearchResult) GetText

func (x *SemanticSearchResult) GetText() string

func (*SemanticSearchResult) ProtoMessage

func (*SemanticSearchResult) ProtoMessage()

func (*SemanticSearchResult) ProtoReflect

func (x *SemanticSearchResult) ProtoReflect() protoreflect.Message

func (*SemanticSearchResult) Reset

func (x *SemanticSearchResult) Reset()

func (*SemanticSearchResult) String

func (x *SemanticSearchResult) String() string

type Settings

type Settings struct {

	// JSON-encoded settings
	Json []byte `protobuf:"bytes,1,opt,name=json,proto3" json:"json,omitempty"`
	// contains filtered or unexported fields
}

func (*Settings) Descriptor deprecated

func (*Settings) Descriptor() ([]byte, []int)

Deprecated: Use Settings.ProtoReflect.Descriptor instead.

func (*Settings) GetJson

func (x *Settings) GetJson() []byte

func (*Settings) ProtoMessage

func (*Settings) ProtoMessage()

func (*Settings) ProtoReflect

func (x *Settings) ProtoReflect() protoreflect.Message

func (*Settings) Reset

func (x *Settings) Reset()

func (*Settings) String

func (x *Settings) String() string

type SettingsSchema

type SettingsSchema struct {

	// JSON Schema for plugin settings
	JsonSchema []byte `protobuf:"bytes,1,opt,name=json_schema,json=jsonSchema,proto3" json:"json_schema,omitempty"`
	// contains filtered or unexported fields
}

func (*SettingsSchema) Descriptor deprecated

func (*SettingsSchema) Descriptor() ([]byte, []int)

Deprecated: Use SettingsSchema.ProtoReflect.Descriptor instead.

func (*SettingsSchema) GetJsonSchema

func (x *SettingsSchema) GetJsonSchema() []byte

func (*SettingsSchema) ProtoMessage

func (*SettingsSchema) ProtoMessage()

func (*SettingsSchema) ProtoReflect

func (x *SettingsSchema) ProtoReflect() protoreflect.Message

func (*SettingsSchema) Reset

func (x *SettingsSchema) Reset()

func (*SettingsSchema) String

func (x *SettingsSchema) String() string

type SubtitleTrack

type SubtitleTrack struct {
	Language   string `protobuf:"bytes,1,opt,name=language,proto3" json:"language,omitempty"` // ISO 639-1/2 code
	Codec      string `protobuf:"bytes,2,opt,name=codec,proto3" json:"codec,omitempty"`       // "srt", "ass", "pgs", "vobsub"
	IsForced   bool   `protobuf:"varint,3,opt,name=is_forced,json=isForced,proto3" json:"is_forced,omitempty"`
	IsSdh      bool   `protobuf:"varint,4,opt,name=is_sdh,json=isSdh,proto3" json:"is_sdh,omitempty"`                // Subtitles for Deaf/Hard of Hearing
	IsExternal bool   `protobuf:"varint,5,opt,name=is_external,json=isExternal,proto3" json:"is_external,omitempty"` // External file vs embedded
	// contains filtered or unexported fields
}

SubtitleTrack represents a subtitle stream in a media file.

func (*SubtitleTrack) Descriptor deprecated

func (*SubtitleTrack) Descriptor() ([]byte, []int)

Deprecated: Use SubtitleTrack.ProtoReflect.Descriptor instead.

func (*SubtitleTrack) GetCodec

func (x *SubtitleTrack) GetCodec() string

func (*SubtitleTrack) GetIsExternal

func (x *SubtitleTrack) GetIsExternal() bool

func (*SubtitleTrack) GetIsForced

func (x *SubtitleTrack) GetIsForced() bool

func (*SubtitleTrack) GetIsSdh

func (x *SubtitleTrack) GetIsSdh() bool

func (*SubtitleTrack) GetLanguage

func (x *SubtitleTrack) GetLanguage() string

func (*SubtitleTrack) ProtoMessage

func (*SubtitleTrack) ProtoMessage()

func (*SubtitleTrack) ProtoReflect

func (x *SubtitleTrack) ProtoReflect() protoreflect.Message

func (*SubtitleTrack) Reset

func (x *SubtitleTrack) Reset()

func (*SubtitleTrack) String

func (x *SubtitleTrack) String() string

type Suggestion

type Suggestion struct {

	// ID is a unique identifier for this suggestion.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Label is the display text.
	Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	// Icon is the icon name to display.
	Icon string `protobuf:"bytes,3,opt,name=icon,proto3" json:"icon,omitempty"`
	// Description is an optional subtitle.
	Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
	// Style affects rendering: "primary", "secondary", "accent".
	Style string `protobuf:"bytes,5,opt,name=style,proto3" json:"style,omitempty"`
	// Action defines what happens when the suggestion is clicked.
	Action *SuggestionAction `protobuf:"bytes,6,opt,name=action,proto3" json:"action,omitempty"`
	// contains filtered or unexported fields
}

Suggestion is a rich search suggestion.

func (*Suggestion) Descriptor deprecated

func (*Suggestion) Descriptor() ([]byte, []int)

Deprecated: Use Suggestion.ProtoReflect.Descriptor instead.

func (*Suggestion) GetAction

func (x *Suggestion) GetAction() *SuggestionAction

func (*Suggestion) GetDescription

func (x *Suggestion) GetDescription() string

func (*Suggestion) GetIcon

func (x *Suggestion) GetIcon() string

func (*Suggestion) GetId

func (x *Suggestion) GetId() string

func (*Suggestion) GetLabel

func (x *Suggestion) GetLabel() string

func (*Suggestion) GetStyle

func (x *Suggestion) GetStyle() string

func (*Suggestion) ProtoMessage

func (*Suggestion) ProtoMessage()

func (*Suggestion) ProtoReflect

func (x *Suggestion) ProtoReflect() protoreflect.Message

func (*Suggestion) Reset

func (x *Suggestion) Reset()

func (*Suggestion) String

func (x *Suggestion) String() string

type SuggestionAction

type SuggestionAction struct {

	// Type is the action type: "search", "filter", "navigate".
	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	// Query is the search query for type="search".
	Query string `protobuf:"bytes,2,opt,name=query,proto3" json:"query,omitempty"`
	// Filter is filter parameters for type="filter".
	Filter map[string]string `` /* 139-byte string literal not displayed */
	// URL is the navigation URL for type="navigate".
	Url string `protobuf:"bytes,4,opt,name=url,proto3" json:"url,omitempty"`
	// contains filtered or unexported fields
}

SuggestionAction defines the action for a search suggestion.

func (*SuggestionAction) Descriptor deprecated

func (*SuggestionAction) Descriptor() ([]byte, []int)

Deprecated: Use SuggestionAction.ProtoReflect.Descriptor instead.

func (*SuggestionAction) GetFilter

func (x *SuggestionAction) GetFilter() map[string]string

func (*SuggestionAction) GetQuery

func (x *SuggestionAction) GetQuery() string

func (*SuggestionAction) GetType

func (x *SuggestionAction) GetType() string

func (*SuggestionAction) GetUrl

func (x *SuggestionAction) GetUrl() string

func (*SuggestionAction) ProtoMessage

func (*SuggestionAction) ProtoMessage()

func (*SuggestionAction) ProtoReflect

func (x *SuggestionAction) ProtoReflect() protoreflect.Message

func (*SuggestionAction) Reset

func (x *SuggestionAction) Reset()

func (*SuggestionAction) String

func (x *SuggestionAction) String() string

type SuggestionRequest

type SuggestionRequest struct {

	// UserID is the requesting user (for personalization).
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// Context describes where suggestions will be shown.
	Context string `protobuf:"bytes,2,opt,name=context,proto3" json:"context,omitempty"`
	// Limit is the maximum number of suggestions to return.
	Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
	// contains filtered or unexported fields
}

SuggestionRequest contains parameters for getting search suggestions.

func (*SuggestionRequest) Descriptor deprecated

func (*SuggestionRequest) Descriptor() ([]byte, []int)

Deprecated: Use SuggestionRequest.ProtoReflect.Descriptor instead.

func (*SuggestionRequest) GetContext

func (x *SuggestionRequest) GetContext() string

func (*SuggestionRequest) GetLimit

func (x *SuggestionRequest) GetLimit() int32

func (*SuggestionRequest) GetUserId

func (x *SuggestionRequest) GetUserId() string

func (*SuggestionRequest) ProtoMessage

func (*SuggestionRequest) ProtoMessage()

func (*SuggestionRequest) ProtoReflect

func (x *SuggestionRequest) ProtoReflect() protoreflect.Message

func (*SuggestionRequest) Reset

func (x *SuggestionRequest) Reset()

func (*SuggestionRequest) String

func (x *SuggestionRequest) String() string

type SuggestionResponse

type SuggestionResponse struct {

	// Suggestions is the list of suggestions to display.
	Suggestions []*Suggestion `protobuf:"bytes,1,rep,name=suggestions,proto3" json:"suggestions,omitempty"`
	// contains filtered or unexported fields
}

SuggestionResponse contains search suggestions.

func (*SuggestionResponse) Descriptor deprecated

func (*SuggestionResponse) Descriptor() ([]byte, []int)

Deprecated: Use SuggestionResponse.ProtoReflect.Descriptor instead.

func (*SuggestionResponse) GetSuggestions

func (x *SuggestionResponse) GetSuggestions() []*Suggestion

func (*SuggestionResponse) ProtoMessage

func (*SuggestionResponse) ProtoMessage()

func (*SuggestionResponse) ProtoReflect

func (x *SuggestionResponse) ProtoReflect() protoreflect.Message

func (*SuggestionResponse) Reset

func (x *SuggestionResponse) Reset()

func (*SuggestionResponse) String

func (x *SuggestionResponse) String() string

type SystemInfo

type SystemInfo struct {

	// Memory
	RamBytes          uint64 `protobuf:"varint,1,opt,name=ram_bytes,json=ramBytes,proto3" json:"ram_bytes,omitempty"`
	RamAvailableBytes uint64 `protobuf:"varint,2,opt,name=ram_available_bytes,json=ramAvailableBytes,proto3" json:"ram_available_bytes,omitempty"`
	// GPU
	HasGpu    bool   `protobuf:"varint,3,opt,name=has_gpu,json=hasGpu,proto3" json:"has_gpu,omitempty"`
	VramBytes uint64 `protobuf:"varint,4,opt,name=vram_bytes,json=vramBytes,proto3" json:"vram_bytes,omitempty"`
	GpuName   string `protobuf:"bytes,5,opt,name=gpu_name,json=gpuName,proto3" json:"gpu_name,omitempty"`
	// CPU
	CpuCores int32  `protobuf:"varint,6,opt,name=cpu_cores,json=cpuCores,proto3" json:"cpu_cores,omitempty"`
	CpuModel string `protobuf:"bytes,7,opt,name=cpu_model,json=cpuModel,proto3" json:"cpu_model,omitempty"`
	// OS
	Os   string `protobuf:"bytes,8,opt,name=os,proto3" json:"os,omitempty"`     // "linux", "darwin", "windows"
	Arch string `protobuf:"bytes,9,opt,name=arch,proto3" json:"arch,omitempty"` // "amd64", "arm64"
	// contains filtered or unexported fields
}

SystemInfo contains host system resource information. Useful for plugins that need to make decisions based on available resources.

func (*SystemInfo) Descriptor deprecated

func (*SystemInfo) Descriptor() ([]byte, []int)

Deprecated: Use SystemInfo.ProtoReflect.Descriptor instead.

func (*SystemInfo) GetArch

func (x *SystemInfo) GetArch() string

func (*SystemInfo) GetCpuCores

func (x *SystemInfo) GetCpuCores() int32

func (*SystemInfo) GetCpuModel

func (x *SystemInfo) GetCpuModel() string

func (*SystemInfo) GetGpuName

func (x *SystemInfo) GetGpuName() string

func (*SystemInfo) GetHasGpu

func (x *SystemInfo) GetHasGpu() bool

func (*SystemInfo) GetOs

func (x *SystemInfo) GetOs() string

func (*SystemInfo) GetRamAvailableBytes

func (x *SystemInfo) GetRamAvailableBytes() uint64

func (*SystemInfo) GetRamBytes

func (x *SystemInfo) GetRamBytes() uint64

func (*SystemInfo) GetVramBytes

func (x *SystemInfo) GetVramBytes() uint64

func (*SystemInfo) ProtoMessage

func (*SystemInfo) ProtoMessage()

func (*SystemInfo) ProtoReflect

func (x *SystemInfo) ProtoReflect() protoreflect.Message

func (*SystemInfo) Reset

func (x *SystemInfo) Reset()

func (*SystemInfo) String

func (x *SystemInfo) String() string

type TVMetadata

type TVMetadata struct {
	ShowTitle     string `protobuf:"bytes,1,opt,name=show_title,json=showTitle,proto3" json:"show_title,omitempty"`
	SeasonNumber  int32  `protobuf:"varint,2,opt,name=season_number,json=seasonNumber,proto3" json:"season_number,omitempty"`
	EpisodeNumber int32  `protobuf:"varint,3,opt,name=episode_number,json=episodeNumber,proto3" json:"episode_number,omitempty"`
	EpisodeTitle  string `protobuf:"bytes,4,opt,name=episode_title,json=episodeTitle,proto3" json:"episode_title,omitempty"`
	// Show ID (for enriching episodes after show is matched)
	ShowId int64 `protobuf:"varint,5,opt,name=show_id,json=showId,proto3" json:"show_id,omitempty"`
	// contains filtered or unexported fields
}

func (*TVMetadata) Descriptor deprecated

func (*TVMetadata) Descriptor() ([]byte, []int)

Deprecated: Use TVMetadata.ProtoReflect.Descriptor instead.

func (*TVMetadata) GetEpisodeNumber

func (x *TVMetadata) GetEpisodeNumber() int32

func (*TVMetadata) GetEpisodeTitle

func (x *TVMetadata) GetEpisodeTitle() string

func (*TVMetadata) GetSeasonNumber

func (x *TVMetadata) GetSeasonNumber() int32

func (*TVMetadata) GetShowId

func (x *TVMetadata) GetShowId() int64

func (*TVMetadata) GetShowTitle

func (x *TVMetadata) GetShowTitle() string

func (*TVMetadata) ProtoMessage

func (*TVMetadata) ProtoMessage()

func (*TVMetadata) ProtoReflect

func (x *TVMetadata) ProtoReflect() protoreflect.Message

func (*TVMetadata) Reset

func (x *TVMetadata) Reset()

func (*TVMetadata) String

func (x *TVMetadata) String() string

type TrendingItem

type TrendingItem struct {

	// ExternalID is the external identifier in format "source:id".
	ExternalId string `protobuf:"bytes,1,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"`
	// MediaType is "movie" or "tv".
	MediaType string `protobuf:"bytes,2,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`
	// Title is the display title.
	Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"`
	// Year is the release/air year.
	Year int32 `protobuf:"varint,4,opt,name=year,proto3" json:"year,omitempty"`
	// Popularity is the provider-specific popularity score.
	Popularity float32 `protobuf:"fixed32,5,opt,name=popularity,proto3" json:"popularity,omitempty"`
	// PosterPath is the external URL to the poster image.
	PosterPath string `protobuf:"bytes,6,opt,name=poster_path,json=posterPath,proto3" json:"poster_path,omitempty"`
	// Overview is a brief description/plot summary.
	Overview string `protobuf:"bytes,7,opt,name=overview,proto3" json:"overview,omitempty"`
	// LocalID is the matched local library ID (filled by core service).
	LocalId int64 `protobuf:"varint,8,opt,name=local_id,json=localId,proto3" json:"local_id,omitempty"`
	// LocalMatched indicates whether matched to local library.
	LocalMatched bool `protobuf:"varint,9,opt,name=local_matched,json=localMatched,proto3" json:"local_matched,omitempty"`
	// contains filtered or unexported fields
}

TrendingItem represents a single trending item from an external source.

func (*TrendingItem) Descriptor deprecated

func (*TrendingItem) Descriptor() ([]byte, []int)

Deprecated: Use TrendingItem.ProtoReflect.Descriptor instead.

func (*TrendingItem) GetExternalId

func (x *TrendingItem) GetExternalId() string

func (*TrendingItem) GetLocalId

func (x *TrendingItem) GetLocalId() int64

func (*TrendingItem) GetLocalMatched

func (x *TrendingItem) GetLocalMatched() bool

func (*TrendingItem) GetMediaType

func (x *TrendingItem) GetMediaType() string

func (*TrendingItem) GetOverview

func (x *TrendingItem) GetOverview() string

func (*TrendingItem) GetPopularity

func (x *TrendingItem) GetPopularity() float32

func (*TrendingItem) GetPosterPath

func (x *TrendingItem) GetPosterPath() string

func (*TrendingItem) GetTitle

func (x *TrendingItem) GetTitle() string

func (*TrendingItem) GetYear

func (x *TrendingItem) GetYear() int32

func (*TrendingItem) ProtoMessage

func (*TrendingItem) ProtoMessage()

func (*TrendingItem) ProtoReflect

func (x *TrendingItem) ProtoReflect() protoreflect.Message

func (*TrendingItem) Reset

func (x *TrendingItem) Reset()

func (*TrendingItem) String

func (x *TrendingItem) String() string

type TrendingProviderInfo

type TrendingProviderInfo struct {

	// ID is a unique identifier for this provider.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Name is the human-readable name.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Description describes what this provider offers.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Windows lists supported time windows.
	Windows []string `protobuf:"bytes,4,rep,name=windows,proto3" json:"windows,omitempty"`
	// MediaTypes lists supported media types.
	MediaTypes []string `protobuf:"bytes,5,rep,name=media_types,json=mediaTypes,proto3" json:"media_types,omitempty"`
	// UpdateFreq describes how often data is updated.
	UpdateFreq string `protobuf:"bytes,6,opt,name=update_freq,json=updateFreq,proto3" json:"update_freq,omitempty"`
	// contains filtered or unexported fields
}

TrendingProviderInfo contains metadata about a trending provider.

func (*TrendingProviderInfo) Descriptor deprecated

func (*TrendingProviderInfo) Descriptor() ([]byte, []int)

Deprecated: Use TrendingProviderInfo.ProtoReflect.Descriptor instead.

func (*TrendingProviderInfo) GetDescription

func (x *TrendingProviderInfo) GetDescription() string

func (*TrendingProviderInfo) GetId

func (x *TrendingProviderInfo) GetId() string

func (*TrendingProviderInfo) GetMediaTypes

func (x *TrendingProviderInfo) GetMediaTypes() []string

func (*TrendingProviderInfo) GetName

func (x *TrendingProviderInfo) GetName() string

func (*TrendingProviderInfo) GetUpdateFreq

func (x *TrendingProviderInfo) GetUpdateFreq() string

func (*TrendingProviderInfo) GetWindows

func (x *TrendingProviderInfo) GetWindows() []string

func (*TrendingProviderInfo) ProtoMessage

func (*TrendingProviderInfo) ProtoMessage()

func (*TrendingProviderInfo) ProtoReflect

func (x *TrendingProviderInfo) ProtoReflect() protoreflect.Message

func (*TrendingProviderInfo) Reset

func (x *TrendingProviderInfo) Reset()

func (*TrendingProviderInfo) String

func (x *TrendingProviderInfo) String() string

type TrendingProviderServiceClient

type TrendingProviderServiceClient interface {
	// GetTrending returns currently trending items from this provider.
	GetTrending(ctx context.Context, in *TrendingRequest, opts ...grpc.CallOption) (*TrendingResponse, error)
	// GetProviderInfo returns metadata about this trending source.
	GetProviderInfo(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*TrendingProviderInfo, error)
}

TrendingProviderServiceClient is the client API for TrendingProviderService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

TrendingProviderService is implemented by plugins that provide trending data. Trending data is matched against the user's local library to show relevant items.

type TrendingProviderServiceServer

type TrendingProviderServiceServer interface {
	// GetTrending returns currently trending items from this provider.
	GetTrending(context.Context, *TrendingRequest) (*TrendingResponse, error)
	// GetProviderInfo returns metadata about this trending source.
	GetProviderInfo(context.Context, *Empty) (*TrendingProviderInfo, error)
	// contains filtered or unexported methods
}

TrendingProviderServiceServer is the server API for TrendingProviderService service. All implementations must embed UnimplementedTrendingProviderServiceServer for forward compatibility.

TrendingProviderService is implemented by plugins that provide trending data. Trending data is matched against the user's local library to show relevant items.

type TrendingRequest

type TrendingRequest struct {

	// MediaType filters by media type: "movie", "tv", "all".
	MediaType string `protobuf:"bytes,1,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`
	// Window is the time window: "day", "week".
	Window string `protobuf:"bytes,2,opt,name=window,proto3" json:"window,omitempty"`
	// Limit is the maximum number of items to return.
	Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
	// Region is an optional ISO 3166-1 country code.
	Region string `protobuf:"bytes,4,opt,name=region,proto3" json:"region,omitempty"`
	// contains filtered or unexported fields
}

TrendingRequest contains parameters for a trending request.

func (*TrendingRequest) Descriptor deprecated

func (*TrendingRequest) Descriptor() ([]byte, []int)

Deprecated: Use TrendingRequest.ProtoReflect.Descriptor instead.

func (*TrendingRequest) GetLimit

func (x *TrendingRequest) GetLimit() int32

func (*TrendingRequest) GetMediaType

func (x *TrendingRequest) GetMediaType() string

func (*TrendingRequest) GetRegion

func (x *TrendingRequest) GetRegion() string

func (*TrendingRequest) GetWindow

func (x *TrendingRequest) GetWindow() string

func (*TrendingRequest) ProtoMessage

func (*TrendingRequest) ProtoMessage()

func (*TrendingRequest) ProtoReflect

func (x *TrendingRequest) ProtoReflect() protoreflect.Message

func (*TrendingRequest) Reset

func (x *TrendingRequest) Reset()

func (*TrendingRequest) String

func (x *TrendingRequest) String() string

type TrendingResponse

type TrendingResponse struct {

	// Items is the list of trending items.
	Items []*TrendingItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// Window is the time window used.
	Window string `protobuf:"bytes,2,opt,name=window,proto3" json:"window,omitempty"`
	// Source is the provider that served this data.
	Source string `protobuf:"bytes,3,opt,name=source,proto3" json:"source,omitempty"`
	// CachedAt is the Unix timestamp when this data was fetched.
	CachedAt int64 `protobuf:"varint,4,opt,name=cached_at,json=cachedAt,proto3" json:"cached_at,omitempty"`
	// contains filtered or unexported fields
}

TrendingResponse contains trending items from a provider.

func (*TrendingResponse) Descriptor deprecated

func (*TrendingResponse) Descriptor() ([]byte, []int)

Deprecated: Use TrendingResponse.ProtoReflect.Descriptor instead.

func (*TrendingResponse) GetCachedAt

func (x *TrendingResponse) GetCachedAt() int64

func (*TrendingResponse) GetItems

func (x *TrendingResponse) GetItems() []*TrendingItem

func (*TrendingResponse) GetSource

func (x *TrendingResponse) GetSource() string

func (*TrendingResponse) GetWindow

func (x *TrendingResponse) GetWindow() string

func (*TrendingResponse) ProtoMessage

func (*TrendingResponse) ProtoMessage()

func (*TrendingResponse) ProtoReflect

func (x *TrendingResponse) ProtoReflect() protoreflect.Message

func (*TrendingResponse) Reset

func (x *TrendingResponse) Reset()

func (*TrendingResponse) String

func (x *TrendingResponse) String() string

type UnimplementedEnricherServer

type UnimplementedEnricherServer struct{}

UnimplementedEnricherServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedEnricherServer) Enrich

func (UnimplementedEnricherServer) GetCapabilities

type UnimplementedHostDataServer

type UnimplementedHostDataServer struct{}

UnimplementedHostDataServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedHostDataServer) GetFilePath

func (UnimplementedHostDataServer) GetLibrary

func (UnimplementedHostDataServer) GetMedia

func (UnimplementedHostDataServer) GetMediaByExternalId

func (UnimplementedHostDataServer) GetMediaDetails

func (UnimplementedHostDataServer) ListMediaByDirector

func (UnimplementedHostDataServer) ListMediaByGenre

func (UnimplementedHostDataServer) ListMediaByLibrary

func (UnimplementedHostDataServer) SearchMedia

type UnimplementedHostFileParserServer

type UnimplementedHostFileParserServer struct{}

UnimplementedHostFileParserServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedHostFileParserServer) ExtractEmbeddedImages

func (UnimplementedHostFileParserServer) ParseNFO

type UnimplementedHostPluginsServer

type UnimplementedHostPluginsServer struct{}

UnimplementedHostPluginsServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedHostPluginsServer) ClearCapabilityPreference

func (UnimplementedHostPluginsServer) DescribeCapability

func (UnimplementedHostPluginsServer) GetCapabilityPreferences

func (UnimplementedHostPluginsServer) InvokeCapability

func (UnimplementedHostPluginsServer) InvokeVectorSearch

func (UnimplementedHostPluginsServer) ListCapabilities

func (UnimplementedHostPluginsServer) ListProviders

func (UnimplementedHostPluginsServer) SetCapabilityPreference

type UnimplementedHostProgressServer

type UnimplementedHostProgressServer struct{}

UnimplementedHostProgressServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedHostProgressServer) GetWatchedEntityIDs

func (UnimplementedHostProgressServer) HasWatchHistory

func (UnimplementedHostProgressServer) ListWatchedItems

type UnimplementedHostRatingsServer

type UnimplementedHostRatingsServer struct{}

UnimplementedHostRatingsServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedHostRatingsServer) GetPositivelyRatedIDs

func (UnimplementedHostRatingsServer) GetRatedEntityIDs

func (UnimplementedHostRatingsServer) HasRatings

func (UnimplementedHostRatingsServer) ListRatings

type UnimplementedHostStorageServer

type UnimplementedHostStorageServer struct{}

UnimplementedHostStorageServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedHostStorageServer) ExecuteSQL

func (UnimplementedHostStorageServer) GetDatabasePath

func (UnimplementedHostStorageServer) GetDatabaseStats

func (UnimplementedHostStorageServer) KVDelete

func (UnimplementedHostStorageServer) KVGet

func (UnimplementedHostStorageServer) KVList

func (UnimplementedHostStorageServer) KVSet

func (UnimplementedHostStorageServer) QuerySQL

func (UnimplementedHostStorageServer) RegisterSchema

func (UnimplementedHostStorageServer) VectorCount

func (UnimplementedHostStorageServer) VectorDelete

func (UnimplementedHostStorageServer) VectorDeleteByType

func (UnimplementedHostStorageServer) VectorGet

func (UnimplementedHostStorageServer) VectorSearch

func (UnimplementedHostStorageServer) VectorSearchText

func (UnimplementedHostStorageServer) VectorStoreBatch

func (UnimplementedHostStorageServer) VectorStoreEmbedding

type UnimplementedHostUserMetadataServer

type UnimplementedHostUserMetadataServer struct{}

UnimplementedHostUserMetadataServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedHostUserMetadataServer) Delete

func (UnimplementedHostUserMetadataServer) Get

func (UnimplementedHostUserMetadataServer) ListKeys

func (UnimplementedHostUserMetadataServer) Set

type UnimplementedHostWeatherServer

type UnimplementedHostWeatherServer struct{}

UnimplementedHostWeatherServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedHostWeatherServer) GetCurrentWeather

type UnimplementedPluginCoreServer

type UnimplementedPluginCoreServer struct{}

UnimplementedPluginCoreServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedPluginCoreServer) Configure

func (UnimplementedPluginCoreServer) GetRoutes

func (UnimplementedPluginCoreServer) GetSettingsSchema

func (UnimplementedPluginCoreServer) GetSubscriptions

func (UnimplementedPluginCoreServer) HandleHTTP

func (UnimplementedPluginCoreServer) HandleHTTPStream

func (UnimplementedPluginCoreServer) HealthCheck

func (UnimplementedPluginCoreServer) Initialize

func (UnimplementedPluginCoreServer) OnEvent

func (UnimplementedPluginCoreServer) Shutdown

type UnimplementedPluginProviderServer

type UnimplementedPluginProviderServer struct{}

UnimplementedPluginProviderServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedPluginProviderServer) Chat

func (UnimplementedPluginProviderServer) DescribeMethods

func (UnimplementedPluginProviderServer) GenerateEmbedding

func (UnimplementedPluginProviderServer) GetCapabilities

func (UnimplementedPluginProviderServer) HealthCheck

func (UnimplementedPluginProviderServer) Invoke

func (UnimplementedPluginProviderServer) ListModels

type UnimplementedSearchProviderServiceServer

type UnimplementedSearchProviderServiceServer struct{}

UnimplementedSearchProviderServiceServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedSearchProviderServiceServer) GetProviderInfo

func (UnimplementedSearchProviderServiceServer) GetSuggestions

func (UnimplementedSearchProviderServiceServer) Search

type UnimplementedTrendingProviderServiceServer

type UnimplementedTrendingProviderServiceServer struct{}

UnimplementedTrendingProviderServiceServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedTrendingProviderServiceServer) GetProviderInfo

func (UnimplementedTrendingProviderServiceServer) GetTrending

type UnimplementedVectorSearchServer

type UnimplementedVectorSearchServer struct{}

UnimplementedVectorSearchServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedVectorSearchServer) CancelIndexing

func (UnimplementedVectorSearchServer) FindSimilar

func (UnimplementedVectorSearchServer) GetStatus

func (UnimplementedVectorSearchServer) IndexLibrary

func (UnimplementedVectorSearchServer) Search

type UnsafeEnricherServer

type UnsafeEnricherServer interface {
	// contains filtered or unexported methods
}

UnsafeEnricherServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to EnricherServer will result in compilation errors.

type UnsafeHostDataServer

type UnsafeHostDataServer interface {
	// contains filtered or unexported methods
}

UnsafeHostDataServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HostDataServer will result in compilation errors.

type UnsafeHostFileParserServer

type UnsafeHostFileParserServer interface {
	// contains filtered or unexported methods
}

UnsafeHostFileParserServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HostFileParserServer will result in compilation errors.

type UnsafeHostPluginsServer

type UnsafeHostPluginsServer interface {
	// contains filtered or unexported methods
}

UnsafeHostPluginsServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HostPluginsServer will result in compilation errors.

type UnsafeHostProgressServer

type UnsafeHostProgressServer interface {
	// contains filtered or unexported methods
}

UnsafeHostProgressServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HostProgressServer will result in compilation errors.

type UnsafeHostRatingsServer

type UnsafeHostRatingsServer interface {
	// contains filtered or unexported methods
}

UnsafeHostRatingsServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HostRatingsServer will result in compilation errors.

type UnsafeHostStorageServer

type UnsafeHostStorageServer interface {
	// contains filtered or unexported methods
}

UnsafeHostStorageServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HostStorageServer will result in compilation errors.

type UnsafeHostUserMetadataServer

type UnsafeHostUserMetadataServer interface {
	// contains filtered or unexported methods
}

UnsafeHostUserMetadataServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HostUserMetadataServer will result in compilation errors.

type UnsafeHostWeatherServer

type UnsafeHostWeatherServer interface {
	// contains filtered or unexported methods
}

UnsafeHostWeatherServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HostWeatherServer will result in compilation errors.

type UnsafePluginCoreServer

type UnsafePluginCoreServer interface {
	// contains filtered or unexported methods
}

UnsafePluginCoreServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to PluginCoreServer will result in compilation errors.

type UnsafePluginProviderServer

type UnsafePluginProviderServer interface {
	// contains filtered or unexported methods
}

UnsafePluginProviderServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to PluginProviderServer will result in compilation errors.

type UnsafeSearchProviderServiceServer

type UnsafeSearchProviderServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeSearchProviderServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to SearchProviderServiceServer will result in compilation errors.

type UnsafeTrendingProviderServiceServer

type UnsafeTrendingProviderServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeTrendingProviderServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to TrendingProviderServiceServer will result in compilation errors.

type UnsafeVectorSearchServer

type UnsafeVectorSearchServer interface {
	// contains filtered or unexported methods
}

UnsafeVectorSearchServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to VectorSearchServer will result in compilation errors.

type UserId

type UserId struct {
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// contains filtered or unexported fields
}

func (*UserId) Descriptor deprecated

func (*UserId) Descriptor() ([]byte, []int)

Deprecated: Use UserId.ProtoReflect.Descriptor instead.

func (*UserId) GetUserId

func (x *UserId) GetUserId() string

func (*UserId) ProtoMessage

func (*UserId) ProtoMessage()

func (*UserId) ProtoReflect

func (x *UserId) ProtoReflect() protoreflect.Message

func (*UserId) Reset

func (x *UserId) Reset()

func (*UserId) String

func (x *UserId) String() string

type UserMetadataEntry

type UserMetadataEntry struct {
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	Key    string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
	Value  []byte `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

func (*UserMetadataEntry) Descriptor deprecated

func (*UserMetadataEntry) Descriptor() ([]byte, []int)

Deprecated: Use UserMetadataEntry.ProtoReflect.Descriptor instead.

func (*UserMetadataEntry) GetKey

func (x *UserMetadataEntry) GetKey() string

func (*UserMetadataEntry) GetUserId

func (x *UserMetadataEntry) GetUserId() string

func (*UserMetadataEntry) GetValue

func (x *UserMetadataEntry) GetValue() []byte

func (*UserMetadataEntry) ProtoMessage

func (*UserMetadataEntry) ProtoMessage()

func (*UserMetadataEntry) ProtoReflect

func (x *UserMetadataEntry) ProtoReflect() protoreflect.Message

func (*UserMetadataEntry) Reset

func (x *UserMetadataEntry) Reset()

func (*UserMetadataEntry) String

func (x *UserMetadataEntry) String() string

type UserMetadataKey

type UserMetadataKey struct {
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	Key    string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
	// contains filtered or unexported fields
}

func (*UserMetadataKey) Descriptor deprecated

func (*UserMetadataKey) Descriptor() ([]byte, []int)

Deprecated: Use UserMetadataKey.ProtoReflect.Descriptor instead.

func (*UserMetadataKey) GetKey

func (x *UserMetadataKey) GetKey() string

func (*UserMetadataKey) GetUserId

func (x *UserMetadataKey) GetUserId() string

func (*UserMetadataKey) ProtoMessage

func (*UserMetadataKey) ProtoMessage()

func (*UserMetadataKey) ProtoReflect

func (x *UserMetadataKey) ProtoReflect() protoreflect.Message

func (*UserMetadataKey) Reset

func (x *UserMetadataKey) Reset()

func (*UserMetadataKey) String

func (x *UserMetadataKey) String() string

type UserMetadataKeyList

type UserMetadataKeyList struct {
	Keys []string `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"`
	// contains filtered or unexported fields
}

func (*UserMetadataKeyList) Descriptor deprecated

func (*UserMetadataKeyList) Descriptor() ([]byte, []int)

Deprecated: Use UserMetadataKeyList.ProtoReflect.Descriptor instead.

func (*UserMetadataKeyList) GetKeys

func (x *UserMetadataKeyList) GetKeys() []string

func (*UserMetadataKeyList) ProtoMessage

func (*UserMetadataKeyList) ProtoMessage()

func (*UserMetadataKeyList) ProtoReflect

func (x *UserMetadataKeyList) ProtoReflect() protoreflect.Message

func (*UserMetadataKeyList) Reset

func (x *UserMetadataKeyList) Reset()

func (*UserMetadataKeyList) String

func (x *UserMetadataKeyList) String() string

type UserMetadataValue

type UserMetadataValue struct {
	Value  []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	Exists bool   `protobuf:"varint,2,opt,name=exists,proto3" json:"exists,omitempty"`
	// contains filtered or unexported fields
}

func (*UserMetadataValue) Descriptor deprecated

func (*UserMetadataValue) Descriptor() ([]byte, []int)

Deprecated: Use UserMetadataValue.ProtoReflect.Descriptor instead.

func (*UserMetadataValue) GetExists

func (x *UserMetadataValue) GetExists() bool

func (*UserMetadataValue) GetValue

func (x *UserMetadataValue) GetValue() []byte

func (*UserMetadataValue) ProtoMessage

func (*UserMetadataValue) ProtoMessage()

func (*UserMetadataValue) ProtoReflect

func (x *UserMetadataValue) ProtoReflect() protoreflect.Message

func (*UserMetadataValue) Reset

func (x *UserMetadataValue) Reset()

func (*UserMetadataValue) String

func (x *UserMetadataValue) String() string

type UserRating

type UserRating struct {
	Id         int64  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	UserId     string `protobuf:"bytes,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	EntityType string `protobuf:"bytes,3,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"` // movie, tv_show, tv_episode
	EntityId   int64  `protobuf:"varint,4,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
	Rating     string `protobuf:"bytes,5,opt,name=rating,proto3" json:"rating,omitempty"`                         // favorite, up, down
	CreatedAt  int64  `protobuf:"varint,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` // Unix timestamp
	UpdatedAt  int64  `protobuf:"varint,7,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` // Unix timestamp
	// contains filtered or unexported fields
}

UserRating represents a single user rating.

func (*UserRating) Descriptor deprecated

func (*UserRating) Descriptor() ([]byte, []int)

Deprecated: Use UserRating.ProtoReflect.Descriptor instead.

func (*UserRating) GetCreatedAt

func (x *UserRating) GetCreatedAt() int64

func (*UserRating) GetEntityId

func (x *UserRating) GetEntityId() int64

func (*UserRating) GetEntityType

func (x *UserRating) GetEntityType() string

func (*UserRating) GetId

func (x *UserRating) GetId() int64

func (*UserRating) GetRating

func (x *UserRating) GetRating() string

func (*UserRating) GetUpdatedAt

func (x *UserRating) GetUpdatedAt() int64

func (*UserRating) GetUserId

func (x *UserRating) GetUserId() string

func (*UserRating) ProtoMessage

func (*UserRating) ProtoMessage()

func (*UserRating) ProtoReflect

func (x *UserRating) ProtoReflect() protoreflect.Message

func (*UserRating) Reset

func (x *UserRating) Reset()

func (*UserRating) String

func (x *UserRating) String() string

type VectorCountResponse

type VectorCountResponse struct {
	Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
	// contains filtered or unexported fields
}

func (*VectorCountResponse) Descriptor deprecated

func (*VectorCountResponse) Descriptor() ([]byte, []int)

Deprecated: Use VectorCountResponse.ProtoReflect.Descriptor instead.

func (*VectorCountResponse) GetCount

func (x *VectorCountResponse) GetCount() int64

func (*VectorCountResponse) ProtoMessage

func (*VectorCountResponse) ProtoMessage()

func (*VectorCountResponse) ProtoReflect

func (x *VectorCountResponse) ProtoReflect() protoreflect.Message

func (*VectorCountResponse) Reset

func (x *VectorCountResponse) Reset()

func (*VectorCountResponse) String

func (x *VectorCountResponse) String() string

type VectorDeleteResponse

type VectorDeleteResponse struct {
	DeletedCount int64 `protobuf:"varint,1,opt,name=deleted_count,json=deletedCount,proto3" json:"deleted_count,omitempty"`
	// contains filtered or unexported fields
}

func (*VectorDeleteResponse) Descriptor deprecated

func (*VectorDeleteResponse) Descriptor() ([]byte, []int)

Deprecated: Use VectorDeleteResponse.ProtoReflect.Descriptor instead.

func (*VectorDeleteResponse) GetDeletedCount

func (x *VectorDeleteResponse) GetDeletedCount() int64

func (*VectorDeleteResponse) ProtoMessage

func (*VectorDeleteResponse) ProtoMessage()

func (*VectorDeleteResponse) ProtoReflect

func (x *VectorDeleteResponse) ProtoReflect() protoreflect.Message

func (*VectorDeleteResponse) Reset

func (x *VectorDeleteResponse) Reset()

func (*VectorDeleteResponse) String

func (x *VectorDeleteResponse) String() string

type VectorGetResponse

type VectorGetResponse struct {
	Exists     bool      `protobuf:"varint,1,opt,name=exists,proto3" json:"exists,omitempty"`
	Vector     []float32 `protobuf:"fixed32,2,rep,packed,name=vector,proto3" json:"vector,omitempty"`
	Text       string    `protobuf:"bytes,3,opt,name=text,proto3" json:"text,omitempty"`
	Model      string    `protobuf:"bytes,4,opt,name=model,proto3" json:"model,omitempty"`
	Dimensions int32     `protobuf:"varint,5,opt,name=dimensions,proto3" json:"dimensions,omitempty"`
	// contains filtered or unexported fields
}

func (*VectorGetResponse) Descriptor deprecated

func (*VectorGetResponse) Descriptor() ([]byte, []int)

Deprecated: Use VectorGetResponse.ProtoReflect.Descriptor instead.

func (*VectorGetResponse) GetDimensions

func (x *VectorGetResponse) GetDimensions() int32

func (*VectorGetResponse) GetExists

func (x *VectorGetResponse) GetExists() bool

func (*VectorGetResponse) GetModel

func (x *VectorGetResponse) GetModel() string

func (*VectorGetResponse) GetText

func (x *VectorGetResponse) GetText() string

func (*VectorGetResponse) GetVector

func (x *VectorGetResponse) GetVector() []float32

func (*VectorGetResponse) ProtoMessage

func (*VectorGetResponse) ProtoMessage()

func (*VectorGetResponse) ProtoReflect

func (x *VectorGetResponse) ProtoReflect() protoreflect.Message

func (*VectorGetResponse) Reset

func (x *VectorGetResponse) Reset()

func (*VectorGetResponse) String

func (x *VectorGetResponse) String() string

type VectorQuery

type VectorQuery struct {
	EntityType string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
	EntityId   int64  `protobuf:"varint,2,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
	// contains filtered or unexported fields
}

func (*VectorQuery) Descriptor deprecated

func (*VectorQuery) Descriptor() ([]byte, []int)

Deprecated: Use VectorQuery.ProtoReflect.Descriptor instead.

func (*VectorQuery) GetEntityId

func (x *VectorQuery) GetEntityId() int64

func (*VectorQuery) GetEntityType

func (x *VectorQuery) GetEntityType() string

func (*VectorQuery) ProtoMessage

func (*VectorQuery) ProtoMessage()

func (*VectorQuery) ProtoReflect

func (x *VectorQuery) ProtoReflect() protoreflect.Message

func (*VectorQuery) Reset

func (x *VectorQuery) Reset()

func (*VectorQuery) String

func (x *VectorQuery) String() string

type VectorSearchClient

type VectorSearchClient interface {
	// Search performs semantic search across indexed media.
	Search(ctx context.Context, in *SemanticSearchRequest, opts ...grpc.CallOption) (*SemanticSearchResponse, error)
	// FindSimilar finds items similar to a given entity.
	FindSimilar(ctx context.Context, in *FindSimilarRequest, opts ...grpc.CallOption) (*SemanticSearchResponse, error)
	// GetStatus returns the current indexing status.
	GetStatus(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*VectorSearchStatus, error)
	// IndexLibrary triggers indexing for a library.
	IndexLibrary(ctx context.Context, in *IndexLibraryRequest, opts ...grpc.CallOption) (*IndexLibraryResponse, error)
	// CancelIndexing cancels any running indexing operation.
	CancelIndexing(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error)
}

VectorSearchClient is the client API for VectorSearch service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

VectorSearch is the interface for vector/semantic search plugins. Plugins that provide semantic search functionality implement this.

type VectorSearchInvokeRequest

type VectorSearchInvokeRequest struct {
	Method          string `protobuf:"bytes,1,opt,name=method,proto3" json:"method,omitempty"`                                          // "FindSimilar" or "Search"
	PreferredPlugin string `protobuf:"bytes,2,opt,name=preferred_plugin,json=preferredPlugin,proto3" json:"preferred_plugin,omitempty"` // Optional: specific plugin ID to use
	// Request payload (one of) - uses types from vector_search.proto
	FindSimilar *FindSimilarRequest    `protobuf:"bytes,10,opt,name=find_similar,json=findSimilar,proto3" json:"find_similar,omitempty"`
	Search      *SemanticSearchRequest `protobuf:"bytes,11,opt,name=search,proto3" json:"search,omitempty"`
	// contains filtered or unexported fields
}

VectorSearchInvokeRequest requests a vector search operation on a plugin providing vector_search capability.

func (*VectorSearchInvokeRequest) Descriptor deprecated

func (*VectorSearchInvokeRequest) Descriptor() ([]byte, []int)

Deprecated: Use VectorSearchInvokeRequest.ProtoReflect.Descriptor instead.

func (*VectorSearchInvokeRequest) GetFindSimilar

func (x *VectorSearchInvokeRequest) GetFindSimilar() *FindSimilarRequest

func (*VectorSearchInvokeRequest) GetMethod

func (x *VectorSearchInvokeRequest) GetMethod() string

func (*VectorSearchInvokeRequest) GetPreferredPlugin

func (x *VectorSearchInvokeRequest) GetPreferredPlugin() string

func (*VectorSearchInvokeRequest) GetSearch

func (*VectorSearchInvokeRequest) ProtoMessage

func (*VectorSearchInvokeRequest) ProtoMessage()

func (*VectorSearchInvokeRequest) ProtoReflect

func (*VectorSearchInvokeRequest) Reset

func (x *VectorSearchInvokeRequest) Reset()

func (*VectorSearchInvokeRequest) String

func (x *VectorSearchInvokeRequest) String() string

type VectorSearchInvokeResponse

type VectorSearchInvokeResponse struct {
	ProviderPlugin string                  `protobuf:"bytes,1,opt,name=provider_plugin,json=providerPlugin,proto3" json:"provider_plugin,omitempty"` // Which plugin handled the request
	Response       *SemanticSearchResponse `protobuf:"bytes,2,opt,name=response,proto3" json:"response,omitempty"`
	Error          *CapabilityError        `protobuf:"bytes,3,opt,name=error,proto3" json:"error,omitempty"` // Structured error (null if success)
	// contains filtered or unexported fields
}

VectorSearchInvokeResponse contains the result of a vector search operation.

func (*VectorSearchInvokeResponse) Descriptor deprecated

func (*VectorSearchInvokeResponse) Descriptor() ([]byte, []int)

Deprecated: Use VectorSearchInvokeResponse.ProtoReflect.Descriptor instead.

func (*VectorSearchInvokeResponse) GetError

func (*VectorSearchInvokeResponse) GetProviderPlugin

func (x *VectorSearchInvokeResponse) GetProviderPlugin() string

func (*VectorSearchInvokeResponse) GetResponse

func (*VectorSearchInvokeResponse) ProtoMessage

func (*VectorSearchInvokeResponse) ProtoMessage()

func (*VectorSearchInvokeResponse) ProtoReflect

func (*VectorSearchInvokeResponse) Reset

func (x *VectorSearchInvokeResponse) Reset()

func (*VectorSearchInvokeResponse) String

func (x *VectorSearchInvokeResponse) String() string

type VectorSearchRequest

type VectorSearchRequest struct {
	QueryVector   []float32 `protobuf:"fixed32,1,rep,packed,name=query_vector,json=queryVector,proto3" json:"query_vector,omitempty"` // Query embedding
	EntityTypes   []string  `protobuf:"bytes,2,rep,name=entity_types,json=entityTypes,proto3" json:"entity_types,omitempty"`          // Filter by types (empty = all)
	Limit         int32     `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`                                        // Max results (default: 20)
	Offset        int32     `protobuf:"varint,4,opt,name=offset,proto3" json:"offset,omitempty"`                                      // Pagination offset
	MinSimilarity float32   `protobuf:"fixed32,5,opt,name=min_similarity,json=minSimilarity,proto3" json:"min_similarity,omitempty"`  // Minimum similarity threshold (0.0-1.0)
	// contains filtered or unexported fields
}

func (*VectorSearchRequest) Descriptor deprecated

func (*VectorSearchRequest) Descriptor() ([]byte, []int)

Deprecated: Use VectorSearchRequest.ProtoReflect.Descriptor instead.

func (*VectorSearchRequest) GetEntityTypes

func (x *VectorSearchRequest) GetEntityTypes() []string

func (*VectorSearchRequest) GetLimit

func (x *VectorSearchRequest) GetLimit() int32

func (*VectorSearchRequest) GetMinSimilarity

func (x *VectorSearchRequest) GetMinSimilarity() float32

func (*VectorSearchRequest) GetOffset

func (x *VectorSearchRequest) GetOffset() int32

func (*VectorSearchRequest) GetQueryVector

func (x *VectorSearchRequest) GetQueryVector() []float32

func (*VectorSearchRequest) ProtoMessage

func (*VectorSearchRequest) ProtoMessage()

func (*VectorSearchRequest) ProtoReflect

func (x *VectorSearchRequest) ProtoReflect() protoreflect.Message

func (*VectorSearchRequest) Reset

func (x *VectorSearchRequest) Reset()

func (*VectorSearchRequest) String

func (x *VectorSearchRequest) String() string

type VectorSearchResponse

type VectorSearchResponse struct {
	Results    []*VectorSearchResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"`
	TotalCount int32                 `protobuf:"varint,2,opt,name=total_count,json=totalCount,proto3" json:"total_count,omitempty"` // Total matching embeddings
	// contains filtered or unexported fields
}

func (*VectorSearchResponse) Descriptor deprecated

func (*VectorSearchResponse) Descriptor() ([]byte, []int)

Deprecated: Use VectorSearchResponse.ProtoReflect.Descriptor instead.

func (*VectorSearchResponse) GetResults

func (x *VectorSearchResponse) GetResults() []*VectorSearchResult

func (*VectorSearchResponse) GetTotalCount

func (x *VectorSearchResponse) GetTotalCount() int32

func (*VectorSearchResponse) ProtoMessage

func (*VectorSearchResponse) ProtoMessage()

func (*VectorSearchResponse) ProtoReflect

func (x *VectorSearchResponse) ProtoReflect() protoreflect.Message

func (*VectorSearchResponse) Reset

func (x *VectorSearchResponse) Reset()

func (*VectorSearchResponse) String

func (x *VectorSearchResponse) String() string

type VectorSearchResult

type VectorSearchResult struct {
	EntityType string  `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
	EntityId   int64   `protobuf:"varint,2,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
	Similarity float32 `protobuf:"fixed32,3,opt,name=similarity,proto3" json:"similarity,omitempty"` // Cosine similarity (0.0-1.0)
	Text       string  `protobuf:"bytes,4,opt,name=text,proto3" json:"text,omitempty"`               // Original embedded text
	// contains filtered or unexported fields
}

func (*VectorSearchResult) Descriptor deprecated

func (*VectorSearchResult) Descriptor() ([]byte, []int)

Deprecated: Use VectorSearchResult.ProtoReflect.Descriptor instead.

func (*VectorSearchResult) GetEntityId

func (x *VectorSearchResult) GetEntityId() int64

func (*VectorSearchResult) GetEntityType

func (x *VectorSearchResult) GetEntityType() string

func (*VectorSearchResult) GetSimilarity

func (x *VectorSearchResult) GetSimilarity() float32

func (*VectorSearchResult) GetText

func (x *VectorSearchResult) GetText() string

func (*VectorSearchResult) ProtoMessage

func (*VectorSearchResult) ProtoMessage()

func (*VectorSearchResult) ProtoReflect

func (x *VectorSearchResult) ProtoReflect() protoreflect.Message

func (*VectorSearchResult) Reset

func (x *VectorSearchResult) Reset()

func (*VectorSearchResult) String

func (x *VectorSearchResult) String() string

type VectorSearchServer

type VectorSearchServer interface {
	// Search performs semantic search across indexed media.
	Search(context.Context, *SemanticSearchRequest) (*SemanticSearchResponse, error)
	// FindSimilar finds items similar to a given entity.
	FindSimilar(context.Context, *FindSimilarRequest) (*SemanticSearchResponse, error)
	// GetStatus returns the current indexing status.
	GetStatus(context.Context, *Empty) (*VectorSearchStatus, error)
	// IndexLibrary triggers indexing for a library.
	IndexLibrary(context.Context, *IndexLibraryRequest) (*IndexLibraryResponse, error)
	// CancelIndexing cancels any running indexing operation.
	CancelIndexing(context.Context, *Empty) (*Empty, error)
	// contains filtered or unexported methods
}

VectorSearchServer is the server API for VectorSearch service. All implementations must embed UnimplementedVectorSearchServer for forward compatibility.

VectorSearch is the interface for vector/semantic search plugins. Plugins that provide semantic search functionality implement this.

type VectorSearchStatus

type VectorSearchStatus struct {

	// Whether indexing is currently running
	IsIndexing bool `protobuf:"varint,1,opt,name=is_indexing,json=isIndexing,proto3" json:"is_indexing,omitempty"`
	// Current indexing progress (if indexing)
	Progress *IndexingProgress `protobuf:"bytes,2,opt,name=progress,proto3" json:"progress,omitempty"`
	// Stats per entity type
	Stats []*EntityTypeStats `protobuf:"bytes,3,rep,name=stats,proto3" json:"stats,omitempty"`
	// Total indexed items
	TotalIndexed int64 `protobuf:"varint,4,opt,name=total_indexed,json=totalIndexed,proto3" json:"total_indexed,omitempty"`
	// contains filtered or unexported fields
}

func (*VectorSearchStatus) Descriptor deprecated

func (*VectorSearchStatus) Descriptor() ([]byte, []int)

Deprecated: Use VectorSearchStatus.ProtoReflect.Descriptor instead.

func (*VectorSearchStatus) GetIsIndexing

func (x *VectorSearchStatus) GetIsIndexing() bool

func (*VectorSearchStatus) GetProgress

func (x *VectorSearchStatus) GetProgress() *IndexingProgress

func (*VectorSearchStatus) GetStats

func (x *VectorSearchStatus) GetStats() []*EntityTypeStats

func (*VectorSearchStatus) GetTotalIndexed

func (x *VectorSearchStatus) GetTotalIndexed() int64

func (*VectorSearchStatus) ProtoMessage

func (*VectorSearchStatus) ProtoMessage()

func (*VectorSearchStatus) ProtoReflect

func (x *VectorSearchStatus) ProtoReflect() protoreflect.Message

func (*VectorSearchStatus) Reset

func (x *VectorSearchStatus) Reset()

func (*VectorSearchStatus) String

func (x *VectorSearchStatus) String() string

type VectorStoreBatchRequest

type VectorStoreBatchRequest struct {
	Embeddings []*VectorStoreRequest `protobuf:"bytes,1,rep,name=embeddings,proto3" json:"embeddings,omitempty"`
	// contains filtered or unexported fields
}

func (*VectorStoreBatchRequest) Descriptor deprecated

func (*VectorStoreBatchRequest) Descriptor() ([]byte, []int)

Deprecated: Use VectorStoreBatchRequest.ProtoReflect.Descriptor instead.

func (*VectorStoreBatchRequest) GetEmbeddings

func (x *VectorStoreBatchRequest) GetEmbeddings() []*VectorStoreRequest

func (*VectorStoreBatchRequest) ProtoMessage

func (*VectorStoreBatchRequest) ProtoMessage()

func (*VectorStoreBatchRequest) ProtoReflect

func (x *VectorStoreBatchRequest) ProtoReflect() protoreflect.Message

func (*VectorStoreBatchRequest) Reset

func (x *VectorStoreBatchRequest) Reset()

func (*VectorStoreBatchRequest) String

func (x *VectorStoreBatchRequest) String() string

type VectorStoreRequest

type VectorStoreRequest struct {
	EntityType string    `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"` // e.g., "movie", "tv_show", "track"
	EntityId   int64     `protobuf:"varint,2,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`      // ID within entity type
	Vector     []float32 `protobuf:"fixed32,3,rep,packed,name=vector,proto3" json:"vector,omitempty"`                  // Embedding vector (float32)
	Text       string    `protobuf:"bytes,4,opt,name=text,proto3" json:"text,omitempty"`                               // Original text that was embedded (optional, for debugging)
	Model      string    `protobuf:"bytes,5,opt,name=model,proto3" json:"model,omitempty"`                             // Model used to generate embedding (optional, for tracking)
	// contains filtered or unexported fields
}

func (*VectorStoreRequest) Descriptor deprecated

func (*VectorStoreRequest) Descriptor() ([]byte, []int)

Deprecated: Use VectorStoreRequest.ProtoReflect.Descriptor instead.

func (*VectorStoreRequest) GetEntityId

func (x *VectorStoreRequest) GetEntityId() int64

func (*VectorStoreRequest) GetEntityType

func (x *VectorStoreRequest) GetEntityType() string

func (*VectorStoreRequest) GetModel

func (x *VectorStoreRequest) GetModel() string

func (*VectorStoreRequest) GetText

func (x *VectorStoreRequest) GetText() string

func (*VectorStoreRequest) GetVector

func (x *VectorStoreRequest) GetVector() []float32

func (*VectorStoreRequest) ProtoMessage

func (*VectorStoreRequest) ProtoMessage()

func (*VectorStoreRequest) ProtoReflect

func (x *VectorStoreRequest) ProtoReflect() protoreflect.Message

func (*VectorStoreRequest) Reset

func (x *VectorStoreRequest) Reset()

func (*VectorStoreRequest) String

func (x *VectorStoreRequest) String() string

type VectorTextSearchRequest

type VectorTextSearchRequest struct {
	Query       string   `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`                                // Text to search for (case-insensitive)
	EntityTypes []string `protobuf:"bytes,2,rep,name=entity_types,json=entityTypes,proto3" json:"entity_types,omitempty"` // Filter by types (empty = all)
	Limit       int32    `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`                               // Max results (default: 100)
	// contains filtered or unexported fields
}

func (*VectorTextSearchRequest) Descriptor deprecated

func (*VectorTextSearchRequest) Descriptor() ([]byte, []int)

Deprecated: Use VectorTextSearchRequest.ProtoReflect.Descriptor instead.

func (*VectorTextSearchRequest) GetEntityTypes

func (x *VectorTextSearchRequest) GetEntityTypes() []string

func (*VectorTextSearchRequest) GetLimit

func (x *VectorTextSearchRequest) GetLimit() int32

func (*VectorTextSearchRequest) GetQuery

func (x *VectorTextSearchRequest) GetQuery() string

func (*VectorTextSearchRequest) ProtoMessage

func (*VectorTextSearchRequest) ProtoMessage()

func (*VectorTextSearchRequest) ProtoReflect

func (x *VectorTextSearchRequest) ProtoReflect() protoreflect.Message

func (*VectorTextSearchRequest) Reset

func (x *VectorTextSearchRequest) Reset()

func (*VectorTextSearchRequest) String

func (x *VectorTextSearchRequest) String() string

type VectorTypeQuery

type VectorTypeQuery struct {
	EntityType string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"` // Empty = all types
	// contains filtered or unexported fields
}

func (*VectorTypeQuery) Descriptor deprecated

func (*VectorTypeQuery) Descriptor() ([]byte, []int)

Deprecated: Use VectorTypeQuery.ProtoReflect.Descriptor instead.

func (*VectorTypeQuery) GetEntityType

func (x *VectorTypeQuery) GetEntityType() string

func (*VectorTypeQuery) ProtoMessage

func (*VectorTypeQuery) ProtoMessage()

func (*VectorTypeQuery) ProtoReflect

func (x *VectorTypeQuery) ProtoReflect() protoreflect.Message

func (*VectorTypeQuery) Reset

func (x *VectorTypeQuery) Reset()

func (*VectorTypeQuery) String

func (x *VectorTypeQuery) String() string

type WatchProgressItem

type WatchProgressItem struct {
	MediaId         int64   `protobuf:"varint,1,opt,name=media_id,json=mediaId,proto3" json:"media_id,omitempty"`
	MediaType       string  `protobuf:"bytes,2,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`                     // movie, tv_show, tv_episode
	ProgressSeconds float64 `protobuf:"fixed64,3,opt,name=progress_seconds,json=progressSeconds,proto3" json:"progress_seconds,omitempty"` // Current playback position
	DurationSeconds float64 `protobuf:"fixed64,4,opt,name=duration_seconds,json=durationSeconds,proto3" json:"duration_seconds,omitempty"` // Total duration
	ProgressPercent float64 `protobuf:"fixed64,5,opt,name=progress_percent,json=progressPercent,proto3" json:"progress_percent,omitempty"` // Progress as percentage (0-100)
	IsWatched       bool    `protobuf:"varint,6,opt,name=is_watched,json=isWatched,proto3" json:"is_watched,omitempty"`                    // True if marked as watched
	LastWatchedAt   int64   `protobuf:"varint,7,opt,name=last_watched_at,json=lastWatchedAt,proto3" json:"last_watched_at,omitempty"`      // Unix timestamp of last watch
	// contains filtered or unexported fields
}

WatchProgressItem represents a single watch progress record.

func (*WatchProgressItem) Descriptor deprecated

func (*WatchProgressItem) Descriptor() ([]byte, []int)

Deprecated: Use WatchProgressItem.ProtoReflect.Descriptor instead.

func (*WatchProgressItem) GetDurationSeconds

func (x *WatchProgressItem) GetDurationSeconds() float64

func (*WatchProgressItem) GetIsWatched

func (x *WatchProgressItem) GetIsWatched() bool

func (*WatchProgressItem) GetLastWatchedAt

func (x *WatchProgressItem) GetLastWatchedAt() int64

func (*WatchProgressItem) GetMediaId

func (x *WatchProgressItem) GetMediaId() int64

func (*WatchProgressItem) GetMediaType

func (x *WatchProgressItem) GetMediaType() string

func (*WatchProgressItem) GetProgressPercent

func (x *WatchProgressItem) GetProgressPercent() float64

func (*WatchProgressItem) GetProgressSeconds

func (x *WatchProgressItem) GetProgressSeconds() float64

func (*WatchProgressItem) ProtoMessage

func (*WatchProgressItem) ProtoMessage()

func (*WatchProgressItem) ProtoReflect

func (x *WatchProgressItem) ProtoReflect() protoreflect.Message

func (*WatchProgressItem) Reset

func (x *WatchProgressItem) Reset()

func (*WatchProgressItem) String

func (x *WatchProgressItem) String() string

type WeatherRequest

type WeatherRequest struct {
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // User ID to look up location preferences
	// contains filtered or unexported fields
}

func (*WeatherRequest) Descriptor deprecated

func (*WeatherRequest) Descriptor() ([]byte, []int)

Deprecated: Use WeatherRequest.ProtoReflect.Descriptor instead.

func (*WeatherRequest) GetUserId

func (x *WeatherRequest) GetUserId() string

func (*WeatherRequest) ProtoMessage

func (*WeatherRequest) ProtoMessage()

func (*WeatherRequest) ProtoReflect

func (x *WeatherRequest) ProtoReflect() protoreflect.Message

func (*WeatherRequest) Reset

func (x *WeatherRequest) Reset()

func (*WeatherRequest) String

func (x *WeatherRequest) String() string

type WeatherResponse

type WeatherResponse struct {
	Available     bool    `protobuf:"varint,1,opt,name=available,proto3" json:"available,omitempty"`                        // False if user hasn't enabled location
	Temperature   float32 `protobuf:"fixed32,2,opt,name=temperature,proto3" json:"temperature,omitempty"`                   // Celsius
	Humidity      int32   `protobuf:"varint,3,opt,name=humidity,proto3" json:"humidity,omitempty"`                          // Percentage (0-100)
	IsDay         bool    `protobuf:"varint,4,opt,name=is_day,json=isDay,proto3" json:"is_day,omitempty"`                   // True if daylight
	Precipitation float32 `protobuf:"fixed32,5,opt,name=precipitation,proto3" json:"precipitation,omitempty"`               // mm
	CloudCover    int32   `protobuf:"varint,6,opt,name=cloud_cover,json=cloudCover,proto3" json:"cloud_cover,omitempty"`    // Percentage (0-100)
	WeatherCode   int32   `protobuf:"varint,7,opt,name=weather_code,json=weatherCode,proto3" json:"weather_code,omitempty"` // WMO weather interpretation code
	Condition     string  `protobuf:"bytes,8,opt,name=condition,proto3" json:"condition,omitempty"`                         // Simplified: sunny, cloudy, rainy, snowy, stormy, foggy
	TimeOfDay     string  `protobuf:"bytes,9,opt,name=time_of_day,json=timeOfDay,proto3" json:"time_of_day,omitempty"`      // morning, afternoon, evening, night
	Season        string  `protobuf:"bytes,10,opt,name=season,proto3" json:"season,omitempty"`                              // spring, summer, fall, winter
	// contains filtered or unexported fields
}

func (*WeatherResponse) Descriptor deprecated

func (*WeatherResponse) Descriptor() ([]byte, []int)

Deprecated: Use WeatherResponse.ProtoReflect.Descriptor instead.

func (*WeatherResponse) GetAvailable

func (x *WeatherResponse) GetAvailable() bool

func (*WeatherResponse) GetCloudCover

func (x *WeatherResponse) GetCloudCover() int32

func (*WeatherResponse) GetCondition

func (x *WeatherResponse) GetCondition() string

func (*WeatherResponse) GetHumidity

func (x *WeatherResponse) GetHumidity() int32

func (*WeatherResponse) GetIsDay

func (x *WeatherResponse) GetIsDay() bool

func (*WeatherResponse) GetPrecipitation

func (x *WeatherResponse) GetPrecipitation() float32

func (*WeatherResponse) GetSeason

func (x *WeatherResponse) GetSeason() string

func (*WeatherResponse) GetTemperature

func (x *WeatherResponse) GetTemperature() float32

func (*WeatherResponse) GetTimeOfDay

func (x *WeatherResponse) GetTimeOfDay() string

func (*WeatherResponse) GetWeatherCode

func (x *WeatherResponse) GetWeatherCode() int32

func (*WeatherResponse) ProtoMessage

func (*WeatherResponse) ProtoMessage()

func (*WeatherResponse) ProtoReflect

func (x *WeatherResponse) ProtoReflect() protoreflect.Message

func (*WeatherResponse) Reset

func (x *WeatherResponse) Reset()

func (*WeatherResponse) String

func (x *WeatherResponse) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL