XMR not working - Property of Non-Object

Hi,

I’m trying to get XMR working but seem to be getting nowhere.

I have checked the PHP Error log and it has loads of these errors:

[12-Aug-2019 19:53:41 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:54:01 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:54:07 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:54:11 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:54:22 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:54:32 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:54:42 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:54:44 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:54:52 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:55:02 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:55:08 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:55:13 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:55:23 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:55:33 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:55:43 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478
[12-Aug-2019 19:55:53 Europe/London] PHP Notice: Trying to get property ‘displayId’ of non-object in C:\wamp\xibo-cms-2.0.3\lib\Xmds\Soap4.php on line 478

Can anyone translate please?

Trev

Here is a troubleshoot.zip to go with this.

Trev

Is anyone able to offer any help on this?

Trev

The errors you list there aren’t related to XMR in any way. They come from the webservice the Players pickup general updates from.

The best way forward is to run the suggested installation - Docker on Linux - and then we’ll be able to offer you more in the way of support, than for a custom install where there are so many possible variables as to why something may not work as expected.

Hi Alex,

I have moved to 2.0.5 Docker release and got everything working now apart from XMR, it is still not working.

I have a troubleshoot file here, would you please take a look to see if you are able to advise?

Thanks

Trev

Hi @alex and @DanBW,

Could one of you take a look at this for me please?

Thanks

Trev

If you’re using Docker, then XMR comes pre-configured for you.

All you need to do is set the public address. Did you do that? If so, what did you set it to?

It should be the IP address or DNS hostname of your server in the format

tcp://1.2.3.4:9505
tcp://server.example.org:9505

Once you’ve set that XMR will work assuming that the Players can access the CMS on that port (ie there’s no firewall blocking access)

Hi @alex,

I can confirm this notices persist on Xibo for Docker 2.1.0.
XMR is working fine in my case but the apache error.log inside the docker container is full of Soap notices:

$ docker exec -it xibo_cms-web_1 /bin/bash
$ bash-4.4# tail -f /var/log/apache2/error.log

[Thu Aug 29 12:30:30.984496 2019] [php7:notice] [pid 78] [client 172.19.0.1:42406] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:30:31.997643 2019] [php7:notice] [pid 76] [client 172.19.0.1:42416] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:30:41.892314 2019] [php7:notice] [pid 81] [client 172.19.0.1:42434] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:30:42.707324 2019] [php7:notice] [pid 77] [client 172.19.0.1:42442] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:30:52.137762 2019] [php7:notice] [pid 80] [client 172.19.0.1:42480] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:30:53.162100 2019] [php7:notice] [pid 87] [client 172.19.0.1:42490] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:31:02.733962 2019] [php7:notice] [pid 79] [client 172.19.0.1:42528] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:31:03.765076 2019] [php7:notice] [pid 78] [client 172.19.0.1:42538] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:31:06.288946 2019] [php7:notice] [pid 80] [client 172.19.0.1:42564] PHP Notice:  Undefined index: value in /var/www/cms/lib/Xmds/Soap5.php on line 130
[Thu Aug 29 12:31:06.288980 2019] [php7:notice] [pid 80] [client 172.19.0.1:42564] PHP Notice:  Undefined offset: 1 in /var/www/cms/lib/Xmds/Soap5.php on line 131
[Thu Aug 29 12:31:06.288997 2019] [php7:notice] [pid 80] [client 172.19.0.1:42564] PHP Notice:  Undefined index: value in /var/www/cms/lib/Xmds/Soap5.php on line 130
[Thu Aug 29 12:31:06.289007 2019] [php7:notice] [pid 80] [client 172.19.0.1:42564] PHP Notice:  Undefined offset: 1 in /var/www/cms/lib/Xmds/Soap5.php on line 131
[Thu Aug 29 12:31:06.289092 2019] [php7:notice] [pid 80] [client 172.19.0.1:42564] PHP Notice:  Undefined index: value in /var/www/cms/lib/Xmds/Soap5.php on line 130
[Thu Aug 29 12:31:06.289103 2019] [php7:notice] [pid 80] [client 172.19.0.1:42564] PHP Notice:  Undefined offset: 1 in /var/www/cms/lib/Xmds/Soap5.php on line 131
[Thu Aug 29 12:31:06.289115 2019] [php7:notice] [pid 80] [client 172.19.0.1:42564] PHP Notice:  Undefined index: value in /var/www/cms/lib/Xmds/Soap5.php on line 130
[Thu Aug 29 12:31:06.289146 2019] [php7:notice] [pid 80] [client 172.19.0.1:42564] PHP Notice:  Undefined offset: 1 in /var/www/cms/lib/Xmds/Soap5.php on line 131
[Thu Aug 29 12:31:06.563235 2019] [php7:notice] [pid 77] [client 172.19.0.1:42560] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 568
[Thu Aug 29 12:31:06.581696 2019] [php7:notice] [pid 87] [client 172.19.0.1:42572] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap.php on line 802
[Thu Aug 29 12:31:06.909415 2019] [php7:notice] [pid 84] [client 172.19.0.1:42584] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap.php on line 297
[Thu Aug 29 12:31:07.209917 2019] [php7:notice] [pid 79] [client 172.19.0.1:42594] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap.php on line 1609
[Thu Aug 29 12:31:07.445359 2019] [php7:notice] [pid 76] [client 172.19.0.1:42606] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:31:07.515076 2019] [php7:notice] [pid 78] [client 172.19.0.1:42602] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap.php on line 1414
[Thu Aug 29 12:31:13.321539 2019] [php7:notice] [pid 81] [client 172.19.0.1:42624] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap4.php on line 478
[Thu Aug 29 12:31:14.247572 2019] [php7:notice] [pid 80] [client 172.19.0.1:42632] PHP Notice:  Trying to get property 'displayId' of non-object in /var/www/cms/lib/Xmds/Soap.php on line 1717

