github.com/muxinc/mux-go@v1.1.1/examples/video/everything/list-everything.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"os"
     6  
     7  	"github.com/muxinc/mux-go"
     8  )
     9  
    10  func checkError(err error) {
    11  	if err != nil {
    12  		fmt.Printf("err: %s \n\n", err)
    13  		os.Exit(255)
    14  	}
    15  }
    16  
    17  func main() {
    18  	// API Client Init
    19  	client := muxgo.NewAPIClient(
    20  		muxgo.NewConfiguration(
    21  			muxgo.WithBasicAuth(os.Getenv("MUX_TOKEN_ID"), os.Getenv("MUX_TOKEN_SECRET")),
    22  		))
    23  
    24  	// List Assets
    25  	fmt.Println("Listing Assets: \n")
    26  	assets, err := client.AssetsApi.ListAssets()
    27  	checkError(err)
    28  	for _, asset := range assets.Data {
    29  		fmt.Printf("Asset ID: %s\n", asset.Id)
    30  		fmt.Printf("Status: %s\n", asset.Status)
    31  		fmt.Printf("Duration: %f\n\n", asset.Duration)
    32  	}
    33  
    34  	// List Live Streams
    35  	fmt.Println("Listing Live Streams: \n")
    36  	streams, err := client.LiveStreamsApi.ListLiveStreams()
    37  	checkError(err)
    38  	for _, stream := range streams.Data {
    39  		fmt.Printf("Live Stream ID: %s\n", stream.Id)
    40  		fmt.Printf("Status: %s\n", stream.Status)
    41  		fmt.Printf("Stream Key: %s\n\n", stream.StreamKey)
    42  	}
    43  
    44  	// List Direct Uploads
    45  	fmt.Println("Listing Direct Uploads: \n")
    46  	uploads, err := client.DirectUploadsApi.ListDirectUploads()
    47  	checkError(err)
    48  	for _, upload := range uploads.Data {
    49  		fmt.Printf("Status: %s\n", upload.Status)
    50  		fmt.Printf("New Asset ID: %s\n\n", upload.AssetId)
    51  	}
    52  
    53  	// List URL Signing Keys
    54  	fmt.Println("Listing URL Signing Keys: \n")
    55  	keys, err := client.URLSigningKeysApi.ListUrlSigningKeys()
    56  	for _, key := range keys.Data {
    57  		fmt.Printf("Signing Key ID: %s\n\n", key.Id)
    58  	}
    59  }