OpenNMP

From QNAPedia
Jump to navigation Jump to search

by AdNovea - Nov 2009

OpenNMP Welcome screen
OpenNMP logo
OpenNMP logo
OpenNMP logo
OpenNMP is an educational initiative to expand your NMP (Network Media Player) features.

Built to offer a development environment* running on an external USB device, OpenNMP is aimed to ease the understanding of the NMP and help in developing new features and applications to expand functionalities. Add-ons applications can be downloaded as plug-ins modules (NPKG).

OpenNMP is released with some pre-installed NPKG plug-ins to offer:


  • List editor for YouTube, SHOUTcast, Flickr and Internet Radios
  • Programmable A/V Recording (RTSP streams with the My-PVR NPKG)
  • Remote Replication of the data with a distant QNAP NAS
  • Web Server to host websites & web based application (PHP 5 / SQLite)
  • Date and Time synchronization with NTP server
  • Multi-purpose Scheduler
  • SSL Connection (SSH, SCP)
  • UPnP/DLNA Media Server function
  • Internationalization (English, Traditional Chinese, French)
  • NPKG plugins management with remote repository
  • OpenNMP system upgrade
  • Help on NPKG plug-ins
  • Maintenance Web server management
  • AJAX Debugging console
  • Rich Internet Application interface (JQuery)
  • Automatic installation script
  • and much more...


  • The Sample NPKG gives the complete file structure to create your own applications

* This environment could be ported on any SOHO servers but has been tailored for the NMP.

RTENOTITLE   Please carefully read the section about the Disclaimer

OpenNMP runs ONLY on NMP-1000. OpenNMP is no longer maintained.
NMP-1000P requires OpenNMP+. Read about the ASAP Application Store to install OpenNMP+

Table of content


OpenNMP Interface

OpenNMP RAI interface

OpenNMP Interface

OpenNMP support the RIA (Rich Internet Application) libraries from JQuery. This made available a large and easy to use set of functionnalities to develop interactive GUI for NPKG applications.

OpenNMP applications are available in 3 languages: English, French and Traditional Chinese*
* Accept our apologizes for the poor quality of the translation done using an automatic translator.

OpenNMP WebServer

Web Server

Host your Website on your NMP.
OpenNMP enables PHP-5 and SQLite to create your own website. Despite the modest CPU resources available on the NMP, we have successfully runs some CMS (Content Management System) on the NMP.

We have some MySQL-phpMyAdmin, Joomla and SPIP NPKG plugins but we do not recommend to use MYSQL base applications due to the limited number of resources available.

OpenNMP System configuration


System configuration

The System and Optware NPKGs are the core plug-ins to run OpenNMP. They cannot be removed. They handle basic applications on which other NPKG plug-ins can run.
The System NPKG plug-in enables:

  • Password change
  • Lighttpd Web Server management
  • Time and Date synchronization (with NTP server and scheduled tasks)
  • SSL Connections management (SSH and SCP)
  • Schedule tasks management (cron jobs)
OpenNMP NPKG and upgrade system

NPKG and Upgrade

OpenNMP implements a new plug-ins management system to install features as well as an OpenNMP system upgrade mechanism. NPKG manager handles both manual and automatic installation from a remote NPKG repository. NPKG dependencies, if any, are automatically handled.
Be patient! remote accesses take time. Use the console below to monitor the progression.

The Sample NPKG provided with OpenNMP gives you all required files to develop your own applications and turn them into NPKG for distribution.

OpenNMP Debugging logs

Monitoring and Debugging

OpenNMP is an educational initiative and is targeted to learn about the NMP. For this reason, we provide a Sample NPKG to give you the NPKG file structure. A debugging console can monitor the process progression and logs.
Whenever a process seems to be long to execute, just display the debugging console and access the debugging logs (System, CGI or Scheduler).

Available NPKG Plug-ins

RTENOTITLE
They is already a couple of applications available and packaged as NPKG plug-ins for OpenNMP.

These NPKGs will expand the use of your NAS by implementing additional features.
Visit the NMP section on the official QNAP forum for latest information about OpenNMP & NPKG developments.
* NPKG pre-installed with OpenNMP


