Kategorie:Cardserver: Unterschied zwischen den Versionen

Aus Streamboard Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde geleert.)
 
(43 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
'''OSCAM'''


Versionsstand: 
svn 4042
= Was kann das Programm? =
Das Wichtigste zuvor:
'''OSCam ist Open Source'''
OSCam steht für '''O'''pen '''S'''ource '''C'''onditional '''A'''ccess '''M'''odul und ist eine non-profit Gemeinschaftsarbeit zahlreicher Entwickler aus dem In- und Ausland. Die Entwicklungsarbeit ist '''öffentlich'''. Der Fortschritt kann über die Oscam-Timeline http://streamboard.gmc.to:8001/timeline anhand der changesets und tickets verfolgt werden. Die Entwicklungsschritte werden in sogenannten svn's in aufsteigender Nummerierung festgehalten und stehen für eine entsprechende Compilierung zur Verfügung (siehe unter Plattformen).
"work in progress" bedingt aber auch, dass in dieser Dokumentation natürlich immer nur Momentaufnahmen der Entwicklung berücksichtigt werden können, bei deren Bearbeitung die Mithilfe der user gefragt ist!
Begonnen hat die Entwicklung von OSCam als reiner Card-Server. Später ist auch die Client-Seite hinzu gekommen. Damit soll schließlich gewährleistet werden, das möglichst alles "aus einer Hand" kommt.
== Cardserver ==
Wie der Vorgänger MPCS ist OSCam in der Hauptsache ein protokoll- und plattformübergreifender Cardserver.
== Client ==
Der Clientbereich wird in den Dateien mit den Parametern für '''dvbapi''' gesteuert. Ziel ist die komplette Abdeckung der Bereiche '''Server''' und '''Clients''' innerhalb eines Protokolls, ohne auf fremde Protokolle mit '''closed source''' zurückgreifen zu müssen. Dennoch wird auch weiterhin die Einbindung der gebräulichsten Protokolle solcher closed Sourcen fortgeführt, allerdings ohne eine Verantwortlichkeit dafür, was in diesen '''black boxes''' mit den Daten und Commands passiert.
== Module ==
Damit der Speicherbedarf möglischst gering gehalten werden kann, ist OSCam modular aufgebaut. Man muss also von OSCam nur die Module auswählen, die man wirklich benötigt und nicht einen unnötigen Ballast von nicht benötigten Programm- und Dateiteilen mit herumschleppen. Server mit nur geringem Speicherangebot sind dafür dankbar!
Die Auswahl erfolgt vor dem '''Kompilieren'''. Da das Kompilieren den fortgeschrittenen Usern vorbehalten bleibt, wird es '''in dieser Doku nicht behandelt'''. Im ''streamboard'' gibt es ausführliche Threads, die sich mit dem Kompilieren befassen. Dort können sich interessierte User informieren.
Trotzdem werden nachfolgend die Module aufgeführt, damit man bei der Auswahl der im Board veröffentlichten Binaries entscheiden kann, welche Version passt.
Die ausgewählten Module werden hier dokumentiert:
=== oscam.version ===
Webif support           
Webif with SSL support 
Dvbapi                 
Gbox support             
Anticasc support
ECM doublecheck 
Irdeto guessing
Debug
LED support
Qboxhd-LED support
Log history
Monitor
camd33
Camd35 UDP
Camd35 TCP
Newcamd
Cccam
Radegast
Serial
ConstCW
Cardreader
Nagra
Irdeto
Conax
Cryptoworks
Seca
Viaccess
Videoguard
Dre
Tongfang
Bei Benutzung des '''Webinterface''' kann man sich diese Datei anzeigen lassen.
= Welche Plattformen werden unterstützt? =
== '''Linux''' ==
ARM Coolstream
ARM Dockstar Openwrt
ARM NSLU Openwrt
ARM Slug OS
intel Mac OS X
i386/i686
Mips Fritzbox / TP-Link WRT1043NS
Mipsel AZbox
Mipsel Fritzbox
Mipsel DD-WRT
Mipsel TUXBOX
PPC TUXBOX
SH4
SH4 QboxHD
SH4 STAPI
sheevaplug
X64
== '''Windows''' ==
Cygwin
Die aktuellen Binaries werden hier geposted:
http://streamboard.gmc.to/wbb2/board.php?boardid=236
Achtung!
* Bitte darauf achten, dass sich die richtige cygwin.dll im gleichen Verzeichnis wie die .exe befindet!
* Funktionsfähig ist die Version 1005.25.0.0.
==='''Cardserver als Dienst starten'''===
Verwendet man einen PC als Cardserver, so muss der Cardserver entweder von Hand gestartet oder in den Autostart eingetragen werden. Mithilfe der '''Windows-Dienste''' kann der Cardserver unmittelbar mit dem Hochfahren des Systems gestartet werden.
===='''Voraussetzungen'''====
OSCam-i386-pc-cygwinn.exe und cygwin.dll im Verzeichnis OSCam (Im Beispiel C:\OSCam)
Microsoft-Tools '''instsrv.exe''' und '''srvany.exe''' beides in Windows Resource Kit Tools (WinXP und WinServer2003) enthalten. Windows Resource Kit Tool kann über die Windows-Update-Seite kostenlos herunter geladen werden (http://microsoft.com/downloads/details...&DisplayLang=en).
===='''Einrichtung des Dienstes'''====
Eingabeaufforderung (Start ---> Programme ---> Zubehör ---> Eingabeaufforderung):
'''"C:\Programme\WindowsResourceKits\Tools\instcrv.exe"Cardserver'''
'''"C:\Programme\WindowsResourceKits\Tools\srvany.exe"'''
Achtung: Die (") bitte unbedingt mit eingeben!
===='''Konfiguration des Dienstes in der Registry'''====
Start ---> Ausführen ---> regedit ---> HKEY_LOKAL_MACHINES\System\CurrentControlSet\Services\Cardserver
Wenn ihr den Dienst richtig eingerichtet habt (s.o.), findet Ihr hier einen Schlüssel (Ordner) '''Parameters'''.
Wenn nicht, mit Rechtsklick im rechten Fenster (Kontextmenü) Neu ---> Schlüssel wählen und '''Parameters''' eingeben
Bei den Parameters muss nun die Zeichenfolge '''Application''' angelegt werden:
Wieder Rechtsklick im rechten Fenster (Kontextmenü) Neu ---> Zeichenfolge wählen und als Wert eingeben:
'''C:\OSCam\oscam-i386-pc-cygwinn.exe'''
Dann muss noch die Zeichenfolge '''AppDirectory''' angelegt werden:
Wieder Rechtsklick im rechten Fenster (Kontextmenü) Neu ---> Zeichenfolge wählen und als Wert eingeben:
'''C:\OSCAM\'''
*Das sieht dann in diesem Teil der Registry so aus:
[[Datei:Reg,Editor.jpg]] Anstelle von MPCS steht da natürlich OSCAM! ''Bild muss noch ausgetauscht werden!''
===='''Starten und Prüfen'''====
Start ---> Systemsteuerung ---> Verwaltung ---> Dienste ---> Cardserver ---> Starten
Rechtsklick auf Cardserver ---> Eigenschaften ---> Automatisch
PC neu starten und testen, ob alles automatisch startet und funktioniert. Mit microMon bekommt man da einen hervorragenden Überblick
Am besten sowohl OSCam und microMon mit dem PC automatisch starten.
===='''Beenden des Dienstes'''====
Wenn man sich zur Einrichtung des OSCam-Servers auf dem PC als Dienst entschieden hat, dann muss man folgerichtig davon ausgehen, dass dieser Dienst mit dem Hochfahren des PC gestartet und mit seinem Herunterfahren wieder beendet wird. Möchte man, aus welchen Gründen auch immer, diesen Dienst manuell beenden bzw. neu starten, empfiehlt es sich, wie folgt vorzugehen:
Start ---> Systemsteuerung ---> Verwaltung ---> Dienste ---> Cardserver ---> anhalten, beenden oder neu starten.
Eine andere Art der Beendigung bewirkt, dass der Dienst im Hintergrund weiter läuft und es bei einem manuellen Neustart zu Instanzen-Kollisionen kommen kann (Pipe Error). Durch Verknüpfung der Verwaltungsmaske "Dienste" mit dem Desktop kann ein umständliches Durchhangeln über Start zu den Diensten vermieden werden!
'''Anmerkung:''' Dieses How-To wurde von '''Guest_a_*''' aus dem Keywelt-Board [http://www.keywelt-board.com/index.php?showtopic=77192] übernommen.
== '''Mac OS X''' ==
= Welche Protokolle werden unterstützt? =
Bei den Protokollen gibt es UDP und TCP basierende.
* UDP bedeutet das es keine fixe Verbindung zwischen Client und Server gibt. Der Client/Server sendet seine Anfrage/Antwort in der Hoffnung das sie ankommt. Es wird keine Überprüfung gemacht ob alle Datenpakete ankommen.
* TCP bedeutet das eine fixe Verbindung über so genannte Sockets zwischen Client und Server aufgebaut wird. Bei dieser Verbindung wird sichergestellt das gesendete Daten beim Empfänger auch ankommen. Es hat dadurch etwas mehr overhead als UDP und ist etwas langsamer. Bei den für CS übertragenen Datenmengen ist dies jedoch irrelevant. Der große Vorteil von TCP ist das selbst bei qualitativ schechten Internetleitungen eine stabile Verbindung möglich ist.
camd 3.3x (TCP)
camd 3.5x (UDP & TCP)
Newcamd (TCP) mit AU-Support, Cascadib/remote server ECM support
Radegast (?)
Cccam (TCP)
GBox (?)
serial (HSIC, SSSP, BOMBA, DSR 9500)
DVB API mit AU, Multituner, und PIP-Support
= Welche Card Reader werden unterstützt? =
Ein aktualisiertes Verzeichnis wird hier bereit gehalten:
http://streamboard.gmc.to:8001/wiki/DeviceList
== Seriell ==
* Reader mit Mouse Protokoll 3,5 bzw. 6 Mhz Taktfrequenz
* interne Reader (z.B. Dreambox)
* Reader können auch über einen Serial-USB Adapter angeschlossen werden.
== USB ==
* Reader mit FTDI Chipsatz (z.B.  Smargo Smartreader+)
* Reader mit Prolific Chipsatz, kein Übertakten möglich
= Welche Cards werden unterstützt? =
Ein aktualisiertes Verzeichnis wird hier bereit gehalten:
http://streamboard.gmc.to:8001/wiki/CardsList
= Konfigurationsdateien und deren Variablen =
==oscam.conf==
Dies ist die Hauptfigurationsdatei für OSCam. Sie enhält globale Parameter z.B. für das Debuggen, Loggen, den Monitor, die Protokolle und das Anti-Cascading. Die einzelnen Sektionen sind für Sondereffekte bestimmt. Nur die Sektion [global] ist Pflichtbestandteil, alle übrigen Sektionen sind optional (also nur bei Bedarf) zu verwenden.
=== Globale Parameter ===
Folgende Parameter gibt es im global Abschnitt:
[global]
serverip            =
cachedelay          =
logfile              =
disablelog          =
disableuserfile      =
usrfile              =
usrfileflag          =
cwlogdir            =
clienttimeout        =
fallbacktimeout      =
clientmaxidle        =
bindwait            =
netprio              =
resolvegethostbyname =
resolvedelay        =
clientdyndns        =
failbantime          =
sleep                =
unlockparental      =
nice                =
serialreadertimeout  =
maxlogsize          =
waitforcards        =
preferlocalcards    =
readerestartseconds  =
saveinithistory      =
double_check        =
lb_mode              =
lb_save              =
lb_nbest_readers    =
lb_nfb_readers      =
lb_min_ecmcout      =
lb_max_ecmcount      =
lb_reopen_seconds    =
'''Achtung:''' Ist ein Paremeter leer oder wird er nicht im Konfigurationsfile angeführt dann gelten die Default-Werte!
===='''serverip'''====
{{Optional}}
Bei einem Server mit mehreren Netzwerkkarten und daher mehreren unterschiedlichen IP Adressen kann es gewünscht sein das OSCam nur antwortet wenn die Anfrage auf einer betimmten IP Adresse kommt. Mit diesem Parameter kann man festlegen auf welche IP Adresse der OSCam Prozess "hört".
Beispiel:
serverip = 192.168.178.1
Default:
serverip =
OSCam hört auf ALLE IP Adressen.
===='''cachedelay'''====
{{Optional}}
Mindestzeit in Millisekunden, die ein Request brauchen muss. Hört sich zwar paradox an, betrifft aber das Problem, wenn die '''Antwort''' aus dem cache '''zu schnell''' an den Client übermittelt wird.
Beispiel:
cachedelay = 300
Default:
cachedelay = 0
===='''logfile'''====
{{Optional}}
Mit diesem Parameter wird Name und Pfad für das Logfile festgelegt.
logfile = filename|/dev/null|/dev/tty/syslog
Möglichkeiten:
logfile = /dev/null          (Es wird kein Logfile erzeugt)
logfile = /dev/tty          (Bildschirmausgabe)
logfile = syslog            (Die Ausgabe wird an den syslogd übergeben)
logfile = /var/log/oscam.log (linux i386)
logfile = oscam.log          (im Verzeichnis, in dem OSCam enthalten ist)
Beispiel:
logfile = /etc/oscam/logs/oscam.log
Default:
logfile = /var/log/oscam.log
===='''disablelog'''====
{{Optional}}
Schaltet Logfile
1 = Ausschalter ein, also '''kein''' Log - puh ;-) -
0 = Ausschalter aus, also '''ein''' Log
Beispiel:
disablelog = 1 es wird kein Log erstellt
Default:
disablelog = 0 es wird ein Log erstellt
===='''disableuserfile'''====
{{Optional}}
Jetzt wird es ganz wild: Auch wenn ein Logfile eingeschaltet ist (siehe logfile) kann hier das userfile ausgeschaltet werden.
Beispiel:
disableuserfile = 1 es wird '''kein''' userfile erzeugt
                = 0 es wird '''ein''' userfile erzeugt
Default:
disableuserfile = 0
===='''usrfile'''====
{{Optional}}
Festlegung des Namens eines Files für user logging.
Das user logging file hat folgendes Format
date
time
CWs per secon
username
IP address of client
TCP/IP port
CWs found
CWs from cache
CWs not found
CWs ignored
CWs timeout
CWs tunneled
login time in UNIX/POSIX format
logout time in UNIX/POSIX format
protocol
Beispiel:
usrfile = userfile
Default:
usrfile = 0
===='''usrfileflag'''====
{{Optional}}
Einstellung des Logging-Modus
0 = Es wird nur das Ein- und Ausloggen des Clients im Userfile geloggt
1 = Jedes Zappen eines Clients wird im Userfile geloggt
    Default-Wert ist 0
Beispiel:
usrfileflag = 1  Alles wird geloggt
Default:
usrfileflag = 0  Nur Login und Logout wird geloggt
===='''cwlogdir'''====
{{Optional}}
Hier kann ein Pfad für CW-Logging eingestellt werden
Beispiel:
cwlogdir = /var/log/cw.log
Default:
cwlogdir = [blank] kein Pfad für CW-Log
===='''clienttimeout'''====
{{Optional}}
Längste Zeitspanne in Sekunden (oder Millisekunden), die ein Client auf einen Key warten muss.
Beispiele:
clienttimeout = 10    # nach 10 Sekunden erfolgt ein Timeout
clienttimeout = 10000 # auch hier erfolgt ein Timeout nach 10 Sekunden, s. Hinweis
Default:
clienttimeout = 5    # nach 5 Sekunden erfolgt ein Timeout
Hinweis:
Bei Werten < 100 geht der Cardserver von Sekunden aus, Werte >= 100 werden in Millisekunden interpretiert.
===='''fallbacktimeout'''====
{{Depends}}
Bei mehreren Readern (Siehe Abschnitt [reader] in oscam.server) kann ein Reader bestimmt werden, auf den z.B. bei einer Störung der übrigen Reader der traffic zurück fällt.
Maximale Wartezeit des [[Cardserver]]s in Millisekunden auf primäre [[Reader]], bevor der/die [[Fallback]]-Reader (falls vorhanden!) befragt werden.
Beispiel:
fallbacktimeout = 1500
Default:
fallbacktimeout = 2500
Hinweis:
Der Wert muss kleiner dem Wert von "clienttimeout" gewählt werden, ansonsten wird der Standardwert verwendet.
===='''clientmaxidle'''====
{{Optional}}
Begrenzt die Leerlaufzeit eines Clienten in '''Sekunden''' bevor er vom Traffic getrennt wird.
Beispiel:
clientmaxidle = 200  Trennung nach 200 Sekunden
Default:
clientmaxidle = 120  Trennung nach 120 Sekunden
===='''bindwait'''====
{{Optional}}
Maximale Zeit in Sekunden, die der [[Cardreader]] beim Start wartet, bis er den jeweiligen Netzwerk-Port in Zugriff bekommt. Falls der OSCam innerhalb dieser Zeit den Port nicht binden kann, terminiert er mit "Bind Request failed". Ursachen dafür sind
*Doppelbelegung von Ports
*Ein vormals abgestürzter OSCam der die Ports nicht wieder freigegeben hat
*OSCam wurde mehrmals gleichzeitig gestartet
Beispiel:
bindwait = 20  Wartezeit 20 Sekunden
Default:
bindwait = 120 Wartezeit 120 Sekunden
===='''netprio'''====
{{Optional}}
Hier kann die Priorität des Cardservers im Netzwerk festgelegt werden
Beispiel:
netprio = 1  Prioritätsstufe 1
Default:
netprio = 0  Systembedingte Priorität
===='''resolvegethostbyname'''====
{{Optional}}
Art der DNS-Auflösung
0 = getadressinfo (default)
1 = gethostbyname
Beispiel:
resolvegethostbyname = 1 Host wird über den Namen aufgelöst
Default:
resolvegethostbyname = 0 adressinfo wird geholt
===='''resolvedelay'''====
{{Optional}}
Zeit in Sekunden, gibt die Pause bei der Namensauflösung an.
Beispiel:
resolvedelay =  20  Wartezeit 20 Sekunden
Default:
resolvedelay =  30  Wartezeit 30 Sekunden
===='''clientdyndns'''====
{{Optional}}
Ermöglicht die DNS-Auflösung für Clients. Bedingung: Es wurde bereits ein Hostname für die Clients definiert!
1 = DNS-Auflösung für Clients
0 = Keine DNS-Auflösung (default)
Beispiel:
clientdyndns = 1  DNS-Auflösung eingeschaltet
Default:
clientdyndns = 0  Keine DNS-Auflösung
===='''failbantime'''====
{{Optional}}
Zeitspanne in Minuten, nach der ein Client mit ungültigem Login-Versuch auf IP-Basis geblockt wird
Beispiel:
failbantime =  5  Client wird nach 5 Minuten geblockt.
Default:
failbantime =  0  failban ist ausgeschaltet (default)
===='''sleep'''====
{{Optional}}
Wartezeit für inaktive User in Minuten. Wert kann in der oscam.user überschrieben werden.
Beispiel:
sleep =  5  Wartezeit 5 Minuten
Default:
sleep =  [blank] keine Wartezeit
===='''unlockparental'''====
{{Optional}}
'''Nur Seca'''
Option zum Ausschalten der Jugendschutzfunktion für Seca Pin Code Anfragen bei adult movies
Beispiel:
unlockparental = 1  Jugendschutzfunktion ausgeschaltet
Default:
unlockparental = 0  Jugendschutzfunktion von Seca eingeschaltet
===='''nice'''====
{{Optional}}
'''Systempriorität'''. OSCam benötigt fast keine CPU-Leistung. Wenn aber CPU-Leistung benötigt wird, sollte diese sofort zur Verfügung stehen. Werte von 20 bis -20 sind möglich, wobei 20 gering und -20 sehr hoch ist. Wird der Parameter auskommentiert(#), wird diese Funktion nicht ausgerufen. Das ist wichtig z.B. für die dbox 2[http://de.wikipedia.org/wiki/DBOX2], wenn die Fehlermeldung "''relocation error:setpriority''" erscheint. Vgl. [http://de.wikipedia.org/wiki/Prioritätsscheduling Prioritätsscheduling]
Beispiel:
nice = -1
Default:
nice = 99
===='''serialreadertimeout'''====
{{Optional}}
'''Nur wenn Serialreader benutzt wird'''
Timeout in Millisekunden für Serialreader
Beispiel:
serialreadertimeout =  1200  Timeout nach 1200 Millisekunden
Default:
serialreadertimeout =  1500  Timeout nach 1500 Millisekunden
===='''maxlogsize'''====
{{Mandatory}}
Hier kann die maximale Größe des Logfiles in KBytes festgelegt werde. Das ist besonders wichtig für Server mit nur geringem Speicherumfang (z.B. auf dbox2). Darum wird dringend empfohlen, bei solchen Servern diese Größe sorgfältig zu bestimmen. Nicht selten "platzt" ein System, weil die Logfiles unkontrolliert riesige Ausmaße angenommen haben!
Beispiel
maxlogsize = 20  Logfile geht bis zu 20 KBytes
Default:
maxlogsize = 10  Logfile geht bis zu 10 KBytes
===='''waitforcards'''====
{{Optional}}
Hier kann festgelegt werden, ob OSCam beim Start des Programms auf lokale Karten wartet, bevor die Netzwerkports geöffnet werden.
Beispiel:
waitforcards = 1  Warten
Default:
waitforcards = 0  Nicht Warten
===='''preferlocalcards'''====
{{Optional}}
Der Parameter legt fest, ob lokale Karten zuerst dekodiert werden sollen.
Beispiel:
preferlocalcards = 1  Lokale Karten bevorzugen
Default:
preferlocalcards = 0  Lokale Karten nicht bevorzugen
===='''readerestartseconds'''====
{{Optional}}
Festlegung einer Wartezeit in Sekunden zwischen Restarts von Readern.
Beispiel:
readerestartseconds = 10  Wartezeit 10 Sekunden
                    =  0  '''keine Readerrestarts!''' 
Default:
readerestartseconds = 5  Wartezeit 5 Sekunden
===='''saveinithistory'''====
{{Optional}}
Sicherung der Reader-Init-History. Wird benötigt um die Entitlements anzuzeigen.
Beispiel:
saveinithistory = 1  Sicherung nach /tmp/.oscam/reader<number>
Default:
saveinithistory = 0  Keine Sicherung
===='''double_check'''====
{{Optional}}
'''Nur wenn CW double check ausgewählt ist!'''
'''noch bearbeiten'''
Beispiel:
double_check =
Default:
double_check = 0
===='''lb_mode'''====
{{Optional}}
Loadbalance Mode
Wenn man zwei oder mehrere gleiche Karten hat (egal ob lokal oder als Proxie), kann man die Last auf diese Karten gleichmäßig verteilen (balancieren).
Beispiel:
lb_mode = 0 (deaktiviert)
lb_mode = 1 (schnellster Reader zuerst)
lb_mode = 2 (Reader der am längsten nicht geantwortet hat wird genommen)
lb_mode = 3 (Reader mit der geringsten Auslastung wird verwendet)
Default:
lb_mode = 0
===='''lb_save'''====
{{Optional}}
Speichert die Loadbalance Statistik, damit sie auch nach einem Neustart erhalten bleibt.
Um die CPU nicht zu sehr zu belasten, sollte hier ein Wert > 100 eingetragen werden.
Beispiel:
lb_save = 100 (Anzahl der ECM's nach der die Statistik gespeichert wird)
Default:
lb_save = 0 (Statistik wird nicht gespeichert)
===='''lb_nbest_readers'''====
{{Optional}}
Anzahl der Reader, die für die ECM anfragen.
Beispiel:
lb_nbest_readers = 2 (anfragen gehen immer an zwei Reader)
Default:
lb_nbest_readers = 1 (anfrage geht nur an einen Reader)
===='''lb_nfb_readers'''====
{{Optional}}
Anzahl der Fallback Reader für den Lastenausgleich.
Beispiel:
lb_nfb_readers = 2 (Zwei Fallbackreader)
Default:
lb_nfb_readers = 1
===='''lb_min_ecmcout'''====
{{Optional}}
Mindestanzahl der ECM's, die für die Auswertung genommen werden.
Beispiel:
lb_min_ecmcout =
Default:
lb_min_ecmcout = 5
===='''lb_max_ecmcount'''====
{{Optional}}
Maximale Anzahl der ECM's, bevor der Loadbalancer zurückgesetzt wird.
Beispiel:
lb_max_ecmcount =
Default:
lb_max_ecmcount = 500
===='''lb_reopen_seconds'''====
{{Optional}}
'''noch bearbeiten'''
Beispiel:
lb_reopen_seconds =
Default:
lb_reopen_seconds = 900
=== Monitor ===
Hier sind nur dann Eintragungen erforderlich, wenn ein Monitor benutzt wird!
[monitor]
port                =
serverip            =
nocrypt              =
aulow                =
monlevel            =
hideclient          =
appendchaninfo      =
====port====
{{Optional}}
UDP-Port für den Monitor
port = 0  Kein Monitor
      = Portnummer Monitor ausgewählt
Beispiel:
port = 24480  Monitor eingeschaltet mit Port 24480
====serverip====
{{Optional}}
Service mit einer bestimmten IP-Adresse verbinden
serverip  =  IP-Adresse
          =  [blank] alle IP's  (default)
====nocrypt====
{{Optional}}
Unverschlüsselte Monitorverbindungen.
Möglich
*eine oder mehrere IP-Einzeladressen
*eine oder mehrere IP-Bereiche
*eine Mischung von IP-Einzeladressen oder IP-Bereichen
Beispiel
nocrypt = 127.0.0.1,192.168.0.0-192.168.255.255
        = Host 127.0.0.1 und IP-Bereich 192.168.0.0 bis 192.168.255.255
Default
nocrypt = [blank] keine unverschlüsselte Monitorverbindung.
====aulow====
{{Optional}}
Zeitraum in Minuten, in dem keine EMM erscheinen, so dass der Client auf "Low" gesetzt wird.
Beispiel
aulow = 30  Nach 30 Minuten ohne EMM wird der Client auf "Low" gesetzt (default).
====monlevel====
{{Optional}}
Monitor-Level
0 = Kein Zugriff auf Monitor
1 = Nur Server und eigene Prozeduren
2 = Alle Prozeduren, aber nur ansehen (default)
3 = Alle Prozeduren, reload von oscam.user möglich
4 = Unbeschränkter Zugriff
Beispiel
monlevel = 4  Kompletter Zugriff
Monlevel kann durch Eintragungen in oscam.user überschrieben werden!
====hideclient_to====
{{Optional}}
Zeitspanne in Sekunden für das Ausblenden von Clients, die keine Anfragen senden. Siehe auch Parameter '''httphideidleclienst''' in Abschnitt [webif].
hideclient_to = 1 Clienten werden ausgeblendet
              = 0 Keine Ausblendung von Clienten im Leerlauf
====appendchaninfo====
{{Optional}}
Fügt die Channel-Info aus der oscam.services der Log-Meldung hinzu. Bei Verwendung von Monitor und Webinterface ist dies eine sehr nützliche Routine!
appendchaninfo = 1  Die Channel-Info wird hinzugefügt
                = 0  Keine Channel-Info (default)
=== WebIf ===
Eintragungen sind nur dann erforderlich, wenn das Web-Interface (by Alno) als Modul ausgewählt wurde.
[webif]              =
httpport              =
httpcert              =
httpuser              =
httppwd              =
httpcss              =
httptpl              =
httprefresh          =
httpscript            =
httpallowed          =
httpdyndns            =
httpsavefullcfg      =
httpreadonly          =
====httpport====
{{Mandatory}}
Port, auf dem das Webinterface hört.
httpport =  83  Webinterface hört auf '''http-port 83'''
          = +83  Webinterface hört auf '''https-port 83''' (SSL)
              0  Webinterface ist ausgeschaltet (default)
====httpcert====
{{Optional}}
Datei für das SSL-Zertifikat
httpcert = oscam.cert (siehe dort!)
          = [blank] es wird die Datei oscam.pem (embedded) verwendet
====httpuser====
{{Mandatory}}
Name des Users für den Zugriffsschutz. Es wird zwar [blank] als Default-Wert angeboten. Davon wird aber dringend abgeraten; daher wird dieser Parameter hier als '''zwingend''' beschrieben.
httpuser = xyxyxy
====httppwd====
{{Mandatory}}
Passwort für den Zugriffsschutz. Es gilt das gleiche wie für httpuser.
httppwd = 123456
'''Die Parameter ''user'' und ''pwd'' werden beim Verbindungsaufbau zum Webinterface in einem Kontrollfenster abgefragt. Fehlen sie oder sind sie fehlerhaft, erfolgt die Meldung ''Forbidden'' und der Verbindungsaufbau wird abgebrochen!'''
====httpcss====
{{Optional}}
Für das Webinterface stehen verschiedene Styles in unterschiedlicher farblicher und graphischer Darstellung zur Verfügung. Der User kann die für ihn interessanten Style-Dateien (.css) speichern und je nach "Stimmung" verwenden. Hier wird der Pfad zu den Style-Dateien festgelegt.
Beispiel
httpcss = /etc/oscam/harvest_round_Firefox.css
        = [blank] es wird der embedded Style verwendet (default)
Styles werden hier veröffentlicht:
http://streamboard.gmc.to/wbb2/thread.php?threadid=30083&hilight=style
====httptpl====
{{Optional}}
Pfad für externe Templates
httptpl =
        =  [blank] Keine externen Templates
====httprefresh====
{{Optional}}
Zeitspanne in Sekunden, innerhalb derer das Programm den Status des Webinterfaces aktualisiert
httprefresh = 7  Status wird nach 7 Sekunden aktualisiert
            = [blank] Es findes keine Aktualisierung statt
====httphideidleclients====
{{Optional}}
Dieser Parameter ermöglicht es, einen Clienten nach Ablauf der im Parameter '''hideclient_to''' im Abschnitt [monitor] festgelegten Leerlauf-Zeitspanne (siehe dort!) auszublenden.
httphideidleclients = 1  Ausblenden
                    = 0  Nicht ausblenden (default)
====httpscript====
{{Optional}}
Pfad für Skripte, die vom Webinterface aus gestartet werden können
httpscript =  Pfad
            =  [blank] kein Pfad
====httpallowed====
{{Mandatory}}
Hier werden IP-Addressen, IP-Bereiche oder beides festgelegt, die auf das Webinterface zugreifen dürfen. Es wird zwar auch ein [blank] als Default-Wert angeboten, dessen Sinn sich aber nicht erschließt! Wenn das Webinterface benutzt werden soll, dann muss es auch die Möglichkeit geben, sich mit ihm zu verbinden. Daher wird dieser Parameter als '''zwingend''' dargestellt.
IP address|IP address range[,IP address|IP address range]...
Beispiel
httpallowed = 127.0.0.1,192.168.0.0-192.168.255.255  Host, sowie der gesamte Range 192.168.0 sind zugelassen
====httpdyndns====
{{Optional}}
Zulassen von DYNDNS-Verbindungen durch das Webinterface.
Beispiel
httpdyndns = my.dynexample.com
====httpsavefullcfg====
{{Optional}}
Sicherung der Konfigurationsdateien
httpsavefullcfg = 0 alle nicht leeren Parameter,
                    alle nicht Default-Parameter,
                    alle Parameter, die nicht den gleichen Inhalt enthalten wie dieselben Parameter in [global]  (default).
                  1 alle Parameter
====httpreadonly====
{{Optional}}
Über das Webinterface können in bestimmtem Unfang Konfigurations-Dateien editiert und gesichert werden. Das ist für den Server-Admin, der sich nicht immer in der Nähe zur Konsole des Servers befindet, sehr vorteilhaft. Wenn aber weitere User oder andere Beteiligte ebenfalls Zugang zum Webinterface und damit Zugriff auf die Daten haben, kann das zu einem Problem werden. Die Möglichkeit des Editierens (Schreibens) kann daher mit diesem Parameter ausgeschaltet werden.
httpreadonly = 1  nur Lesezugriff möglich
              = 0  alles ist möglich  (default)
=== Camd 33 (TCP) ===
Abschnitt nur dann erforderlich, wenn camd33 als Client Protokoll notwendig ist.
[camd33]
port                  =
serverip              =
nocrypt              =
passive              =
key                  =
===='''port'''====
{{Mandatory}}
Hier wird der Port festgelegt, von dem aus Camd 33 Anfragen beantwortet werden. Dieser Port muss ggf. auch am Router geöffnet werden.
Beispiel:
port = 15000
===='''serverip'''====
{{Optional}}
Bei einem Server mit mehreren Netzwerkkarten und daher mehreren unterschiedlichen IP Adressen kann es gewünscht sein, dass OSCam nur antwortet, wenn die Anfrage auf einer betimmten IP Adresse kommt. Mit diesem Parameter kann man festlegen, auf welche IP Adresse der OSCam Prozess "hört".
Beispiel:
serverip = 192.168.178.1
Default:
serverip =
===='''nocrypt'''====
{{Optional}}
Eine bestimmte IP Adresse oder ein Adressbereich, der unverschlüsselt übertragen wird.
Beispiel:
nocrypt = 127.0.0.1,192.168.0.0-192.168.255.255
Default:
nocrypt =
===='''passive'''====
{{Optional}}
Definition für aktiven oder passiven Client. Generell geht das Camd3.3x-Protokoll von einem aktiven Client aus. Es kann aber unter bestimmten Umständen bei manchen Clients (meistens plugin) zur Schwierigkeiten kommen. In diesem Fall
 
Beispiel:
passive = 1
Default:
passive = 0
===='''key'''====
{{Optional}}
Schlüssel, der für die Verschlüsselung verwendet wird. (128bit Verschlüsselung)
 
Beispiel:
key = 01020304050607080910111213141516
Default:
key =
=== Camd 35 bzw. cs357x (UDP) ===
Abschnitt nur dann erforderlich, wenn camd35 bzw. cs357x als Client Protokoll notwendig ist.
Dieses Protokoll verschlüsselt grundsätzlich und bildet den Schlüssel aus dem Benutzernamen.
[camd35]
port                  =
serverip              =
suppresscmd08          =
[cs357x]
port                  =
serverip              =
suppresscmd08          =
===='''port'''====
{{Mandatory}}
Hier wird der Port festgelegt, von dem aus Camd Anfragen beantwortet werden. Dieser Port muss ggf. auch am Router geöffnet werden.
Beispiel:
port = 15000
===='''serverip'''====
{{Optional}}
Bei einem Server mit mehreren Netzwerkkarten und daher mehreren unterschiedlichen IP Adressen kann es gewünscht sein das OSCam nur antwortet wenn die Anfrage auf einer betimmten IP Adresse kommt. Mit diesem Parameter kann man festlegen auf welche IP Adresse der OSCam Prozess "hört".
Beispiel:
serverip = 192.168.178.1
Default:
serverip =
===='''suppresscmd08'''====
{{Optional}}
Cmd08 bewirkt, dass eine nicht gültige Anfrage (rejected caid, etc.) von OSCam der camd3 gemeldet wird und diese dann nicht mehr für die Kombination aus caid+serviceid+providerid nachfragt. Dieses cmd08 kann unterdrückt werden. Camd3 fragt dann weiter nach.
Aktiviert die Unterdrückung für den CMD08.
Beispiel:
suppresscmd08 = 1 (aktiviert)
suppresscmd08 = 0 (deaktivert)
Default:
suppresscmd08 = 0
Wer mehr darüber wissen will, kann hier nachlesen:
http://streamboard.gmc.to/wbb2/thread.php?threadid=27459&threadview=0&hilight=cmd08&hilightuser=0&page=1
=== cs378x (TCP) ===
Abschnitt nur dann erforderlich, wenn cs378x als Client Protokoll notwendig ist.
[cs378x]
port                  =
serverip              =
suppresscmd08          =
===='''port'''====
{{Mandatory}}
Hier wird der Port festgelegt, von dem aus Camd Anfragen beantwortet werden. Dieser Port muss ggf. auch am Router geöffnet werden.
Beispiel:
port = 15000
===='''serverip'''====
{{Optional}}
Bei einem Server mit mehreren Netzwerkkarten und daher mehreren unterschiedlichen IP Adressen kann es gewünscht sein das OSCam nur antwortet wenn die Anfrage auf einer betimmten IP Adresse kommt. Mit diesem Parameter kann man festlegen auf welche IP Adresse der OSCam Prozess "hört".
Beispiel:
serverip = 192.168.178.1
Default:
serverip =
===='''suppresscmd08'''====
{{Optional}}
Cmd08 bewirkt, dass eine nicht gültige Anfrage (rejected caid, etc.) von OSCam der camd3 gemeldet wird und diese dann nicht mehr für die Kombination aus caid+serviceid+providerid nachfragt. Dieses cmd08 kann unterdrückt werden. Camd3 fragt dann weiter nach.
Aktiviert die Unterdrückung für den CMD08.
Beispiel:
suppresscmd08 = 1 (aktiviert)
suppresscmd08 = 0 (deaktivert)
Default:
suppresscmd08 = 0
Wer mehr darüber wissen will, kann hier nachlesen:
http://streamboard.gmc.to/wbb2/thread.php?threadid=27459&threadview=0&hilight=cmd08&hilightuser=0&page=1
=== Newcamd (TCP) ===
Abschnitt nur dann erforgerlich, wenn newcamd als Client Protokoll notwendig ist.
[newcamd]
mgclient              =
key                  =
port                  =
serverip              =
allowed              =
keepalive            =
===='''mgclient'''====
{{Optional}}
Aktiviert das Extendet Newcamd Protokol, um mehrer CAID's über einen Port zu schicken
Beispiel:
mgclient = 1 (aktiviert)
mgclient = 0 (deaktiviert)
Default:
mgclient = 0
===='''key'''====
{{Mandatory}}
Schlüssel für die Newcamd Verbindung zum Client.
Beispiel:
key = 0102030405060708091011121314
Default:
key =
===='''port'''====
{{Mandatory}}
Hier wird der Port festgelegt, von dem aus Newcamd Anfragen beantwortet werden. Dieser Port muss ggf. auch am Router geöffnet werden.
Beispiel:
port = 15000@1234:000000 (CAID 1234 ist über Port 15000 erreichbar)
port = 15000@1234:000000;15001@5678:000000 (CAID 1234 ist über Port 15000 erreichbar CAID 5678 über Port 15001)
Default:
port = port@caid:ident
===='''serverip'''====
{{Optional}}
Hat der Server mehrere IP Adressen werden nur Anfragen die an die konfigurierte IP gehen beantwortet.
Beispiel:
serverip = 192.168.178.1
Default:
serverip =
===='''allowed'''====
{{Optional}}
Eine bestimmte IP Adresse oder ein bestimmter IP Bereich der sich auf den Newcamd Server verbinden darf.
Beispiel:
allowed = 127.0.0.1,192.168.0.0-192.168.255.255
Default:
allowed =
===='''keepalive'''====
{{Optional}}
Der Server versucht, die Newcamd Verbindung am leben zu halten.
Beispiel:
keepalive = 1 (aktiviert)
keepalive = 0 (deaktiviert)
Default:
keepalive = 1
===Radegast===
Abschnitt nur dann erforderlich, wenn Radegast als Client-Protokoll notwendig ist.
[radegast]
port                  =
serverip              =
user                  =
====port====
{{Mandatory}}
TCP/IP-Port für Radegast-Clients. Mit dem Eintrag wird das Radegast-Protokoll enabled.
port =
      = 0  (default)
====allowed====
{{Optional}}
IP-Addresse, IP-Range oder beides, die verbinden dürfen
IP addres|IP range[,IP address|IP range]...
Beispiel
127.0.0.1,192.168.0.0-192.168.255.255  Host und ganze Bereich 192.168.0 sind zugelassen
====user====
{{Mandatory}}
Username des Radegast-Client
user = username
=== Serial ===
Abschnitt nur dann erforderlich, wenn eine serielle Reader-Schnittstelle notwendig ist.
[serial]
device                =
====device====
{{Optional}}
Parameter der Device
device = <user>@<device>[:baud][?option1=value1][?option2=value2]
Parameter
user    =  account
device  =  Name der Serial Device
option  =  timeout =  Millisekunden  Timeout für die Verbindung  default: 50
        =  delay      Millisekunden  Zusätzliche Verzögerung zwischen 2 Characters
Unterstützte Serial Devices
HSIC    Humax Sharing Interface Client
SSSP    Simple Serial Sharing Protocol
bomba    BOMBA Firmware
dsr9500  DSR 9500
=== Cccam (TCP) ===
Abschnitt nur dann erforderlich, wenn Cccam als Client Protokoll notwendig ist.
[cccam]
port                  =
version              =
build                =
reshare              =
ignorereshare        =
minimizecards        =
updateinterval        =
keepconnected        =
====port====
{{Mandatory}}
TCP/IP-Port für CCcam-Clients. Mit dem Eintrag eines Ports wird das CCcam-Protokoll enabled.
port =
      = 0  CCcam-Protokoll disabled
====version====
{{Optional}}
Definiert die Version von CCcam. Default-Wert = 0
<main version>,<version>,<sub version>
Beispiel
version = 1.2.34
====build====
{{Optional}}
Definiert CCcam-Build als 4-stellige Zahl.
Beispiel
build = 5678
====reshare====
{{Optional}}
Reshare-Level
0 = kein Resharing (default)
1 = nur Reshare für Direct-Peer
2 = Reshare für Direct-Peer und den nächsten Level
x = Reshare für Direct-Peer und die nächsten x Level (x steht für die Zahl der Level)
Beispiel
reshare = 1  Reshare nur für Direct-Peer
====ignorereshare====
{{Optional}}
CCcam Reshare-Einstellungen
0 = benutze die Reshare-Einstellungen des Servers (default)
1 = benutze die Reshare-Einstellungen des Readers oder Users
Beispiel
ignorereshare = 1  Die Reshare-Einstellungen des Readres oder Users werden benutzt
====minimizecards====
{{Optional}}
''noch bearbeiten''
====updateinterval====
{{Optional}}
''noch bearbeiten''
====keepconnected====
{{Optional}}
''noch bearbeiten''
=== GBox (?) ===
Abschnitt nur dann erforderlich, wenn GBox als Client Protokoll notwendig ist.
[gbox]
password              =
maxdist              =
ignorelist            =
onlineinfos          =
cardinfos            =
locals                =
'''Achtung: Das GBox Modul ist Closed Source und daher NICHT im OSCam SVN enthalten! Das OSCam Team hat das GBox Modul NICHT und kann daher auch keine entsprechenden Binaries zur verfügung stellen.'''
=== DVBapi ===
{{Optional}}
Abschnitt nur dann erforderlich, wenn OScam auch als Client zum entschlüsseln eingesetzt werden soll.
[dvbapi]
enabled              =
user                  =
ignose                =
priority              =
au                    =
pmt_mode              =
boxtype              =
===='''enabled'''====
{{Optional}}
Soll DVB API verwendet werden zum lokalen entschlüsseln.
Beispiel:
enabled = 0 (deaktiviert)
enabled = 1 (aktiviert)
Default:
enabled = 0
===='''user'''====
{{Mandatory}}
Hier wird der User festgelegt dieser sollte in der oscam.user angelegt sein.
Beispiel:
user = user1
Default:
enabled = anonymous
===='''ignore'''====
{{Optional}}
CAID die ignoriert werden soll.
Beispiel:
ignore = 1234
ignore = <CAID>
Default:
ignore =
===='''priority'''====
{{Optional}}
CAID die priorisiert werden soll.
Beispiel:
priority = 1234:000000
priority = <CAID>:<provider ID>
Default:
priority = Lokale CAID's werden priorisiert
===='''au'''====
{{Optional}}
Autoupdate für DVB API aktivieren.
Abhängig vom verwendeten User aus der oscam.user und dessen au Einstellungen.
Beispiel:
au = 1 (aktiviert)
au = 0 (deaktiviert)
Default:
au = 0
===='''pmt_mode'''====
{{Optional}}
Bitte ergänzen.
Beispiel:
pmt_mode = 0 (verwendet camd.socket und PMT Datei)
pmt_mode = 1 (deaktiviert PMT Datei)
pmt_mode = 2 (deaktiviert camd.socket)
pmt_mode = 3 (liest PMT nur beim Start ein)
Default:
pmt_mode = 0
===='''boxtype'''====
{{Mandatory}}
Verwendete Box auf der DVB API aktiviert wurde.
Beispiel:
boxtype = ufs910
boxtype = dbox2|dreambox|dm7000|duckbox|ufs910|ipbox|ipbox-pmt
Default:
boxtype = dreambox
=== Anticasc ===
Abschnitt nur dann erforderlich, wenn Anticascading als Schutz vor unbefugtem Weiterreichen von Cardsharing angewendet werden soll.
[anticasc]
enabled              =
numusers              =
samples              =
penalty              =
aclogfile            =
fakedelay            =
denysamples          =
====enabled====
{{Mandatory}}
Hiermit wird Anticascading eingeschaltet.
enabled = 1 eingeschaltet
        = 0 ausgeschaltet (default)
====numusers====
{{Optional}}
Zahl der User, die je Account zugelassen sind.
numusers = 1  Es ist ein User je Account zugelassen
          = 0  Anticascading ausgeschaltet (default)
====sampletime====
{{Optional}}
Zeit in Minuten für das Sammeln der Anfragen
sampletime = 5  Zeitraum von 5 Minuten
            = [blank] Default-Wert 2 Minuten
====samples====
{{Optional}}
Zahl der Anfragen über dem Limit
samples = 15  Limit bei 15 Anfragen
        = [blank] Default-Wert 10 Minuten
====penalty====
{{Optional}}
Strafe für den Sünder
0 = Es wird nur geloggt (default)
1 = Es werden Fake-CW's gesendet
2 = Der User wird vorübergehend getrennt
Die Strafe kann in der oscam.user überschrieben werden!
Beispiel
penalty = 1  Es werden Fake-CW's gesendet
====aclogfile====
{{Optional}}
Dateiname für das AC-Log
aclogfile =
          = [blank] Kein Logfile (default)
====fakedelay====
{{Optional}}
Fake-Verzögerung in Millisekunden
Beispiel
fakedelay =  500  Verzögerung von 500 Millisekunden
          =  [blank] Default-Wert 1000 Millisekunden
====denysamples====
{{Optional}}
Wieviel Samples sollen bestraft werden?
Beispiel
denysamples = 10  Ab 10 Samples wird bestraft
            = [blank] Default-Wert 8 Samples
== oscam.server ==
Diese Konfigurationsdatei enthält Reader-Parameter für OSCam. Die Abschnitte dürfen sich wiederholen (mehr als ein Reader möglich). Es muss aber in jedem Fall mindestens ein reader konfiguriert sein!
=== Reader ===
'''Grundsatz:''' Es können mehrere [reader]-Abschnitte erstellt werden. Jeder vollständige Abschnitt wird dann als Reader verwendet.
Beispiele: [NG²], [phoenix], [mastercrd] usw.
[reader]
device                =
device_out_endpoint    =
enable                =
key                    =
premium                =
account                =
password              =
services              =
inactivitytimeout      =
reconnecttimeout      =
disableserverfilter    =
label                  =
fallback              =
logport                =
caid                  =
audisabled            =
auprovid              =
detect                =
cardmhz                =
mhz                    =
deprecated            =
mode                  =
protocol              =
ident                  =
provid                =
class                  =
maxqlen                =
group                  =
emmcache              =
ratelimitseconds      =
blocknano              =
blockemm-u            =
blockemm-s            =
blockemm-unknown      =
savenano              =
readnano              =
lb_weight              =
cccversion            =
cccmaxhops            =
cccwantemu            =
ccckeepalive          =
pincode                =
chid                  =
force_irdeto          =
nagra_read            =
n3_rsakey|rsakey      =
n3_boxkey|boxkey      =
tiger_rsakey          =
aeskey                =
aeskeys                =
showcls                =
boxid                  =
ndsversion            =
====device====
{{Mandatory}}
Legt die Device für den Abschnitt [reader] fest.
device = <device|bus:device>|Serial:Reader serial|<ip|hostname>,<port>|[,<lport>]|pcsc|<0|1>|constantcw
device:    Name der Device (z.B. myreader)
bus:        Bus- und Device-Namen für den Smartreader+
serial:    Serial-Nummer des Smartreader+ (Nummer mit lsusb 'Bus' und 'Device' holen!)
lport:      Remapping für den Local-Port
PCSC:      Nummer des PCSC-Reader (mit 0 starten!)
0|1:        '''Nur für die Coolstream HD-1''' (Reader 0 oder 1 auswählen)
constantcw: Dateiname für das Constant-CW-File
            Format des CW-Files: CA (4 digits):ID (6 digits):SID (4 digits):PMT PID (4 digits):ECM PID (4 digits):key
            (16 Bytes getrennt durch Leezeichen)
            Beispiel: 1234:123456:1234:1234:1234::00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
Beispiele
device = /dev/ttyS0  (Reader an COM1 (bei Linux i386 und Windows))
device = /dev/tts/1  (Reader an COM2 (Linux dbox2 mit multicam))
device = /dev/ttyUSB0 (Reader an USB  (Linux i386))
'''Hinweis:''' Der Zähler für die Device liegt immer um 1 hinter der Nummer des COM-Ports! Also ttyS0 = COM1, tts/1 = COM2. Bei Benutzung neuerer PC sind kaum noch serielle Anschlüsse vorhanden, sodass in diesen Fällen USB 2.0 benutzt werden muss. Hier am besten im Gerätemanager des PC nachschauen, welcher COM-Port dem Reader zugewiesen wurde und in die Device den Port -1 eintragen!
====device_out_endpoint====
{{Depends}}
Setzt die Addresse des Endpunkts für FTDI-Chips
0x81:  Infinity USB Smart
0x82:  Smartreader+  (default)
====enable====
{{Optional}}
Deaktiviert den Reader
0  =  Aus
1  =  Ein (default)
====key====
{{Depends}}
Key für Newcamd remote reader encription
key = DES key
====premium====
{{Depends}}
Für GBox-Reader    ''noch bearbeiten!''
premium =  ???
====account====
{{Optional}}
User und Passwort für Remote-Reader (Leerzeichen sind nicht erlaubt!) Überschreibt das Passwort von "password". Wer zuerst kommt, malt zuerst. Siehe '''password'''
Beispiel
account = fritz,xyxyx
====password====
{{Optional}}
Passwort für Remote-Reader. Überschreibt das Passwort von "account". Wer zuerst kommt, malt zu erst. Siehe '''account
'''
Beispiel
password = xyxyx
====services====
{{Optional}}
Ordnet den Reader einer Servicegruppe zu bzw. schließt eine Servicegruppe aus
services = [!]services[,[!]<services>]...
          = [blank] ist default
Beispiel
services = skywelt,skyweltextra,!skyfilm
            skywelt und skywelt extra sind zugeordnet, skyfilm ist ausgeschlossen
====inactivitytimeout====
{{Depends}}
'''Nur für Newcamd-Reader'''
inactivitytimeout = in Minuten
                  = [blank] default
====reconnecttimeout====
{{Optional}}
Zeitspanne in Minuten für eine Wiederverbindung im '''TCP''', wenn Antworten ausbleiben
Beispiel
reconnecttimeout = 2  Nach 2 Minuten ohne Antworten, wird wiederverbunden
                  = [blank] default
====disableserverfilter====
{{Optional}}
Ignoriert CAID und Ident-Einstellungen des Readers bei fehlerhaften Clients.
disableserverfilter = 1  ignoriert
                    = 0  ignoriert nicht (default)
====label====
{{Mandatory}}
Legt den Namen für diesen Reader fest.
Beispiel
label = easymouse2
====fallback====
{{Optional}}
Definiert diesen Reader als Fallback. Standard- und Fallback-Reader müssen in der selben Gruppe sein. Siehe '''group'''!
fallback = 1  Fallbackreader
          = 0  Kein Fallbackreader (default)
====logport====
{{Optional}}
Logport für einen '''Camd3'''-Reader. UDP muss aktiviert sein. Funktioniert nur, wenn in Camd3 kein Cascading stattfindet!
logport = Port-Nummer
        = kein Logport (default)
====caid====
{{Optional}}
Definiert eine CAID für den Reader. Einige Protokolle unterstützen nur eine CAID
Beispiel:
caid = 0100,0200&FFDF
      = FFFF ist Default-Wert
====audisabled====
{{Optional}}
Schließt den Reader vom AU (Auto-Updating) aus
audisabled = 1  ausgeschlossen
            = 0  nicht ausgeschlossen (default)
====auprovid====
{{Optional}}
Hier kann die Provider-ID festgelegt werden, damit der richtige Reader für das AU zur verfügung steht
Beispiel
auprovid = 123456
          = [blank] default
====detect====
{{Depends}}
Statusleitung für "Karte ist drin".
Detect = CD  (Carrier Detect) - default -
Detect = DSR  (Data Set Ready)
Detect = CTS  (Clear To Send)
Detect = RING (Ring Indicator)
Detect = NONE (Erkennung wird abgeschaltet, aber es wird immer ein "Karte ist drin" signalisiert!)
Detect = gpio1 ... gpio7 (neu für mipsel-uclibc)
* Inverse Leitung  = "!" voranstellen (z.B. "Detect=!CTS")
====cardmhz====
{{Depends}}
'''Standard'''-Frequenz der Karte in Schritten von 10 KHz. Für Irdeto-Karten = 600 KHz. '''Overclocking''' beachten!
Beispiel
cardmhz = 600  Irdetokarte
        = [blank] Default-Wert 357
====mhz====
{{Optional}}
Abweichend von '''cardmhz''' kann die Frequenz des Kartenlesers, sofern dies technisch möglich ist, anders (in der Regel höher) in 10 KHz-Schritten eingestellt werden, als die Standard-Frequenz der Karte. Man sprich dann von '''Overclocking'''. So kann z.B. eine s02-Karte (Standard 6 MHz) mit 10 MHz übertaktet werden.
Das sieht dann so aus:
cardmhz = 600    ( 6000 KHz =  6 MHz)
mhz    = 1000  (10000 KHz = 10 MHz)
Default ist 357
====deprecated====
{{Optional}}
'''Bitte noch bearbeiten'''
deprecated = 1  ausschließlich deprecated
            = 0  default
====mode====
{{Depends}}
'''Nur für AZBox-Reader'''
Setzt die Karte in den Init-Mode für den AZBox_reader
mode = 1  AzBox-Reader
      = 0  default
====protocol====
{{Mandatory}}
Kommunikationsprotokoll für den Reader.
protocol = mouse        (Lokaler Cardreader)
          = internal      (Alle Cardreader mit einem "Device=/dev/sciX")
          = camd35|cs357x (Cascading - camd 3.5-kompatibler Remote-Server)
          = mp35
          = smartreader
          = serial
          = cs378x
          = gbox
          = newcamd|newcamd525
          = newcamd524
          = cccam
          = radegast
          = pcsc
          = constcw
====ident====
{{Optional}}
Definiert CAID und Ident für den Reader
ident 0 <CAID>:<ident>[,ident]...[,<CAID>:<ident>[,ident]...]...
Beispiel
ident = 0100:123456,234567;0200:345678,456789
      = [blank] Keine Definition (default)
====provid====
{{Optional}}
Definiert Provider-ID für den Reader
provid = ID
        = [blank] Keine Definition (default)
====class====
{{Optional}}
Definiert Class '''in hexadecimal''' für den Reader
class = 01,02,!1b,!2b  01 und 01 ja, 1b und 2b nein
      = [blank] Keine Definition (default)
====maxqlen====
{{Optional}}
Da in einigen wenigen Fällen die Länge der Request-Que vom Standard abweicht, kann die maximale Länge der RQ für den Reader hier festgelegt werden.
maxqlen = size
        = [blank] Default-Wert 128
====group====
{{Mandatory}}
Jeder Reader muss in einer oder mehrere Gruppen eingetragen sein. Damit lässt sich bestimmen, welcher Client auf welchen Reader Zugriff hat. Gültige Werte 1-32
group = <grp>[,<grp>][,<grp>]...
Beispiel
Group = 1      (eine Gruppe)
Group = 1,4,5  (mehrere Gruppen)
====emmcache====
{{Optional}}
Definition des EMM-Caches für den Reader. Derzeit nur für lokale Reader. Betrifft die AU-Funktion. Damit kann entschieden werden, ob Update-Kommandos (EMM) vom Provider immer oder nur unter bestimmten Voraussetzungen geschrieben werden.
Format:
'''''emmcache = <usecache>,<rewrite>,<logging>'''''
* <usecache> 0 = cache aus  (default)
* <usecache> 1 = cache ein
* <rewrite>  n = Wie oft ein und das selbe Update-Kommando (EMM) geschrieben wird. ''Gilt nur bei <usecache> = 1''
* <logging>  0 = Einträge im Logfile ausgeschaltet
* <logging>  1 = Nur fehlerhafte EMM werden geloggt
* <logging>  2 = die geschriebenen (written) EMM werden geloggt
* <logging>  4 = die zurückgewiesenen (skipped) EMM werden geloggt
* <logging>  8 = die blockierten (blocked) EMM werden geloggt
Beispiele
emmcache = 1,3,10  Cache ein, 3 x schreiben, die geschriebenen (2) und die geblockten (8) = 10 loggen
emmcache = 1,2,6  Cache ein, 2 x schreiben, die geschriebenen (2) und die zurückgewiesenen (4) = 6 loggen
Arten des Caching
cache1 = ECM und CW bereits im Cache
cache2 = ECM und Checksum bereits im Cache
====ratelimitecm====
{{Optional}}
Anzahl der unterschiedlichen SIDs die in ECMs innerhalb eines Intervalls erlaubt sind
ratelimitecm = Zahl
              = 0  (default)
====ratelimitseconds====
{{Optional}}
Intervall für ein ratelimit
ratelimitseconds = Sekunden
                  = 0 (default)
====blocknano====
{{Optional}}
Liste zu blockender EMM-Nanos (in hex) oder aller EMM-Nanos. Gilt nur für physikalische Reader!
Beispiel
blocknano = 45,93,7a,ff
          = all
          = [blank] (default)
====blockemm-u====
{{Optional}}
''unique address-EMMs, entspricht D3 bei Sk*''
blockemm-u = 0 (nicht blocken) default
blockemm-u = 1 (Blocke EMMs, die an die Karte direkt adressiert sind)
====blockemm-s====
{{Optional}}
''shared address-EMMs, entspricht D2 bei Sk*''
blockemm-s = 0 (nicht blocken) default
blockemm-s = 1 (Blocke EMMs, die an bestimmte Gruppen von Karten gehen)
====blockemm-g====
{{Optional}}
''global address-EMMs, entspricht D0 bei Sk*''
blockemm-g = 0 (nicht blocken) default
blockemm-g = 1 (Blocke EMMs, die an alle Karten gehen)
====blockemm-unknown====
{{Optional}}
Blockiert alle unbekannten Arten von EMM
blockemm-unknown = 0  (nicht blocken)  default
blockemm-unknown = 1  (Blocke alle unbekannten Arten von EMMs
====savenano====
{{Optional}}
Liste von EMM-Nanos, die gespeichert werden sollen (hex) oder alle EMM-Nanos.
Format
nano[,nano]....|all
Beispiel
savenano = 45,93,7a,ff
          = all  (default)
====readnano====
{{Optional}}
'''Gilt nur für physikalische Reader!'''
Schreibt eine Datei (üblicherweise die Kopie einer Datei, die von '''savenano''' gespeichert wurde) auf die SmartCard. Ist kein Pfad angegeben, wird die Datei im Konfigurationsverzeichnis gesucht.
Beispiel
readnano = write.emm
          = /var/oscam/write.emm
          = [blank] (default)
====lb_weight====
{{Optional}}
Je höher dieser Wert, desto größer ist die Wahrscheinlichkeit, dass dieser Reader ausgesucht wird. Es ist ein Indikator für die durchschnittliche Antwortzeit innerhalb des Loadbalancing
lb_weight = weight
          = [blank] Default-Wert 100
====cccversion====
{{Depends}}
'''Nur für CCcam'''
Definiert die Version von CCcam, die verwendet werden soll.
<mainversion>,<version>,<sub version>
Beispiel
cccversion = 1.2.34
====cccmaxhops====
{{Depends}}
Legt das Maximum an Distance-Hops für die SC fest
0 = Nur lokale Karte
1 = Lokale Karte + 1 Hop
2 = Lokale Karte + 2 Hops
    und so weiter
    Default-Wert = 10
====cccwantemu====
{{Depends}}
Anfrage, auch einen emu vom CCcam-Server zu erhalten.
cccwantemu = 1  ja
            = 0  nein default
====ccckeepalive====
{{Depends}}
Sendet eine "keepalive-message", um eine Verbindung zum remote CCCam-Server zu erhalten.
ccckeepalive = 1  ja
              = 0  nein  (default)
====pincode====
{{Optional}}
Pincode für '''Conax- und Cryptoworks''' Karten.
pincode = pincode
        = [blank] default
====chid====
{{Optional}}
Definiert '''Irdeto'''-ChID für den Reader
Beispiel
chid = 0100:12
      = [blank] default
====force_irdeto====
{{Optional}}
Forciert den Irdeto-Modus, auch wenn ein RSA-Key für Irdeto getunnelte Nagravisions-Karte vorliegt.
force_irdeto = 1  ja
              = 0  nein  (default)
====nagra_read====
{{Optional}}
Lese Nagravision-Records. '''Nur für NCMED-Karten'''
nagra_read = 0  ausgeschaltet  (default)
            = 1  lese alle Records mit abgelaufenen Rechten
            = 2  lese nur Records mit gültigen Rechten
====n3_rsakey|rsakey====
{{Optional}}
RSA-Key für '''Nagravision-Karten''' | CAM-Key für '''Irdeto-Karten'''
n3_rsakey<rsakey = RSA-Key
====n3_boxkey|boxkey====
{{Optional}}
Box-Key für '''Nagravision-Karten''' | CAM-Key für '''Irdeto-Karten'''
n3_boxkey|boxkey = box key
====tiger_rsakey====
RSA-Key für '''Tiger-Nagravision-Karten'''
tiger_rsakey = RSA-Key
====aeskey====
{{Optional}}
16 Bytes AES-Key für '''Viacces-Karten'''
aeskey = AES-Key
====aeskeys====
{{Optional}}
Multiple AES-Keys für '''Viacces-Karten'''
CAID #ident:AES key #0 CAID #0[,AES key #1 CAID #0],...[;CAID #1@ident::AES key #0 CAID #1[,AES key #1 CAID #1],...]...
Spezial AES Keys:
00 = schicke keine CW zurück, es ist kein AES-Key spezifiziert
FF = schicke CW zurück, die vom S empfangen wurden, es ist kein AES-Key spezifiziert
Beispiel
aeskeys = 0100@012345:000102030405060708090a0b0c0d0e0f;0200@543210:0,0,0f0e0d0c0b0a090807060504030201
====showcls====
{{Optional}}
number of classes subscriptions to show for '''Viacces-SCs'''
''noch bearbeiten''
schowcls = Menge
          = 0  (default)
====boxid====
{{Optional}}
ID der '''NDS-Reciever-Box'''
boxid = NDS box ID
====ndsversion====
{{Optional}}
Version von '''NDS Videoguard''' einsetzen
  0 = autodetection  (default)
  1 = NDS Videoguard 1
12 = NDS Videoguard 1+
  2 = NDS Videoguard 2
== Oscam.user ==
Diese Datei enthält Userdefinitionen. Für jeden User muss ein Abschnitt erstellt werden.
=== Account ===
[account]
user                  =
pwd                    =
hostname              =
betatunnel            =
uniq                  =
sleep                  =
sleepsend              =
caid                  =
au                    =
group                  =
services              =
ident                  =
class                  =
monlevel              =
expdate                =
disabled              =
allowedtimeframe      =
numusers              =
penalty                =
failban                =
suppresscmd08          =
keepalive              =
cccmaxhops            =
cccreshare            =
===='''user'''====
{{Mandatory}}
Hier wird der Benutzername eingefügt. (Clientname)
Beispiel:
user = user1
Default:
user =
===='''pwd'''====
{{Mandatory}}
Hier wird der das Passwort festgelegt.
Beispiel:
pwd = pwuser1
Default:
pwd =
===='''hostname'''====
{{Optional}}
Beispiel:
hostname = pwuser1
Default:
hostname =
===='''betatunnel'''====
{{Optional}}
Beispiel:
betatunnel =
betatunnel = <CAID>.<ServiceID>:<target CAID>
Default:
betatunnel =
===='''uniq'''====
{{Optional}}
Mit Uniq wird geregelt ob sich ein Client gleichzeitig nur einmal oder mehrmals anmelden darf
Beispiel:
uniq = 0 (deaktiviert)
uniq = 1 (Nur eine Verbindung pro User ist erlaubt)
uniq = 2 (Setzt User auf Fake wenn die IP unterschiedlich ist)
uniq = 3 (Erlaubt nur eine Verbindung pro User, die letzte Verbindung bleibt bestehen)
uniq = 4 (Setzt User auf Fake wenn die IP unterschiedlich ist aber dder letzte Login bleibt erhalten)
Default:
uniq = 0
===='''sleep'''====
{{Optional}}
Zeit in Minuten nach der der User auf inaktiv gesetzt wird.
Beispiel:
sleep = 5
Default:
sleep =
===='''sleepsend'''====
{{Optional}}
255 = nur OSCAM Clients: Stoppt Anfragen bist zum nächsten umschalten
255 = nur Camd3 Clients: Stppt Anfragen bis Camd3 neugestartet wird
Beispiel:
sleepsend = 0
sleepsend = 255
Default:
sleepsend =
===='''caid'''====
{{Optional}}
Limitiert die CAID's die ein User anfragen darf.
Beispiel:
caid = 1234,5678
caid = <CAID>,<CAID>
Default:
caid =
===='''au'''====
{{Optional}}
Hier wird dem User erlaubt EMM's an alle bzw. eine bestimmte Karte zu schicken.
Beispiel:
au = 1
au = lable_of_reader (wird in der oscam.server konfiguriert)
Default:
au =
===='''group'''====
{{Mandatory}}
Jeder User muss in einer oder mehrere Gruppen eingetragen sein. Damit lässt sich dann bestimmen, auf welche Reader, sofern mehrere vorhanden sind, dieser Client Zugriff haben soll.
Beispiel:
group = 1 (User ist in Gruppe 1)
group = 1,2 (User ist in Gruppe 1 + 2)
Default:
group =
===='''services'''====
{{Optional}}
Welches Services darf der User nutzen hierzu muss eine oscam.services vorhanden sein.
Beispiel:
services = service1,!service2 (Client darf service1 empfangen aber nicht service2)
services = [!]services
Default:
services =
===='''ident'''====
{{Optional}}
Muss nachgepflegt werden.
Beispiel:
ident  =
ident  = <CAID>:<ident>
Default:
services =
===='''class'''====
{{Optional}}
Muss nachgepflegt werden.
Beispiel:
class  =
Default:
class =
===='''monlevel'''====
{{Optional}}
Der Monitorlevel gibt dem Client die Möglichkeit sich auf die Monitorschnittstelle des Servers zu verbinden.
Der Monitor wird in der oscam.conf konfiguriert.
Beispiel:
monlevel  = 0 (kein Zugriff auf den Monitor)
monlevel  = 1 (nur der Server und der eigene Prozess)
monlevel  = 2 (alle Prozesse aber nur anschauen)
monlevel  = 3 (alle Prozesse und neuladen der oscam.user)
monlevel  = 4 (Vollzugriff)
Default:
monlevel = 2
===='''expdate'''====
{{Optional}}
Wie lange ist der User gültig.
Beispiel:
expdate  = 2099-12-31 (Gültig bis 31.12.2099)
expdate = <year>-<month>-<day>|<year>/<month>/<day>
Default:
expdate =
===='''disabled'''====
{{Optional}}
Wie lange ist der User gültig.
Beispiel:
disabled = 0 (User ist aktiv)
disabled = 1 (User ist gesperrt)
Default:
disabled = 0
===='''allowedtimeframe'''====
{{Optional}}
Zeitspanne in der der User schauen darf.
Beispiel:
allowedtimeframe = 10:00-22:00
allowedtimeframe = hh:mm-hh:mm
Default:
allowedtimeframe =
===='''numusers'''====
{{Depends}}
Wird nur benötigt wenn Anti-Cascading aktiviert ist.
Anzahl der zugelassenen User pro Account
Beispiel:
numusers = 5 (Maximal 5 User)
numusers = 0 (Anti-Cascading deaktiviert)
numusers = quantity
Default:
numusers =
===='''penalty'''====
{{Depends}}
Wird nur benötigt wenn Anti-Cascading aktiviert ist.
Was passiert wenn der Wert numuser überschritten wird.
Beispiel:
penalty = 0 (Es wird nur geloggt)
penalty = 1 (Sendet Fake CW's)
penalty = 2 (deaktiviert temporär den Account)
Default:
penalty = 0
===='''failban'''====
{{Optional}}
Was passiert wenn der Wert numuser überschritten wird.
Beispiel:
failban = 0 (ignoriert)
failban = 2 (Blockt die IP wenn sich ein deaktivierter Client verbindet)
failban = 4 (Blockt die IP eines schlafenden Accounts)
Default:
failban = 0
===='''suppresscmd08'''====
{{Optional}}
Nur wenn als Protokoll camd3|3.57x|3.78x verwendet wird. Das CMD08 ist ein Command welches dem Client mitteilt das die Anfrage unerwünscht ist (rejected). Camd3 und Oscam als Client stellen auf dieses Command hin die Anfragen für diesen Service an den Server ein. Sollte der Wert beim User nicht gesetzt sein gilt der globale Wert aus der oscam.conf. Das Command kann mit dem undokumentierten Parameter sleepsend=0|255 ergänzt werden (CMD08 senden bei status 'sleep').
Zur Beachtung: Camd3 clients sperren die Anfrage bis zum Neustart. Oscam Clients sperren die Anfrage bis zum nächsten Zap. Sleepsend=255 sollte also nur bei Oscam Clients verwendet werden da ein Camd3 Client nach einem Sleepstatus einen Neustart bräuchte um diesen Service wieder anzufragen.
Beispiel:
suppresscmd08 = 0 (aktiviert)
suppresscmd08 = 1 (deaktiviert)
Default:
suppresscmd08 = 0
===='''keepalive'''====
{{Optional}}
Die Verbindung zwischen Server und Client wird aufrechterhalten
Beispiel:
keepalive = 0 (deaktiviert)
keepalive = 1 (aktiviert)
Default:
keepalive = 1
===='''cccmaxhops'''====
{{Depends}}
Nur wenn CCcam Proxies vorhanden ist oder ein CCcam Server verwendet wird.
Maximale Hops die dem User erlaubt sind.
Beispiel:
cccmaxhops = 5
cccmaxhops = hops
Default:
cccmaxhops = 10
===='''cccreshare'''====
{{Depends}}
Nur wenn CCcam Proxies vorhanden ist oder ein CCcam Server verwendet wird.
Reshare Level welches dem User erlaubt wurde.
Beispiel:
cccreshare = -1
cccreshare = x (Share Level)
Default:
cccreshare = 10
== oscam.dvbapi ==
Konfigurationsdatei für DVBapi
P: CAID:[provider ID]:[service ID]:[ECM PID] [continue]
I: CAID:[provider ID]:[service ID]:[ECM PID]
D: CAID:[provider ID]:[service ID]:[ECM PID] delay
M: CAID:[provider ID]:[service ID]:[ECM PID] CAID:[provider ID]
P = Settings für Priority,
    continue = 1      mit Vorrang behandeln
                default ist ohne Vorrang
I = Settings für Ignore
D = Settings für Delay in Millisekunden für das Schreiben der CW's (wenn der Server zu schnell liefert ;-)
M = Settings für Mapping
Beispiele:
P: 0100:123456      CAID 0100 mit Provider 123456 hat Vorrang
P: :::1234          ECM mit Provider ID 1234 hat auf jedem Service Vorrang
P: 0200              CAID 0200 hat Vorrang
P: 0300:9ABC        CAID 0300 hat nur auf Service 9ABC Vorrang
M: 0400 0500:123456  Mapped CAID 0400 und 0500 ständig zu provider ID 123456
D: 0600 200          Wartet 200 ms bevor CW für CAID 0600 geschrieben wird
I: :654321          Ignoriert Provider ID 654321 für jeden service
I: 0                Ignoriert jede CAID, die nicht zuvor bearbeitet wurde
== oscam.ac ==
Anti-Cascading Tabelle
Durch Verwenung dieser Tabelle wird vermieden, dass ein User die empfangenen CW's [Controlwords] unerlaubt an weitere User reicht (cascadiert).
<CAID>:<provider ID>=<seconds>
oder
<CAID>:<provider ID>*=<seconds>
Es wird der zeitliche Abstand beim Wechsel der CW's in Bezug auf '''CAID''' und '''provider ID''' in Sekunden festgelegt. Zusätzlich kann bestimmt werden, für wieviel Zyklen diese Vorgabe gilt
Beispiel:
0100:000000=10
*=7
Für CAID 0100 mit dem Provider 000000 wird der Abstand auf 10 Sekunden festgelegt. Der Zyklus soll 7 mal durchlaufen werden.
Beispiel für Sky DE und HD+:
1702:000000 = 7
1833:000401 = 7
*=7
== oscam.cert ==
Issuer Publik Keys (IPK)
CAID:reserverd:IPK
Beispiel:
0100:00000000:010203040506070809A0B0C0D0E0F
Ermöglicht ein mapping zwischen CAID und IPK/sessions keys in '''hex'''
'''Hinweis'''
Derzeit nur für Cryptoworks!
== oscam.guess ==
Tabelle zur Feststellung der CAID
'''Nur für BOMBA Protocol'''
<length of ECM>:<CAID>
Leitet die CAID aus len in hex ab. Wird nur für Protokolle benötigt, die CAID nicht weitergeben (z.B. BOMBA).
Beispiel:
12:3456
== oscam.ird ==
'''Für Irdeto'''
Tabelle zur Feststellung der CAID über die Signature.
<byte3>:<byte4-7>:<CAID>:<SID>
Beispiel:
12:000000a:12ab:cd01
== oscam.services ==
Definition von services für OSCam
[service name]  = 
caid            =
provid          =
srvid          =
=== [service name] ===
Dieses Feld muss einen unverwechselbaren Namen haben und leitet jeweils die Angaben für diesen Service ein
=== caid ===
Hier werden eine oder mehrere CAID's für diesen Service in '''hex''' aufgelistet.
=== provid ===
Hier werden eine oder mehrere Provider ID's in '''hex''' aufgelistet.
=== srvid ===
Hier werden die Service ID's in '''hex''' aufgelistet.
Beispiel:
[myservice]
CAID=0100,0200,000A
provid=000001,ABCDEF
srvid=0001,0002,000A,000B
Eine umfangreiche Liste wird hier laufend gepflegt: 
[[http://streamboard.gmc.to/wiki/index.php/Services]]
== oscam.srvid ==
'''Diese Datei wird nur benötigt, wenn Monitor und Webinterface betrieben werden!'''
Es findet ein Mapping zwischen CAID, Service ID, Provider, Name, Art und Beschreibung des Servives statt. Das Logging und die Anzeigen im Webinterface erhalten durch die Klartextbezeichnungen eine bessere Aussagekraft. Abhängigkeiten zwischen Server, Reader und User sind schneller und besser erkennbar.
CAID[,CAID]...service ID|[provider]|[name]|[type]|[description]
Beispiele:
0001,0002,0003:000a|my provider 1|tv name|tv|my tv package
0004,0005,0006:000a|my provider 2|radio name 2|radio|my radio package
0006:000b|my provider 3|tv name 3|
Eine umfangreiche oscam.srvid wird hier bereitgestellt und gepflegt:
[[http://streamboard.gmc.to/wiki/index.php/Srvid]]
== oscam.tiers ==
Es findet ein Mapping zwischen CAID und Tier statt und es wird eine beschreibung hinzugefügt.
CAID[,CAID]...:TIER ID|description
Beispiele:
0001,0002,0003:000a|may TIER 1
0004:000b|my TIER 2
0005:000b|ny TIER 3
= Monitoring =
== Webinterface ==
'''noch bearbeiten'''
== MicroMon ==
Eine ausführliche Dokumentation ist hier zu finden:
http://streamboard.gmc.to/wiki/index.php/MicroMon
= Beispiel-Konfigurationen =
==reader==
===Serial-Mouse kompatible Reader===
[reader]
label    = myserialmouserreader
detect  = cd
protocol = mouse
device  = /dev/ttyS1
group    = 1
caid    = 0100
services = myservice,thisservice
===USB-Mouse kompatible Reader===
[reader]
label    = myusbmousereader
detect    = cd
protocol  = mouse
device    = /dev/ttyUSB0
aeskey    = 0102030405060708090a0b0c0d0e0f10
group    = 2
caid      = 0200
===Camd3.78x Reader===
[reader]
label    = mycamd378xreader
protocol  = cs378x
device    = 192.168.0.1,1234
account  = user,password
group    = 3
===Newcamd Reader===
[reader]
label    = mynewcamdreader
protocol  = newcamd
key      = 0102030405060708091011121314
device    = 192.168.0.2,2345
account  = user,password
group    = 4
===CCcam Reader===
[reader]
label    = mycccamreader
protocol  = cccam
device    = 192.168.0.3,3456
account  = user,password
group    = 5
caid      = 0300,0400,0500
cccversion= 1.2.3
cccbuild  = 4567
===PCSC Reader====
[reader]
label    = mypcscreader
protocol  = pcsc
device    = 0
aeskey    = 0102030405060708090a0b0c0d0e0f10
group    = 6
caid      = 0600
===Smargo Smartreader+===
[reader]
label    = mysmargoreader
protocol  = smartreader
device    = 001:002
aeskey    = 0102030405060708090a0b0c0d0e0f10
group    = 7
caid      = 0700
===Internal Reader===
[reader]
label    = myinternalreader
protocol  = internal
device    = /dev/sci0
group    = 8
caid      = 0800
===Constant CW===
[reader]
label    = myconstantcw
protocol  = constcw
device    = /var/keys/constant.cw
group    = 9
== Overclocking ==
===Dreambox und andere interne Reader===
Für die Dreambox und andere interne Reader wird die höchstmögliche clockrate automatisch ermittelt. Der '''MHz-Parameter in [reader]''' ermöglicht es, den von OSCam automatisch ermittelten Wert zu überschreiten, wenn er von 357 und 358 abweicht. Üblicherweise sollte dort aber kein Wert für mhz eingetragen werden.
Bei bestimmten Dreamboxes (insbesondere PPC-Clones) führt der Default-Wert im Parameter mhz zu langsamen ECM-Zeiten und/oder zu ''"not found"''. Durch das stufenweise Setzen der Werte z.B. wie 200, 300, 400, ... 1600 kann man einen Wert herausfinden, der mit dem Receiver und der Karte gut arbeitet. Je höher der mhz-Wert, desto niedriger wird die ECM-Zeit (seltsam genug ;-) )
Wenn ein zu niedriger Wert gewählt wird, wird die Karte nicht erkannt ('''no ATR''' oder '''card not supportet'''). Wird ein zu hoher Wert gewählt, werden die ECM-Zeiten niedrig. Die Erfahrungen zeigen, dass entweder des Fehlen der mhz-Zeile oder ein Eintrag von mhz = 1000 am besten funktioniert.
===Phoenix/Smartmouse Reader===
Overclocking funktioniert nicht unter Windows und Mac OS X. Einstellungen sind unmittelbar am reader erforderlich (meistens Dip-Schalter). OSCam selbst kann in diesem Fall keine Frequenzen setzen!
===Smargo Smartreader+===
Einstellungen mit dem native Smargo Smartreader+ Tool (srp_tools) vornehmen. Keine Werte in mhz und cardmhz eintragen.
===Baudraten===
OSCam versucht, die Baudraten automatisch zu setzen. Bei einem '''Standard Serial Port''' sind die Einstellungsmöglichkeiten für eine Baudrate begrenzt, sodass Overclocking möglicherweise nicht funktioniert. Daher ist bei der Benutzung von Serial Readern der beste Weg zum Overclocking die Verbindung des Readers über einen '''FTDI basierten USB to serial port adapter'''.
Wenn Overclocking nicht funktioniert, sollte die effektive Baudrate über das logfile festgestellt werden. Wenn diese zu stark von der geforderten Baudrate abweicht, wird die Karte nicht erkannt (no ATR). Dann sollte der Wert von mhz erneut angepasst werden. Je höher die Baudrate, desto genauer arbeitet die effektive Baudrate.

Aktuelle Version vom 16. Dezember 2010, 19:07 Uhr

Seiten in der Kategorie „Cardserver“

Folgende 12 Seiten sind in dieser Kategorie, von 12 insgesamt.