mirror of
https://github.com/m1k1o/neko.git
synced 2024-07-24 14:40:50 +12:00
Compare commits
3 Commits
scroll-to-
...
v2.8.12
Author | SHA1 | Date | |
---|---|---|---|
11a862f101 | |||
b938a4e09e | |||
e26e4d2004 |
@ -119,30 +119,23 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media only screen and (max-width: 1024px) {
|
@media only screen and (max-width: 600px) {
|
||||||
html,
|
#neko.expanded {
|
||||||
body {
|
.neko-main {
|
||||||
overflow-y: auto !important;
|
transform: translateX(calc(-100% + 65px));
|
||||||
width: auto !important;
|
|
||||||
height: auto !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
body > p {
|
video {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
#neko {
|
|
||||||
position: relative;
|
|
||||||
flex-direction: column;
|
|
||||||
max-height: initial !important;
|
|
||||||
|
|
||||||
.neko-main .video-container {
|
|
||||||
height: 100vh;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.neko-menu {
|
.neko-menu {
|
||||||
height: 100vh;
|
position: absolute;
|
||||||
width: 100% !important;
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
left: 65px;
|
||||||
|
width: calc(100% - 65px);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.connect {
|
.connect {
|
||||||
position: fixed;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
|
@ -9,6 +9,7 @@ import * as ko from './ko-kr'
|
|||||||
import * as fi from './fi-fi'
|
import * as fi from './fi-fi'
|
||||||
import * as ru from './ru-ru'
|
import * as ru from './ru-ru'
|
||||||
import * as cn from './zh-cn'
|
import * as cn from './zh-cn'
|
||||||
|
import * as tw from './zh-tw'
|
||||||
|
|
||||||
export const messages = {
|
export const messages = {
|
||||||
en,
|
en,
|
||||||
@ -22,4 +23,5 @@ export const messages = {
|
|||||||
fi,
|
fi,
|
||||||
ru,
|
ru,
|
||||||
cn,
|
cn,
|
||||||
|
tw,
|
||||||
}
|
}
|
||||||
|
127
client/src/locale/zh-tw.ts
Normal file
127
client/src/locale/zh-tw.ts
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
export const logout = '登出'
|
||||||
|
export const unsupported = '您的網頁瀏覽器不支援 WebRTC'
|
||||||
|
export const admin_loggedin = '您已經以管理員身份登入'
|
||||||
|
export const you = '您'
|
||||||
|
export const somebody = '某人'
|
||||||
|
export const send_a_message = '傳送訊息'
|
||||||
|
|
||||||
|
export const side = {
|
||||||
|
chat: '聊天',
|
||||||
|
files: '檔案',
|
||||||
|
settings: '設定',
|
||||||
|
}
|
||||||
|
|
||||||
|
export const connect = {
|
||||||
|
login_title: '請登入',
|
||||||
|
invitation_title: '您已被邀請進入此房間',
|
||||||
|
displayname: '輸入您的顯示名稱',
|
||||||
|
password: '密碼',
|
||||||
|
connect: '連線',
|
||||||
|
error: '登入錯誤',
|
||||||
|
empty_displayname: '顯示名稱不能為空。',
|
||||||
|
}
|
||||||
|
|
||||||
|
export const context = {
|
||||||
|
ignore: '忽略',
|
||||||
|
unignore: '取消忽略',
|
||||||
|
mute: '靜音',
|
||||||
|
unmute: '解除靜音',
|
||||||
|
release: '強制釋放控制',
|
||||||
|
take: '強制接管控制',
|
||||||
|
give: '移交控制',
|
||||||
|
kick: '踢出',
|
||||||
|
ban: '封鎖 IP',
|
||||||
|
confirm: {
|
||||||
|
kick_title: '踢出 {name}?',
|
||||||
|
kick_text: '您確定要踢出 {name} 嗎?',
|
||||||
|
ban_title: '封鎖 {name}?',
|
||||||
|
ban_text: '您是否要封鎖 {name}?封鎖後需要重新啟動伺服器才能取消封鎖。',
|
||||||
|
mute_title: '靜音 {name}?',
|
||||||
|
mute_text: '您確定要將 {name} 設為靜音嗎?',
|
||||||
|
unmute_title: '解除靜音 {name}?',
|
||||||
|
unmute_text: '您是否要解除 {name} 的靜音?',
|
||||||
|
button_yes: '是',
|
||||||
|
button_cancel: '取消',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
export const controls = {
|
||||||
|
release: '釋放控制',
|
||||||
|
request: '請求控制',
|
||||||
|
lock: '鎖定控制',
|
||||||
|
unlock: '解鎖控制',
|
||||||
|
has: '您擁有控制權',
|
||||||
|
hasnot: '您沒有控制權',
|
||||||
|
}
|
||||||
|
|
||||||
|
export const locks = {
|
||||||
|
control: {
|
||||||
|
lock: '鎖定控制(對使用者)',
|
||||||
|
unlock: '解鎖控制(對使用者)',
|
||||||
|
locked: '已鎖定控制(對使用者)',
|
||||||
|
unlocked: '已解鎖控制(對使用者)',
|
||||||
|
notif_locked: '已鎖定使用者控制',
|
||||||
|
notif_unlocked: '已解鎖使用者控制',
|
||||||
|
},
|
||||||
|
login: {
|
||||||
|
lock: '鎖定房間(對使用者)',
|
||||||
|
unlock: '解鎖房間(對使用者)',
|
||||||
|
locked: '房間已鎖定(對使用者)',
|
||||||
|
unlocked: '房間已解鎖(對使用者)',
|
||||||
|
notif_locked: '已鎖定房間',
|
||||||
|
notif_unlocked: '已解鎖房間',
|
||||||
|
},
|
||||||
|
file_transfer: {
|
||||||
|
lock: '鎖定檔案傳輸(對使用者)',
|
||||||
|
unlock: '解鎖檔案傳輸(對使用者)',
|
||||||
|
locked: '檔案傳輸已鎖定(對使用者)',
|
||||||
|
unlocked: '檔案傳輸已解鎖(對使用者)',
|
||||||
|
notif_locked: '已鎖定檔案傳輸',
|
||||||
|
notif_unlocked: '已解鎖檔案傳輸',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
export const setting = {
|
||||||
|
scroll: '滾動靈敏度',
|
||||||
|
scroll_invert: '反向滾動',
|
||||||
|
autoplay: '自動播放影片',
|
||||||
|
ignore_emotes: '忽略表情符號',
|
||||||
|
chat_sound: '播放聊天音效',
|
||||||
|
keyboard_layout: '鍵盤配置',
|
||||||
|
broadcast_title: '直播',
|
||||||
|
}
|
||||||
|
|
||||||
|
export const connection = {
|
||||||
|
logged_out: '您已登出。',
|
||||||
|
reconnecting: '正在重新連線…',
|
||||||
|
connected: '已連線',
|
||||||
|
disconnected: '已斷線',
|
||||||
|
kicked: '您已被移出此房間。',
|
||||||
|
button_confirm: '確定',
|
||||||
|
}
|
||||||
|
|
||||||
|
export const notifications = {
|
||||||
|
connected: '{name} 已連線',
|
||||||
|
disconnected: '{name} 已斷線',
|
||||||
|
controls_taken: '{name} 接管了控制權',
|
||||||
|
controls_taken_force: '強制接管控制權',
|
||||||
|
controls_taken_steal: '從 {name} 奪取了控制權',
|
||||||
|
controls_released: '{name} 釋放了控制權',
|
||||||
|
controls_released_force: '強制釋放控制權',
|
||||||
|
controls_released_steal: '從 {name} 強制釋放控制權',
|
||||||
|
controls_given: '將控制權交給 {name}',
|
||||||
|
controls_has: '{name} 擁有控制權',
|
||||||
|
controls_has_alt: '但我已通知對方您有意接管',
|
||||||
|
controls_requesting: '{name} 正在請求控制權',
|
||||||
|
resolution: '將解析度改為 {width}x{height}@{rate}',
|
||||||
|
banned: '已封鎖 {name}',
|
||||||
|
kicked: '已踢出 {name}',
|
||||||
|
muted: '已將 {name} 靜音',
|
||||||
|
unmuted: '已解除 {name} 的靜音',
|
||||||
|
}
|
||||||
|
|
||||||
|
export const files = {
|
||||||
|
downloads: '下載',
|
||||||
|
uploads: '上傳',
|
||||||
|
upload_here: '點選或拖曳檔案至此上傳',
|
||||||
|
}
|
@ -4,15 +4,18 @@ Neko UI loads, but you don't see the screen, and it gives you `connection timeou
|
|||||||
|
|
||||||
## Test your client
|
## Test your client
|
||||||
|
|
||||||
Some browser may block WebRTC access by default. You can check if it is enabled by going to `about:webrtc` or `chrome://webrtc-internals` in your browser.
|
Some browsers may block WebRTC access by default. You can check if it is enabled by going to `about:webrtc` or `chrome://webrtc-internals` in your browser.
|
||||||
|
|
||||||
Check if your extensions are not blocking WebRTC access. For example, Privacy Badger or Private Internet Access blocks WebRTC by default.
|
Check if your extensions are not blocking WebRTC access. Following extensions are known to block or does not work properly with WebRTC:
|
||||||
|
- Privacy Badger
|
||||||
|
- Private Internet Access
|
||||||
|
- PIA VPN (even if disabled)
|
||||||
|
|
||||||
Test whether your client [supports](https://www.webrtc-experiment.com/DetectRTC/) and can [connect to WebRTC](https://www.webcasts.com/webrtc/).
|
Test whether your client [supports](https://www.webrtc-experiment.com/DetectRTC/) and can [connect to WebRTC](https://www.webcasts.com/webrtc/).
|
||||||
|
|
||||||
## Networking
|
## Networking
|
||||||
|
|
||||||
Most problems are networking related.
|
If you are absolutely sure, that your client is working correctly, then most likely your networking is not set up correctly.
|
||||||
|
|
||||||
### Check if your ports are correctly exposed using docker
|
### Check if your ports are correctly exposed using docker
|
||||||
|
|
||||||
@ -59,6 +62,13 @@ Then try to type on one end, you should see characters on the other side.
|
|||||||
|
|
||||||
If it does not work for you, then most likely your port forwarding is not working correctly. Or your ISP is blocking traffic.
|
If it does not work for you, then most likely your port forwarding is not working correctly. Or your ISP is blocking traffic.
|
||||||
|
|
||||||
|
|
||||||
|
If you get [`Command 'nc' not found.`](https://command-not-found.com/nc) error, you can install `netcat` package using:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
sudo apt-get install netcat
|
||||||
|
```
|
||||||
|
|
||||||
### Check if your external IP was determined correctly
|
### Check if your external IP was determined correctly
|
||||||
|
|
||||||
One of the first logs, when the server starts, writes down your external IP that will be sent to your clients to connect to.
|
One of the first logs, when the server starts, writes down your external IP that will be sent to your clients to connect to.
|
||||||
@ -67,6 +77,8 @@ One of the first logs, when the server starts, writes down your external IP that
|
|||||||
docker-compose logs neko | grep nat_ips
|
docker-compose logs neko | grep nat_ips
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Note: Some newer versions of docker-compose use `docker compose` instead of `docker-compose`.
|
||||||
|
|
||||||
You should see this:
|
You should see this:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
Reference in New Issue
Block a user