NVA Alarmprograms Description: The main programs which are used for alarming are in the nvt directory all moduls for special functions are in the subdirectory moduls. The names, phonenumbers and phonetypes of the persons are stored in groupdatabases. Each group has its one database. For example group 11 would have the alarmdata in the database nvagrp11.dbf. The groupdatabases can be created and modified with the personal editor nvpers.exe. Most alarmsettings can be made with the alarmconfigurator Nvaconf.exe which can be started from the voice mail and alarm-program Vmnvt.exe. More alarmsettings are in the ini-file nvalarm.ini . The alarm can be launched from the contact controller, by phone, from a console with nvastart.exe/nvlaunch.exe, by sockets, or other comport-progs. Nva programs: nvainit.nve For initialisation nvarun.nve Start program calls nvagrp.nve nvagrp.nve Mainprogram to read groupdatabase and start postjobs nvadial.nve Dials the given number parallel nvaseqdl.nve Dials numbers from a group sequent nvaseqwt.nve Waits after sequent dial for confirmation nvaswait.nve Waits a defined time before dialing next number nvacon.nve Confirmation program nvasms.nve Sends SMS-message to handy nvapag.nve Send message to pager nvapagp.nve Sends message to up to 10 pagers in 1 connection for parallel alarms nvacallb.nve Callback program to confirm pager nvapgcon.nve Confirmation for pager callback with password/ID nvawrdb.nve Writes callresults to resultdatabase (Ref-number) nvasched.nve Reads year- and weekscheduleplan and returns alarmkeynumber nvawrerr.nve Writes error to error-logfile nvadist.nve Records alarmmessage and starts alarm nvacbox.nve Startprogram for contact controller nvasock.nve Startprogram for sockets nvasockw.nve Checks socket-link nvagets.nve Startprogram for gets-interface nvadisp.nve Sends alarmkey as own-phone for DDI nvaduui.nve Send message as UUI (User to User Information ) nvaconf.nve Starts conference nvalst.nve Generates txt-files of the alarmgroupdatabases for printing nvarun2.nve Startprogram for escalation nvasched.nve Checks schedule and starts alarm with specified alarmkey Batch-Programs: Nva_on.bat Startbatchprogram for cbox on alarm Nva_off.bat Startbatchprogram for cbox on reset Nvalarm.bat Startbatchprogram for comserver-interface (Gets) Nvadist.bat Startbatchprogram for Distribution Nvaseqwt.bat Batchprogram to restart alarm after waiting Nvaview.bat Batchprogram to start nvaview.exe Special nva programs: Check in / out: nvachkin.nve Person can check in/out nvachktn.nve Checks if person is check-in before dialing For Hotelmanagement-systems (Fidelio): nvaprio1.nve Checks priority of the found number nvaprio2.nve Posts jobs with a low priority last Special Modules: nvabusy.nve Dials number again if it was busy nvadial2.nve Dials a 2nd or more number if dialout failed nvamore.nve To play a 2nd or more alarmvoxfiles on answer nvafname.nve To change name of alarmvoxfile nvadlko.nve Start when dialout was not successful nvadialx.nve Dials same number if alarmcontact is still on nvarep.nve Repeats alarmvoxfile (nvtini_s5) nvamore.nve To play a 2nd or more alarmvoxfiles on answer nvambxcp.nve Copies the alarmmessage into the mailboxes More information about the programs and modules is in the header of each program and module or on the pages . Variables: nvtini_i1: nbrrings nvtini_i2: dbentry nvtini_i3: Alarmgroup 11.. 88 nvtini_i4: Alarmtextnumber nvtini_i5: Entered password nvtini_i6: Sleep for how long before launching postjob nvtini_i7: Counter of alarmsequnences ( If keystate is still 1) nvtini_i8: Priority 1=high 2=normal 3=low 0=no priority (normal) or nvtini_i8: Delay for escalation alarm * nvtini_i9: Rings dependend on the current priority or nvtini_i9: Check before starting escalation 0:none, 1-100:level, 101:sel. pers. * nvtini_i11: Sequent-wait type 1: wait for callback for confirmation 0: normal nvtini_s1: Name of person/room to be called nvtini_s2: First phonenumber nvtini_s3: Alarmrefnumber for filenames nvtini_s4: First phonetype nvtini_s5: Name of voxfile to be played when answered (optional) nvtini_s6: Directory with alarmvoxfiles nvtini_s7: Alarmtype ( for sequent alarming s7=seq) nvtini_s8: Name of logfile ( Refnumber(s3)+ .l1 or .l2 or .log ) nvtini_s9: Nvtque startcomand ( postjob ) nvtini_s10: Launchtype ( Tel/Console/NVCBOX/.. ) nvtini_s12: UUI message ( only if module nvaduui.nve is used ) nvtini_statdir: Directory where logfiles (l1 and l2 ) are written to. * only used to start an escalation alarm Alarm voxfiles: The voxfile which should be played if a call is answered, can be defined in nvtini_s5. If nvtini_s5 is empty the first personal greeting message, ( vXXX_1.vox XXX=mailboxnumber) from the mailbox defined in nvtini_i4, is played. If the voxfile can not be defined in nvtini_s5 or with the mailboxnumber in nvtini_i4, the voxfile-name can be defined in the module nvafname. Logfiles: All logfiles are written to the nvtini_statdir directory. ( \nvt\log ) Every call is written to the logfile defined in nvtini_s8. Every error is written to the errorlogfile "nva_"+month+".err". Every posted job is written to the logfile "nvq_"+month+".log" Alarmtype ( Parallel / Sequent / CopyMbx): If the alarmtype "Sequent" is used, the phonenumbers are dialled sequent with only one line. The phonenumbers from the alarmdatabase are dialled until somebody answers or the end of the database is reached. There are two ways to define an alarmgroup as sequent: 1. Set nvtini_s7=seq in the initialisation program nvainit.nvt 2. Set "Sequent" under "Special" in the voicemail database ( Use alarm/voicemail program vmnvt.exe to set the alarmtype) in the mailboxnumber defined in nvtini_i4. To use this function the modules nvaseq.nve and nvaseqdl.nve have to be present. To copy the message ( nvtini_s5 ) into the mailbox of the personen in a group, you can use the module nvambxcp.nve. The alarmtype ( Field "Special" configure with vmnvt.exe ) has to be set to "CopyMbx" in the mailbox defined in nvtini_i4. This function is normaly used with the program nvarec.nve ( records the alarmmessage nvtini_s5 and starts nvarun.nve ) to copy the recorded message into the mailboxes of the specified group. SMS / Pager alarm: To send alarmmessages to a handy (SMS) or to pager you need the module nvasms.nve for sms-messages or nvapag.nve for pager-messages. You also need the comserver nvcsrvr.exe and the DLL nvsms.dll for sms or nvfrz.dll for paging. To send a message as sms, you need to add a person in the personal-editor nvpers.exe and enter the handynumber under phonenumber and define "SMS" as phonetype. This is very important, because the module is only called if the phonetype is "SMS". The sms- message to be sent is defined in the ini-file nvsms.ini. For every alarmkey ( nvtini_i4 ) a different sms-message can be sent. Example for alarmkey 601: [Config] Message601=Fire alarm To send a message to a pager, you need to add a person in the personal-editor nvpers.exe and enter the pagernumber under phonenumber and define "PAG" as phonetype. The message to be sent to the pager is defined in the ini-file nvfrz.ini. For every alarmkey (nvtini_i4 ) a different message can be sent. Example for alarmkey 601: [Config] Message601=Fire alarm Call priority ( Hotelmanagement Systems ) This option is for alarmsystems with two call priorities. The outgoing calls with a high priority, will be dialled as normal. Calls with the low priority, will be written to a file ( *.2nd ) and dialled after the high priority calls have been made. To use this function the modules nvaprio1.nve and nvaprio2.nve have to be present. The program nvaprio1.nvt as to be modified for your needs. If you are using the comserver to read the data from the hotelmanagement-system, the data is stored in the field "special" of the voicemail database. Please note that the alarmtype ( sequent/parallel ) is stored in the same field. The program nvaprio2 must not be modified. It reads the file with the call- data from the entries with a low priority and starts nvadial as postjob for every valid line read. Alarmkeys ( Contact Controller ) When using alarmkeys, for example with an contact controller or when launching an alarm over sockets, more initialisation is done in the program nvainit.nve. The offset for the alarmkey (nvtini_i4) is read from the ini-file nvcbox.ini: [Config] Offset=7000 The offset is added to the alarmkey i4. ( Contact 3 -> Alarmkey 7003 ) The alarmgroup defined for this alarmkey, is read from the field "group" of the voicemail database. The alarmgroup is set with the Alarm/Voicemail program "vmnvt.exe" under status. The status of the alarmkey ( same as the mailboxnumber ) has to be "ALARM". With the module nvadialx.nve the number is dialled as long as the contact is on alarm. The interval between the calls can be defined under the project specific section of the program nvadialx.nvt. Alarm confirmation When using this option the alarm has to be confirmed by entering a code after the alarm- message has been played. If the correct code was entered, the alarm for this person/number stops . If a invalid code or nothing was entered, the person/number is called again until the alarmmessage is confirmed. To use this function, the modules nvacon.nve, nvawaitc.nve and nvawaitc.bat have to be present. If the phonetype is set to "NOC" ( no confirmation) the dialled number/person does not have to confirm. If the call was not confirmed, the batchprogram nvawaitc.bat is started. This batchprogram start nvawaitc.nve as NVE-program, that the line is free again. The program nvawaitc.nve sleeps for the defined (nvtini_i6) time in 1/10 seconds and starts nvadial as postjob again. Alarm ini-file nvalarm.ini [config] SendUUI=0 //Send user to user information 1/0 SendDDI=0 //Send Alarmkey as DDI in own_phone 1/0 WritePagerLog=0 //Write pager result to logfile (l1) 1/0 WriteSMSLog=0 //Write sms result to logfile (l1) 1/0 [nvastart] VMStartProg=A4400 //Start voicemail-prog if alarmkey is not //from status ALARM-IN DefaultAlarmKey=7001 //Default-alarmkey if defined alarmkey is //not valid [sequent] SleepAfterCall=5 //Sleep after each sequent-call in seconds SleepAfterPage=300 //Sleep after each SMS-/ or pager-message //for pager-callback in seconds CallBack=1 //Pager-callback 1/0 CheckKeyStatePage=0 //Check keystate before pager-confirmation CheckKeyStateCall=0 //Check keystate before calling next RepeatMessage=2 //How many times to repeat alarmmessage CheckPerson=0 //Check if person is checked-in before //dialing the person 1/0 CheckKeyAfterAnswer=0 //Check after a defined time if key is //active then continue 1/0 SleepAfterAnswer=300 //Sleep before checking the keystate in //seconds CallSameNumber=0 //Call same number again if key is still //active 1/0 [parallel] CallBack=0 //Pager-callback 1/0 RepeatMessage=1 //How many times to repeat alarmmessage [nvarun] StartViewer=1 //Start alarm-viewer on alarm 1/0 [nvadist] MaxRecSec=30 //Max recording durration for distribution //in seconds [nvacon] ConfirmationCode=# //Code to confirm alarm RepeatConfirmation=2 //How many times to repeat confirmation SleepConKo=300 //Sleep when confirmation was not suc WriteToStat=1 //Write confirmation to logfile *.l1 1/0 CallAgainConKo=0 //Call again if confirmation failed [nvadlko] SleepKeyOn=300 //Sleep before redialing number [nvakey] RepMessage=2 //How many times to repeat menu DefaultKey=1 //Default key if nothing was pressed [nvawrdb] DbPath=\nvt\log //Path for result-database [nvacallb] NumberOfDigits=2 //Number of digits to receive AddOffset=7000 //Offset which is added to entered number [nvarun2] MaxRepeatAlarm=2 //How many times an alarm can be repeated [nvawaitc] MaxRepeatDial=6 //Max times a number is dialed [nvachktn] CheckPresence=0 //Check if room is occupied (fidelio) [nvatest] Testnumber=12345 //Number to call for linetest Console=k1 //Send warning to console 2ndConsole=k5 //If first console did not answer send //warning to 2nd one [nvasock] Offset=7000 //Offset which is added to the contact- //number Watchkey=8008 //Key which is used to check link [nvagets] Offset=7000 //Offset which is added to the contact- //number SetState=0 //Set state of the alarmkey to 1 1/0