Loxone Miniserver
Content
About
The Loxone Smart Home
The special thing about the Loxone Home Automation solution is the perfect integration of all its components. The systems and devices within your home are co-ordinated, working in harmony to adapt to your needs, wishes and habits. 24/7. Without compromise.
Company website https://www.loxone.com
Version 12
Loxone Miniserver | 2N IP Intercom | Video preview | Video in call | Audio in call | Switch control |
---|---|---|---|---|---|
12.2.11.5 | 2.33 |
Make sure that Automation is set on the intercom side. Download an exemplary Automation file here.
Caution
- Remember to purchase the Enhanced video license.
Once the main call button is pressed on the intercom, the intercoms sends an HTTP command to the Loxone mini server. The command to be sent to the Loxone mini server is as follows:
General syntax:
<user>:<password>@<IP address of Loxone mini server>/dev/sps/io/<UUID name of Virtual input object>/<action>
Where
- UUID – virtual input object name in the Loxone mini server. The object name in this example is "trigger".
- Action – on/off command
Example: admin:admin@192.168.50.182 /dev/sps/io/trigger/on
Note
Edit the login data in the Peripheral menu in the Users section. You can also create a new user and define its password so that admin need not be used.
The SendHttpRequest object sends an HTTP command to the Loxone mini server. As the object has user name and password fields of its own, the user name and password need not be defined in the HTTP command directly. Hence, the HTTP command URL format will only be 192.168.50.182 /dev/sps/io/trigger/on and the user name and password are completed in the respective fields.
When the button is pressed, the Delay object is activated and the intercom sends another HTPP command after a timeout to deactivate the virtual input in the Loxone mini server.
Example: 192.168.50.182 /dev/sps/io/trigger/off
Furthermore, you can add the PlayUserSound object and upload a user audio file with the ring tone or an informative message to signal to the user in front of the intercom that the intercom is trying to connect a call.
HttpTrigger is another automation object, where the dtmf key name is set. If someone presses the door unlock button in the Loxone app, the Loxone mini server sends the HTTP command http://192.168.50.188/enu/trigger/dtmf with the dtmf key name and the intercom processes it and activates the output assigned to switch 1 in this example.
Incoming call enable and camera HTTP API access are the last step.
Loxone App Settings (12.2.8)
Application available for both iOS and Android.
Loxone App Settings (12.2.8)
The application is available for download at AppStore and GooglePlay. Download the latest version here.
Call Outside LAN
Do the following to receive calls from intercoms outside your LAN:
- Create a SIP account on a public SIP server, which also allows anonymous call to be made, and then edit the settings both in the intercom and Loxone mini server.
- Register the Loxone mini server on the Loxone web site.
- Set port forwarding for the application remote access and video receiving.
- Set push notifications.
Note
The Loxone app/Loxone mini server is always the one to initiate a SIP call. These calls are anonymous, i.e. the Loxone mini server is not registered anywhere and just tries to set up a call to the defined destination.
For external calls outside the LAN, it is only necessary to register the intercom to a public SIP server. The configuration set on the Door Controller object is the same as the one used by the application. The Loxone mini server/app cannot be registered with a SIP Proxy server. The Loxone mini server tries to make an anonymous call to an intercom registered with a SIP Proxy server (SIP data completed at Door Controller). The Loxone app is not a full SIP client, which should also be registered with the same Proxy server like the intercom. Therefore, it is necessary only to use the SIP servers that allow calls to be made via their servers without registration.
SIP Account Setting
As already mentioned above, it is necessary to create an account on a public SIP server, which also allows calls to be received from unregistered sources. A service from antisip.com. was used in the example. Once the account is created, connect the intercom to this account using the login data provided by antisip.com. Configure the SIP account in the Services – Phone – SIP 1 or SIP 2 intercom section.
The intercom login data obtained from antisip.com are as follows:
Now that the intercom is registered to the SIP Proxy server, edit the Door Controller settings to make the Loxone mini server set up a call to this external SIP Proxy server. Set the following properties:
- Host for audio (external) – external SIP server domain name or IP
- Audio username (external) – contact to be called by the Loxone mini server
- URL video stream (external)
Port Forwarding
Set port forwarding on the router to connect the Loxone app to the mini server in your LAN. Loxone provides remote access. Therefore, register the Loxone mini server at their sites first. Once registered, the Loxone mini server will be assigned a specific domain name. Then the Loxone mini server will be connected to the Loxone servers using this domain name. The domain name format is: dns.loxonecloud.com/<Loxone mini server serial number>. The Loxone servers will detect and store information on the public IP address from which the Loxone mini server sends data and stores port settings for remote access from the Loxone mini server. The Loxone app, connected somewhere in the Internet, is also connected to the Loxone servers using the same domain name. Trying to connect to your Loxone mini server, the application communicates with the Loxone servers via the domain name and the servers resend the information to your router public IP address. If port forwarding is set properly, the router will resend data to the Loxone mini server in the LAN.
Note
It is impossible to use the default password for remote connection – change the password or use another user for access from the application. Edit the password in the Peripheral menu in the Users section.
Specify the ports to be used for remote connection from the Internet to the Loxone mini server. Define them in the Loxone mini server settings. Ports 8003 and 8443 are used in the example.
- The incoming traffic from the Internet to the public server address on ports 8003 and 8443 will be resent to the Loxone mini server IP address 192.168.50.182 on ports 80 and 443.
- Also, set port forwarding for the video stream. Port 8090 is used.
The last step is to enable push notifications on the smartphone. The push notification mechanism allows you to wake up a sleeping app. The Android/iOS platform puts every background app to sleep, thus the application is disconnected and pretends to be off. Push notifications as Android/iOS native functions are the only mechanism that is able to wake the application up. Hence, make sure that Push notification is allowed directly in the phone for the Loxone app. Moreover, add the Push notification object from the Peripheral menu to make push notifications be sent from the Loxone mini server to the smartphone.
The Loxone Config desktop app is necessary for setting the Loxone mini server. Download the latest version here.
The Loxone configuration interface is divided as follows:
- Property menu helps you change such object parameters as object name, destination address for HTTP command, etc. There are different parameters for different objects.
- General menu helps you create and assign an object to a section in the Peripheral menu. The menu items depend on the selected peripheral.
- Peripheral menu helps you add a peripheral to the project.
- Project space helps you drag and drop peripherals and interconnect objects and blocks in functional complexes.
Local Call Settings
Loxone Mini Server Configuration
The first step is to inform the Loxone mini server that the intercom button has been pressed. It is necessary to use HTTP commands for signaling. The object that is able to process the HTTP commands in the Loxone mini server is called Virtual Input. Select Virtual inputs from the Peripheral menu and select Virtual input in the general menu in the upper part of the program. A new Virtual input will be created in the Peripheral menu. Add the Virtual input to the project.
The Virtual input name is a key parameter, because it is used as object identification in the Loxone mini server during HTTP command sending. Door Controller (User defined intercom) is another object to be added. Assign the object by selecting Network Devices and Add Network Device – User defined intercom in the general menu in the upper part of the configuration tool.
- Picture when ringing – display video while ringing
- URL video stream (local) – display video in a call
- User name for Camera – login data for Loxone mini server connection to the intercom
- Password for Camera – login data for Loxone mini server connection to the intercom
- Host for audio (local) – destination IP address for SIP calls
General syntax for HTTP API command for the intercom:
- http://<intercom IP address>/api/camera/snapshot?width=<value>&height=<value>&fps=<value>
Configuration example:
- Picture when ringing – http://192.168.50.188/api/camera/snapshot?width=640&height=480&fps=15
- URL video stream (local) – http://192.168.50.188/api/camera/snapshot?width=640&height=480&fps=15
- User name for Camera – Admin
- Password for Camera – Admin
- Host for audio (local) – 192.168.50.188
Name for the function 1, 2 and 3 is another parameter to be set on the Door Controller object. This parameter helps you create and name a button in the Loxone app, which can then be used for door unlocking via the intercom. A name can only be defined. The name is "Lock" in this example. When the button is pressed, the Door Controller activates the selected output. This output is called Q1, Q2 and Q3 and has to be added to the Door Controller by clicking the "+" symbol.
The lock can be connected directly to the 2N intercom and/or Loxone mini server. In this example, the lock is connected to the intercom directly. For lock activation, add another object to the Q1 output, which sends an HTTP command back to the intercom and activates the door lock. The object is called DTMF COMMAND in this example.
Caution
- If the lock is directly connected to the Loxone mini server, it is necessary to connect Q1 to another object/peripheral in the Loxone mini server. This guide does not deal with such a scenario.
It is necessary to connect the Virtual Output object to the Q1 output, which sends HTTP commands to the intercom. Select Virtual Outputs in the Peripheral menu and create a new output by selecting Virtual Output in the general menu.
Command used in example:
- General syntax: http://<intercom ip address>/enu/trigger/<key name>
- Example: http://192.168.50.188/enu/trigger/dtmf
Key name – this word is subsequently used in Automation for lock activation. The key name is "dtmf" in this example.
WARNING!
As Loxone Config is a desktop app, remember to save the complete project using the Save in Miniserver button in the upper part of the general menu (see the figure).
This button will send the project to the mini server via the network. Without this saving, the project will only be saved in the PC locally and the functions will not be uploaded to the mini server and available.
Version 10
Loxone Miniserver | 2N IP Intercom | Video preview | Video in call | Audio in call | Switch control |
---|---|---|---|---|---|
10.3.11.25 | 2.28.0.37.5 |
On the intercom side, the automation needs to be configured (the enhanced integration license is required).
Once the main quick dial button is pressed, the intercom sends the http command towards the Loxone mini server. The command which controls virtual input has the following format :
General syntax:
<user>:<password>@<IP address of Loxone mini server>/dev/sps/io/<UUID>/<action>
Where
- UUID - name of the virtual input object in Loxone
- Action – on / off commands
Example: admin:admin@192.168.50.182 /dev/sps/io/trigger/on
Login credentials can be changed in the periphery menu, in the section users. You can also create new users and use them instead of the admin access in the HTTP command.
Object SendHttpRequest is sending an HTTP command to the Loxone mini server. Because this object has its own fields for username and password, the URL format is only 192.168.50.182 /dev/sps/io/trigger/on.
The delay object is also triggered during the button press with a 5 second delay and then the intercom sends the http command for the deactivation.
Example: admin:admin@192.168.50.182 /dev/sps/io/trigger/off
Optionally you can also add a PlayUserSound object so once the button will be pressed, the intercom can play some user sound to notify the user in front of the intercom that the intercom is trying to establish the call.
Another object is HttpTrigger where the key for dtmf is used. So once the intercom receives the http command in the format http://192.168.50.188/enu/trigger/dtmf, the intercom activates switch 1.
Last step is to set incoming call in the intercom to automatic answering mode in the section Services – Phone - calls and HTTP API access for the video stream.
External calls
To be able to make an external call to the intercom from the Loxone app which is out of your LAN, several configuration adjustments needs to be done:
- Create a SIP account on some free public SIP server which allows you to make anonymous incoming calls and adjust the configuration in the intercom and in the Loxone mini server.
- Register your Loxone mini server
- Setup port forwarding on your router for the Loxone app access and video stream
- Add push notification
The Loxone app / Mini server is always the one who is initializing the SIP call and the calls are anonymous which means that the Loxone mini server is not registered anywhere and trying to establish the peer to peer call.
In case of external calls – only the intercom needs to be registered to the SIP Proxy. Configuration of the door controller is used by the Loxone app on the smartphone and here you only have the options for a SIP host and a user-id. This ID is NOT for the app itself but used to make an anonymous call to the intercom that has been registered as a SIP client with specific credentials. The app is NOT a full SIP client, so it does not register with a SIP provider. The Loxone app can make outgoing calls as an anonymous SIP user to the intercom by using the user-ID as a "phone number" for the destination (the intercom).
SIP account configuration
To be able to make an external call, the call needs to be sent to some proxy server which is able to receive calls from unknown sources. In this example server called antisip.com is used. Once the account is created, the intercom needs to be connected to the server. This can be done in section Services – Phone - SIP 1 or SIP 2.
In this example the details obtained from anitsip.com are:
Intercom configuration looks like this:
Now the intercom is registered on the antisip.com service and the Door controller settings need to be adjusted to be able to make a call from the mini server to the intercom. In the property menu of the Door Controller the following parameters need to be adjusted:
- Host for audio (external) – the domain name of the service
- Audio username (external) – contact which the Loxone will be calling
- URL video stream (external)
Loxone config tool is divided into a few sections:
- Property menu allows you to define the parameters of a specific object such as name, destinations for http commands etc. The available parameters are different for each object.
- General menu that allows you to assign new objects to the specific periphery section. This menu differs for each periphery.
- Periphery menu that allows you to add specific objects to your project space.
- Project space allows you to place objects from the Periphery menu by using drag and drop method. Interconnection of each object is done here.
Local calls configuration
The first step is to let the Loxone mini server know, that the button has been pressed on the intercom side. To be able to achieve it, the http commands will be used. In the Loxone mini server the object called Virtual Input is used. Click on Virtual Inputs in the periphery menu and select Virtual input from the upper general menu. A new virtual input will be created. You can drag and drop this virtual input to your project.
In this example the virtual input is called „trigger“. The name can be assigned to the input in the left property menu by changing the parameter called name (UUID).
The name of the input is the key parameter here, because it is used in the http command sent from the intercom. Another object which will be use is called „User defined intercom (Door Controller)“. This object can be added to the project by selecting network devices in the Periphery menu and selecting Add Network Device - User defined intercom in the upper general menu.
A new Door Controller object will be created in the Network devices. In this example the intercom is called 2N Intercom. The name can be changed again in the left property menu. Now the connection to the intercom needs to be configured. You need to configure the following parameters in the left property menu to be able to make local calls:
- Picture when ringing –the video preview configuration
- URL video stream (local) – the video stream during the call configuration
- User name for Camera – login credentials to access the video from intercom
- Password for Camera - login credentials to access the video from intercom
- Host for audio (local) – destination IP address for the SIP call
Genral intercom’s http API syntax:
- http://<IP address of the intercom>/api/camera/snapshot?width=<value>&height=<value>&fps=<value>
Example of the configuration:
- Picture when ringing – http192.168.50.188/api/camera/snapshot?width=640&height=480&fps=15
- URL video stream (local) - http:// 192.168.50.188/api/camera/snapshot?width=640&height=480&fps=15
- User name for Camera – Admin
- Password for Camera - Admin
- Host for audio (local) – 192.168.50.188
Another parameter that can be configured is called Name for the function 1,2 and 3. This parameter allows you to create a button in the Loxone app which can be used to open the door on the intercom. You can assign the name for the button. In this example the button is called Lock. If the button will be pressed in the app, the specific output on the Door controller object is triggered. These outputs are called Q1, Q2 and Q3 and need to be added to the object.
Please note that the doors can be connected directly to the 2N intercom or to Loxone mini server. In this example the lock is directly connected to the intercom, so to be able to open the doors on the intercom, Q1 output needs to be connected to a digital output object called DTMF COMMAND which sends the http command to the intercom. How to configure this object is written in the next paragraph. If the doors are connected to Loxone (Loxone is the one who decides if the doors are open), the Digital Output 1 can be connected to some other object / periphery in the Loxone. This scenario is out of the scope of the guide.
The last step is to add a Virtual Output object which sends an http command to the intercom to open the doors. Select Virtual Outputs in the periphery menu and create a new output by choosing Virtual Output object in the upper menu.
Once the new output is created (in this example VQ1), the virtual output command needs to be assigned from the upper menu and needs to be connected to Q1 output of the Door controller object.
Select the newly created output from the periphery menu (in this example the output is called VQ1) and define the IP address of the intercom in the property menu. In this example the IP address of the intercom is 192.168.50.188.
The Http command can control the HTTP API or automation in the intercom. In the example the automation function is used however HTTP API works exactly in the same way just the HTTP command is in a different format. You can check HTTP API manual for more info.
The following command has been used in this example:
- General syntax: http://<ip address of the intercom>/enu/trigger/<key name>
- Example: http://192.168.50.188/enu/trigger/dtmf
key name – is used in the automation on the intercom side as a trigger for some set of actions. In this example the key name is dtmf.
Port forwarding
The next step is to create the port forwarding rules in your router to be able to connect from the Loxnone app to the mini server via the internet. Loxone provides a remote connection service. The first step is to register your Loxone mini server on their website. Once the device is registered, the Loxone mini server has a specific domain name to which it is connected. The domain name is dns.loxonecloud.com/<serial number of your server>. The Loxone server detects and stores info about your router public IP address and defined ports (specified in the Loxone mini server configuration - described in the next paragraph) and once the Loxone app, which is placed somewhere in the internet, wants to connect to your mini server which is placed on the LAN, the request is sent to the same domain name and the Loxone DNS server forwards the request to your public IP address with specific port numbers. If the port forwarding rules are done correctly, your router forwards this request to the Loxone miniserver placed on your LAN.
It is necessary to specify which ports will be used for access to the Loxone mini server from the internet. This can be done in the details of the Loxone miniserver. In this example the ports for incoming communication to the Loxone miniserver are 8003 and 8443.
The next step is to configure port forwarding in your router. In this example the router port forwarding details are:
- Incoming traffic to public IP address of the router on port 8003 and 8443 will be forwarded to the IP address of the Loxone miniserver (in this example the ip address is: 192.168.50.182) to ports 80 and 443.
- The port forwarding needs to be specified also for the video stream. In this example to port is 8090.
The last step is to enable push notification for your smartphone. The push notification mechanism allows you to wake your Loxone app. Each app is closed in IDLE state by the Android / iOS platform and the only mechanism how to wake the app and receive a call is to usethe in built Android / iOS push notification mechanism. Make sure that you have enabled push notifications for the Loxone app. Then add push notification object from Periphery menu into your Loxone project.
Version 7
Loxone Miniserver | 2N IP Intercom | Video preview | Video in call | Audio in call | Switch control |
---|---|---|---|---|---|
7.4 | 2.18.1.27.8 |
In this article we will explain how to connect 2N IP Intercom with the home automation system Loxone. At the end of this FAQ you will be able to make the video calls between the 2N IP Intercom and Loxone mini server via your tablet or smartphone with Loxone app installed. To be able to make calls you need to have the internet connectivity in your LAN because the call will be established via external SIP Proxy server. The scenario with the local calls is not possible.
First of all we have to create the account on some public SIP Proxy server. Verified service is iptel.org. You just need to create single account. After that we can start with the configuration of the intercom. It is recommended to assign the static IP adrres for the intercom. In this example we will be using the static IP adrress: 192.168.0.22.
Secondly it is necessary to configure the SIP account in the intercom. Account is set based on the information obtained from iptel.org. In this example the user testsip with the appropriate password has been used.
How to send HTTP command to Loxone server
It is really simple to send HTTP command to Loxone. You need to create Virtual digital input object in Loxone and assign some name to it. In this example the name will be START.
HTTP command format:
http://login:password@IP_of_loxone/Dev/sps/io/UUID/command
where:
- UUID - is name of the Virtual digital input
- Command – on/off
Example: http://admin:admin@192.168.88.2/dev/sps/io/START/on
Lastly we have to enable automatic answer of the calls and also HTTP API of the camera for the video stream.
To be able to make the calls, it is necessary to use 2 components:
- Virtual UDP input commnad (periphery>virtual inputs->virtual UDP input->Virtual UDP input command)
- Door controller (My project->add function block->monitoring->door controller)
First of all it is necessary to configure the Virtual UDP input command. To be able to configure this object, it is necessary to capture the UDP packet. You can do that in the bottom section fo the Loxone configuration tool called UDP. Be aware that every change within your project has to be saved first and then you have to wait till the server restart itself. Once somebody press the button on the intercom, the unique UDP packets is send towards the specific IP of the server.
The incoming packet is not the same all the time, this is the reason why we need to select just the specific part of the command which is always the same. This string is necessary to copy into the Virtual UDP input command section: command recognition.
- Note: In case of soume issues, please verify the UDP port number configured on Virtual input VUI1. The port number 7000 has to be used.
The next object is the Door Controller. For the video stream configuration it is necessary to use these fields:
- Host for video stream (internal)
- URL videostream (internal)
Use this URL link: http://<IP address of the intercom>/api/camera/snapshot?width=640&height=480&fps=1
The last parameters which has to be set are following:
- Host for Audio - IP address of the intercom
- Host for Audio (external) - filed for the external SIP Proxy address, in this example www.iptel.org is in use.
- Audio username (internal) - it is not necessary to use this field
- Audio username (external) - The number or name of your created iptel.org SIP account. In this example the user testsip is in use.
Call can be made just via mobile application and not via web interface in your PC.
Required licenses
- Enhanced Integration for Automation functions
Version 6
Loxone Miniserver | 2N IP Intercom | Video preview | Video in call | Audio in call | Switch Control |
---|---|---|---|---|---|
6.4.6.17 | N/A | N/A | N/A |
Used Symbols
- Interoperable
- Work with limitation
- Incompatible