New Bang Olufsen Masterlink Gateway / Beolink Gateway integration (MLGW/BLGW)

Thanks for the reply! Here is my mlgwpservices.json

{"port":9000,"project":"M6","sn":"00000000","timestamp":1707242269,"version":"2","zones":[{"cameras":[],"name":"Living","number":1,"products":[{"Beo4NavButton":false,"MLN":2,"name":"BeoVision 10-40","sources":[]},{"Beo4NavButton":false,"MLN":4,"name":"BeoSound 9000","sources":[{"channels":[{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Radio_1_logo.png","name":"Radio 1","selectSEQ":[1]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Klara_logo.jpg","name":"Klara","selectSEQ":[3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/nosta_plus.png","name":"Nosta+","selectSEQ":[7]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/classic_21.png","name":"Classic21","selectSEQ":[2,1]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/musiq3.png","name":"Musiq3","selectSEQ":[2,3]}],"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":129,"format":"F0","unit":0}],"selectID":129,"statusID":111,"uiType":"13.0"},{"bcpHost":"BeoMaster5.local","channels":[{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Radio_1_logo.png","name":"Radio 1","selectSEQ":[1]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/AlohaJoeRelaxationIsland.jpg","name":"Aloha Joe relaxation Island","selectSEQ":[2]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Klara_logo.jpg","name":"Klara","selectSEQ":[3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/klara-continuo-dark.jpg","name":"Klara Continuo","selectSEQ":[4]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/otto_baroque.png","name":"Otto's Baroque","selectSEQ":[5]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/musiq3.png","name":"Musiq3","selectSEQ":[2,3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/musiq3_baroque.jpg","name":"Musiq3 Baroque","selectSEQ":[2,4]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/francemusique.png","name":"France Musique","selectSEQ":[3,3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/francemusique_la-baroque.jpg","name":"FM La Baroque","selectSEQ":[3,4]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/francemusique_la-jazz.jpg","name":"FM La Jazz","selectSEQ":[3,5]}],"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":147,"format":"F0","unit":0}],"selectID":147,"statusID":161,"uiType":"10.0"},{"bcpHost":"BeoMaster5.local","destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":148,"format":"F0","unit":0}],"selectID":148,"statusID":0,"uiType":"9.0"},{"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":146,"format":"F0","unit":0}],"selectID":146,"statusID":141,"uiType":"4.10"}]},{"Beo4NavButton":false,"MLN":5,"name":"BeoSound 5","sources":[{"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":131,"format":"F0","unit":0}],"selectID":131,"statusID":151,"uiType":"0.0"}]}],"scenes":[]},{"cameras":[],"name":"Keuken","number":2,"products":[{"Beo4NavButton":false,"MLN":3,"name":"Active Link 1","sources":[{"channels":[{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Radio_1_logo.png","name":"Radio 1","selectSEQ":[1]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Klara_logo.jpg","name":"Klara","selectSEQ":[3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/nosta_plus.png","name":"Nosta+","selectSEQ":[7]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/classic_21.png","name":"Classic21","selectSEQ":[2,1]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/musiq3.png","name":"Musiq3","selectSEQ":[2,3]}],"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":129,"format":"F0","unit":0}],"selectID":129,"statusID":111,"uiType":"13.0"},{"bcpHost":"BeoMaster5.local","channels":[{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Radio_1_logo.png","name":"Radio 1","selectSEQ":[1]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/AlohaJoeRelaxationIsland.jpg","name":"Aloha Joe relaxation Island","selectSEQ":[2]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Klara_logo.jpg","name":"Klara","selectSEQ":[3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/klara-continuo-dark.jpg","name":"Klara Continuo","selectSEQ":[4]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/otto_baroque.png","name":"Otto's Baroque","selectSEQ":[5]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/musiq3.png","name":"Musiq3","selectSEQ":[2,3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/musiq3_baroque.jpg","name":"Musiq3 Baroque","selectSEQ":[2,4]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/francemusique.png","name":"France Musique","selectSEQ":[3,3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/francemusique_la-baroque.jpg","name":"FM La Baroque","selectSEQ":[3,4]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/francemusique_la-jazz.jpg","name":"FM La Jazz","selectSEQ":[3,5]}],"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":147,"format":"F0","unit":0}],"selectID":147,"statusID":161,"uiType":"10.0"},{"bcpHost":"BeoMaster5.local","destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":148,"format":"F0","unit":0}],"selectID":148,"statusID":0,"uiType":"9.0"},{"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":146,"format":"F0","unit":0}],"selectID":146,"statusID":141,"uiType":"4.10"}]}],"scenes":[{"button":1,"hints":{"alwaysVisible":true},"name":"Knop"}]},{"cameras":[],"name":"Slaapkamer","number":3,"products":[{"Beo4NavButton":false,"MLN":1,"name":"Passive Link","sources":[{"channels":[{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Radio_1_logo.png","name":"Radio 1","selectSEQ":[1]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Klara_logo.jpg","name":"Klara","selectSEQ":[3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/nosta_plus.png","name":"Nosta+","selectSEQ":[7]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/classic_21.png","name":"Classic21","selectSEQ":[2,1]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/musiq3.png","name":"Musiq3","selectSEQ":[2,3]}],"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":129,"format":"F0","unit":0}],"selectID":129,"statusID":111,"uiType":"13.0"},{"bcpHost":"BeoMaster5.local","channels":[{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Radio_1_logo.png","name":"Radio 1","selectSEQ":[1]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/AlohaJoeRelaxationIsland.jpg","name":"Aloha Joe relaxation Island","selectSEQ":[2]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/VRT_Klara_logo.jpg","name":"Klara","selectSEQ":[3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/klara-continuo-dark.jpg","name":"Klara Continuo","selectSEQ":[4]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/otto_baroque.png","name":"Otto's Baroque","selectSEQ":[5]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/musiq3.png","name":"Musiq3","selectSEQ":[2,3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/musiq3_baroque.jpg","name":"Musiq3 Baroque","selectSEQ":[2,4]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/francemusique.png","name":"France Musique","selectSEQ":[3,3]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/francemusique_la-baroque.jpg","name":"FM La Baroque","selectSEQ":[3,4]},{"icon":"http:\/\/leo.local\/mlgw\/logos\/francemusique_la-jazz.jpg","name":"FM La Jazz","selectSEQ":[3,5]}],"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":147,"format":"F0","unit":0}],"selectID":147,"statusID":161,"uiType":"10.0"},{"bcpHost":"BeoMaster5.local","destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":148,"format":"F0","unit":0}],"selectID":148,"statusID":0,"uiType":"9.0"},{"destination":1,"format":"F0","link":0,"name":"","secondary":0,"selectCmds":[{"cmd":146,"format":"F0","unit":0}],"selectID":146,"statusID":141,"uiType":"4.10"}]}],"scenes":[]},{"cameras":[],"name":"Bureau","number":4,"products":[],"scenes":[]}]}

Hey @eil047 your source names are blank :slight_smile:

“name”: “”

you need to define the source names in the BLGW / MLGW, check out the documentation of the plugin.

Okay! Thanks for the hint! I left these Name fields empty in my MLGW since the Source fields themselves that appeared in the BeoLink app (cf screenshot) were clear enough. After duplicating them in the dedicated Name fields, everything appears fine now in the Media Player source dropdown lists :smiley:
Many thanks!

1 Like

Hello Giovanni,
i installed your mlgw integration in Home Assistent. Thank you for that. It’s working great.

Now I want to switch on/off Lights with the B&O mlgw Smartphone App. I want to use for that Mlgw custom strings. I created this string :
curl - X POST -H “Content-Type: application/json” -H “Authorization: Bearer XXXX” -d ‘{“event_type”: “mlgw.ML_telegram”, “data”: {“message”: “Hallo, dies ist eine Testnachricht.”}}’ http://XXX.XXX.XXX.XX:8123/api/events/mlgw.ML_telegram
This is working with Mac Terminal
The following modification for mlgw is not running:
POST /api/events/mlgw.ML_telegram\0D\0AAuthorization: Bearer XXXX\0D\0AContent-Type: application/json\0D\0AC\0D\0A{“event_type”: “mlgw.ML_telegram”\0D\0A"message": “Hallo, dies ist eine Testnachricht.”}
Do yo have a hint for me?
Many Thanks
Jörg

this is a config that worked for me in the past:

I remember the Content-length did matter

POST /api/services/scene/turn_on HTTP/1.1\0D\0AAuthorization: Bearer \0D\0AContent-Type: application/json\0D\0AContent-Length: 31\0D\0A\0D\0A{\"entity_id\": \"scene.patio_on\"}

Hello Giovanni,
many thanks for the hint.
It’s working
Jörg

1 Like

Hello Giovanni,
how can i check, if the “Direct MasterLink backdoor” is activated?
If not: How can i activate the backdoor?

Many thanks in advance
Jörg

Check the documentation. You need to enable ML during configuration and enter the admin password for the MLGW. If you get ML telegrams in your events then it works.

Thanks, it works!
→ I can’t control all lights with beoOne, Beo4, Beo5 and the iPhone App.
Your mlgw integration is very god!