Manual Rqcam Integration by hemispherical1

Status
Not open for further replies.

k@lkov

Super VIP
Messages
10,003
Manual Rqcamd Integration
This thread isn't about how to install packages, how to FTP files,
how to unzip files etc. , if you're not sure how to do such things
I'd recommend reading some of the Newbie's Guides & Help Files.
This document specifies files under the /var directory. If you have
an OE based box, like the 702x, 500+,600, or 800x, the files will
probably be located elsewhere, but sym-linking of the files should
seamlessly translate between the actual locations & /var for you...
Please also note that the DB (Linux) is case sensitive. Rqcamd is
not the same as rqcamd, keylist.txt is not the same as Keylist.txt, etc...

Required Files
Rqcamd currently requires 6 files to run, although extra files may
be needed by different images to integrate Rqcamd into their emu
manager, but with these 6, correct files, and their proper installation,
rqcamd should run.

/var/bin/rqcamd (chmod 755)
/var/keys/rqcamd.conf (chmod 644)

Note: The conf file may be located elsewhere like /var/bin, but
var/keys is the preferred location, wherever you put it, make sure
there is only 1 rqcamd.conf installed.

/var/keys/Autoupdate.Key (chmod 644)
/var/scce/EEP01_102.bin (chmod 644)
/var/scce/EEP08_102.bin (chmod 644)
/var/scce/ROM102.bin (chmod 644)

The EEP01_102.bin, EEP08_102.bin, & ROM102.bin files can be
found posted by themselves and are usually included in packages
(probably the easiest place to find them). Of course, a working
Autoupdate.Key file must be used. If your Autoupdate.Key has
rolled in the past, it should be fine, but remember, the ability to
decode with an Autoupdate.Key does not guarantee it's capable
of rolling keys, although It's been a long time since anyone posted
a broken Autoupdate.Key so it shouldn't be an issue.

/var/keys/Keylist.txt should be created automagically on the roll,
so there's no real need to start with one. The actual /var/bin/rqcamd
binary may be named differently, but the default is rqcamd and I'd
suggest using that unless you're planning on having multiple versions
installed on the same image, then of course they'd need to be named
uniquely. The rqcamd binary needs it's attributes set to 755 (usually
the default, but occasionally packages get released w/ the wrong
attributes), the rest of the files will be fine set at 644, although 755
won't keep them from working.

Running Rqcamd
At this point Rqcamd should be able to be run from telnet.
Telnet into the DB and a simple command of:

/var/bin/rqcamd

... rqcamd should start. Make sure your command reflects the
exact name of your rqcamd file in /var/bin (rqcamd, rqcamd_1.08,
rqcamd.ppc, etc...). If all the aforementioned files are installed
and are working versions, rqcamd should roll soon and a picture
displayed on the TV.

Rqcamd Integration
This is where we begin manually integrating rqcamd
into the various popular images for North America.

Pli
Pli has probably the simplest mechanism to integrate rqcamd into
it's emu manager. One must simply create a text file in the /var/etc
/plimgr/cams directory, named EXACTLY as the rqcamd binary in
/var/bin (rqcamd, rqcamd.ppc, etc...). Inside the text file, you may
put the version information if you desire. Save the file and that's it,
Rqcamd is now integrated into Pli's emu manager...

Nitro
Nitro also has a very simple mechanism to integrate emus into the emu manager. It consists of a text file located in the /var/emu directory,
generally named in the format rqcamd.cfg, or perhaps rqcamd_1.08.cfg.
The contents of the file contain 2 lines, the first is the exact path to the
rqcamd binary and the second is the name displayed in the OSD and emu
manager, for example:
Code:
command=/var/bin/rqcamd
name=Rqcamd
Code:
command=/var/bin/rqcamd.ppc
name=Rqcamd 1.08
etc...

