Simply install the TeamViewer Embedded Agent with the following command line:

git clone https://github.com/teamviewer/FreeBSD_port_teamviewer-iot-agent.git /tmp/teamviewer-port/
cd  /tmp/teamviewer-port
make install

Create the package:

1. Download the ports package from the TeamViewer public GitHub repository: https://github.com/teamviewer/FreeBSD_port_teamviewer-iot-agent

2. Unpack or clone the ports package or files under path <x>, e.g. /tmp/teamviewer-port/:

git clone 
https://github.com/teamviewer/FreeBSD_port_teamviewer-iot-agent.git /tmp/teamviewer-port

3. Run make package inside the unpacked/checked out ports folder <x>. The resulted artifact is placed in the subdirectory work/pkg and uses the naming scheme teamviewer-iot-agent-<version>.txz

cd  /tmp/teamviewer-port
make package

4. (end customer) Install the FreeBSD package with the following command:

pkg add /tmp/teamviewer-port/work/pkg/teamviewer-iot-agent-.[txz/pkg]

Create the EULA acceptance flow:

1. Customers who have their permanent residence in the Republic of Korea (ROK) require a separate EULA confirmation flow.

2. Include the EULA and DPA to be accepted during the provision flow. 

🚨Important note: The agent will not start without the confirmation of the EULA!

📌Note: Once the EULA has been accepted - The Embedded agent can and should be started with service teamviewer_iot_agent start. - The assignment does not work without the agent having been started!

3. Assignment


  • You have created an assignment token (please see the topic Create an assignment token)
  • Please make sure that you have started the agent service beforehand

Use the following command:

/usr/local/libexec/teamviewer-iot-agent assign --api-token  --group

As a result, it will print out the following message displaying the name of the new manager and the group where the device is in:

Device is assigned to  and located in the <group name> (default = IoT) group.
Device will be accessible and managed by this account.
Assignment can be removed using 'unmanage' command.

If the token assignment was not successful, an error message will be displayed and an exit code other than 0 is returned.