Regards,
Luismi.

Hi @alex,

All Displays are showing as XMR Registered.
XMR Public Address is:
Against the display - tcp://xibo.pointofrental.co.uk:9505
The Display profile - tcp://xibo.pointofrental.co.uk:9505
Setting Displays - tcp://xibo.pointofrental.co.uk:9505

I have closed and reopened the players after changing the settings, tried to Collect Now, pushed out new screens and campaigns, noting seems to change until the 5 minute interval elapses. Push changes are not doing anything.

I look forward to hearing back from you.

Regards

Trev

Have you edited each display, ticked Reconfigure XMR, waited 1 collection interval, and then tried?

If your XMR keys are out of sync, it won’t work.

There’s also no need to set the XMR address on the Display Settings Profile, unless it really should be different for that profile (for example where you have a multi-homed server). You should leave those blank otherwise, and set it only in the main CMS settings.

Check too that there’s no firewall blocking access to TCP port 9505 from the Players. If the hostname you give above is supposed to be open to the public internet, then it isn’t currently.

I have ticked the Reconfigure and waited, it makes no difference.

So do I need to remove the setting from the profile or being the same will it be OK.

Definitely not a FW issue. Port 9505 is not open externally although the CMS is (on a different port). Internally I have all Firewalls down and still have the issue.

Thanks

Trev

Check the Status screen on the Player. It will show your XMR activity. What does it show for the last time a packet was received?

I would remove it from the Display Profile. It won’t hurt to have it set in both places, but it increases the chance of someone missing that if it ever changes in the future. It’s best practise to have it only in the main settings unless you need to override it.

It doesn’t appear to show any packets at all:

Then I’d suggest either a firewall is blocking access, or in your docker-compose.yml file, you don’t have XMR port exposed to the network.

What does docker ps show on the server?

If it’s Docker Toolbox, did you map port 9505 through in the network settings in VirtualBox as well as your HTTP port?

Firewall is definitely down (unless there is one in the Docker config I don’t know about).

Docker PS shows

So you have port 9505 mapped to port 65500

You’ll either need to change your XMR address to be tcp://xibo.pointofrental.co.uk:65500 or change your compose file to use port 9505.

If you’re changing the address, make sure to change it in both places if you’ve not already removed the duplicate entry.

I have just changed that in cms_custom-ports Will update up once it is back up.

If it is this I’m going to feel a right idiot!!!

1 Like

Still the same.

Docker PS is now:

Now you have port 9505 being directed to the inside of the container on port 65500 where there won’t be anything listening.

You want both ports set to 9505.

cms-xmr:
    image: xibosignage/xibo-xmr:release-0.7
    ports:
        - "9505:9505"

OK, doing that now.

Will report back