This commit is contained in:
cangui 2025-06-19 19:54:17 +02:00
parent 196c29cd70
commit 954b9c9037
2 changed files with 47 additions and 48 deletions

View File

@ -525,57 +525,56 @@ func (c *Client) ListFiles(ctx context.Context, parentID string) ([]File, error)
} }
// =========================== Stream =========================== // =========================== Stream ===========================
func (c *Client) CreateTranscode(ctx context.Context, fileID, preset string) (string, error) { // func (c *Client) CreateTranscode(ctx context.Context, fileID, preset string) (string, error) {
var resp struct{ TranscodeID string `json:"transcodeId"` } // var resp struct{ TranscodeID string `json:"transcodeId"` }
body := map[string]string{"fileId": fileID, "preset": preset} // body := map[string]string{"fileId": fileID}
if err := c.doJSON(ctx, "POST", "stream/transcode", nil, body, &resp); err != nil { // if err := c.doJSON(ctx, "POST", "stream/transcode", nil, body, &resp); err != nil {
return "", err // return "", err
} // }
return resp.TranscodeID, nil // return resp.TranscodeID, nil
} // }
func (c *Client) GetTranscode(ctx context.Context, fileID string) (*StreamInfo, error) { func (c *Client) CreateTranscode(ctx context.Context, fileID string) (*StreamInfo, error) {
body := struct { requestBody := map[string]string{
ID string `json:"id"` "id": fileID,
}{ }
ID: fileID,
}
var raw struct { var raw struct {
Success bool `json:"success"` Success bool `json:"success"`
Value struct { Value struct {
ID string `json:"id"` ID string `json:"id"`
StreamURL string `json:"streamUrl"` StreamURL string `json:"streamUrl"`
DownloadURL string `json:"downloadUrl"` DownloadURL string `json:"downloadUrl"`
Type string `json:"type"` Type string `json:"type"`
MimeType string `json:"mimetype"` MimeType string `json:"mimetype"`
Domain string `json:"domain"` Domain string `json:"domain"`
File struct { File struct {
ID string `json:"id"` ID string `json:"id"`
Name string `json:"name"` Name string `json:"name"`
Size int64 `json:"size"` Size int64 `json:"size"`
Source string `json:"source"` Source string `json:"source"`
} `json:"file"` } `json:"file"`
} `json:"value"` } `json:"value"`
} }
path := "stream/transcode/add" path := "stream/transcode/add"
if err := c.doJSON(ctx, "POST", path, nil, body, &raw); err != nil { if err := c.doJSON(ctx, "POST", path, nil, requestBody, &raw); err != nil {
return nil, err return nil, err
} }
info := &StreamInfo{ info := &StreamInfo{
ID: raw.Value.ID, ID: raw.Value.ID,
StreamURL: raw.Value.StreamURL, StreamURL: raw.Value.StreamURL,
DownloadURL: raw.Value.DownloadURL, DownloadURL: raw.Value.DownloadURL,
Type: raw.Value.Type, Type: raw.Value.Type,
MimeType: raw.Value.MimeType, MimeType: raw.Value.MimeType,
Domain: raw.Value.Domain, Domain: raw.Value.Domain,
FileID: raw.Value.File.ID, FileID: raw.Value.File.ID,
FileName: raw.Value.File.Name, FileName: raw.Value.File.Name,
FileSize: raw.Value.File.Size, FileSize: raw.Value.File.Size,
} }
return info, nil return info, nil
} }

View File

@ -309,7 +309,7 @@ func HandleAddJob(db *gorm.DB) http.HandlerFunc {
// Enregistre chaque lien comme un job "en attente" // Enregistre chaque lien comme un job "en attente"
for _, l := range links { for _, l := range links {
streamInfo, err := client.GetTranscode(ctx, l.ID) streamInfo, err := client.CreateTranscode(ctx,l.ID)
if err != nil { if err != nil {
log.Println("Erreur GetTranscode:", err) log.Println("Erreur GetTranscode:", err)
return return