การปรับเปลี่ยน websocket (flask-socketio) ไปยังไม่มีใคร.live ของ jkingsman เพื่อให้ผู้ใช้สามารถดำเนินการ "raids" (ในกรณีนี้ ซึ่งผู้ใช้ทั้งหมดปรับเข้าสู่สตรีมสตรีมเดียวกันทั้งหมด) บนสตรีมเมอร์ twitch โดยไม่มีผู้ชม
สคริปต์ผู้ปฏิบัติงาน ( scanner.py
) วนซ้ำรายการสตรีมและการหมุนของ Twitch API จนกว่าจะแทรกสตรีมเมอร์ทั้งหมดที่พบว่าตรงกับเกณฑ์การค้นหา (ค่าเริ่มต้นคือศูนย์ผู้ชม) จากนั้นจึงเริ่มต้นใหม่อีกครั้ง สตรีมเมอร์เหล่านี้จะถูกแทรกเป็นคีย์ที่หมดอายุโดยสันนิษฐานว่ามีคนจะดูพวกเขา และจากนั้นพวกเขาจะไม่มีผู้ดูเป็นศูนย์อีกต่อไป ดังนั้นจึงไม่ควรให้บริการนานเกินไป หากสตรีมยังคงมีผู้ชมเป็นศูนย์ในการผ่านครั้งต่อๆ ไป การแทรกลงใน Redis จะแทนที่เวลาหมดอายุเก่า และจะคงอยู่ต่อไปอีกระยะหนึ่ง
ตัวแปรสภาพแวดล้อมที่จะตั้งค่า:
CLIENT_ID
: ID ไคลเอนต์แอปพลิเคชัน Twitch ของคุณ (ดูได้ที่ https://dev.twitch.tv/console)CLIENT_SECRET
: ข้อมูลลับไคลเอนต์แอปพลิเคชัน Twitch ของคุณ (ดูได้ที่ https://dev.twitch.tv/console) ในขณะเดียวกัน แอป Flask ใน app.py
จะให้บริการดัชนีและจุดสิ้นสุดเพื่อรับสตรีมเมอร์แบบสุ่ม
pip install -r requirements.txt
CLIENT_ID=xxxxxx CLIENT_SECRET=xxxxxx scanner.py
) สิ่งนี้จะต้องทำงานอย่างต่อเนื่องflask run
) เห็นได้ชัดว่ายังไม่พร้อมสำหรับการผลิต คุณจะต้องตรวจสอบให้แน่ใจว่าบริการทั้งหมดทำงานเป็น daemons (ไฟล์ปรับแต่งบางไฟล์รวมอยู่ใน etc
) และแอปขวดของคุณทำงานอย่างปลอดภัย (เช่นด้านหลัง gunicorn/nginx/เลือกพิษของคุณ) (ดู setting up deployment
)
setup.txt
)นี่เป็นกระบวนการสำหรับการปรับใช้แบบเต็ม ไม่ใช่การตั้งค่าสำหรับเซิร์ฟเวอร์ภายในเครื่อง ดูด้านบนสำหรับคำแนะนำในการตั้งค่าเซิร์ฟเวอร์ภายในเครื่อง
cd /srv # wherever we want the app to be
git clone https://github.com/tybens/lonelyraids.com.git
cd lonelyraids.com
sudo apt-get update
sudo apt install python3-pip python3-dev python3-venv nginx
python3 -m venv venv
source venv/bin/activate
sudo pip3 install -r requirements.txt
# static files
sudo mkdir /var/www/static
sudo mv -v static/ * /var/www/static/
sudo chown 755 /var/www/static
# nginx config
sudo mv etc/lr-nginx /etc/nginx/sites-available/lr-nginx
sudo ln -s /etc/nginx/sites-available/lr-nginx /etc/nginx/sites-enabled/
sudo systemctl restart nginx
sudo ufw allow ' Nginx Full ' # not sure if this is necessary (the article said it was)
# redis setup
sudo wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
sudo make install
# supervisor setup
mkdir /var/log/streams
sudo mv etc/supervisor_services.conf /etc/supervisord.conf
sudo supervisord -c /etc/supervisord.conf # starts supervisord services
# certbot setup (for https:// ssl verification)
sudo snap install core
sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo certbot --nginx
deactivate # deactivate venv...
อัปเดตการพึ่งพาโดยตรงใน requirements.in
; ใช้ pip-compile
เพื่อคอมไพล์ลงใน requirements.txt
หากคุณอัปเดต