package main import ( "log" "github.com/andreykaipov/goobs" "github.com/andreykaipov/goobs/api/requests/inputs" "github.com/andreykaipov/goobs/api/requests/sceneitems" "github.com/andreykaipov/goobs/api/typedefs" ) func main() { // change this password lol! client, err := goobs.New("localhost:4455", goobs.WithPassword("lwihuN0OUVTMeCMM")) if err != nil { panic(err) } defer client.Disconnect() params := sceneitems.NewGetSceneItemListParams().WithSceneName("cmus") scil, err := client.SceneItems.GetSceneItemList(params) if err != nil { panic(err) } for i := range scil.SceneItems { if scil.SceneItems[i].SourceName == "Artist" { updateTextItem(client, scil.SceneItems[i]) } } } func updateTextItem(client *goobs.Client, sI *typedefs.SceneItem) { params := inputs.NewSetInputSettingsParams().WithInputName(sI.SourceName).WithInputUuid(sI.SourceUuid) params.InputSettings = make(map[string]any) params.InputSettings["text"] = "pens" _, err := client.Inputs.SetInputSettings(params) if err != nil { log.Fatal(err) } }