cgierke / homebridge-musiccast

2 stars 2 forks source link

Plugin no longer working #6

Closed mcfmichielsen closed 2 months ago

mcfmichielsen commented 7 months ago

Hi,

Not sure since when or how exactly, but the musiccast plugin is no longer working for me. The following is appearing in the homebridge logs

[20/11/2023, 13:23:58] [Musiccast] invalid config TypeError: Cannot read properties of undefined (reading 'map') at new MusiccastMultiroom (/var/lib/homebridge/node_modules/homebridge-musiccast-multiroom/src/main.ts:43:41) at ChildBridgeFork.startBridge (/var/lib/homebridge/node_modules/homebridge/src/childBridgeFork.ts:150:42)

I hope someone can assist?

cgierke commented 6 months ago

this looks like a config error, can you post your json config for the plugin here?

pavelvlodarczyk commented 4 months ago

Hi, I have similar error - version v0.2.8

invalid config TypeError: Cannot read properties of undefined (reading 'map') at new MusiccastMultiroom (/var/lib/homebridge/node_modules/homebridge-musiccast-multiroom/src/main.ts:52:41) at ChildBridgeFork.startBridge (/var/lib/homebridge/node_modules/homebridge/src/childBridgeFork.ts:150:42)

Section 'Client' is required or optional? Because after I delete this section and go back to edit, the section 'Client' autocomplete with IP 192.0.2.22.

My config:


{
    "name": "Yamaha RX-V6A",
    "server": {
        "host": "192.168.1.228",
        "volumePercentageLow": 25,
        "volumePercentageHigh": 65,
        "inputs": [
            {
                "input": "hdmi1",
                "name": "Apple TV"
            },
            {
                "input": "hdmi2",
                "name": "PS5"
            },
            {
                "input": "hdmi4",
                "name": "TV"
            },
            {
                "input": "tuner",
                "name": "Radio"
            },
            {
                "input": "airplay",
                "name": "AirPlay"
            }
        ]
    },
    "platform": "MusiccastMultiroom"
}
pavelvlodarczyk commented 4 months ago

Temporary solution is to add empty array in clients properties directly in JSON configuration:

or modify line 52 in main.ts


{
    "name": "Yamaha RX-V6A",
    "server": {
        "host": "192.168.1.228",
        "volumePercentageLow": 25,
        "volumePercentageHigh": 65,
        "inputs": [
            {
                "input": "hdmi1",
                "name": "Apple TV"
            },
            {
                "input": "hdmi2",
                "name": "PS5"
            },
            {
                "input": "hdmi4",
                "name": "TV"
            },
            {
                "input": "tuner",
                "name": "Radio"
            },
            {
                "input": "airplay",
                "name": "AirPlay"
            }
        ]
    },
    "clients": [],
    "platform": "MusiccastMultiroom"
}
pavelvlodarczyk commented 4 months ago

Apart from that above it seems to work in Apple Home app iOS 17.3.1 :) AV -> RX-V6A

After bridge is added there is info in widget log to add accessories manually:

Please add [RX-V6A DE26] manually in Home app (+). Setup Code: XXX-XX-XXX

It would be better if accessories will be added right after bridge is configured in Apple Home app

@cgierke nice job!

cgierke commented 4 months ago

Temporary solution is to add empty array in clients properties directly in JSON configuration

@pavelvlodarczyk thanks for figuring that out, I will make the config handling more resilient in a future release!

cgierke commented 2 months ago

fixed in https://github.com/cgierke/homebridge-musiccast/releases/tag/v0.2.10, "clients" section is now optional