Home Manual Reference Source

ICE management

Reach comes with default TURN & TURNS servers configured:

{
    "username": "admin",
    "credential": "webcom1234",
    "urls": [
        "turns:turn1.webcom.orange.com:443",
        "turn:turn1.webcom.orange.com:443?transport=tcp",
        "turn:turn1.webcom.orange.com:3478?transport=tcp"
    ]
}

But if needed, you can over overwrite this settings either when instantiating Reach or directly in your Flexible DataSync namespace.

Configure ICE servers in app

Pass your ICE servers list when instantiating Reach:

const myReach = new Reach('https://io.datasync.orange.com/base/<your_namespace>', {
    iceServers: [
        {
            username: 'admin',
            credential: 'webcom1234',
            urls: [
                'turns:turn1.webcom.orange.com:443',
                'turn:turn1.webcom.orange.com:443?transport=tcp',
                'turn:turn1.webcom.orange.com:3478?transport=tcp'
            ]
        }
    ]
});

Configure ICE servers on server

This method prevents you from having to re-deploy your app everytime you want/need to reconfigure your ICE servers:

All ICE servers must be of this type:

{
    "username": <String?>,
    "credential": <String?>,
    "urls": <String|String[]>
}

Limitations

To date, Mozilla Firefox doesn't support TURNS server (but it's ok for TURN et STUN server). If TURNS server are specified, they will be ignored on Firefox