nextcloud / spreed

🗨️ Nextcloud Talk – chat, video & audio calls for Nextcloud
https://nextcloud.com/talk
GNU Affero General Public License v3.0
1.63k stars 436 forks source link

screen sharing functionailty? #314

Closed hevisol closed 7 years ago

hevisol commented 7 years ago

Hello,

If you could just explain how to use the screen sharing functionality please? I have no error log info to go off of. I do not get the screen sharing icon when testing with two user accounts. the spreedme serverr file is pretty generic:

[http] listen = 127.0.0.1:8080

[https]

[app] sessionSecret = the-default-secret-do-not-keep-me encryptionSecret = tne-default-encryption-block-key serverToken = i-did-not-change-the-public-token-boo serverRealm = local

[modules]

[log] logfile = /var/log/spreed-webrtc-server.log

[users] enabled = false

[nats]

[roomtypes]

Here is my nginx conf file:

[http] listen = 127.0.0.1:8080

[https]

[app] sessionSecret = the-default-secret-do-not-keep-me encryptionSecret = tne-default-encryption-block-key serverToken = i-did-not-change-the-public-token-boo serverRealm = local

[modules]

[log] logfile = /var/log/spreed-webrtc-server.log

[users] enabled = false

[nats]

[roomtypes] root@bsd:/usr/local/www/nextcloud/apps # cat /usr/local/etc/nginx/nginx.conf load_module /usr/local/libexec/nginx/ngx_mail_module.so; load_module /usr/local/libexec/nginx/ngx_stream_module.so;

user www; worker_processes auto;

pid /var/run/nginx.pid;