RTENOTITLE

AJAXPLORER *

AjaXplorer is an easy-to-install file explorer for remotely managing files on a web server. Its « rich client » layout and actions make it accessible to any end-user for a variety of purposes: file management/sharing, photo gallery, code browsing, etc.

RTENOTITLE

JOOMLA - Not recommended for NMP-1000

Joomla makes creating and maintaining Web sites easy for everyone, from total beginners setting up their first site to IT professionals managing enterprise installations.
Requires MySQL NPKG.

RTENOTITLE

MEDIA SERVICES *

YouTube, SHOUTcast, Flickr and the Internet Radio require data such as URLs, categories, accounts, etc. Each service has a list which can be edited with the remote control and/or the emulation of the keyboard on the screen but this remains fastidious. You have the capability to edit these lists on your PC thanks to the Media Service NPKG Plugin. You are able to add or modify entries, but also to restore the factory default list or your latest list modification. This Plug-in enables the Internet radio recording if your local regulation permits. Audio streams are split into files named accordingly with the song names.

RTENOTITLE

MY-PVR

My-PVR is a very simple application to record video stream broadcasted either from DSL ISP channels, IP-CAM, Web-TV or any RTSP streams. To ease the access to your ISP TV channels, you can enter your ISP TV channels playlist (M3U format).

RTENOTITLE

MYSQL - Not recommended for NMP-1000

MySQL is a relational database management system (RDBMS) which has more than several million installations. MySQL stands for "My Structured Query Language". The program runs as a server providing multi-user access to a number of databases. You can enable MySQL server as the website database.
Installs phpMyAdmin as MySQL Administration interface.
WARNING: After the MySQL installation you MUST RESTART the Web server.

RTENOTITLE

PHPSYSINFO

PhpSysInfo is a customizable PHP Script that parses /proc, and formats information nicely. It will display information about system facts like Uptime, CPU, Memory, PCI devices, SCSI devices, IDE devices, Network adapters, Disk usage, and more.

RTENOTITLE

REMOTE BACKUP *

When you want to synchronize the local files on your NMP with a remote folder on your NAS server, the Remote Replication function allows you to easily perform this task. QNAP NAS servers have the capability to synchronize with other QNAP devices. Enable the Remote Backup on your NMP then create a new job on your NAS Remote Backup administration page. You can plan nightly folder synchronization. Tests report about 2 MB/s transfer rate over gigabit LAN and 1.2 MB/s over WiFi (54Mb/s).

RTENOTITLE

SPIP - Not recommended for NMP-1000

SPIP is a publishing system for the Internet in which great importance is attached to collaborative working, to multilingual environments, and to simplicity of use for web authors. It is free software, distributed under the GNU/GPL licence. This means that it can be used for any Internet site, whether personal or institutional, non-profit or commercial.
Uses either a SQLite or MySQL database (requires MySQL NPKG).

RTENOTITLE

VLC - For developers

The VLC plugin implements a UPnP/DLNA server on your NMP-1000 to share its internal disk multimedia content with others UPnP/DLNA devices. VLC media player is a highly portable multimedia player and multimedia framework capable of reading most audio and video formats (MPEG-2, MPEG-4, H.264, DivX, MPEG-1, mp3, ogg, aac ...) as well as DVDs, Audio CDs VCDs, and various streaming protocols.
More information about VideoLAN.

RTENOTITLE

SAMPLE *

This is an empty NPKG providing the NPKG plug-in file structure as a development basis.
Installed by default with OpenNMP, you can remove this Plug-in if you do not intend to use it. Additional information about the NPKG development and the file structure are available in the help section of the plug-in.

Installation

OpenNMP on USB Stick

NOTE: We recommend to use the Putty terminal to correctly handle script colorization.

