Documentation
¶
Overview ¶
Package common provides shared output modules that work across services.
All outputs in this package auto-register themselves via init() functions. Simply import this package to make all outputs available:
import _ "github.com/fulgidus/revoco/outputs/common"
Available outputs:
- local-folder: Copy/move files to local directory
- immich: Upload to Immich photo server
- photoprism: Upload to PhotoPrism server
- s3: Upload to S3-compatible storage
- google-photos-api: Upload to Google Photos via API
Package common provides shared output modules that work across services.
Index ¶
- type GooglePhotosOutput
- func (o *GooglePhotosOutput) ConfigSchema() []core.ConfigOption
- func (o *GooglePhotosOutput) Description() string
- func (o *GooglePhotosOutput) Export(ctx context.Context, item core.ProcessedItem) error
- func (o *GooglePhotosOutput) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error
- func (o *GooglePhotosOutput) Finalize(ctx context.Context) error
- func (o *GooglePhotosOutput) ID() string
- func (o *GooglePhotosOutput) Initialize(ctx context.Context, cfg core.OutputConfig) error
- func (o *GooglePhotosOutput) Name() string
- func (o *GooglePhotosOutput) SupportedItemTypes() []string
- type ImmichOutput
- func (o *ImmichOutput) ConfigSchema() []core.ConfigOption
- func (o *ImmichOutput) Description() string
- func (o *ImmichOutput) Export(ctx context.Context, item core.ProcessedItem) error
- func (o *ImmichOutput) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error
- func (o *ImmichOutput) Finalize(ctx context.Context) error
- func (o *ImmichOutput) ID() string
- func (o *ImmichOutput) Initialize(ctx context.Context, cfg core.OutputConfig) error
- func (o *ImmichOutput) Name() string
- func (o *ImmichOutput) SupportedItemTypes() []string
- type LocalFolderOutput
- func (o *LocalFolderOutput) ConfigSchema() []core.ConfigOption
- func (o *LocalFolderOutput) Description() string
- func (o *LocalFolderOutput) Export(ctx context.Context, item core.ProcessedItem) error
- func (o *LocalFolderOutput) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error
- func (o *LocalFolderOutput) ExportStream(ctx context.Context, item core.ProcessedItem, reader io.Reader, size int64) error
- func (o *LocalFolderOutput) Finalize(ctx context.Context) error
- func (o *LocalFolderOutput) ID() string
- func (o *LocalFolderOutput) Initialize(ctx context.Context, cfg core.OutputConfig) error
- func (o *LocalFolderOutput) Name() string
- func (o *LocalFolderOutput) SupportedItemTypes() []string
- func (o *LocalFolderOutput) SupportsStreaming() bool
- type PhotoprismOutput
- func (o *PhotoprismOutput) ConfigSchema() []core.ConfigOption
- func (o *PhotoprismOutput) Description() string
- func (o *PhotoprismOutput) Export(ctx context.Context, item core.ProcessedItem) error
- func (o *PhotoprismOutput) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error
- func (o *PhotoprismOutput) Finalize(ctx context.Context) error
- func (o *PhotoprismOutput) ID() string
- func (o *PhotoprismOutput) Initialize(ctx context.Context, cfg core.OutputConfig) error
- func (o *PhotoprismOutput) Name() string
- func (o *PhotoprismOutput) SupportedItemTypes() []string
- type S3Output
- func (o *S3Output) ConfigSchema() []core.ConfigOption
- func (o *S3Output) Description() string
- func (o *S3Output) Export(ctx context.Context, item core.ProcessedItem) error
- func (o *S3Output) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error
- func (o *S3Output) ExportStream(ctx context.Context, item core.ProcessedItem, reader io.Reader, size int64) error
- func (o *S3Output) Finalize(ctx context.Context) error
- func (o *S3Output) ID() string
- func (o *S3Output) Initialize(ctx context.Context, cfg core.OutputConfig) error
- func (o *S3Output) Name() string
- func (o *S3Output) SupportedItemTypes() []string
- func (o *S3Output) SupportsStreaming() bool
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GooglePhotosOutput ¶
type GooglePhotosOutput struct {
// contains filtered or unexported fields
}
GooglePhotosOutput uploads files to Google Photos via the API. Supports both OAuth and cookie-based authentication.
func NewGooglePhotos ¶
func NewGooglePhotos() *GooglePhotosOutput
NewGooglePhotos creates a new Google Photos API output.
func (*GooglePhotosOutput) ConfigSchema ¶
func (o *GooglePhotosOutput) ConfigSchema() []core.ConfigOption
func (*GooglePhotosOutput) Description ¶
func (o *GooglePhotosOutput) Description() string
func (*GooglePhotosOutput) Export ¶
func (o *GooglePhotosOutput) Export(ctx context.Context, item core.ProcessedItem) error
func (*GooglePhotosOutput) ExportBatch ¶
func (o *GooglePhotosOutput) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error
func (*GooglePhotosOutput) Finalize ¶
func (o *GooglePhotosOutput) Finalize(ctx context.Context) error
func (*GooglePhotosOutput) ID ¶
func (o *GooglePhotosOutput) ID() string
func (*GooglePhotosOutput) Initialize ¶
func (o *GooglePhotosOutput) Initialize(ctx context.Context, cfg core.OutputConfig) error
func (*GooglePhotosOutput) Name ¶
func (o *GooglePhotosOutput) Name() string
func (*GooglePhotosOutput) SupportedItemTypes ¶
func (o *GooglePhotosOutput) SupportedItemTypes() []string
type ImmichOutput ¶
type ImmichOutput struct {
// contains filtered or unexported fields
}
ImmichOutput uploads files to an Immich server via REST API.
func (*ImmichOutput) ConfigSchema ¶
func (o *ImmichOutput) ConfigSchema() []core.ConfigOption
func (*ImmichOutput) Description ¶
func (o *ImmichOutput) Description() string
func (*ImmichOutput) Export ¶
func (o *ImmichOutput) Export(ctx context.Context, item core.ProcessedItem) error
func (*ImmichOutput) ExportBatch ¶
func (o *ImmichOutput) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error
func (*ImmichOutput) ID ¶
func (o *ImmichOutput) ID() string
func (*ImmichOutput) Initialize ¶
func (o *ImmichOutput) Initialize(ctx context.Context, cfg core.OutputConfig) error
func (*ImmichOutput) Name ¶
func (o *ImmichOutput) Name() string
func (*ImmichOutput) SupportedItemTypes ¶
func (o *ImmichOutput) SupportedItemTypes() []string
type LocalFolderOutput ¶
type LocalFolderOutput struct {
// contains filtered or unexported fields
}
LocalFolderOutput copies processed files to a local directory.
func NewLocalFolder ¶
func NewLocalFolder() *LocalFolderOutput
NewLocalFolder creates a new local folder output.
func (*LocalFolderOutput) ConfigSchema ¶
func (o *LocalFolderOutput) ConfigSchema() []core.ConfigOption
func (*LocalFolderOutput) Description ¶
func (o *LocalFolderOutput) Description() string
func (*LocalFolderOutput) Export ¶
func (o *LocalFolderOutput) Export(ctx context.Context, item core.ProcessedItem) error
func (*LocalFolderOutput) ExportBatch ¶
func (o *LocalFolderOutput) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error
func (*LocalFolderOutput) ExportStream ¶
func (o *LocalFolderOutput) ExportStream(ctx context.Context, item core.ProcessedItem, reader io.Reader, size int64) error
func (*LocalFolderOutput) Finalize ¶
func (o *LocalFolderOutput) Finalize(ctx context.Context) error
func (*LocalFolderOutput) ID ¶
func (o *LocalFolderOutput) ID() string
func (*LocalFolderOutput) Initialize ¶
func (o *LocalFolderOutput) Initialize(ctx context.Context, cfg core.OutputConfig) error
func (*LocalFolderOutput) Name ¶
func (o *LocalFolderOutput) Name() string
func (*LocalFolderOutput) SupportedItemTypes ¶
func (o *LocalFolderOutput) SupportedItemTypes() []string
func (*LocalFolderOutput) SupportsStreaming ¶
func (o *LocalFolderOutput) SupportsStreaming() bool
type PhotoprismOutput ¶
type PhotoprismOutput struct {
// contains filtered or unexported fields
}
PhotoprismOutput uploads files to a Photoprism server via REST API.
func NewPhotoprism ¶
func NewPhotoprism() *PhotoprismOutput
NewPhotoprism creates a new Photoprism output.
func (*PhotoprismOutput) ConfigSchema ¶
func (o *PhotoprismOutput) ConfigSchema() []core.ConfigOption
func (*PhotoprismOutput) Description ¶
func (o *PhotoprismOutput) Description() string
func (*PhotoprismOutput) Export ¶
func (o *PhotoprismOutput) Export(ctx context.Context, item core.ProcessedItem) error
func (*PhotoprismOutput) ExportBatch ¶
func (o *PhotoprismOutput) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error
func (*PhotoprismOutput) ID ¶
func (o *PhotoprismOutput) ID() string
func (*PhotoprismOutput) Initialize ¶
func (o *PhotoprismOutput) Initialize(ctx context.Context, cfg core.OutputConfig) error
func (*PhotoprismOutput) Name ¶
func (o *PhotoprismOutput) Name() string
func (*PhotoprismOutput) SupportedItemTypes ¶
func (o *PhotoprismOutput) SupportedItemTypes() []string
type S3Output ¶
type S3Output struct {
// contains filtered or unexported fields
}
S3Output uploads files to S3-compatible object storage.
func (*S3Output) ConfigSchema ¶
func (o *S3Output) ConfigSchema() []core.ConfigOption
func (*S3Output) Description ¶
func (*S3Output) ExportBatch ¶
func (o *S3Output) ExportBatch(ctx context.Context, items []core.ProcessedItem, progress core.ProgressFunc) error