github euzu/tuliprox v3.1.0
Release v3.1.0

latest releases: v3.2.0, v3.1.8, v3.1.7...
8 months ago

3.1.0 (2025-05-26)

  • !BREAKING_CHANGE! mapper refactored, mapping can be written as a script with a custom DSL.

  • !BREAKING_CHANGE! tags definition removed from new mapper.

  • !BREAKING_CHANGE! removed suffix and prefix from input config. Use mapper with an input filter instead.

  • !BREAKING_CHANGE! custom_stream_response is now custom_stream_response_path. The filename identifies the file inside the path

    • user_account_expired.ts
    • provider_connections_exhausted.ts
    • user_connections_exhausted.ts
    • channel_unavailable.ts
      user_account_expired.ts: Tuliprox will return a 403 Forbidden response for any playlist request if the user is expired.
      So this screen will only ever appear if someone tries to directly access a stream URL after their account has expired.
  • !BREAKING_CHANGE! epg refactored

    • url config is now renamed to sources
    • Added priority, priority is optional
    • auto_epg is now removed, use url: auto instead.
    • Added logo_override to overwrite logo from epg.

Note: The priority value determines the importance or order of processing. Lower numbers mean higher priority. That is:
A priority of 0 is higher than 1. Negative numbers are allowed and represent even higher priority

epg:
  sources:
    - url: "auto"
      priority: -2
      logo_override: true
    - url: "http://localhost:3001/xmltv.php?epg_id=1"
      priority: -1
    - url: "http://localhost:3001/xmltv.php?epg_id=2"
      priority: 3
    - url: "http://localhost:3001/xmltv.php?epg_id=3"
      priority: 0
  smart_match:
    enabled: true
    fuzzy_matching: true
    match_threshold: 80
    best_match_threshold: 99
    name_prefix: !suffix "."
    name_prefix_separator: [':', '|', '-']
    strip :  ["3840p", "uhd", "fhd", "hd", "sd", "4k", "plus", "raw"]
    normalize_regex: '[^a-zA-Z0-9\-]'
  • Fixed mapper transform capitalize.

  • Auto hot reload for mapping.ymland api_proxy.yml
    To enable set config_hot_reload: true in config.yml

  • Added config.d-style mapping support.
    You can now place multiple mapping files inside a directory like mapping.d and specify it using the -m option, for example:
    -m /home/tuliprox/config/mapping.d
    The files are loaded in alphanumeric order.
    Note: This is a lexicographic sort — so m_10.yml comes before m_2.yml unless you name files carefully (e.g., m_01.yml, m_02.yml, ..., m_10.yml).

  • Added mapping_path to config.yml.

  • Added list template for sequences. List templates can only be used for sequences.

templates:
 - name: CHAN_SEQ
   value:
   - '(?i)\bUHD\b'
   - '(?i)\bFHD\b'

The template can now be used for sequence

  sort:
    groups:
      order: asc
    channels:
      - field: caption
        group_pattern: "!US_TNT_ENTERTAIN!"
        order: asc
        sequence:
          - "!CHAN_SEQ!"
          - '(?i)\bHD\b'
          - '(?i)\bSD\b'
  • added disable_referer_header to reverse_proxy config
    This option, when set to true, prevents tuliprox from sending the Referer header in requests made when acting as a reverse proxy. This can be particularly useful when dealing with certain Xtream Codes providers that might restrict or behave differently based on the Referer header. Default is false.
reverse_proxy:
  disable_referer_header: false 

Don't miss a new tuliprox release

NewReleases is sending notifications on new releases.