figure out how to update a text item

This commit is contained in:
Octopus Octopus 2025-02-22 10:31:35 -06:00
parent a8daa54a1c
commit b5adb5a747
2 changed files with 22 additions and 8 deletions

Binary file not shown.

30
main.go
View File

@ -1,26 +1,40 @@
package main
import (
"fmt"
"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("wtiR9XcQ78a2kiNA"))
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)
version, err := client.General.GetVersion()
if err != nil {
panic(err)
}
fmt.Printf("OBS Studio version: %s\n", version.ObsVersion)
fmt.Printf("Server protocol version: %s\n", version.ObsWebSocketVersion)
fmt.Printf("Client protocol version: %s\n", goobs.ProtocolVersion)
fmt.Printf("Client library version: %s\n", goobs.LibraryVersion)
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)
}
}