diff --git a/app/src/server.js b/app/src/server.js
index 3dafa86b..dee38e47 100755
--- a/app/src/server.js
+++ b/app/src/server.js
@@ -39,7 +39,7 @@ dependencies: {
* @license For commercial use or closed source, contact us at license.mirotalk@gmail.com or purchase directly from CodeCanyon
* @license CodeCanyon: https://codecanyon.net/item/mirotalk-p2p-webrtc-realtime-video-conferences/38376661
* @author Miroslav Pejic - miroslav.pejic.85@gmail.com
- * @version 1.4.40
+ * @version 1.4.41
*
*/
diff --git a/coturn/docker-compose.template.yml b/coturn/docker-compose.template.yml
new file mode 100644
index 00000000..3e9c27bc
--- /dev/null
+++ b/coturn/docker-compose.template.yml
@@ -0,0 +1,11 @@
+services:
+ coturn:
+ image: coturn/coturn
+ container_name: coturn
+ network_mode: 'host'
+ user: 'root'
+ restart: unless-stopped
+ volumes:
+ - ./turnserver.conf:/etc/coturn/turnserver.conf
+ - /etc/letsencrypt/live/YOUR.DOMAIN.NAME/fullchain.pem:/etc/letsencrypt/live/YOUR.DOMAIN.NAME/fullchain.pem
+ - /etc/letsencrypt/live/YOUR.DOMAIN.NAME/privkey.pem:/etc/letsencrypt/live/YOUR.DOMAIN.NAME/privkey.pem
diff --git a/coturn/turnserver.conf b/coturn/turnserver.conf
new file mode 100644
index 00000000..bf5e4d16
--- /dev/null
+++ b/coturn/turnserver.conf
@@ -0,0 +1,23 @@
+listening-port=3478
+tls-listening-port=5349
+
+min-port=10000
+max-port=20000
+
+fingerprint
+lt-cred-mech
+
+user=your.username:your.password
+
+server-name=YOUR.DOMAIN.NAME
+realm=YOUR.DOMAIN.NAME
+
+total-quota=100
+stale-nonce=600
+
+cert=/etc/letsencrypt/live/YOUR.DOMAIN.NAME/fullchain.pem
+pkey=/etc/letsencrypt/live/YOUR.DOMAIN.NAME/privkey.pem
+
+cipher-list="ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384"
+
+no-stdout-log
\ No newline at end of file
diff --git a/package.json b/package.json
index 28787ec1..71d89a95 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "mirotalk",
- "version": "1.4.40",
+ "version": "1.4.41",
"description": "A free WebRTC browser-based video call",
"main": "server.js",
"scripts": {
diff --git a/public/js/client.js b/public/js/client.js
index 99d4bcdb..cff75b3a 100644
--- a/public/js/client.js
+++ b/public/js/client.js
@@ -15,7 +15,7 @@
* @license For commercial use or closed source, contact us at license.mirotalk@gmail.com or purchase directly from CodeCanyon
* @license CodeCanyon: https://codecanyon.net/item/mirotalk-p2p-webrtc-realtime-video-conferences/38376661
* @author Miroslav Pejic - miroslav.pejic.85@gmail.com
- * @version 1.4.40
+ * @version 1.4.41
*
*/
@@ -10931,7 +10931,7 @@ function showAbout() {
Swal.fire({
background: swBg,
position: 'center',
- title: 'WebRTC P2P v1.4.40',
+ title: 'WebRTC P2P v1.4.41',
imageAlt: 'mirotalk-about',
imageUrl: images.about,
customClass: { image: 'img-about' },