tellytv / telly

An IPTV proxy
MIT License
769 stars 106 forks source link

Getting a "error parsing regexp" when running telly with custom feed #256

Closed vmlrodrigues closed 5 years ago

vmlrodrigues commented 5 years ago

telly release with the issue:

telly, version 1.1.0.5 (branch: dev, revision: 567f9062e94f32fd46bd6b82f10c1ac2e7f711c5) build user: root@70a7b8803ed2 build date: 20190103-02:42:24 go version: go1.11.4

Last working telly release (if known): First time user

Operating environment (Docker/Windows/Linux/QNAP, etc.):

macOS version 10.14.5 (18F132)

Description of problem: Getting this error on launch:

PANI[2019-06-27T07:50:01+10:00] your regex is invalid                         error="error parsing regexp: missing argument to repetition operator: `*`"

Contents of telly.config.toml [if you're using a version above 1.1]:

Note on running multiple instances of telly

There are three things that make up a "key" for a given Telly Virtual Tuner:

Device-ID [required], Device-UUID [optional], and port [required]

When you configure your additional telly instances, change:

the Device-ID [above] AND

the Device-UUID [above, if you're entering one] AND

the port [below in the "Web" section]

THIS SECTION IS REQUIRED

[IPTV] Streams = 1 # number of simultaneous streams that telly virtual tuner will provide

This is often 1, but is set by your iptv provider

Starting-Channel = 10000 # When telly assigns channel numbers it will start here XMLTV-Channels = true # if true, any channel numbers specified in your M3U file will be used. FFMpeg = true # if this is uncommented, streams are buffered through ffmpeg;

ffmpeg must be installed and on your $PATH

                        # if you want to use this with Docker, be sure you use the correct docker image

if you DO NOT WANT TO USE FFMPEG leave this commented; DO NOT SET IT TO FALSE [Issue #185]

THIS SECTION IS REQUIRED

[Log] Level = "info" # Only log messages at or above the given level. [debug, info, warn, error, fatal] Requests = true # Log HTTP requests made to telly

THIS SECTION IS REQUIRED

[Web] Base-Address = "192.168.1.29:6077" # Set this to the IP address of the machine telly runs on AS SEEN BY PLEX

telly will be telling Plex to connect to URLs at this address.

Listen-Address = "0.0.0.0:6077" # this can stay as-is

THIS SECTION IS OPTIONAL ========================================================================

[SchedulesDirect] # If you have a Schedules Direct account, fill in details and then

                         # UNCOMMENT THIS SECTION

Username = "" # This is under construction; There is no provider

Password = "" # that works with it fully at this time

AT LEAST ONE SOURCE IS REQUIRED

[[Source]] Name = "OK2 IPTV" # Name is optional and is used mostly for logging purposes Provider = "Custom" # DO NOT CHANGE THIS IF YOU ARE ENTERING URLS OR FILE PATHS

"Custom" is telly's internal identifier for this 'Provider'

                        # If you change it to "NAMEOFPROVIDER" telly's reaction will be
                        # "I don't recognize a provider called 'NAMEOFPROVIDER'."

This can be either URL or fully-qualified path.

M3U = "http://ok2.se:8000/get.php?username=REDACTED&password=REDACTED&type=m3u_plus&output=m3u8"

This needs to be an M3Uplus file

                        # IT CANNOT BE A STREAM ADDRESS
                        # IT CANNOT BE AN M3U THAT LINKS TO ANOTHER M3U

This can be either URL or fully-qualified path.

EPG = "http://ok2.se:8000/xmltv.php?username=REDACTED&password=REDACTED"

THE FOLLOWING KEYS ARE OPTIONAL IN THEORY, REQUIRED IN PRACTICE

Filter = "PORTUGUESE - NEW"

Telly is written in Go, and uses the Go regular expression system,

                        # which is limited compared to other regular expression parsers.

FilterKey = "group-title" # Telly applies the regular expression to the contents of this key in the M3U. FilterRaw = false # FilterRaw will run your regex on the entire line instead of just specific keys. Sort = "group-title" # Sort will alphabetically sort your channels by the M3U key provided

END TELLY CONFIG


**Command line used to run telly [if applicable]:**
- REMEMBER TO DELETE ANY CREDENTIALS IN CONFIG FILES OR COMMAND LINES

./telly


**Docker run command used to run telly [if applicable]:**
- REMEMBER TO DELETE ANY CREDENTIALS IN CONFIG FILES OR COMMAND LINES

**telly or docker log:**

INFO[2019-06-27T07:49:49+10:00] telly is preparing to go live (version=1.1.0.5, branch=dev, revision=567f9062e94f32fd46bd6b82f10c1ac2e7f711c5) INFO[2019-06-27T07:49:49+10:00] Loading M3U from http://ok2.se:8000/get.php?username=REDACTED&password=REDACTED.store&type=m3u_plus&output=m3u8 INFO[2019-06-27T07:49:56+10:00] Loading XMLTV from http://ok2.se:8000/xmltv.php?username=REDACTED&password=REDACTED.store PANI[2019-06-27T07:50:01+10:00] your regex is invalid error="error parsing regexp: missing argument to repetition operator: *" panic: (*logrus.Entry) (0x18018a0,0xc00019c140)

goroutine 1 [running]: github.com/tellytv/telly/vendor/github.com/sirupsen/logrus.Entry.log(0x1e8a420, 0xc000082c30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...) /go/src/github.com/tellytv/telly/vendor/github.com/sirupsen/logrus/entry.go:126 +0x2a7 github.com/tellytv/telly/vendor/github.com/sirupsen/logrus.(Entry).Panic(0xc00019c050, 0xc003667100, 0x1, 0x1) /go/src/github.com/tellytv/telly/vendor/github.com/sirupsen/logrus/entry.go:194 +0xb2 github.com/tellytv/telly/vendor/github.com/sirupsen/logrus.(Entry).Panicln(0xc00019c050, 0xc0036672a0, 0x1, 0x1) /go/src/github.com/tellytv/telly/vendor/github.com/sirupsen/logrus/entry.go:289 +0xd5 main.(lineup).FilterTrack(0xc000054cc0, 0x1908540, 0xc00023c8c0, 0x0, 0x0, 0x0, 0xc0000c4000, 0x34, 0xc000082c60, 0xc000056000, ...) /go/src/github.com/tellytv/telly/lineup.go:275 +0x56e main.(lineup).processProvider(0xc000054cc0, 0x1908540, 0xc00023c8c0, 0x2, 0xb, 0x1) /go/src/github.com/tellytv/telly/lineup.go:178 +0x2a6 main.(*lineup).Scan(0xc000054cc0, 0x15, 0x16e7700) /go/src/github.com/tellytv/telly/lineup.go:133 +0x8e main.main() /go/src/github.com/tellytv/telly/main.go:169 +0xbe7



**Additional information:**
vmlrodrigues commented 5 years ago

Really odd. I was running telly from ~/telly-tutorial/ but once I ran it from ~/.telly/ it worked fine.

chazlarson commented 5 years ago

That's really weird. I run telly under OSX from "telly-tutorial" and "telly-test" and the like very often. I've never seen something like this.