-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy path.env.example
More file actions
119 lines (111 loc) · 4.23 KB
/
Copy path.env.example
File metadata and controls
119 lines (111 loc) · 4.23 KB
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
# Copy this file to .env, then replace placeholder values for your runtime.
# The key list intentionally matches the live deployment .env; values here are
# examples only and must not be treated as production credentials.
# Hub and dispatcher.
# Values ending in _URL are full service URLs. Local examples use 127.0.0.1
# and explicit ports only because the sample can run on one box. In a real
# deployment, these can be HTTPS FQDNs, internal load balancer URLs, private
# service DNS names, or service-mesh addresses, often with no explicit port.
HUB_PORT=4000
WEBHOOK_PATH=/webhook
HUB_DELIVERY_MODE=http
CENTRAL_ROUTE_DISPATCHER_URL=http://127.0.0.1:4050/orchestrate/webhook
WEBHOOK_TIMESTAMP_TOLERANCE_SECONDS=300
WEBHOOK_IDEMPOTENCY_TTL_MS=3900000
WEBHOOK_IDEMPOTENCY_SWEEP_INTERVAL_MS=60000
HUB_SQLITE_DB_PATH=.data/hub.sqlite
ZOOM_SECRET_TOKEN=
VIDEO_SECRET_TOKEN=
INTERNAL_WEBHOOK_SECRET=
INTERNAL_WEBHOOK_TIMESTAMP_TOLERANCE_SECONDS=300
# Central routing.
CENTRAL_ROUTE_DISPATCHER_PORT=4050
ROUTER_SQLITE_DB_PATH=.data/router.sqlite
# Prefer these readable spoke-group URLs for the common 4-region layout.
SPOKE_AMER_WEST_URL=http://127.0.0.1:4610/spoke/webhook
SPOKE_AMER_EAST_URL=http://127.0.0.1:4611/spoke/webhook
SPOKE_EUROPE_URL=http://127.0.0.1:4612/spoke/webhook
SPOKE_APAC_HUB_URL=http://127.0.0.1:4613/spoke/webhook
SPOKE_US_URL=http://127.0.0.1:4611/spoke/webhook
SPOKE_UNKNOWN_URL=http://127.0.0.1:4611/spoke/webhook
# Optional JSON override for custom route keys or one-off deployments.
REGIONAL_SPOKE_ENDPOINTS=
# Kubernetes / k3s compute launchers.
K8S_NAMESPACE=rtms
K8S_COMPUTE_IMAGE=rtms-distributed-compute:local
K8S_IMAGE_PULL_POLICY=Always
K8S_USE_IMAGE_ENTRYPOINT=true
K8S_COMPUTE_SECRET_NAME=rtms-compute-secrets
K8S_COMPUTE_SECRET_MOUNT_PATH=/var/run/rtms/secrets
# Per-stream Kubernetes Job requests and limits.
K8S_COMPUTE_CPU_REQUEST=0.25
K8S_COMPUTE_MEMORY_REQUEST=200Mi
K8S_COMPUTE_CPU_LIMIT=0.5
K8S_COMPUTE_MEMORY_LIMIT=1Gi
RTMS_SECRET_DIR=/var/run/rtms/secrets
KUBECONFIG=/path/to/k3s-remote.yaml
KUBECONFIG_INLINE_B64=
K8S_JOB_TTL_SECONDS_AFTER_FINISHED=900
K8S_TERMINATION_GRACE_PERIOD_SECONDS=60
ONE_STREAM_PER_JOB=true
K8S_STOP_JOB_DELETE_DELAY_MS=25000
COMPUTE_DRY_RUN=false
# Local MinIO / artifact storage.
MINIO_ROOT_USER=rtms_minio
MINIO_ROOT_PASSWORD=
MINIO_API_PORT=9002
MINIO_CONSOLE_PORT=9001
ARTIFACT_STORAGE_PORT=4550
ARTIFACT_STORAGE_PROVIDER=minio
ARTIFACT_BUCKET=rtms-artifacts
ARTIFACT_S3_ENDPOINT=http://127.0.0.1:9002
ARTIFACT_S3_FORCE_PATH_STYLE=true
ARTIFACT_S3_CREATE_BUCKET=true
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
ARTIFACT_STORAGE_URL=http://127.0.0.1:4550
# URL reachable from Kubernetes compute pods. This can be different from the
# local service URL when the launcher runs on a different system from the pod.
COMPUTE_ARTIFACT_STORAGE_URL=http://127.0.0.1:4550
ARTIFACT_UPLOAD_TIMEOUT_MS=5000
ARTIFACT_UPLOAD_ATTEMPTS=2
# Media recording.
MEDIA_RECORDING_ENABLED=true
MEDIA_FINALIZE_DELAY_MS=2000
WRITE_MEDIA_PACKET_EVENTS=false
# Realtime cache and observability.
REALTIME_CACHE_PORT=4560
REALTIME_CACHE_BACKEND=redis
REDIS_PASSWORD=
REALTIME_CACHE_REDIS_URL=redis://127.0.0.1:6379
REALTIME_CACHE_REDIS_PASSWORD=
REALTIME_CACHE_URL=http://127.0.0.1:4560
# URL reachable from Kubernetes compute pods.
COMPUTE_REALTIME_CACHE_URL=http://127.0.0.1:4560
REALTIME_CACHE_TTL_SECONDS=300
REALTIME_CACHE_STREAM_FRESHNESS_SECONDS=180
REALTIME_CACHE_FLUSH_INTERVAL_MS=5000
REALTIME_WEBHOOK_STATS_RETENTION_SECONDS=90000
PHASER_ARLO_PORT=4570
PHASER_ARLO_REALTIME_CACHE_URL=http://127.0.0.1:4560
# Keep observability private by default. Set to a LAN IP such as 192.168.33.5
# when you need Grafana/Prometheus/Loki reachable from another machine.
OBSERVABILITY_BIND_ADDR=127.0.0.1
LOKI_PUSH_URL=http://127.0.0.1:3100/loki/api/v1/push
# URL reachable from Kubernetes compute pods.
COMPUTE_LOKI_PUSH_URL=http://127.0.0.1:3100/loki/api/v1/push
LOKI_FLUSH_INTERVAL_MS=2000
SERVICE_LOG_LEVEL=info
SERVICE_LOG_CONSOLE=true
RTMS_LOG_LEVEL=info
RTMS_LOG_CONSOLE=true
# Zoom RTMS app credentials.
ZOOM_CLIENT_ID=
ZOOM_CLIENT_SECRET=
VIDEO_CLIENT_ID=
VIDEO_CLIENT_SECRET=
# 32 requests all available RTMS media. Use 3 for audio + video or 9 for audio + transcript.
MEDIA_TYPES_FLAG=32
MEDIA_SOCKET_CONNECTION_MODE=split
AUDIO_STREAM_MODE=mixed
VIDEO_STREAM_MODE=active