-
Notifications
You must be signed in to change notification settings - Fork 75
/
config_sample.yaml
175 lines (175 loc) · 5.92 KB
/
config_sample.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
## Note: for any id should contain valid characters only
## otherwise will be problem with nats (https://docs.nats.io/nats-concepts/subjects#characters-allowed-and-recommended-for-subject-names)
## Allowed characters: (a - z),(A - Z), (0 - 9), - and _
client:
port: 8080
debug: true
path: "/app/client/dist"
## This will require during authentication. Use random secret.
# Openssl rand -hex 32
# OR
# cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 36 | head -n 1
api_key: "plugnmeet"
secret: "zumyyYWqv7KR2kUqvYdq4z4sXg7XTBD2ljT6"
# Value in minutes. Default 10 minutes. Client will renew token automatically
token_validity: 10m
webhook_conf:
# Enable webhook. This will post response for different events
enable: false
# Set url bellow, this will be used as global.
# This is optional
url: ""
# During creation room, you can set custom hook URL too.
# If you set enable_for_per_meeting: true
# then extra post-response will send in that address too
enable_for_per_meeting: false
prometheus:
enable: false
metrics_path: "/metrics"
proxy_header: "" ## you can set X-Forwarded-For
copyright_conf:
# if true then user will be able to change copyright info by API
allow_override: false
# if true then copyright text will display
display: true
# do not make the text longer, not all html tags are supported
# 'b', 'i', 'em', 'strong', 'a'
text: 'Powered by <a href="https://www.plugnmeet.org" target="_blank">plugNmeet</a>'
# set host info so that BBB joining URL can be more accurate when behind LB
bbb_join_host: "http://localhost:3000"
room_default_settings:
max_duration: 0 # Duration in minutes. 0 = no limit
max_participants: 0 # 0 = no limit
# here you can limit the maximum number of breakout rooms
# default will be 6 & max 16
max_num_breakout_rooms: 6
log_settings:
log_file: "./log/plugNmeet.log"
# maxsize of the log file in MB
maxsize: 20
maxbackups: 4
# max age of log before rotates in days
maxage: 2
# info, warn, error, fatal, debug or panic
log_level: "info"
livekit_info:
host: "http://host.docker.internal:7880"
api_key: "APIiYAA5w37Cfo2"
secret: "6aNur7qqupeZhFYNOJVUyeXxXhVw8f4lm13pEDUx8SgB"
redis_info:
host: redis:6379
username: ""
password: ""
db: 0
# use_tls: false
# To use sentinel remove the host key above and add the following
# sentinel_master_name: plugnmeet
# sentinel_addresses:
# - redis-sentinel-host-1:26379
# - redis-sentinel-host-2:26379
# - redis-sentinel-host-3:26379
# If you use a different set of credentials for sentinel add
# sentinel_username: user
# sentinel_password: pass
database_info:
# at present, we support only mysql/mariadb, in future we'll add more
driver_name: mysql
host: db
port: 3306
username: "root"
password: "12345"
db: "plugnmeet"
prefix: "pnm_"
# https://github.com/go-sql-driver/mysql?tab=readme-ov-file#charset
charset: "utf8mb4"
# https://github.com/go-sql-driver/mysql?tab=readme-ov-file#loc
loc: "UTC"
# default 4 minutes
conn_max_lifetime: 4m
# default 10 connections
max_open_conns: 10
nats_info:
nats_urls:
- "nats://host.docker.internal:4222"
# nats websocket will be required for the pnm client to connect
# if the pnm client can't connect with this URL then user won't be able to join
nats_ws_urls:
- "http://localhost:8222"
account: PNM
user: auth
password: "LM(jTdsUGbB7M9y8^dNta1"
auth_callout_issuer_private: "SAAMTMBUANSRW3XDXZBIBF4JYRRUMWGV2GZT5MQ54VNWNRPN2Y4J46NQSA"
num_replicas: 1 # 1,3,or 5
subjects:
system_api_worker: "sysApiWorker"
system_js_worker: "sysJsWorker"
system_public: "sysPublic"
system_private: "sysPrivate"
chat: "chat"
whiteboard: "whiteboard"
# to exchange data of pnm client with each other
data_channel: "dataChannel"
recorder:
recorder_channel: "recorderChannel"
recorder_info_kv: "pnm-recorderInfo"
upload_file_settings:
path: "./upload"
# maximum file size in MB for chat. Default 50MB
max_size: 50
# maximum file size in MB for whiteboard upload. Default 30MB
max_size_whiteboard_file: 30
# By default, files will be deleted as soon as the session has finished.
# You can set it true to disable deleting files.
keep_forever: false
allowed_types:
- "jpg"
- "png"
- "jpeg"
- "svg"
- "pdf"
- "docx"
- "txt"
- "xlsx"
- "pptx"
- "zip"
- "mp4"
- "webm"
- "mp3"
recorder_info:
# this value should be the same as recorder's copy_to_dir path
recording_files_path: "/app/recording_files"
token_validity: 30m
shared_notepad:
enabled: true
# multiple hosts can be added here
# server will be selected based on load
# the value of id should be unique
etherpad_hosts:
-
# please check the note from the top of this file
id: "node_01"
host: "http://host.docker.internal:9001"
client_id: "plugNmeet"
client_secret: "lmpGEH0MxrBg7ymsbSh9TU1d6VHRMk"
azure_cognitive_services_speech:
enabled: false
# The Maximum number of translation languages allows selecting. Default: 2
# The pricing will be different if allow more languages. Please check azure pricing.
max_num_tran_langs: 2
subscription_keys:
-
# please check the note from the top of this file
id: "key_1"
# https://learn.microsoft.com/en-us/azure/cognitive-services/speech-service/get-started-text-to-speech?pivots=programming-language-go&tabs=linux%2Cterminal#prerequisites
subscription_key: "your_key_here"
service_region: westus2
# Azure has limit to max concurrent connection for single key.
# you should communicate with azure to know your limit. Default 20
max_connection: 20
analytics_settings:
enabled: true
# if you've multiple plugNmeet servers then make sure that
# all plugNmeet servers can access this directory
# otherwise it may fail to fetch file. This path can be NSF or other network path
files_store_path: ./analytics
token_validity: 30m