Flussonic Media Server documentation

IPTV plugin

Flussonic Media Server has a simple build-in IPTV Panel. Main features:

  • authorization users by unique token
  • limit concurrent connections
  • m3u playlists (HLS and HTTP MPEG-TS)
  • manage users via API
  • soon channel packages

Flussonic Media Server stores database in local sqlite file and provide managment interface via admin panel.

IPTV Plugin is suitable for large and small services: to many users or share streams to friend and partners.

Enable and configure Anchor Anchor x2

Go to Flussonic Media Server admin UI to IPTV tab, here you should enter path to database or just keep a default value (it's ok). Press "Enable IPTV" button to activate plugin.

iptv

Configuration via /etc/flussonic/flussonic.conf:

erlang
# Plugins:

plugin iptv {
  database sqlite:///opt/flussonic/priv/iptv.db;
}

On this page you can manage users. In the sidebar you can enable/disable stream available to IPTV users

iptv></a></p>

<p>You can set personal limit to concurrent connections. Token automatically generated but you can change it.</p>

<p><a href=iptv></a></p>

<p>To enable channel, just click to it's name in the list. </p>

<p><a href=iptv

To generate and export m3u playlists for HLS and HTTP MPEG-TS, press the HLS and MPEG-TS buttons. MPEG-TSHLS

iptv

API Anchor Anchor x2

Via API you can manage users: create, update, delete, list.

Here is examples of requests and replies from Flussonic. API is very simple, it shouldn't be difficult to integrate with your website.

User's list

Request:

curl -u flussonic:letmein 127.0.0.1/tv/api/users

Reply:

{"host":"http://127.0.0.1","users":[{"created_at":null,"email":"user1@example.com","id":13,"key":"RLSxaTkbq1","max_sessions":1,"name":"user1","packages":null,"updated_at":null},{"created_at":null,"email":"user2@example.com","id":14,"key":"lyAcdcYcs1","max_sessions":99,"name":"user2","packages":null,"updated_at":null}],"users_count":2,"users_total":2}

Create user

Request:

curl -u flussonic:letmein --data-binary '{"name":"flussonic","email":"support1@erlyvideo.org","max_sessions":"3"}' 127.0.0.1/tv/api/user_create

Reply:

{"created_at":null,"email":"support1@erlyvideo.org","id":10,"key":"r5Z2KTpsp3","max_sessions":3,"name":"flussonic","packages":[],"updated_at":null}

Update user

Request:

curl -u flussonic:letmein --data-binary '{"created_at":null,"email":"support3@erlyvideo.org","id":10,"key":"newtoken","max_sessions":3,"name":"support","packages":null,"updated_at":null}' 127.0.0.1/tv/api/user_update

Reply:

{"created_at":null,"email":"support3@erlyvideo.org","id":10,"key":"newtoken","max_sessions":3,"name":"support","packages":[],"updated_at":null}

Delete user

Request:

curl -u flussonic:letmein --data-binary '{"created_at":null,"email":"user1@example.com","id":11,"key":"mPSfFitQl3","max_sessions":1,"name":"user1","packages":[],"updated_at":null}' 127.0.0.1/tv/api/user_delete

Reply:

true

Multiauth Anchor Anchor x2

IPTV Plugin is a general http auth backend, so you can configure multiauth with other Middleware, like Stalker/Ministra.

URL: http://flussonic-ip/tv/auth

Read more about authorization system and multiauth configuration.