Skip to content
This repository has been archived by the owner on Jun 11, 2024. It is now read-only.
Tyler Harris edited this page Nov 6, 2018 · 19 revisions

qNotify is a single-page sign-in webapp permitting Novell engineers to receive qmon texts and email notifications for their appropriate queues. It has been designed to work in parallel with a configured & running instance of qmon.

qNotify is a web-application that is built on Node.js, which is a platform built on Chrome's JavaScript runtime for building fast, scalable network applications. I used nodejs and a module called Express.js instead of dealing with apache, tomcat, etc. Suffice it to say, nodejs is taking over enterprise web-development for good reasons.

qNotify dependencies

I have qNotify installed on a SLES 11 SP3 server with the following dependencies:

  • qmon - configured for a team.
  • Git-core
  • NodeJS
  • npm (package manager for nodejs)
    Note: Although I don't anticipate any dependency issues, if there are any problems, consider installing the SLES Development Tools/Kit.

Install Dependencies:

  1. Install & configure qmon
    qNotify depends on a running instance of qmon. It essentially passes in terminal commands to update the notification list of qmon and relies on qmon to do the actual notifying:
    http://proetus.provo.novell.com/qmon/
    Edit /etc/qmon.conf:
EmailAddress="null"
EmailAlert=1
ReplyAddress="notify@mymobile.lab.novel.com"
BomgarEmailAlert=1
EmailContent="SGR,severity,respond,brief"
  1. Install git-core
zypper in git-core

or if the repository is missing:

zypper ar http://download.opensuse.org/repositories/devel:/tools:/scm/SLE_11_SP3/devel:tools:scm.repo
zypper in git-core
  1. Install NodeJS
zypper in nodejs-devel

or if the repository is missing:

zypper ar http://download.opensuse.org/repositories/devel:/languages:/nodejs/SLE_11_SP3/devel:languages:nodejs.repo
zypper in nodejs nodejs-devel

Note: If needed, here are the binaries: http://nodejs.org/download/

  1. Install npm
curl -L https://npmjs.org/install.sh | sh

Install qNotify:

  1. Clone the qNotify repository using the git clone command:
cd /srv/www/
git clone https://github.com/tdharris/qNotify.git
  1. While in the qNotify directory, install its' dependencies with npm:
cd qNotify
npm install --unsafe-perm

Note: --unsafe-perm allows npm to run the ./rc/make-rc-sles.sh script to install for rc commands.

3. Configure automatic startup:

chkconfig qnotify on

Configure qNotify:

  • In the qNotify directory, there is a config.json file:
{
        "listenHttp": true,
        "httpPort": 80,
        "httpsPort": 443,
        "privateKey": "./ssl/privatekey.pem",
        "certificate": "./ssl/certificate.pem",
        "logDirectory": "./logs"
}

Note: Set listenHttp to false if wallboard is being run on the server (Apache listening on http:80). Otherwise, stick with the defaults.

Run qNotify

  • From a terminal window:
rcqnotify {start|stop|restart|status}
  • OR From the qNotify directory:
npm {start|stop|restart|status}
Clone this wiki locally