Untuk pemecahan masalah dan pemberitahuan rilis, bergabunglah dalam perselisihan!
PayPal:
BTC: bc1q3wxm269mdmwdqjqkxgt7s5zp8ah05dexdua0zv
ETH: 0x8c096710e3621fe5f8E384efBd17D8E3E798Dc0c (Cryptik.eth)
DOGE: D6n2g2KGdqEwR4MhhT7uAdvZFaTwqwd6rS
Venmo: @dtcarls
Repositori ini menjalankan bot obrolan GroupMe, Discord, atau Slack untuk mengirim informasi ESPN Fantasy Football ke ruang obrolan GroupMe, Discord, atau Slack.
Apa fungsinya?
Tautan Jadwal: https://www.gamedaybot.com/message-schedule/
Mengirimkan pesan berikut pada jadwal ini:
Skor Akhir - Sen - 18:30 waktu pantai timur (Pertandingan yang berada dalam jarak 16 poin satu sama lain untuk diawasi selama pertandingan Senin malam)
Papan Skor - Sen, Selasa, Jum - 7:30 waktu setempat (Papan skor fantasi ESPN saat ini)
Piala - Selasa - 7:30 waktu setempat (Skor tinggi, skor rendah, kemenangan terbesar, kemenangan terdekat)
Pemeringkatan kekuatan - Selasa - 18:30 waktu setempat
Klasemen saat ini - Rabu - 07.30 waktu setempat
Laporan pengabaian - Rabu - 07.30 waktu setempat
Pertandingan - Kam - 19:30 waktu pantai timur (Pertandingan mendatang)
Laporan Pemain yang Harus Dipantau - Minggu - 7:30 waktu setempat (Pemain di starting lineup yang Dipertanyakan, Diragukan, atau Keluar)
Papan Skor - Minggu - 16:00, 20:00 waktu pantai timur (Papan skor fantasi ESPN saat ini)
Menyiapkan GroupMe, Discord, atau Slack, dan menerapkan aplikasi di Heroku
Pengaturan Grup Saya
Pengaturan kendur
Pengaturan perselisihan
Pengaturan Heroku
Liga Swasta
Pemecahan Masalah / FAQ
Memulai pengembangan dan pengujian
Menginstal untuk pengembangan
Variabel Lingkungan
Berjalan dengan Docker
Berjalan tanpa Docker
Menjalankan tes
Semua ini terlihat terlalu rumit dan membingungkan? Tidak tahu apa itu "Heroku"? Pertimbangkan untuk memeriksa https://www.GameDayBot.com/ tempat saya menawarkan layanan hosting dan melakukan yang terbaik untuk meminimalkan kerumitan.
Jangan menyebarkan 2 bot yang sama dalam obrolan yang sama. Secara umum, Anda harus membiarkan komisaris Anda melakukan pengaturannya
Buka www.groupme.com dan daftar atau login
Jika Anda belum memilikinya untuk liga Anda, buatlah "Obrolan Grup" baru
Selanjutnya kita akan menyiapkan bot untuk GroupMe
Buka https://dev.groupme.com/session/new dan login
Klik "Buat Bot"
Buat bot Anda. GroupMe melakukan pekerjaan dengan baik dalam menjelaskan setiap hal.
Setelah Anda membuat bot, Anda akan melihat sesuatu seperti ini. Klik "Edit"
Halaman ini penting karena Anda memerlukan "ID Bot" di halaman ini. Anda juga dapat mengirim pesan percobaan dengan kotak teks untuk memastikan pesan terhubung ke ruang obrolan Anda. Catatan tambahan: Jika Anda menggunakan id bot yang digambarkan di halaman, Anda akan mengirim spam ke ruang obrolan yang kosong sehingga tidak sepadan dengan usaha yang dilakukan
Buka https://slack.com/signin dan masuk ke ruang kerja tempat bot berada
Jika Anda belum memilikinya untuk liga Anda, buatlah Saluran Liga baru
Selanjutnya kita akan menyiapkan bot untuk Slack
Kunjungi https://api.slack.com/apps/new
Beri nama aplikasinya, dan pilih ruang kerja yang diinginkan dari dropdown.
Pilih bagian Webhook Masuk di samping.
Ubah tombol dari Mati ke Aktif.
Pilih Tambahkan Webhook Baru ke Ruang Kerja
Di dropdown Posting ke, pilih saluran yang ingin Anda kirimi pesan, lalu pilih Otorisasi.
Halaman ini penting karena Anda memerlukan "URL Webhook" di halaman ini.
Masuk atau buat akun perselisihan
Buka atau buat server perselisihan untuk menerima pesan
Buka pengaturan server
Buka Webhook
Buat webhook, beri nama dan pilih saluran mana untuk menerima pesan
Simpan "URL Webhook" di halaman ini
"28 November 2022, Heroku berhenti menawarkan paket produk gratis"
Saya menawarkan layanan hosting yang jauh lebih rendah daripada biaya baru Heroku di https://www.GameDayBot.com/
Buka https://id.heroku.com/login dan daftar atau login
Klik tombol ungu ini untuk menerapkan kode secara otomatis:
Buka dasbor Anda (https://dashboard.heroku.com/apps) Sekarang Anda perlu mengatur variabel lingkungan agar berfungsi untuk liga Anda. Klik Pengaturan di dasbor Anda. Kemudian klik tombol "Reveal Config Vars" dan Anda akan melihat sesuatu seperti ini.
Sekarang kita perlu mengedit variabel-variabel ini (klik pensil di sebelah kanan variabel untuk memodifikasi) Catatan: Aplikasi akan dimulai ulang ketika Anda mengubah variabel apa pun sehingga ruang obrolan Anda mungkin semi-spam dengan pesan init "Hai" Anda bisa ubah variabel INIT_MSG menjadi kosong agar tidak ada pesan init. Perlu juga dicatat bahwa Heroku sepertinya memulai ulang aplikasi sekitar sekali sehari
Lihat Bagian Variabel Lingkungan untuk dokumentasi
Setelah Anda menyiapkan variabel, Anda perlu mengaktifkannya. Navigasikan ke tab "Sumber Daya" di Dasbor aplikasi Heroku Anda. Anda akan melihat sesuatu seperti di bawah ini. Klik pensil di sebelah kanan dan aktifkan tombol sehingga berwarna biru seperti yang digambarkan dan klik "Konfirmasi".
Anda sudah selesai! Anda sekarang memiliki bot obrolan GroupMe/Slack/Discord berfitur lengkap untuk liga ESPN! Jika Anda memiliki INIT_MSG, Anda akan melihatnya berseru di ruang obrolan GroupMe, Discord, atau Slack Anda.
Sayangnya untuk melakukan penerapan otomatis versi terbaru Anda memerlukan akses admin ke repositori di git. Anda dapat memeriksa pembaruan di halaman github (https://github.com/dtcarls/fantasy_football_chat_bot/commits/master) dan klik tombol penerapan lagi; namun, ini akan menerapkan instance baru dan variabelnya perlu diedit lagi.
Petunjuk ini akan membuat Anda mendapatkan salinan proyek dan berjalan di mesin lokal Anda untuk tujuan pengembangan dan pengujian.
Dengan Docker:
git clone https://github.com/dtcarls/fantasy_football_chat_botcd fantasy_football_chat_bot buruh pelabuhan membangun -t fantasy_football_chat_bot .
Tanpa Docker:
git clone https://github.com/dtcarls/fantasy_football_chat_botcd fantasy_football_chat_bot pip install -r persyaratan.txt# atau#python3 setup.py install
Var | Jenis | Diperlukan | Bawaan | Keterangan |
---|---|---|---|---|
BOT_ID | Rangkaian | Untuk Grup Saya | Tidak ada | Ini adalah ID Bot Anda dari halaman pengembang GroupMe |
SLACK_WEBHOOK_URL | Rangkaian | Untuk kendur | Tidak ada | Ini adalah URL Webhook Anda dari halaman Aplikasi Slack |
DISCORD_WEBHOOK_URL | Rangkaian | Untuk Perselisihan | Tidak ada | Ini adalah URL Webhook Anda dari halaman Pengaturan Discord |
LEAGUE_ID | Rangkaian | Ya | Tidak ada | Ini adalah id liga ESPN Anda |
START_DATE | Tanggal | Ya | Awal musim ini (YYYY-MM-DD) | Ini adalah saat bot akan mulai memperhatikan dan mengirim pesan ke obrolan Anda. |
END_DATE | Tanggal | Ya | Akhir musim saat ini (YYYY-MM-DD) | Ini adalah saat bot akan berhenti memperhatikan dan berhenti mengirim pesan ke obrolan Anda. |
LEAGUE_YEAR | Rangkaian | Ya | Tahun Saat Ini (YYYY) | Tahun Liga ESPN untuk dilihat |
ZONA WAKTU | Rangkaian | Ya | Amerika/New_York | Zona waktu pesan yang ingin dikirim. |
INIT_MSG | Rangkaian | TIDAK | Tidak ada | Pesan yang akan disampaikan bot saat dimulai. |
TOP_HALF_SCORING | Bodoh | TIDAK | PALSU | Jika disetel ke Benar, saat klasemen diposting pada hari Rabu, hal itu juga mencakup berada di paruh atas liga Anda untuk mendapatkan poin dan Anda menerima "kemenangan" tambahan untuk itu. |
RANDOM_PHRASE | Bodoh | TIDAK | PALSU | Jika disetel ke True, saat pertarungan diposting pada hari Selasa, frasa acak juga akan disertakan |
MONITOR_LAPORAN | Bodoh | TIDAK | PALSU | Jika disetel ke Benar, akan memberikan laporan pemain di lineup awal yang Dipertanyakan, Diragukan, Keluar, atau diproyeksikan kurang dari 4 poin |
WAIVER_REPORT | Bodoh | TIDAK | PALSU | Jika disetel ke True, akan memberikan laporan pengabaian penambahan/penurunan. |
HARIAN_PELEPASAN | Bodoh | TIDAK | PALSU | Jika disetel ke True, akan memberikan laporan pengabaian penambahan/penurunan setiap hari. |
ESPN_S2 | Rangkaian | Untuk liga Swasta | Tidak ada | Digunakan untuk liga swasta. Lihat Bagian Liga Pribadi untuk dokumentasi |
SWID | Rangkaian | Untuk liga Swasta | Tidak ada | Digunakan untuk liga swasta. (Dapat didefinisikan dengan atau tanpa {}) Lihat Bagian Liga Pribadi untuk dokumentasi |
Gunakan BOT_ID jika menggunakan Groupme, DISCORD_WEBHOOK_URL jika menggunakan Discord, dan SLACK_WEBHOOK_URL jika menggunakan Slack (atau multiple untuk menerima pesan di banyak tempat)
>>> ekspor BOT_ID=[masukkan ID Bot GroupMe Anda] >>> ekspor WEBHOOK_URL=[masukkan URL Webhook Anda] >>> ekspor LEAGUE_ID=[masukkan ID liga ESPN] >>> ekspor LEAGUE_YEAR=[masukkan tahun liga] >>> cd fantasi_football_chat_bot >>> buruh pelabuhan menjalankan --rm=True -e BOT_ID=$BOT_ID -e LEAGUE_ID=$LEAGUE_ID -e LEAGUE_YEAR=$LEAGUE_YEAR fantasi_sepakbola_chat_bot
Gunakan BOT_ID jika menggunakan Groupme, DISCORD_WEBHOOK_URL jika menggunakan Discord, dan SLACK_WEBHOOK_URL jika menggunakan Slack (atau multiple untuk menerima pesan di banyak tempat)
>>> ekspor BOT_ID=[masukkan ID Bot GroupMe Anda] >>> ekspor WEBHOOK_URL=[masukkan URL Webhook Anda] >>> ekspor LEAGUE_ID=[masukkan ID liga ESPN] >>> ekspor LEAGUE_YEAR=[masukkan tahun liga] >>> python3 gamedaybot/espn/espn_bot.py
Tes otomatis untuk paket ini disertakan dalam direktori tests
. Setelah instalasi, Anda dapat menjalankan pengujian ini dengan mengubah direktori ke direktori gamedaybot
dan menjalankan perintah berikut:
pip install -r persyaratan-test.txtpytest
Untuk liga pribadi Anda perlu mendapatkan swid dan espn_s2. Anda dapat menemukan dua nilai ini setelah masuk ke akun sepak bola fantasi espn Anda di situs web espn. (Browser Chrome) Klik kanan di mana saja di situs web dan klik opsi periksa. Dari sana klik Aplikasi di bilah atas. Di sebelah kiri di bawah bagian Penyimpanan klik Cookies lalu http://fantasy.espn.com. Dari sana Anda seharusnya dapat menemukan variabel dan nilai swid dan espn_s2 Anda.
Liga harus penuh.
Botnya tidak berfungsi
Apakah Anda melewatkan satu langkah dalam petunjuknya? Coba lakukan dari awal lagi. Jika masih belum berhasil, buka terbitan (https://github.com/dtcarls/fantasy_football_chat_bot/issues) atau masuk ke discord (tautan di bagian atas readme) agar jawabannya dapat dibagikan kepada orang lain.
Bagaimana cara menghitung peringkat kekuatan?
Mereka dihitung menggunakan dominasi 2 langkah, serta kombinasi poin yang dicetak dan margin kemenangan. Tertimbang masing-masing 80/15/5. Saya tidak akan terlalu memperhatikan jumlah sebenarnya tetapi lebih memperhatikan kesenjangan antar tim. Sumber perhitungan selengkapnya dapat dilihat di sini: https://github.com/cwendt94/espn-api/pull/12/files. Jika Anda ingin tutorial tentang matriks dominasi: https://www.youtube.com/watch?v=784TmwaHPOw
Apakah ada versi ini untuk Yahoo/CBS/NFL/[masukkan situs lain]?
Tidak, ini memerlukan pengerjaan ulang yang signifikan untuk situs lain.
Bagaimana cara mengatur zona waktu lain?
Tentukan variabel Anda https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
Apakah ada versi ini untuk Messenger/WhatsApp/[masukkan obrolan lain]?
Tidak, tapi saya terbuka untuk menarik permintaan yang mengimplementasikan API mereka untuk dukungan lintas platform tambahan.
Klasemen saya terlihat salah. Saya memiliki yang aneh (+1) di dalamnya.
TOP_HALF_SCORING: Jika disetel ke True, saat klasemen diposting pada hari Rabu, klasemen juga akan mencakup kemenangan dengan skor separuh teratas
Kemenangan separuh teratas adalah berada di separuh teratas liga Anda untuk mendapatkan poin dan Anda menerima "kemenangan" tambahan untuk itu. Angka dalam tanda kurung (+1) menunjukkan berapa banyak kemenangan tambahan sepanjang musim untuk kemenangan paruh atas.