events { use kqueue; worker_connections 1024; multi_accept on; } http {

map $http_upgrade $connection_upgrade { default upgrade; '' close; }

Basic settings

----------

sendfile on; tcp_nopush on; tcp_nodelay on; reset_timedout_connection on; keepalive_timeout 65; keepalive_requests 1000; types_hash_max_size 2048; server_tokens off; send_timeout 30; server_names_hash_max_size 4096;

Common limits

----------

client_max_body_size 100m; # upload size client_body_buffer_size 1m; client_header_timeout 3m; client_body_timeout 3m;

client_body_temp_path /var/nginx/client_body_temp;

proxy_connect_timeout 5; proxy_send_timeout 10; proxy_read_timeout 10;

proxy_buffer_size 4k; proxy_buffers 8 16k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k;

proxy_temp_path /var/nginx/proxy_temp;

include mime.types; default_type application/octet-stream;

Logs format

----------

log_format main '$remote_addr - $host [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"' 'rt=$request_time ut=$upstream_response_time ' 'cs=$upstream_cache_status';

log_format cache '$remote_addr - $host [$time_local] "$request" $status ' '$body_bytes_sent "$http_referer" ' 'rt=$request_time ut=$upstream_response_time ' 'cs=$upstream_cache_status';

access_log /var/log/nginx/access.log main; error_log /var/log/nginx/error.log warn;

GZip config

----------

gzip on; gzip_static on; gzip_types text/plain text/css text/javascript text/xml application/x-javascript application/javascript application/xml application/json image/x-icon; gzip_comp_level 9; gzip_buffers 16 8k; gzip_proxied expired no-cache no-store private auth; gzip_min_length 1000; gzip_disable "msie6" gzip_vary on;

Cache config

----------

proxy_cache_valid 1m;

Virtual host config

----------

include /usr/local/etc/nginx/conf.d/*.conf; }

here is my nextcloud server conf file:

load_module /usr/local/libexec/nginx/ngx_mail_module.so; load_module /usr/local/libexec/nginx/ngx_stream_module.so;

user www; worker_processes auto;

pid /var/run/nginx.pid;

events { use kqueue; worker_connections 1024; multi_accept on; } http {

map $http_upgrade $connection_upgrade { default upgrade; '' close; }

Basic settings

----------

sendfile on; tcp_nopush on; tcp_nodelay on; reset_timedout_connection on; keepalive_timeout 65; keepalive_requests 1000; types_hash_max_size 2048; server_tokens off; send_timeout 30; server_names_hash_max_size 4096;

Common limits

----------

client_max_body_size 100m; # upload size client_body_buffer_size 1m; client_header_timeout 3m; client_body_timeout 3m;

client_body_temp_path /var/nginx/client_body_temp;

proxy_connect_timeout 5; proxy_send_timeout 10; proxy_read_timeout 10;

proxy_buffer_size 4k; proxy_buffers 8 16k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k;

proxy_temp_path /var/nginx/proxy_temp;

include mime.types; default_type application/octet-stream;

Logs format

----------

log_format main '$remote_addr - $host [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"' 'rt=$request_time ut=$upstream_response_time ' 'cs=$upstream_cache_status';

log_format cache '$remote_addr - $host [$time_local] "$request" $status ' '$body_bytes_sent "$http_referer" ' 'rt=$request_time ut=$upstream_response_time ' 'cs=$upstream_cache_status';

access_log /var/log/nginx/access.log main; error_log /var/log/nginx/error.log warn;

GZip config

----------

gzip on; gzip_static on; gzip_types text/plain text/css text/javascript text/xml application/x-javascript application/javascript application/xml application/json image/x-icon; gzip_comp_level 9; gzip_buffers 16 8k; gzip_proxied expired no-cache no-store private auth; gzip_min_length 1000; gzip_disable "msie6" gzip_vary on;

Cache config

----------

proxy_cache_valid 1m;

Virtual host config

----------

include /usr/local/etc/nginx/conf.d/*.conf; } root@bsd:/usr/local/www/nextcloud/apps # cat /usr/local/etc/nginx/conf.d/nextcloud.kittenslippers.com.conf upstream php-handler {

server 127.0.0.1:9000;

server unix:/var/run/php-fpm.nextcloud.kittenslippers.com.sock;

}

server { listen 80; server_name nextcloud.kittenslippers.com;

enforce https

return 301 https://$server_name$request_uri;

}

server { listen 443 ssl; server_name nextcloud.kittenslippers.com;

ssl_certificate /usr/local/etc/letsencrypt/live/nextcloud.kittenslippers.com/fullchain.pem;
ssl_certificate_key /usr/local/etc/letsencrypt/live/nextcloud.kittenslippers.com/privkey.pem;

# Add headers to serve security related headers
# Before enabling Strict-Transport-Security headers please read into this
# topic first.
add_header Strict-Transport-Security "max-age=15768000;
# includeSubDomains; preload;";
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;

# Path to the root of your installation
root /usr/local/www/nextcloud/;

location = /robots.txt {
    allow all;
    log_not_found off;
    access_log off;
}

# The following 2 rules are only needed for the user_webfinger app.
# Uncomment it if you're planning to use this app.
#rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
#rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json
# last;

location = /.well-known/carddav {
  return 301 $scheme://$host/remote.php/dav;
}
location = /.well-known/caldav {
  return 301 $scheme://$host/remote.php/dav;
}

# set max upload size
client_max_body_size 512M;
fastcgi_buffers 64 4K;

# Disable gzip to avoid the removal of the ETag header
gzip off;

# Uncomment if your server is build with the ngx_pagespeed module
# This module is currently not supported.
#pagespeed off;

error_page 403 /core/templates/403.php;
error_page 404 /core/templates/404.php;

location / {
    rewrite ^ /index.php$uri;
}

location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
    deny all;
}
location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
    deny all;
}

location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+|core/templates/40[34])\.php(?:$|/) {
    fastcgi_split_path_info ^(.+\.php)(/.*)$;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_param HTTPS on;
    #Avoid sending the security headers twice
    fastcgi_param modHeadersAvailable true;
    fastcgi_param front_controller_active true;
    fastcgi_pass php-handler;
    fastcgi_intercept_errors on;
    fastcgi_request_buffering off;
}

location ~ ^/(?:updater|ocs-provider)(?:$|/) {
    try_files $uri/ =404;
    index index.php;
}

Spreed WebRTC

location ^~ /webrtc {
    proxy_pass http://127.0.0.1:8080;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    proxy_buffering             on;
    proxy_ignore_client_abort   off;
    proxy_redirect              off;
    proxy_connect_timeout       90;
    proxy_send_timeout          90;
    proxy_read_timeout          90;
    proxy_buffer_size           4k;
    proxy_buffers               4 32k;
    proxy_busy_buffers_size     64k;
    proxy_temp_file_write_size  64k;
    proxy_next_upstream         error timeout invalid_header http_502 http_503 http_504;
}

# Adding the cache control header for js and css files
# Make sure it is BELOW the PHP block
location ~* \.(?:css|js)$ {
    try_files $uri /index.php$uri$is_args$args;
    add_header Cache-Control "public, max-age=7200";
    # Add headers to serve security related headers (It is intended to
    # have those duplicated to the ones above)
    # Before enabling Strict-Transport-Security headers please read into
    # this topic first.
    # add_header Strict-Transport-Security "max-age=15768000;
    #  includeSubDomains; preload;";
    add_header X-Content-Type-Options nosniff;
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Robots-Tag none;
    add_header X-Download-Options noopen;
    add_header X-Permitted-Cross-Domain-Policies none;
    # Optional: Don't log access to assets
    access_log off;
}

location ~* \.(?:svg|gif|png|html|ttf|woff|ico|jpg|jpeg)$ {
    try_files $uri /index.php$uri$is_args$args;
    # Optional: Don't log access to other assets
    access_log off;
}

}

hevisol commented 7 years ago

update here is the spreedme debug log info:

Ran test #1 (testOwncloudPhpConfigFile): Passed without an error

Ran test #2 (testOwncloudJavascriptConfigFile): Passed without an error

Ran test #3 (testSpreedWebRTCAPI): Error: WebRTC API config endpoint returned incorrect json response: <!doctype html>

Spreed WebRTC

Thanks for the help!

Ivansss commented 7 years ago

Hi @hevisol I think you confused Spreed.ME app for Nextcloud with this app. Please, open the same issue in the Spreed.ME app repository if still having problems.