Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Good afternoon, I need your advice/help.

98 views
Skip to first unread message

Алекс Т

unread,
Jan 9, 2025, 2:39:37 AMJan 9
to Tinode General
Hello. First of all, I want to thank you so much for such a high-quality application.
But I have questions about installing the app.
I installed it on a PC (server side), connected to the server via an IP address, and I have the option to call another user.
I really liked it, because I just turned on the settings.:
// Configuration for voice and video calls.
"webrtc": {
// Disabled. Won't work without functioning ice_servers (see below).
"enabled": true,
// Timeout in seconds before a video/voice call is dropped if not answered.
"call_establishment_timeout": 30,
// Interactive Communication Establishment (ICE) STUN and TURN server configuration for video calls.
// You need to configure your own servers or consider https://www.metered.ca/tools/openrelay/.
// Video calls will not work if both parties are behind NAT and no ICE servers are configured.
"ice_servers": [
{
"urls": [
"stun:stun.example.com"
]
},
{
"username": "user-name-to-use-for-authentication-with-the-server",
"credential": "your-password",
"urls": [
"turn:turn.example.com:80?transport=udp",
"turn:turn.example.com:3478?transport=udp",
"turn:turn.example.com:80?transport=tcp",
"turn:turn.example.com:3478?transport=tcp",
"turns:turn.example.com:443?transport=tcp",
"turns:turn.example.com:5349?transport=tcp"
]
}
],
// An alternative way to provide STUN/TURN configuration.
"ice_servers_file": "/path/to/ice-servers-config.json",

// Video conferencing configuration.
"vc": {
"enabled": true,
// Media server endpoint url.
"endpoint_url": "ws://localhost:7880/",
// Media server API key.
"api_key": "devkey",
// Media server secret.
"api_secret": "secret",
// Maximum call duration in seconds (1800 seconds = 30 min).
"max_duration": 1800
I was very pleased with this fact and decided to install the "Compound" in the docker.
I think I've done everything,
the container has started, I even go to the page,
but I can't make calls.
Here is the docker file.
version: "3.8"

services:
  rethinkdb:
    image: rethinkdb:2.4
    container_name: b5
    ports:
      - "80:8080"     
      - "285:28015"   
      - "295:29015"   
    volumes:
      - rethinkdb-data:/data
    restart: always

  tinode:
    image: tinode/tinode:latest
    container_name: tinode
    depends_on:
      - rethinkdb
    environment:
      STORE_USE_ADAPTER: "rethinkdb"         
      RETHINKDB_ADDR: "rethinkdb"          
      RETHINKDB_PORT: "285"               
      WEBRTC_ENABLED: "true"               
      ICE_SERVERS: '[{"urls": "stun:stun.l.google.com:19302"}]'  
    ports:
      - "6060:6060"                           
    restart: always

volumes:
  rethinkdb-data:
log:
2024/12/30 22:57:16 All done.
waiting for mongodb:27017...
waiting for mongodb:27017...
waiting for mongodb:27017...
waiting for mongodb:27017...
mongodb (142.108.100.3:27017) open
2025/01/04 04:05:40 Database adapter: 'mongodb'; version: 113
2025/01/04 04:05:40 Database exists, version is correct.
2025/01/04 04:05:40 Sample data ignored.
2025/01/04 04:05:40 All done.
It's clear, as far as I can see, they don't touch bases as if...
but everything works anyway...
except for calls/video calls.

I also tried to do this option, the server also started, but still without calls.
curl -O https://raw.githubusercontent.com/tinode/chat/master/docker/docker-compose/single-instance.mongodb.yml -O https://raw.githubusercontent.com/tinode/chat/master/docker/docker-compose/single-instance.yml
docker-compose -f single-instance.yml -f single-instance.mongodb.yml up
But still the same.
It started, but without any calls.
I also tried to run the  without the container.
It didn't work at all...
Why on Windows, you don't need to do anything but enable it in the config, but here in Docker you have to puzzle your head... I understand that this is not for you, it's just that I've already given up (((
Can you tell me what I should do now to make my calls work?
It's just that I'm an ordinary person, not a programmer, and I wanted to make a chat for my family without ads and safe (



Gene

unread,
Jan 9, 2025, 4:13:26 AMJan 9
to Tinode General
I'm not sure what you mean. Video conferencing (calling between multiple people at once) is not available in the public release.
 
I think I've done everything,
the container has started, I even go to the page,
but I can't make calls.

If you mean 1:1 calls, then they should work while the peers are are on the same network. If you want to call across the Internet, then you should configure TURN/STUN servers as explained above (you ignored the explanation and left example servers in your config file).

If you need additional help, please explain exactly what you are doing and what exactly no working and how.
What is "the same"? 

Gene

unread,
Jan 9, 2025, 4:16:06 AMJan 9
to Tinode General
Also this:

>>>>      STORE_USE_ADAPTER: "rethinkdb"         
>>>> waiting for mongodb:27017...

makes zero sense.
 

Алекс Т

unread,
Jan 9, 2025, 4:23:14 AMJan 9
to Tinode General
No, no, no.I'm interested in the one-on-one calls
part of the configuration I sent you. this is the configuration of the server on Windows on which calls work.it is in the submenu that the call button appears and when clicked, a call is made.I understand that you need a server for TURN/STUN that calls would be. just for some reason in Windows this was not required.... that's what's weird.
I also launched the server in docker compound - this is what concerns-TURN/STUN servers
I can send them the docker compouse file, what exactly do you need to send ? I understand that it should work on the same network. .but it doesn't work for some reason.

четверг, 9 января 2025 г. в 12:13:26 UTC+3, Gene:

Gene

unread,
Jan 9, 2025, 5:55:51 AMJan 9
to Tinode General
On Thursday, January 9, 2025 at 12:23:14 PM UTC+3 Алекс Т wrote:
No, no, no.I'm interested in the one-on-one calls
part of the configuration I sent you. this is the configuration of the server on Windows on which calls work.it is in the submenu that the call button appears and when clicked, a call is made.I understand that you need a server for TURN/STUN that calls would be. just for some reason in Windows this was not required.... that's what's weird.

It has nothing to do with Windows or any other OS. The issue is NAT traversal: https://en.wikipedia.org/wiki/NAT_traversal
 
I also launched the server in docker compound - this is what concerns-TURN/STUN servers

It looks like you don't understand what I'm writing and I have difficulty understanding you. Consider using something like https://translate.google.com/
  
I can send them the docker compouse file, what exactly do you need to send ? I understand that it should work on the same network. .but it doesn't work for some reason.

If you don't use STUN/TURN servers, then your clients should be directly accessible from the same network.

The only way to get free support is to post to this group. If you need private support, consider paying for it.

Алекс Т

unread,
Jan 9, 2025, 7:44:04 AMJan 9
to Tinode General
1.jpg That's why I wrote here for help. 
just in the instructions it is written that specify in the configuration file STUN/TURN, servers
and more special information I did not find.
I added them to the configuration file of both Google and my own. which in the container
set the value true in the webrtc line-restarted the container but nothing changed.I logged in under different accounts via the browser and the call or make a video call button didn't appear. I just understand that it would only work on a local network. and it doesn't work either way...
вот 
"webrtc": {
    "enabled": true,
    "ice_servers": [
        {
            "urls": ["stun:stun.l.google.com:19302"]
        },
логи контейнера
 open
2025/01/09 12:27:22 Database adapter: 'mongodb'; version: 113
2025/01/09 12:27:22 Database exists, version is correct.
2025/01/09 12:27:22 Sample data ignored.
2025/01/09 12:27:22 All done.
четверг, 9 января 2025 г. в 13:55:51 UTC+3, Gene:

Алекс Т

unread,
Jan 9, 2025, 7:48:49 AMJan 9
to Tinode General
more precisely it does not work either in the local network or in a non local one
четверг, 9 января 2025 г. в 13:55:51 UTC+3, Gene:

Gene

unread,
Jan 9, 2025, 9:19:54 AMJan 9
to Tinode General
The presence of "Call" and "Video call" menu items is controlled by the (a) presence of 'iceServers' parameter in the response to {hi} message, (b) topic being a p2p topic. Look at the console log and see if  'iceServers' parameter is present in {ctrl} response to {hi}. If there is no 'iceServer' parameter then it means your server config is incorrect. Second, make sure you are looking at a p2p topic, not a group topic. 

Here is an example of a log:

out: {"hi":{"id":"70390","ver":"0.22.12","ua":"TinodeWeb/0.22.13 (Chrome/131.0; MacIntel); tinodejs/0.22.12","lang":"en-US","platf":"web"}}

in: {"ctrl":{"id":"70390","params":{"build":"mysql:v0.22.13","callTimeout":30,"iceServers":[{"urls":["stun:stun.l.google.com:19302"]},{"username":"***","credential":"+***","urls":["turn:relay.***:80","turn:relay.***:443","turn:relay.***:443?transport=tcp"]}], "maxFileUploadSize":20971520, "maxMessageSize":262144, "maxSubscriberCount":32, "maxTagCount":16, "maxTagLength":96, "minTagLength":2, "reqCred":{"auth":["email"]},"ver":"0.22"}, "code":201, "text":"created", "ts":"2025-01-09T13:43:04.479Z"}}

Алекс Т

unread,
Jan 9, 2025, 9:21:32 AMJan 9
to Tinode General

I'll try it thanks
четверг, 9 января 2025 г. в 17:19:54 UTC+3, Gene:

Алекс Т

unread,
Jan 10, 2025, 5:17:22 AMJan 10
to Tinode General

I made some changes in the config file

 "webrtc": {
                // Disabled. Won't work without functioning ice_servers (see below).
                "enabled": true,
                // Timeout in seconds before a video/voice call is dropped if not answered.
                "call_establishment_timeout": 30,
                // Interactive Communication Establishment (ICE) STUN and TURN server configuration for video calls.
                // You need to configure your own servers or consider https://www.metered.ca/tools/openrelay/.
                // Video calls will not work if both parties are behind NAT and no ICE servers are configured.
                "ice_servers": [
                        {
                                "urls": [
                                        "stun:fr-tur s.com"
                                ]
                        },
                        {
                                "username": "yPad57 ZBV 9rZXI",
                                "credential": "4 004",
                                "urls": [
                                        "turn:fr-turn com:80?transport=udp",
                                        "turn:fr-turn s.com:3478?transport=udp",
                                        "turn:fr-turn .com:80?transport=tcp",
                                        "turn:fr-turn m:3478?transport=tcp",
                                        "turns:fr-tur .com:443?transport=tcp",
                                        "turns:fr-tu com:5349?transport=tcp",
                                ]
                        }
after restarting the container, nothing changed.still, the call button didn't appear in the submenu.
tested on the same local network
running in docker compouse
четверг, 9 января 2025 г. в 17:19:54 UTC+3, Gene:
The presence of "Call" and "Video call" menu items is controlled by the (a) presence of 'iceServers' parameter in the response to {hi} message, (b) topic being a p2p topic. Look at the console log and see if  'iceServers' parameter is present in {ctrl} response to {hi}. If there is no 'iceServer' parameter then it means your server config is incorrect. Second, make sure you are looking at a p2p topic, not a group topic. 

Gene S

unread,
Jan 10, 2025, 7:13:27 AMJan 10
to tin...@googlegroups.com
It looks like we are not communicating. Here is what I stated earlier:

The presence of "Call" and "Video call" menu items is controlled by the (a) presence of 'iceServers' parameter in the response to {hi} message, (b) topic being a p2p topic. Look at the console log and see if  'iceServers' parameter is present in {ctrl} response to {hi}. If there is no 'iceServer' parameter then it means your server config is incorrect. Second, make sure you are looking at a p2p topic, not a group topic. 

Here is an example of a log:

out: {"hi":{"id":"70390","ver":"0.22.12","ua":"TinodeWeb/0.22.13 (Chrome/131.0; MacIntel); tinodejs/0.22.12","lang":"en-US","platf":"web"}}

in: {"ctrl":{"id":"70390","params":{"build":"mysql:v0.22.13","callTimeout":30,"iceServers":[{"urls":["stun:stun.l.google.com:19302"]},{"username":"***","credential":"+***","urls":["turn:relay.***:80","turn:relay.***:443","turn:relay.***:443?transport=tcp"]}], "maxFileUploadSize":20971520, "maxMessageSize":262144, "maxSubscriberCount":32, "maxTagCount":16, "maxTagLength":96, "minTagLength":2, "reqCred":{"auth":["email"]},"ver":"0.22"}, "code":201, "text":"created", "ts":"2025-01-09T13:43:04.479Z"}}

Did you or did you not take a look at the logs? 
Did you or did you not make sure that you are looking at a p2p topic?

I will not be able to continue this conversation if you keep ignoring my messages. 

--
You received this message because you are subscribed to the Google Groups "Tinode General" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tinode+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/tinode/d80ba7b0-2b02-466d-aef0-ab02f239d170n%40googlegroups.com.

Алекс Т

unread,
Jan 10, 2025, 7:28:00 AMJan 10
to Tinode General

I didn't ignore it. I tried using the browser to go to the console and look in the network when the page is refreshed
I am sure that this communication is 1 on 1 and not a group. because these are personal messages of the user in both cases
in the browser I did not find any information in the firefox log
in docker I do not have any nickname log information. except
2025/01/10 11:49:42 Database adapter: 'mysql'; version: 113 2025/01/10 11:49:42 Database exists, version is correct. 2025/01/10 11:49:42 Sample data ignored. 2025/01/10 11:49:42 All done.
 I apologize for taking up your valuable time.  but I just can't figure out what's wrong.... if everything is up and running . but there is no button.in the submenu.... I've already gone through the entire config...although there is nothing there except for one paragraph.

пятница, 10 января 2025 г. в 15:13:27 UTC+3, Gene S:

Алекс Т

unread,
Jan 10, 2025, 7:32:00 AMJan 10
to Tinode General
[12:30:53.355] in: {"ctrl":{"id":"70342","topic":"me","params":{"what":"creds"},"code":204,"text":"no content","ts":"2025-01-10T12:30:54.222Z"}} 
Here's what I found I don't know if it will help
пятница, 10 января 2025 г. в 15:13:27 UTC+3, Gene S:
It looks like we are not communicating. Here is what I stated earlier:

Gene

unread,
Jan 10, 2025, 7:40:02 AMJan 10
to Tinode General
Please show the log from the browser console.

Алекс Т

unread,
Jan 10, 2025, 7:51:27 AMJan 10
to Tinode General
Image
buildCipherIconElement @ list.js:2081
buildFillCipherElement @ list.js:2037
buildOverlayActionsListItem @ list.js:2019
loadPageOfCiphers @ list.js:2006
updateListItems @ list.js:1976
(анонимная) @ list.js:1928
(анонимная) @ list.js:1742
autofill_overlay_list_deprecated_awaiter @ list.js:1738
initAutofillOverlayList @ list.js:1919
initAutofillOverlayList @ list.js:1761
AutofillOverlayPageElement.handleWindowMessage @ list.js:1642
index.prod.js:1 FirebaseError: Installations: Missing App configuration value: "projectId" (installations/missing-app-config-values).
    at ut (index.prod.js:1:61038)
    at index.prod.js:1:61612
    at C.instanceFactory (index.prod.js:1:61717)
    at M.getOrInitializeService (index.prod.js:1:39866)
    at M.getImmediate (index.prod.js:1:37814)
    at C.gt [as instanceFactory] (index.prod.js:1:61171)
    at M.getOrInitializeService (index.prod.js:1:39866)
    at M.getImmediate (index.prod.js:1:37814)
    at C.instanceFactory (index.prod.js:1:74408)
    at M.getOrInitializeService (index.prod.js:1:39866) undefined
s @ index.prod.js:1
initFCMessaging @ index.prod.js:1
handleLoginRequest @ index.prod.js:1
handleSubmit @ index.prod.js:1
lj @ react-dom.production.min.js:223
kj @ react-dom.production.min.js:34
nj @ react-dom.production.min.js:34
gh @ react-dom.production.min.js:62
Xg @ react-dom.production.min.js:63
(анонимная) @ react-dom.production.min.js:72
Tf @ react-dom.production.min.js:189
wg @ react-dom.production.min.js:32
Ce @ react-dom.production.min.js:65
Be @ react-dom.production.min.js:47
Aj @ react-dom.production.min.js:46
index.prod.js:1 Uncaught (in promise) FirebaseError: Installations: Missing App configuration value: "projectId" (installations/missing-app-config-values).
    at ut (index.prod.js:1:61038)
    at index.prod.js:1:61612
    at C.instanceFactory (index.prod.js:1:61717)
    at M.getOrInitializeService (index.prod.js:1:39866)
    at M.getImmediate (index.prod.js:1:37814)
    at C.gt [as instanceFactory] (index.prod.js:1:61171)
    at M.getOrInitializeService (index.prod.js:1:39866)
    at M.getImmediate (index.prod.js:1:37814)
    at C.instanceFactory (index.prod.js:1:74408)
    at M.getOrInitializeService (index.prod.js:1:39866)
ut @ index.prod.js:1
(анонимная) @ index.prod.js:1
(анонимная) @ index.prod.js:1
getOrInitializeService @ index.prod.js:1
getImmediate @ index.prod.js:1
gt @ index.prod.js:1
getOrInitializeService @ index.prod.js:1
getImmediate @ index.prod.js:1
(анонимная) @ index.prod.js:1
getOrInitializeService @ index.prod.js:1
getImmediate @ index.prod.js:1
ns @ index.prod.js:1
initFCMessaging @ index.prod.js:1
handleLoginRequest @ index.prod.js:1
handleSubmit @ index.prod.js:1
lj @ react-dom.production.min.js:223
kj @ react-dom.production.min.js:34
nj @ react-dom.production.min.js:34
gh @ react-dom.production.min.js:62
Xg @ react-dom.production.min.js:63
(анонимная) @ react-dom.production.min.js:72
Tf @ react-dom.production.min.js:189
wg @ react-dom.production.min.js:32
Ce @ react-dom.production.min.js:65
Be @ react-dom.production.min.js:47
Aj @ react-dom.production.min.js:46

index.prod.js:1 FirebaseError: Installations: Missing App configuration value: "projectId" (installations/missing-app-config-values).
    at ut (index.prod.js:1:61038)
    at index.prod.js:1:61612
    at C.instanceFactory (index.prod.js:1:61717)
    at M.getOrInitializeService (index.prod.js:1:39866)
    at M.getImmediate (index.prod.js:1:37814)
    at C.gt [as instanceFactory] (index.prod.js:1:61171)
    at M.getOrInitializeService (index.prod.js:1:39866)
    at M.getImmediate (index.prod.js:1:37814)
    at C.instanceFactory (index.prod.js:1:74408)
    at M.getOrInitializeService (index.prod.js:1:39866) undefined
s @ index.prod.js:1
initFCMessaging @ index.prod.js:1
(анонимная) @ index.prod.js:1
Promise.then
componentDidMount @ index.prod.js:1
Ki @ react-dom.production.min.js:179
Ii @ react-dom.production.min.js:179
Ik @ react-dom.production.min.js:178
Sk @ react-dom.production.min.js:197
yb @ react-dom.production.min.js:196
Oi @ react-dom.production.min.js:187
S @ react.production.min.js:17
U @ react.production.min.js:21
here are the logs in the browser console

пятница, 10 января 2025 г. в 15:40:02 UTC+3, Gene:

Gene

unread,
Jan 10, 2025, 8:07:49 AMJan 10
to Tinode General
Please show the log from the browser console. I will no longer reply to this thread until you post your browser log here.

If you do not understand what I'm writing then find help.

Алекс Т

unread,
Jan 10, 2025, 9:02:11 AMJan 10
to Tinode General
in the console I have 1100 messages do you need to send them all here?

пятница, 10 января 2025 г. в 16:07:49 UTC+3, Gene:
Reply all
Reply to author
Forward
0 new messages