rudyberends / homebridge-loxone-proxy

Homebridge Dynamic Platform Plugin which exposes a Loxone System to Homekit
Apache License 2.0
11 stars 6 forks source link

Intercom doesn't work #92

Closed miquelferrerllompart closed 5 months ago

miquelferrerllompart commented 5 months ago

Hello, First of all, thank you very much for keeping this plugin active and updated for the community, the work behind it is spectacular!

I am trying to integrate a Loxone Intercom that works perfectly through the Loxone app, but it does not work in the Apple Home app. The device can be visited in the Apple Home app, but it never shows any video.

Do I need any extra configuration or something that is not in the repository's documentation?

Thanks!

rudyberends commented 5 months ago

Are you using a Loxone intercom, or are you using a 3th party webcam feed? Would you mind sharing your intercom specific configuration in from the structure file? You can find the structure file at http://192.168.1.1/data/loxapp3.json. Replace the ip with the ip of your miniserver. the item of concern is "type: intercom"

miquelferrerllompart commented 5 months ago

Hi @rudyberends! I don't use third-party webcams, is the Loxone intercom. I could see the error on the logs:

[02/04/2024, 18:47:16] [LoxonePlatform] SNAPSHOT: [tcp @ 0xf7df1f30] Failed to resolve hostname object Object: Name does not resolve

[02/04/2024, 18:47:16] [LoxonePlatform] SNAPSHOT: http://[object Object]/mjpg/video.mjpg: I/O error

[02/04/2024, 18:47:25] [LoxonePlatform] FFmpeg exited with code: 1 and signal: null (Error) undefined
[02/04/2024, 18:47:25] [LoxonePlatform] Stopped video stream. undefined

Here is the structure of the intercom element attached:

"18b7c97d-0002-82f4-ffff54ec1d8d62e8": {
      "name": "Videoportero",
      "type": "IntercomV2",
      "uuidAction": "18b7c97d-0002-82f4-ffff54ec1d8d62e8",
      "room": "17a56f1c-00a9-3ccb-ffff7845349266d3",
      "cat": "17a935a1-0010-d737-ffff7845349266d3",
      "defaultRating": 10,
      "isFavorite": true,
      "isSecured": false,
      "restrictions": 0,
      "details": {
        "jLockable": true,
        "deviceType": 1,
        "serialNr": "504F94E013A6",
        "deviceUuid": "18b7c764-0201-6a89-ffff54ec1d8d62e8",
        "deviceName": "Intercom acceso inferior",
        "optionsFramerate": [
          {
            "id": 5,
            "name": "5 fps"
          },
          {
            "id": 10,
            "name": "10 fps"
          },
          {
            "id": 15,
            "name": "15 fps"
          },
          {
            "id": 20,
            "name": "20 fps"
          }
        ],
        "optionsResolution": [
          {
            "id": 240,
            "name": "240p"
          },
          {
            "id": 360,
            "name": "360p"
          },
          {
            "id": 480,
            "name": "480p"
          },
          {
            "id": 720,
            "name": "720p"
          }
        ]
      },
      "states": {
        "jLocked": "98b7c97d-0002-82e9-ffff160a2699d690",
        "muted": "18b7c97d-0002-82e7-ffff160a2699d690",
        "bell": "18b7c97d-0002-82df-ffff160a2699d690",
        "version": "18b7c97d-0002-82de-ffff160a2699d690",
        "address": "18b7c97d-0002-82e0-ffff160a2699d690",
        "answers": "18b7c97d-0002-82e1-ffff160a2699d690",
        "deviceState": "18b7c97d-0002-82e2-ffff160a2699d690",
        "videoSettingsIntern": "18b7c97d-0002-82e3-ffff160a2699d690",
        "videoSettingsExtern": "18b7c97d-0002-82e4-ffff160a2699d690"
      },
      "links": [
        "17ad2b21-01db-6adf-ffff54ec1d8d62e8",
        "17ad2b21-01db-6ae2-ffff54ec1d8d62e8",
        "17ad2b21-01db-6ae5-ffff54ec1d8d62e8"
      ],
      "subControls": {
        "18b7c97d-0002-82f4-ffff54ec1d8d62e8/1": {
          "name": "Puerta",
          "type": "Pushbutton",
          "uuidAction": "18b7c97d-0002-82f4-ffff54ec1d8d62e8/1",
          "defaultRating": 0,
          "isFavorite": false,
          "isSecured": false,
          "restrictions": 0,
          "states": {
            "active": "18b7c97d-0002-82f0-ffff160a2699d690"
          }
        },
        "18b7c97d-0002-82f4-ffff54ec1d8d62e8/2": {
          "name": "Barrera",
          "type": "Pushbutton",
          "uuidAction": "18b7c97d-0002-82f4-ffff54ec1d8d62e8/2",
          "defaultRating": 0,
          "isFavorite": false,
          "isSecured": false,
          "restrictions": 0,
          "states": {
            "active": "18b7c97d-0002-82f1-ffff160a2699d690"
          }
        },
        "18b7c97d-0002-82f4-ffff54ec1d8d62e8/3": {
          "name": "Luz",
          "type": "Pushbutton",
          "uuidAction": "18b7c97d-0002-82f4-ffff54ec1d8d62e8/3",
          "defaultRating": 0,
          "isFavorite": false,
          "isSecured": false,
          "restrictions": 0,
          "states": {
            "active": "18b7c97d-0002-82f2-ffff160a2699d690"
          }
        }
      }
    },
rudyberends commented 5 months ago

This should work without any changes. I also have an intercomv2 in my setup. Your intercom object has an address state (18b7c97d-0002-82e0-ffff160a2699d690). If you subscribe to this state, you will receive the ip address of the intercom.

Your logfile suggests the ip address cannot be correctly retrieved from the state ([object Object]).

Would you be able to put your homebridge in debug mode? If you restart homebridge you should see a lot of debug messages from the plugin. The one we are concerned with is the messages for the intercom.

In my case it shows; [4/2/2024, 5:44:53 PM] [LoxonePlatform] [Voordeur] Found Loxone Intercom on IP: 192.168.1.201

Does your log show the correct ip?

Just to make sure basic streaming works. Can you access http://"intercomip"/mjpg/video.mjpg in a webbrowser? The site should ask for credentials and you should be able to authenticate using the credentials you entered in the plugin to access the miniserver.

Also, does the object in Loxone config show a valid ipv4 ip adres in "network address"?

miquelferrerllompart commented 5 months ago

@rudyberends Solved! 🎉 The issue was with the Loxone configuration. The network Address had the local host name instead of the IP address, for some unknown reason. Everything is working now. Thank you for your prompt support!