Read more about Installation & Upgrade
  1. Plug an external USB storage media (256 MB minimum)
    - USB Memory stick (ReadyBoost recommended) or USB Hard Disk Drive
     
  2. Open and log with a Telnet console
    - Enable Remote Login in the NMP Web Administration interface
    - Connect to port 13131 with Telnet (eg. Putty utility)
    - Log with admin (default password is admin)
     
  3. Extract from OpenNMP archive the 3 files "installer.sh, onmp.tgz and INSTALL"
    - Copy the 3 files into the "/share/Download" folder of your NMP-1000 for example
    - For "disk-less NMP", plug a second USB thumbdrive and extract on it.
    - Read the README file for instructions
     
  4. Launch the installation script from the directory where the archived files have been extracted.
    - If OpenNMP already exists, it will be upgraded.
    # cd /share/Download
  1. ./installer.sh

Carefully select the USB device to be used
== ALL DATA ON THE SELECTED USB DRIVE WILL BE ERASED ==


Once the installation completed, log to the OpenNMP web interface with your web browser:

  • http: //<your_nmp>:8080/
  • Default account is: admin/admin


They are few additional options for the installer script:

--force-defaults         use default options for questions asked by the installer during upgrade.
--force-reinstall        allow to reinstall (from scratch) OpenNMP over a previous version
-h --help                display this help and exit
-V --version             output version information and exit


Performances

The QNAP NMP-1000 is a versatile product which offers already a great number of functionalities. Its very smart implementation has enabled the quick development of this opened source application to get even more from the product. OpenNMP will certainly run on future NMP products too. Therefore, we have unleashed our creativity to implement functionalities which today shall run with a limited number of resources (300 MHz CPU / 256 MB RAM shared with the Player applications). Playing with some of the OpenNMP functions might give the feeling of a slow time response. Only enable the features that you really need and use the Debugging console to monitor the progression of slow commands.

OpenNMP removal

To completely remove OpenNMP from your NMP you shall open a Telnet console (not a SSH console because this feature will be removed with OpenNMP) then:

# cd /share/external/USB_DRIVE_xx    (where xx stands for A1, B1, etc.. according to your USB device)
#.onmp/opennmp.sh remove-all

This will remove all NPKG and links that have been created by these NPKG as well as data (e.g. Media services lists will be reseted to values at the date of OpenNMP installation) including the "hook" but not the OpenNMP core files on the USB device. You have to reformat your USB device if you want to clear all files.


Known Issues

Despite all the effort devoted to make OpenNMP the best as possible, there are still some remaining issues and limitations we are trying to get rid of.

  • Several users have reported issues with USB thumbdrives whereas USB HDDs are always working proprerly. We recommand to use USB ReadyBoost thumbdrives which are aimed to support heavy R/W operations whereas low-end cheap USB thumbdrives are targeted for data storage only.
  • NPKG upgrade fails. Previous NPKG shall be removed prior to new NPKG version installation


Troubleshooting

Here below are the frequently asked questions about troubleshooting:

  • Install aborted because the USB device cannot be unmount. This may occur during a re-installation. There are processes still using the USB device which prevent the Umount command (e.g. Close Windows explorer pointing to the USB device).
    Eject the USB device from the NMP administration interface, or check (fuser -m /share/USB_DRIVE_x1) which process is still using the USB device and kill it.
  • Access to OpenNMP web interface lost. If you have modified the Web server port, you must redirect your browser to the new port and relogin. Browser cache may need to be cleared.


Disclaimer

As of today, OpenNMP is still in Alpha version.

The OpenNMP development environment is provided under GPL license AS IS*.
By using OpenNMP,you endorse the full and sole responsibility for direct and indirect damages and/or losses.
You yield any actions against the OpenNMP developers and/or QNAP. OpenNMP is provided for educational purpose only.

IMPORTANT: To not alter the performances of the Network Media Player, we urge you to stop OpenNMP while playing movies or using the video and audio functionalities. Network activities may take a significant amount of memory or CPU resources and drastically reduce the efficiency of the audio/video processing. Video artifacts and noise can impair the quality of your multimedia content.
* OpenNMP has not been fully tested and despite all the attention provided, may open security breaches into your system, or directly/indirectly alter your data.


Downloads

RTENOTITLE   IMPORTANT: Downloads are available from the QNAP Forum for registered members at
[OpenNMP & NPKG Project].