DSM
As of the Remastered release (1.6 I think), DSM uses the /var/etc
/mycam.config file to integrate the emu with the emu manager.
Earlier versions may have located the file at /var/tuxbox/config/enigma
/resources/.myfolder/mycam.config. Here's an example file:
Code:
##############DSM##############

osd-name 1 = CI
emulator 1 = Common Interface
camd 1 =
daemon 1 =
kill 1 =
sleep 1 =
zap-sleep 1 =


osd-name 2= rqcamd-1.08
emulator 2= rqcamd-1.08
camd 2=
daemon 2= rqcamd
kill 2=
sleep 2=
zap-sleep 2=


osd-name 3= rqcamd_1.07
emulator 3= rqcamd_1.07
camd 3=
daemon 3= rqcamd_1.07
kill 3=
sleep 3=
zap-sleep 3= 6


# End of SoftCam List

campath = /var/bin/
defaultEmu = 2

# Remembered providers and channels
By default, emulator 1 is the Common interface. Each separate emu
must have a unique number. You can have as many emus as you like,
or you can just run the latest, it's up to you. I believe you could even
remove the Common Interface entry if you don't use the card slot and
prefer it removed, but it doesn't hurt anything and it could prove useful
in the future.

In the example above, osd-name is the name that will be shown on the
On Screen Display, most people include the version in the name to make
it unique. The emulator is generally the same as osd-name, I believe
that's the name that shows up in the emu manager. The dameon is the
EXACT name of the rqcamd binary, as it appears in the /var/bin directory.
I believe zap-sleep can be left blank without causing any problems, I just
happened to pick up the value of 6 in a package, somewhere along the way...

Gemini
Gemini uses actual shell scripts to integrate the emu with the manager,
it should be located in the /var/script directory, and being shell scripts,
they always begin with #!/bin/sh. Each script must be named uniquely,
with the general format of camname_cam.sh. The _cam.sh suffix is
required and you'll probably want to add the version number if running
multiple versions, something like, rqcamd-1.08_cam.sh. Here's an
example rqcamd_cam.sh:
Code:
#!/bin/sh 

CAMNAME="Rqcamd-1.08"
USERNAME=""
ZAPTIME=2
CAMID=5530
DVBSET=3
INFOFILE="ecm.info"
# end

remove_tmp () {
        rm -rf /tmp/ecm.info
}

case "$1" in
        start)
        echo "[SCRIPT] $1: $CAMNAME"
        remove_tmp
        /var/bin/rqcamd &
        ;;
        stop)
        echo "[SCRIPT] $1: $CAMNAME"
        sleep 5
        killall -9 rqcamd 2>/dev/null
        remove_tmp
        ;;
        *)
        $0 stop
        exit 1
        ;;
esac

exit 0
CAMNAME is the name displayed in the OSD. The CAMID must be a
unique number, you'll run into problems if you have multiple emus
using the same CAMID number. /var/bin/rqcamd is the exact path to
the rqcamd binary, if your Rqcamd is named different, say rqcamd-1.08,
then it would be /var/bin/rqcamd-1.08, etc... ZAPTIME needs to have
a value in Gemini, if left blank the emu won't start decoding, from my
experience. A setting of 2 seconds seems to work well for me. I don't
think the rest of the settings (=) have much bearing on Rqcamd's operation.

*Note: Gemini has been known to choke on scripts that contain
Microsoft/DOS carriage returns (^M). If you create a script in
Windows, after copying it to /var/script, login through telnet and
run the command dos2unix /var/script/rqcamd_cam.sh , reflecting
the EXACT name of your rqcamd script, perhaps dos2unix
/var/script/rqcamd-1.08_cam.sh , etc... This will remove all the
carriage returns...

Conclusion
You should now have enough knowledge to be running a new rqcamd
minutes after it's release, rather than patiently waiting for somebody
to release a package for your image of choice. There's also that feeling
of accomplishment, being able to do something for yourself...

Good luck
 
Status
Not open for further replies.
Top