6.2 KiB
Contributing Guide
Introduction
iptv-org is more than just a repository for sharing links to live streams. After years of commitment and moderation practices, it has evolved into a knowledge base for channels, streams, and program guides. To keep all this data organized, we must follow strict structural requirements and set certain standards for participants.
How to?
How to add a new stream link to a playlist?
You have several options:
- Create a new request using this form and, if approved, the link will automatically be added to the playlist on the next update.
- Add the link to the playlist directly using a pull request. See Playlist Structure.
Regardless of which option you choose, please perform the following checks before posting your request:
- Make sure the link is not already in the playlist by searching the repository.
- Make sure the link you want to add is stable and works properly. See Stream Testing.
- Make sure the link does not lead to a Xtream Codes server. Why don't you accept links to Xtream Codes servers?.
- Make sure the link is not tokenized.
- Make sure the link leads directly to the broadcast without unnecessary redirects.
- Make sure the channel is in our database. This can be verified through iptv-org.github.io. If your desired channel is not on the list, you first must add it via a request.
- Make sure the channel isn't on our blocklist. This can also be verified through iptv-org.github.io.
If the broadcast only works in certain countries or is periodically interrupted, please indicate this in your request.
IMPORTANT: A request without a valid stream ID or a working stream link will be closed immediately.
How to fix the stream description?
Most of the stream description (channel name, feed name, categories, languages, broadcast area, logo) is loaded from iptv-org/database using the stream ID.
So there are usually only two reasons for an incorrect description:
- The stream has an incorrect ID: In that case, all you need is to update the stream ID in the playlist using this form. A full list of all supported channels and their corresponding IDs can be found on iptv-org.github.io.
- Our database contains incorrect channel information: You can verify this on iptv-org.github.io. If this is the case, please refer to: How to edit a database entry?.
Once the changes are approved, the stream description will automatically update across all repositories.
How to report a broken stream?
Fill out this form and as soon as a working replacement appears, we will add it to the playlist or at least remove the non-working one.
The only thing before publishing your report is to make sure that:
- The link is still in our playlists. You can verify this by searching the repository.
- The link is completely broken and is not just geo-blocked. See Stream Testing.
IMPORTANT: An issue without a valid stream link will be closed immediately.
How to remove my channel from the playlist?
To request the removal of a channel link from the repository, please fill out this form and wait for the request to be reviewed (this usually takes less than 1 business day). If approved, links to the channel will be immediately removed from the repository.
The channel will also be added to our blocklist to prevent it from reappearing in our playlists in the future.
IMPORTANT: We only accept removal requests from channel owners and their official representatives. All other requests will be closed immediately.
Project Structure
.github/DISCUSSION_TEMPLATE/: Contains discussion templates for the repository.ISSUE_TEMPLATE/: Contains issue templates for the repository.workflows/: Contains GitHub Actions workflows. See Workflows.CODE_OF_CONDUCT.md: Rules you shouldn't break if you don't want to get banned.
.readme/preview.png: Image displayed in theREADME.md.template.md: Template configuration forPLAYLISTS.md.
scripts/: Contains internal utility scripts used in the repository. See Scripts.streams/: Contains internal playlists with all streams. See Playlist Structure.tests/: Contains test suites to validate project scripts.CONTRIBUTING.md: The file you are currently reading.PLAYLISTS.md: Automatically updated list of available playlists.README.md: Project description and documentation overview.