Ver Fonte

rebase programm directory to /opt/Eye

rajven há 3 anos atrás
pai
commit
a21a70e805
100 ficheiros alterados com 68 adições e 3820 exclusões
  1. 11 11
      docs/Readme.en.md
  2. 23 23
      docs/Readme.ru.md
  3. 3 3
      docs/addons/dhcpd.conf
  4. 1 1
      docs/addons/dnsmasq.conf
  5. 1 1
      docs/addons/sudoers.d/apache
  6. 0 35
      docs/addons/update-dhcpd
  7. 1 1
      docs/addons/update-named
  8. 12 10
      docs/cron/stat
  9. 1 1
      docs/dhcpd/update-dhcpd
  10. 2 2
      docs/iptables/ulog-save
  11. 5 5
      docs/mysql/mysql.sql
  12. 2 0
      docs/mysql/reset_admin.sql
  13. 1 1
      docs/nf_capd
  14. 0 5
      docs/remote/restart_nagios
  15. 0 5
      docs/remote/update_dhcp
  16. 0 5
      docs/remote/update_dns
  17. 1 1
      docs/systemd/dhcp-log.service
  18. 1 1
      docs/systemd/nfcapd/office.conf
  19. 1 1
      docs/systemd/stat-sync.service
  20. 1 1
      docs/systemd/syslog-stat.service
  21. 1 1
      docs/update-named
  22. 0 4
      docs/wiki/DefaultPermission.txt
  23. 0 22
      docs/wiki/fix_wiki_acl
  24. 0 20
      docs/wiki/fix_wiki_perm
  25. 0 354
      docs/wiki/foswiki/CapsManPlugin.pm
  26. 0 166
      docs/wiki/foswiki/ShowStatPlugin.pm
  27. 0 252
      docs/wiki/foswiki/StatSyncPlugin.pm
  28. 0 384
      docs/wiki/foswiki/SwitchInfoPlugin.pm
  29. 0 319
      docs/wiki/foswiki/UpsInfoPlugin.pm
  30. 0 442
      docs/wiki/foswiki/WlcInfoPlugin.pm
  31. 0 73
      docs/wiki/foswiki/data/CommentPluginTemplate.txt
  32. 0 22
      docs/wiki/foswiki/data/CompanyBuildings.txt
  33. 0 15
      docs/wiki/foswiki/data/DefaultATSTemplate.txt
  34. 0 12
      docs/wiki/foswiki/data/DefaultAclTemplate.txt
  35. 0 9
      docs/wiki/foswiki/data/DefaultAirCondTemplate.txt
  36. 0 4
      docs/wiki/foswiki/data/DefaultArticleTemplate.txt
  37. 0 15
      docs/wiki/foswiki/data/DefaultAuthTemplate.txt
  38. 0 10
      docs/wiki/foswiki/data/DefaultAuthWirelessPSK.txt
  39. 0 19
      docs/wiki/foswiki/data/DefaultBrasTemplate.txt
  40. 0 13
      docs/wiki/foswiki/data/DefaultBuildingTemplate.txt
  41. 0 15
      docs/wiki/foswiki/data/DefaultCPOTemplate.txt
  42. 0 16
      docs/wiki/foswiki/data/DefaultCertTemplate.txt
  43. 0 13
      docs/wiki/foswiki/data/DefaultDnsZoneTemplate.txt
  44. 0 17
      docs/wiki/foswiki/data/DefaultDomainTemplate.txt
  45. 0 1
      docs/wiki/foswiki/data/DefaultEquipmentHddTemplate.txt
  46. 0 27
      docs/wiki/foswiki/data/DefaultEsxiTemplate.txt
  47. 0 28
      docs/wiki/foswiki/data/DefaultGatewayTemplate.txt
  48. 0 23
      docs/wiki/foswiki/data/DefaultHardwareTemplate.txt
  49. 0 23
      docs/wiki/foswiki/data/DefaultKvmHostTemplate.txt
  50. 0 15
      docs/wiki/foswiki/data/DefaultNetdeviceTemplate.txt
  51. 0 3
      docs/wiki/foswiki/data/DefaultPermission.txt
  52. 0 16
      docs/wiki/foswiki/data/DefaultPhoneTemplate.txt
  53. 0 13
      docs/wiki/foswiki/data/DefaultPoolTemplate.txt
  54. 0 13
      docs/wiki/foswiki/data/DefaultRackTemplate.txt
  55. 0 15
      docs/wiki/foswiki/data/DefaultRoomTemplate.txt
  56. 0 23
      docs/wiki/foswiki/data/DefaultRouterTemplate.txt
  57. 0 23
      docs/wiki/foswiki/data/DefaultServerTemplate.txt
  58. 0 13
      docs/wiki/foswiki/data/DefaultServiceTemplate.txt
  59. 0 13
      docs/wiki/foswiki/data/DefaultSiteTemplate.txt
  60. 0 13
      docs/wiki/foswiki/data/DefaultSubnetTemplate.txt
  61. 0 15
      docs/wiki/foswiki/data/DefaultSwitchTemplate.txt
  62. 0 14
      docs/wiki/foswiki/data/DefaultUpsTemplate.txt
  63. 0 11
      docs/wiki/foswiki/data/DefaultVideoRegTemplate.txt
  64. 0 32
      docs/wiki/foswiki/data/DefaultVirtCluster.txt
  65. 0 23
      docs/wiki/foswiki/data/DefaultVirtualHostTemplate.txt
  66. 0 9
      docs/wiki/foswiki/data/DefaultVlanTemplate.txt
  67. 0 19
      docs/wiki/foswiki/data/DefaultVoipGateTemplate.txt
  68. 0 19
      docs/wiki/foswiki/data/DefaultWirelessProfileTemplate.txt
  69. 0 43
      docs/wiki/foswiki/data/DefaultWlcTemplate.txt
  70. 0 82
      docs/wiki/foswiki/data/FaqBbb.txt
  71. 0 185
      docs/wiki/foswiki/data/FaqOpenssl.txt
  72. 0 131
      docs/wiki/foswiki/data/FaqPoe.txt
  73. 0 34
      docs/wiki/foswiki/data/FormAP.txt
  74. 0 29
      docs/wiki/foswiki/data/FormATS.txt
  75. 0 38
      docs/wiki/foswiki/data/FormAirConditioning.txt
  76. 0 14
      docs/wiki/foswiki/data/FormBuilding.txt
  77. 0 32
      docs/wiki/foswiki/data/FormCPO.txt
  78. 0 18
      docs/wiki/foswiki/data/FormCertificate.txt
  79. 0 20
      docs/wiki/foswiki/data/FormDevice.txt
  80. 0 10
      docs/wiki/foswiki/data/FormDhcpPool.txt
  81. 0 10
      docs/wiki/foswiki/data/FormDnsZone.txt
  82. 0 19
      docs/wiki/foswiki/data/FormDomain.txt
  83. 0 33
      docs/wiki/foswiki/data/FormEquipmentHdd.txt
  84. 0 36
      docs/wiki/foswiki/data/FormHardware.txt
  85. 0 13
      docs/wiki/foswiki/data/FormIP.txt
  86. 0 30
      docs/wiki/foswiki/data/FormIPCAM.txt
  87. 0 26
      docs/wiki/foswiki/data/FormKvmHost.txt
  88. 0 33
      docs/wiki/foswiki/data/FormNetDevice.txt
  89. 0 32
      docs/wiki/foswiki/data/FormPhone.txt
  90. 0 38
      docs/wiki/foswiki/data/FormPrinter.txt
  91. 0 9
      docs/wiki/foswiki/data/FormRack.txt
  92. 0 9
      docs/wiki/foswiki/data/FormRoom.txt
  93. 0 41
      docs/wiki/foswiki/data/FormRouter.txt
  94. 0 30
      docs/wiki/foswiki/data/FormSensor.txt
  95. 0 21
      docs/wiki/foswiki/data/FormServerOs.txt
  96. 0 10
      docs/wiki/foswiki/data/FormService.txt
  97. 0 12
      docs/wiki/foswiki/data/FormServiceDns.txt
  98. 0 15
      docs/wiki/foswiki/data/FormSimple.txt
  99. 0 20
      docs/wiki/foswiki/data/FormSite.txt
  100. 0 13
      docs/wiki/foswiki/data/FormSubnet.txt

+ 11 - 11
docs/Readme.en.md

@@ -30,26 +30,26 @@ libnetwork-ipv4addr-perl libnet-openssh-perl
 3. Download project:
 
 git clone https://github.com/rajven/statV2
-mkdir -p /usr/local/scripts
+mkdir -p /opt/Eye/scripts
 cd statV2/
-cp -R scripts/ /usr/local/
-mkdir -p /usr/local/scripts/cfg
-cp docs/addons/cfg/config /usr/local/scripts/cfg/
+cp -R scripts/ /opt/Eye/
+mkdir -p /opt/Eye/scripts/cfg
+cp docs/addons/cfg/config /opt/Eye/scripts/cfg/
 cp -R html/ /var/www
 
 4. Download additional scripts (optional)
 
-download from https://jquery.com/download/ production jQuery to /var/www/html/js/jq
+download from https://jquery.com/download/ production jQuery to /opt/Eye/html/js/jq
 example: wget https://code.jquery.com/jquery-3.6.0.min.js
 rename jquery-3.6.0.min.js to jquery.min.js
 
 download from https://github.com/select2/select2 release
 example: wget https://github.com/select2/select2/archive/4.0.12.tar.gz
-extract contents from directory dist archive to /var/www/html/js/select2/
+extract contents from directory dist archive to /opt/Eye/html/js/select2/
 
 download jstree from  https://github.com/vakata/jstree/
 wget https://github.com/vakata/jstree/zipball/3.3.12 -O js.zip
-extract contents from directory dist archive to /var/www/html/js/jstree
+extract contents from directory dist archive to /opt/Eye/html/js/jstree
 
 5. Configure mysql
 
@@ -69,10 +69,10 @@ cat docs/mysql/mysql.sql | mysql -u root -p stat
 
 6. Save configuration for web and scripts:
 
-cp html/inc/config.php.sample /var/www/html/cfg/
-mv /var/www/html/cfg/config.php.sample /var/www/html/cfg/config.php
+cp html/inc/config.php.sample /opt/Eye/html/cfg/
+mv /opt/Eye/html/cfg/config.php.sample /opt/Eye/html/cfg/config.php
 
-edit: /var/www/html/cfg/config.php & /usr/local/scripts/cfg/config
+edit: /opt/Eye/html/cfg/config.php & /opt/Eye/scripts/cfg/config
 
 set mysql database|user|password
 
@@ -185,7 +185,7 @@ add action=reject chain=forward out-interface-list=WAN reject-with=icmp-network-
 add max-limit=[YOU BANDWIDTH] name=upload_root_[WAN_INTERFACE_NAME] parent=[WAN_INTERFACE_NAME] queue=pcq-upload-default
 add name=download_root_[LAN_INTERFACE_NAME] parent=[LAN_INTERFACE_NAME] queue=pcq-download-default
 
-run /usr/local/scripts/sync_mikrotik.pl
+run /opt/Eye/scripts/sync_mikrotik.pl
 
 #simple dhcp script
 /tool fetch mode=http keep-result=no url="http://<STAT_IP_OR_HOSTNAME>/admin/users/add_dhcp.php\?login=<LOGIN>&password=<PASSWORD_HASH>&mac=$leaseActMAC&ip=$leaseActIP&action=$leaseBound&hostname=$"lease-hostname""

+ 23 - 23
docs/Readme.ru.md

@@ -30,29 +30,29 @@ libnetwork-ipv4addr-perl libnet-openssh-perl
 3. Качаем исходники и раскидываем по каталогам:
 
 git clone https://github.com/rajven/statV2
-mkdir -p /usr/local/scripts
-mkdir -p /usr/local/scripts/cfg
+mkdir -p /opt/Eye/scripts
+mkdir -p /opt/Eye/scripts/cfg
 cd statV2/
-cp -R scripts/ /usr/local/
-cp docs/addons/cfg/config /usr/local/scripts/cfg/
+cp -R scripts/ /opt/Eye/
+cp docs/addons/cfg/config /opt/Eye/scripts/cfg/
 cp -R html/ /var/www
 
 4. Можно скачать дополнительные скрипты (красивости)
 
-mkdir -p /var/www/html/js/jq
-mkdir -p /var/www/html/js/select2
+mkdir -p /opt/Eye/html/js/jq
+mkdir -p /opt/Eye/html/js/select2
 
-download from https://jquery.com/download/ production jQuery to /var/www/html/js/jq
-#wget https://code.jquery.com/jquery-3.6.0.min.js -O /var/www/html/js/jq/jquery.min.js
+download from https://jquery.com/download/ production jQuery to /opt/Eye/html/js/jq
+#wget https://code.jquery.com/jquery-3.6.0.min.js -O /opt/Eye/html/js/jq/jquery.min.js
 
 download from https://github.com/select2/select2 release
 #wget https://github.com/select2/select2/archive/4.0.12.tar.gz
-#tar -xzf 4.0.12.tar.gz -C /var/www/html/js/select2/ --strip-components=2 select2-4.0.12/dist
+#tar -xzf 4.0.12.tar.gz -C /opt/Eye/html/js/select2/ --strip-components=2 select2-4.0.12/dist
 
 download jstree from  https://github.com/vakata/jstree/
 #wget https://github.com/vakata/jstree/zipball/3.3.12 -O js.zip
-#unzip js.zip "vakata-jstree-7a03954/dist/*" -d "/var/www/html/"
-#mv /var/www/html/vakata-jstree-7a03954/dist/ /var/www/html/js/jstree
+#unzip js.zip "vakata-jstree-7a03954/dist/*" -d "/opt/Eye/html/"
+#mv /opt/Eye/html/vakata-jstree-7a03954/dist/ /opt/Eye/html/js/jstree
 
 5. Настраиваем mysql 
 
@@ -75,14 +75,14 @@ cat docs/mysql/mysql.sql | mysql -u root -p stat
 
 6. Настраиваем конфиги для вэба и скриптов:
 
-cp html/inc/config.php.sample /var/www/html/cfg/
-mv /var/www/html/cfg/config.php.sample /var/www/html/cfg/config.php
+cp html/inc/config.php.sample /opt/Eye/html/cfg/
+mv /opt/Eye/html/cfg/config.php.sample /opt/Eye/html/cfg/config.php
 
-edit: /var/www/html/cfg/config.php
+edit: /opt/Eye/html/cfg/config.php
 
-cp scripts/cfg/config.sample /usr/local/scripts/cfg/config
+cp scripts/cfg/config.sample /opt/Eye/scripts/cfg/config
 
-edit: /usr/local/scripts/cfg/config
+edit: /opt/Eye/scripts/cfg/config
 
 Надо указать пароль в  mysql и базу данных!!!
 
@@ -144,15 +144,15 @@ systemctl start dhcp-log
 
 1. Для определения вендора оборудования по маку, необходимо импортировать базу маков:
 
-cp docs/mac-oids/download-macs.sh /usr/local/scripts/
-cp docs/mac-oids/update-mac-vendors.pl /usr/local/scripts/
+cp docs/mac-oids/download-macs.sh /opt/Eye/scripts/
+cp docs/mac-oids/update-mac-vendors.pl /opt/Eye/scripts/
 
-chmod +x /usr/local/scripts/download-macs.sh
-chmod +x /usr/local/scripts/update-mac-vendors.pl
+chmod +x /opt/Eye/scripts/download-macs.sh
+chmod +x /opt/Eye/scripts/update-mac-vendors.pl
 
 Run:
-/usr/local/scripts/download-macs.sh
-/usr/local/scripts/update-mac-vendors.pl
+/opt/Eye/scripts/download-macs.sh
+/opt/Eye/scripts/update-mac-vendors.pl
 
 И удалите скрипты после завершения их работы
 
@@ -224,7 +224,7 @@ add action=reject chain=forward out-interface-list=WAN reject-with=icmp-network-
 add max-limit=[YOU BANDWIDTH] name=upload_root_[WAN_INTERFACE_NAME] parent=[WAN_INTERFACE_NAME] queue=pcq-upload-default
 add name=download_root_[LAN_INTERFACE_NAME] parent=[LAN_INTERFACE_NAME] queue=pcq-download-default
 
-запускаем /usr/local/scripts/sync_mikrotik.pl
+запускаем /opt/Eye/scripts/sync_mikrotik.pl
 Скрипт создаст правила фильтрации и шейпера
 
 #dhcp script

+ 3 - 3
docs/addons/dhcpd.conf

@@ -28,19 +28,19 @@ on commit {
     set ClientIP = binary-to-ascii(10, 8, ".", leased-address);
     set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
     set ClientHostName = pick-first-value(option host-name,"undef");
-    execute("/usr/local/scripts/dhcp-hook.sh", "add", ClientIP, ClientMac, ClientHostName);
+    execute("/opt/Eye/scripts/dhcp-hook.sh", "add", ClientIP, ClientMac, ClientHostName);
     }
 
 on release {
     set ClientIP = binary-to-ascii(10, 8, ".", leased-address);
     set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
-    execute("/usr/local/scripts/dhcp-hook.sh", "del", ClientIP, ClientMac);
+    execute("/opt/Eye/scripts/dhcp-hook.sh", "del", ClientIP, ClientMac);
     }
 
 on expiry {
     set ClientIP = binary-to-ascii(10, 8, ".", leased-address);
     set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
-    execute("/usr/local/scripts/dhcp-hook.sh", "del", ClientIP, ClientMac);
+    execute("/opt/Eye/scripts/dhcp-hook.sh", "del", ClientIP, ClientMac);
     }
 
 log (info, concat("DHCPDLOG - ",binary-to-ascii(10, 8, ".", leased-address)," - ",pick-first-value(option host-name,"undef")," - ",binary-to-ascii (16, 8, ":", substring(hardware, 1, 7))," - at switch - ",binary-to-ascii(16,8,":",suffix(option agent.remote-id,6))," - vlan - ",binary-to-ascii(10,16,"",substring(suffix(option agent.circuit-id,4),0,2))," - port - ",binary-to-ascii(10,8,"",suffix (option agent.circuit-id, 1))," - via - ",binary-to-ascii(10,8,".",packet (24,4))));

+ 1 - 1
docs/addons/dnsmasq.conf

@@ -34,6 +34,6 @@ dhcp-option=119,"oem.local"
 dhcp-range=office,192.168.1.10,192.168.1.200,255.255.255.0,4h
 dhcp-option=net:office,option:router,192.168.1.1
 
-dhcp-script=/usr/local/scripts/dnsmasq-hook.sh
+dhcp-script=/opt/Eye/scripts/dnsmasq-hook.sh
 
 dhcp-lease-max=4000

+ 1 - 1
docs/addons/sudoers.d/apache

@@ -1 +1 @@
-apache	ALL=(ALL)	NOPASSWD: /usr/local/scripts/sync_mikrotik.pl, /usr/local/scripts/update-dnsmasq, /usr/local/scripts/fetch_new_arp.pl
+apache	ALL=(ALL)	NOPASSWD: /opt/Eye/scripts/sync_mikrotik.pl, /opt/Eye/scripts/update-dnsmasq, /opt/Eye/scripts/fetch_new_arp.pl

+ 0 - 35
docs/addons/update-dhcpd

@@ -1,35 +0,0 @@
-#!/bin/bash
-
-logger -t dhcpd "Refresh dnsmasq config request"
-
-/usr/local/scripts/sync_user_dhcp.pl
-
-/usr/local/scripts/print-dhcpd-km135.pl >/tmp/mac-all
-ret=$?
-
-if [ ${ret} -ne 0 ]; then
-    exit
-    fi
-
-diff -aqbBfi /tmp/mac-all /etc/dnsmasq.d/mac-all >/dev/null
-ret=$?
-
-if [ ${ret} -ne 0 ]; then
-    logger -t dhcpd "Update dnsmasq config"
-    cat /etc/dnsmasq.d/mac-all >/tmp/mac.old
-    cat  /tmp/mac-all >/etc/dnsmasq.d/mac-all
-    /usr/sbin/dnsmasq --test >/dev/null 2>&1
-    ret=$?
-    if [ ${ret} -eq 0 ]; then
-        service dnsmasq restart >/dev/null
-	else
-        logger -t dhcpd "Config error! Rollback changes."
-	cat /tmp/mac.old >/etc/dnsmasq.d/mac-all
-	fi
-    else
-    logger -t dhcpd "Config not changed. Skip restart"
-    fi
-
-logger -t dhcpd "done"
-
-exit

+ 1 - 1
docs/addons/update-named

@@ -2,7 +2,7 @@
 
 logger -t named "Refresh named config request"
 
-/usr/local/scripts/print-dns-zones.pl
+/opt/Eye/scripts/print-dns-zones.pl
 [ $? -ne 0 ] && exit 1
 
 RELOAD=

+ 12 - 10
docs/cron/stat

@@ -1,19 +1,21 @@
 #under root
 
-#active scan network (with fping subnets before analyze)
-20 10,13,19 * * * root /usr/local/scripts/fetch_new_arp.pl 1
-
 #reconfigure nagios
 #16 * * * * root /etc/nagios/restart_nagios >/dev/null
 
-#refresh dnsmasq(dhcpd) dhcp server config's
-#02 * * * * root /usr/local/scripts/update-dnsmasq
+#refresh dnsmasq dhcp server config's
+#02 * * * * root /opt/Eye/scripts/update-dnsmasq
 
-#scan network => 2 * arp_timeout (default: 5m * 2)
-*/12 * * * * root /usr/local/scripts/fetch_new_arp.pl
+#maybe any user
 
 #garbage trash
-01 0 * * * root /usr/local/scripts/garbage.pl
+01 0 * * * root /opt/Eye/scripts/garbage.pl
+
+#sync mikrotik cfg
+#03 * * * * root /opt/Eye/scripts/sync_mikrotik.pl
 
-#sync mikrotik cfg (need for update dhcp hostname)
-#03 * * * * root /usr/local/scripts/sync_mikrotik.pl
+#passive scan network => 2 * arp_timeout (default min: 2 * 5m)
+*/25 * * * * root /opt/Eye/scripts/fetch_new_arp.pl
+
+#active scan network (with fping subnets before analyze)
+20 10,13,19 * * * root /opt/Eye/scripts/fetch_new_arp.pl 1

+ 1 - 1
docs/dhcpd/update-dhcpd

@@ -2,7 +2,7 @@
 
 logger -t dhcpd "Refresh dhcpd config request"
 
-/usr/local/scripts/print-dhcpd.pl
+/opt/Eye/scripts/print-dhcpd.pl
 ret=$?
 
 if [ ${ret} -ne 0 ]; then

+ 2 - 2
docs/iptables/ulog-save

@@ -29,8 +29,8 @@ mv /var/log/ulog-acctd/account.log ${SAVE_PATH}/${TM} --backup --suffix="-`date
 skill -CONT -c ulog-acctd
 
 # create statistics
-cat ${SAVE_PATH}/${TM} | /usr/local/scripts/parse_ulog.pl
+cat ${SAVE_PATH}/${TM} | /opt/Eye/scripts/parse_ulog.pl
 
-/usr/local/scripts/sync_iptables.pl
+/opt/Eye/scripts/sync_iptables.pl
 
 exit

+ 5 - 5
docs/mysql/mysql.sql

@@ -76,7 +76,7 @@ INSERT INTO `config` (`id`, `option_id`, `value`) VALUES(3, 32, 'ORG');
 INSERT INTO `config` (`id`, `option_id`, `value`) VALUES(123, 19, '1');
 INSERT INTO `config` (`id`, `option_id`, `value`) VALUES(124, 35, '120');
 INSERT INTO `config` (`id`, `option_id`, `value`) VALUES(125, 9, '2');
-INSERT INTO `config` (`id`, `option_id`, `value`) VALUES(126, 41, '/usr/local/scripts/fetch_new_arp.pl');
+INSERT INTO `config` (`id`, `option_id`, `value`) VALUES(126, 41, '/opt/Eye/scripts/fetch_new_arp.pl');
 INSERT INTO `config` (`id`, `option_id`, `value`) VALUES(127, 26, '3');
 INSERT INTO `config` (`id`, `option_id`, `value`) VALUES(128, 27, '10');
 INSERT INTO `config` (`id`, `option_id`, `value`) VALUES(129, 48, '90');
@@ -128,11 +128,11 @@ INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `descr
 INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(33, 'office domain', 'Домен организации', 'Organization domain', 1, 'text', 'local', 0, 0);
 INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(34, 'debug', 'Включить отладку', 'Enable debugging', 1, 'bool', '0', 0, 0);
 INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(35, 'connections history, days', 'Время хранения истории мест подключения ip-адресов', 'Storage time of the history of connection locations of ip addresses', 1, 'int', '90', 1, 365);
-INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(37, 'refresh access lists', 'Расположение скрипта управления контролем доступа для роутеров Mikrotik', 'Location of the access control script for Mikrotik routers', 1, 'text', '/usr/local/scripts/sync_mikrotik.pl', 0, 0);
-INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(38, 'regenerate dhcp cconfig', 'Расположение скрипта управления конфигурацией dhcp-серверами', 'Location of the dhcp server configuration management script', 1, 'text', '/usr/local/scripts/update-dnsmasq', 0, 0);
-INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(39, 'regenerate dns cconfig', 'Расположение скрипта управления dns-сервером', 'Location of the dns server management script', 1, 'text', '/usr/local/scripts/update-dns', 0, 0);
+INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(37, 'refresh access lists', 'Расположение скрипта управления контролем доступа для роутеров Mikrotik', 'Location of the access control script for Mikrotik routers', 1, 'text', '/opt/Eye/scripts/sync_mikrotik.pl', 0, 0);
+INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(38, 'regenerate dhcp cconfig', 'Расположение скрипта управления конфигурацией dhcp-серверами', 'Location of the dhcp server configuration management script', 1, 'text', '/opt/Eye/scripts/update-dnsmasq', 0, 0);
+INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(39, 'regenerate dns cconfig', 'Расположение скрипта управления dns-сервером', 'Location of the dns server management script', 1, 'text', '/opt/Eye/scripts/update-dns', 0, 0);
 INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(40, 'regenerate nagios cconfig', 'Расположение скрипта конфигурирования Nagios', 'Location of the Nagios configuration script', 1, 'text', '/etc/nagios/restart_nagios', 0, 0);
-INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(41, 'discavery network', 'Расположение скрипта сканирования сети', 'Location of the network scan script', 1, 'text', '/usr/local/scripts/fetch_new_arp.pl', 0, 0);
+INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(41, 'discavery network', 'Расположение скрипта сканирования сети', 'Location of the network scan script', 1, 'text', '/opt/Eye/scripts/fetch_new_arp.pl', 0, 0);
 INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(44, 'Ignore hotspot dhcp log', 'Не писать лог событий dhcp-сервера хотспота. Имеет смысл вклчючать, поскольку время аренды в хот-споте как правило маленькое и в записях хот-спота становятся незаметны логи обычных пользователей', 'Do not write the event log of the hotspot dhcp server. It makes sense to include it, since the rental time in the hotspot is usually small and the logs of ordinary users become invisible in the hotspot records', 1, 'bool', '1', 0, 0);
 INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(45, 'ignore update dhcp event', 'Не писать события обновления ip-адреса dhcp-сервера. ', 'Do not write events for updating the IP address of the dhcp server. ', 1, 'bool', '0', 0, 0);
 INSERT INTO `config_options` (`id`, `option_name`, `description.russian`, `description.english`, `uniq`, `type`, `default_value`, `min_value`, `max_value`) VALUES(46, 'update hostname from dhcp', 'Обновлять имя хоста в DNS при получении адреса по DHCP', 'Update the hostname in DNS when receiving the address via DHCP', 1, 'bool', '0', 0, 0);

+ 2 - 0
docs/mysql/reset_admin.sql

@@ -1 +1,3 @@
+--- default user: admin
+--- default password admin
 INSERT INTO `Customers` (`id`, `Login`, `password`, `api_key`, `readonly`) VALUES (1, 'admin', '$2y$11$wohV8Tuqu0Yai9Shacei5OKfMxG5bnLxB5ACcZcJJ3pYEbIH0qLGG', 'c3284d0f94606de1fd2af172aba15bf31', 0) ON DUPLICATE KEY UPDATE Login="admin", password="$2y$11$wohV8Tuqu0Yai9Shacei5OKfMxG5bnLxB5ACcZcJJ3pYEbIH0qLGG";

+ 1 - 1
docs/nf_capd

@@ -28,7 +28,7 @@ DATA=`ls ${FLOW_DATA}/nfcapd.* 2>/dev/null | grep -v nfcapd.current`
 [ -z "${DATA}" ] && exit 6
 
 for i in $DATA; do
-/bin/nfdump -N -r ${i} -q -o 'fmt:%ts;%pr;%sa;%da;%sp;%dp;%ipkt;%ibyt;%in;%out' | /usr/local/scripts/parse_flow.pl 25
+/bin/nfdump -N -r ${i} -q -o 'fmt:%ts;%pr;%sa;%da;%sp;%dp;%ipkt;%ibyt;%in;%out' | /opt/Eye/scripts/parse_flow.pl 25
 [ $? -eq 0 ] && mv -f $i ${SAVE_PATH}
 done
 

+ 0 - 5
docs/remote/restart_nagios

@@ -1,5 +0,0 @@
-#!/bin/bash
-
-/usr/bin/ssh root@192.168.2.92 /etc/nagios/restart_nagios
-
-exit

+ 0 - 5
docs/remote/update_dhcp

@@ -1,5 +0,0 @@
-#!/bin/bash
-
-/usr/bin/ssh root@192.168.2.12 /usr/local/scripts/update-dhcpd
-
-exit

+ 0 - 5
docs/remote/update_dns

@@ -1,5 +0,0 @@
-#!/bin/bash
-
-/usr/bin/ssh root@192.168.2.12 /usr/local/scripts/update-named
-
-exit

+ 1 - 1
docs/systemd/dhcp-log.service

@@ -5,7 +5,7 @@ Before=dnsmasq.service dhcpd.service
 
 [Service]
 Type=forking
-ExecStart=/usr/local/scripts/dhcp-log.pl --start
+ExecStart=/opt/Eye/scripts/dhcp-log.pl --start
 PIDFile=/var/run/dhcp-log.pid
 RestartSec=30
 Restart=on-failure

+ 1 - 1
docs/systemd/nfcapd/office.conf

@@ -1,3 +1,3 @@
 LISTEN_PORT=7818
 DATA_DIR="/mnt/sdb/flow-tools/netflow-office"
-EXT="-x /usr/local/scripts/nf_calc_fprobe %d/%f 60"
+EXT="-x /opt/Eye/scripts/nf_calc_fprobe %d/%f 60"

+ 1 - 1
docs/systemd/stat-sync.service

@@ -4,7 +4,7 @@ After=network.target mariadb.service
 
 [Service]
 Type=forking
-ExecStart=/usr/local/scripts/stat-sync.pl --start
+ExecStart=/opt/Eye/scripts/stat-sync.pl --start
 PIDFile=/var/run/stat-sync.pid
 RestartSec=30
 Restart=on-failure

+ 1 - 1
docs/systemd/syslog-stat.service

@@ -5,7 +5,7 @@ PartOf=syslog-ng.service
 
 [Service]
 Type=forking
-ExecStart=/usr/local/scripts/syslog-stat.pl --start
+ExecStart=/opt/Eye/scripts/syslog-stat.pl --start
 PIDFile=/var/run/syslog-stat.pid
 RestartSec=30
 Restart=on-failure

+ 1 - 1
docs/update-named

@@ -2,7 +2,7 @@
 
 logger -t named "Refresh named config request"
 
-/usr/local/scripts/print-dns-zones.pl
+/opt/Eye/scripts/print-dns-zones.pl
 [ $? -ne 0 ] && exit 1
 
 RELOAD=

+ 0 - 4
docs/wiki/DefaultPermission.txt

@@ -1,4 +0,0 @@
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 22
docs/wiki/fix_wiki_acl

@@ -1,22 +0,0 @@
-#!/bin/bash
-
-exit
-
-ls -x -1 *.txt | while read FN; do
-
-SYS=$(echo "${FN}" | egrep "^(Web|Include|Form|Default)")
-[ -n "${SYS}" ] && continue
-
-OK=$(grep ALLOWTOPICCHANGE ./${FN})
-[ -n "${OK}" ] && continue
-
-OK=$(grep PERMSET_CHANGE ./${FN})
-[ -n "${OK}" ] && continue
-
-echo "${FN}"
-
-cat DefaultPermission.txt >>"${FN}"
-
-done
-
-echo OK

+ 0 - 20
docs/wiki/fix_wiki_perm

@@ -1,20 +0,0 @@
-#!/bin/bash
-
-function fix_perm() {
-fix_dir=$1
-user=$2
-[ -z "${user}" ] && user=apache
-[ -z "${fix_dir}" ] && return
-[ "x${fix_dir}" == "x/" ] && return
-[ ! -e "${fix_dir}" ] && return
-
-echo "Fix permissions for ${fix_dir}"
-chown ${user}:${user} -R "${fix_dir}"
-find "${fix_dir}" -type d -exec chmod 770 {} \;
-find "${fix_dir}" -type f -exec chmod 660 {} \;
-echo "Done"
-}
-
-fix_perm "/var/www/foswiki/data" apache
-
-exit

+ 0 - 354
docs/wiki/foswiki/CapsManPlugin.pm

@@ -1,354 +0,0 @@
-package Foswiki::Plugins::CapsManPlugin;
-
-use utf8;
-use Net::SNMP qw(:snmp ticks_to_time TRANSLATE_NONE);
-use Net::Ping;
-
-# Always use strict to enforce variable scoping
-use strict;
-
-# $VERSION is referred to by Foswiki, and is the only global variable that
-# *must* exist in this package
-use vars qw( $VERSION $RELEASE $debug $pluginName );
-
-use Foswiki::Func    ();    # The plugins API
-use Foswiki::Plugins ();    # For the API version
-
-# This should always be $Rev: 8713$ so that Foswiki can determine the checked-in
-# status of the plugin. It is used by the build automation tools, so
-# you should leave it alone.
-$VERSION = '$Rev: 8713$';
-
-# This is a free-form string you can use to "name" your own plugin version.
-# It is *not* used by the build automation tools, but is reported as part
-# of the version number in PLUGINDESCRIPTIONS.
-$RELEASE = '1.01';
-
-# Name of this Plugin, only used in this module
-$pluginName = 'CapsManPlugin';
-
-=pod
-
----++ initPlugin($topic, $web, $user, $installWeb) -> $boolean
-   * =$topic= - the name of the topic in the current CGI query
-   * =$web= - the name of the web in the current CGI query
-   * =$user= - the login name of the user
-   * =$installWeb= - the name of the web the plugin is installed in
-
-REQUIRED
-
-Called to initialise the plugin. If everything is OK, should return
-a non-zero value. On non-fatal failure, should write a message
-using Foswiki::Func::writeWarning and return 0. In this case
-%FAILEDPLUGINS% will indicate which plugins failed.
-
-In the case of a catastrophic failure that will prevent the whole
-installation from working safely, this handler may use 'die', which
-will be trapped and reported in the browser.
-
-You may also call =Foswiki::Func::registerTagHandler= here to register
-a function to handle tags that have standard Foswiki syntax - for example,
-=%MYTAG{"my param" myarg="My Arg"}%. You can also override internal
-Foswiki tag handling functions this way, though this practice is unsupported
-and highly dangerous!
-
-=cut
-
-sub initPlugin {
-    my( $topic, $web, $user, $installWeb ) = @_;
-
-    # check for Plugins.pm versions
-    if( $Foswiki::Plugins::VERSION < 1.026 ) {
-        Foswiki::Func::writeWarning( "Version mismatch between $pluginName and Plugins.pm" );
-        return 0;
-    }
-
-    Foswiki::Func::registerTagHandler( 'CapsManINFO', \&_CapsManINFO );
-
-    # Plugin correctly initialized
-    return 1;
-}
-
-sub table_callback {
-my ($session, $OID_ifTable, $table) = @_;
-
-my $list = $session->var_bind_list();
-if (!defined $list) {
-    printf "ERROR: %s\n", $session->error();
-    return;
-    }
-
-my @names = $session->var_bind_names();
-my $next  = undef;
-
-while (@names) {
-   $next = shift @names;
-   if (!oid_base_match($OID_ifTable, $next)) {
-      return; # Table is done.
-      }
-   $table->{$next} = $list->{$next};
-}
-
-my $result = $session->get_bulk_request( -varbindlist => [ $next ], -maxrepetitions => 10, );
-if (!defined $result) { printf "ERROR: %s.\n", $session->error(); }
-return;
-}
-
-sub StrToIp{
-return unpack('N',pack('C4',split(/\./,$_[0])));
-}
-
-sub get_last_dec {
-my $oid = shift;
-if ($oid=~/\.(\d*)$/) { return $1; }
-return '';
-}
-
-sub get_first_dec {
-my $oid = shift;
-if ($oid=~/(.*)\.(\d*)$/) { return $1; }
-return $oid;
-}
-
-sub extract_dec_mac {
-my $base_oid = shift;
-my $key = shift;
-$key =~s/^$base_oid\.//;
-return $key;
-}
-
-sub mac_splitted{
-my $mac=shift;
-return if (!$mac);
-my $ch=shift || ":";
-$mac=~s/(\S{2})(\S{2})(\S{2})(\S{2})(\S{2})(\S{2})/$1:$2:$3:$4:$5:$6/g;
-if ($ch ne ":") { $mac=~s/\:/$ch/g; }
-return $mac;
-}
-
-sub dec2mac {
-my $key = shift;
-my @dec_mac = split(/\./,$key);
-my @mac=();
-for (my $i = 0; $i < scalar(@dec_mac); $i++) { $mac[$i]=sprintf("%02x",$dec_mac[$i]); }
-$key = join(':',@mac);
-return $key;
-}
-
-sub expand_status {
-my $client = shift;
-my $ret ='';
-foreach my $id (sort keys %$client) {
-        $ret.='| '.$client->{$id}->{int_name}.' | ';
-        $ret.=$client->{$id}->{SSID}.' | ';
-        $ret.=$client->{$id}->{mac}.' | ';
-        $ret.=$client->{$id}->{rx}.' dBm / '.$client->{$id}->{tx}.'dBm | ';
-        $ret.=$client->{$id}->{rxrate}.'M / '.$client->{$id}->{txrate}.'M | ';
-        $ret.=$client->{$id}->{uptime}." |\n";
-        }
-return $ret;
-};
-
-sub _CapsManINFO {
-my($session, $params, $theTopic, $theWeb) = @_;
-
-my $host = $params->{_DEFAULT} || $params->{host};
-
-### check host alive
-my $p = Net::Ping->new("tcp",1,1);
-my $ok= $p->ping($host);
-$p->close();
-if (!$ok) {  return "Ups $host is not available<BR>"; }
-
-undef($p);
-
-my $port = $params->{port} || 161;
-my $timeout = $params->{timeout} || 5;
-
-my $community = $params->{community};
-$community =  'public' if (!$community);
-
-#1 - client list
-#2 - mac list
-#3 - ssid list
-
-my $mode = $params->{mode} || '3';
-
-my $snmp_session;
-my $error;
-
-my %DefaultMibs=(
-'Description'    => '.1.3.6.1.2.1.1.1.0',
-'Uptime'         => '.1.3.6.1.2.1.1.3.0',
-'Name'           => '.1.3.6.1.2.1.1.5.0',
-);
-
-my %MikrotikCapsManMibs=(
-'ClientMac'=>'.1.3.6.1.4.1.14988.1.1.1.5.1.1',
-'ClientUptime'=>'.1.3.6.1.4.1.14988.1.1.1.5.1.3',
-'ClientTxRate'=>'.1.3.6.1.4.1.14988.1.1.1.5.1.8',
-'ClientRxRate'=>'.1.3.6.1.4.1.14988.1.1.1.5.1.9',
-'ClientTx'=>'.1.3.6.1.4.1.14988.1.1.1.5.1.10',
-'ClientRx'=>'.1.3.6.1.4.1.14988.1.1.1.5.1.11',
-'ClientSSID'=>'.1.3.6.1.4.1.14988.1.1.1.5.1.12',
-'InterfaceList'=>'.1.3.6.1.4.1.14988.1.1.14.1.1.2',
-#'APNames'=>'.1.3.6.1.4.1.14988.1.1.1.11.1.2',
-#'APStatus'=>'.1.3.6.1.4.1.14988.1.1.1.11.1.3',
-#'APAddress'=>'.1.3.6.1.4.1.14988.1.1.1.11.1.4',
-#'APRadioCount'=>'.1.3.6.1.4.1.14988.1.1.1.11.1.5',
-);
-
-### open SNMP session
-eval {
-    ($snmp_session, $error) = Net::SNMP->session(
-    -hostname  => $host,
-    -community => $community,
-    -nonblocking => 1,
-    -translate   => [-octetstring => 0],
-    -version     => 'snmpv2c',
-    );
-};
-
-return "CapsMan is not available<BR>"  if (!defined($snmp_session));
-
-$snmp_session->translate([-timeticks]);
-
-my %defaultTable;
-my $ret = $snmp_session->get_bulk_request(
-    -varbindlist    => [ '.1.3.6.1.2.1.1' ],
-    -callback       => [ \&table_callback, '.1.3.6.1.2.1.1', \%defaultTable ],
-    -maxrepetitions => 10,
-    );
-
-if (!defined $ret) {
-    $snmp_session->close();
-    return "CapsMan not answer!<BR>";
-    }
-# Now initiate the SNMP message exchange.
-snmp_dispatcher();
-
-my %CapsManTable;
-
-foreach my $key (keys %MikrotikCapsManMibs) {
-my $Mikrotik_CapsMan_mib = $MikrotikCapsManMibs{$key};
-my %table;
-my $result = $snmp_session->get_bulk_request(
-    -varbindlist    => [ $Mikrotik_CapsMan_mib ],
-    -callback       => [ \&table_callback, $Mikrotik_CapsMan_mib, \%table ],
-    -maxrepetitions => 10,
-    );
-if (!defined $result) {
-    printf "ERROR: %s\n", $snmp_session->error();
-    $snmp_session->close();
-    exit 1;
-    }
-# Now initiate the SNMP message exchange.
-snmp_dispatcher();
-$CapsManTable{$key}=\%table;
-}
-
-$snmp_session->close();
-
-my %interfaces;
-foreach my $interface_oid (keys %{$CapsManTable{InterfaceList}}) {
-$interfaces{extract_dec_mac($MikrotikCapsManMibs{InterfaceList},$interface_oid)}=$CapsManTable{InterfaceList}->{$interface_oid};
-}
-
-my $result=$defaultTable{$DefaultMibs{Name}}."\n<br>";
-$result.=$defaultTable{$DefaultMibs{Description}}."\n<br>";
-my $uptime = int($defaultTable{$DefaultMibs{Uptime}}/100);
-my $day; my $hour; my $min;
-$day = int($uptime/86400);
-$hour = int(($uptime - 86400*$day)/3600);
-$min = int (($uptime - 86400*$day - 3600*$hour)/60);
-my $s_uptime = "$day days $hour:$min";
-$result.= "$s_uptime\n<br>\n";
-
-my %client_status;
-
-my $key = 'ClientMac';
-for my $oid (oid_lex_sort(keys %{$CapsManTable{$key}})) {
-my $dec_oid = extract_dec_mac($MikrotikCapsManMibs{$key},$oid);
-my $dec_mac = get_first_dec($dec_oid);
-my $int_id = get_last_dec($dec_oid);
-$client_status{$dec_mac}->{mac}=dec2mac($dec_mac);
-$client_status{$dec_mac}->{int_id}=$int_id;
-$client_status{$dec_mac}->{int_name}=$interfaces{$int_id};
-}
-
-$key = 'ClientTxRate';
-for my $oid (oid_lex_sort(keys %{$CapsManTable{$key}})) {
-my $dec_oid = extract_dec_mac($MikrotikCapsManMibs{$key},$oid);
-my $dec_mac = get_first_dec($dec_oid);
-my $rate = $CapsManTable{$key}->{$oid};
-$client_status{$dec_mac}->{txrate}=$rate/1000000;
-}
-
-$key = 'ClientRxRate';
-for my $oid (oid_lex_sort(keys %{$CapsManTable{$key}})) {
-my $dec_oid = extract_dec_mac($MikrotikCapsManMibs{$key},$oid);
-my $dec_mac = get_first_dec($dec_oid);
-my $rate = $CapsManTable{$key}->{$oid};
-$client_status{$dec_mac}->{rxrate}=$rate/1000000;
-}
-
-$key = 'ClientTx';
-for my $oid (oid_lex_sort(keys %{$CapsManTable{$key}})) {
-my $dec_oid = extract_dec_mac($MikrotikCapsManMibs{$key},$oid);
-my $dec_mac = get_first_dec($dec_oid);
-my $rate = $CapsManTable{$key}->{$oid};
-$client_status{$dec_mac}->{tx}=$rate;
-}
-
-$key = 'ClientRx';
-for my $oid (oid_lex_sort(keys %{$CapsManTable{$key}})) {
-my $dec_oid = extract_dec_mac($MikrotikCapsManMibs{$key},$oid);
-my $dec_mac = get_first_dec($dec_oid);
-my $rate = $CapsManTable{$key}->{$oid};
-$client_status{$dec_mac}->{rx}=$rate;
-}
-
-$key = 'ClientSSID';
-for my $oid (oid_lex_sort(keys %{$CapsManTable{$key}})) {
-my $dec_oid = extract_dec_mac($MikrotikCapsManMibs{$key},$oid);
-my $dec_mac = get_first_dec($dec_oid);
-my $ssid = $CapsManTable{$key}->{$oid};
-$client_status{$dec_mac}->{SSID}=$ssid;
-}
-
-$key = 'ClientUptime';
-for my $oid (oid_lex_sort(keys %{$CapsManTable{$key}})) {
-my $dec_oid = extract_dec_mac($MikrotikCapsManMibs{$key},$oid);
-my $dec_mac = get_first_dec($dec_oid);
-my $uptime = $CapsManTable{$key}->{$oid};
-my $day; my $hour; my $min;
-$day = int($uptime/86400);
-$hour = int(($uptime - 86400*$day)/3600);
-$min = int (($uptime - 86400*$day - 3600*$hour)/60);
-my $s_uptime = "$day days $hour:$min";
-$client_status{$dec_mac}->{uptime}=$s_uptime;
-}
-
-my %CapsMan_status;
-my $all_clients=0;
-foreach my $dec_mac (sort keys %client_status) {
-my $ssid = $client_status{$dec_mac}->{SSID};
-if (!exists($CapsMan_status{$ssid})) { $CapsMan_status{$ssid}{count}=0; }
-$CapsMan_status{$ssid}{count}++;
-$all_clients++;
-}
-
-$result.="\n<br>Wireless counters:\n<br>\n";
-$result.="| *SSID* | *Count* |\n";
-foreach my $ssid (sort keys %CapsMan_status) {
-$result.= "| $ssid | $CapsMan_status{$ssid}{count} |\n";
-}
-$result.= "\n<br>Total: $all_clients\n<br>\n";
-$result.= "| *Interface* | *SSID* | *Client* | *Rx/Tx* | *Bitr* | *Uptime* |\n";
-
-$result.=expand_status(\%client_status);
-
-return $result;
-}
-
-1;

+ 0 - 166
docs/wiki/foswiki/ShowStatPlugin.pm

@@ -1,166 +0,0 @@
-package Foswiki::Plugins::ShowStatPlugin;
-
-# Always use strict to enforce variable scoping
-use strict;
-
-use utf8;
-use DBI;
-use Data::Dumper;
-
-# $VERSION is referred to by Foswiki, and is the only global variable that
-# *must* exist in this package
-use vars qw( $VERSION $RELEASE $debug $dbstat $dbrstat $dbcacti $pluginName );
-
-use Foswiki::Func    ();    # The plugins API
-use Foswiki::Plugins ();    # For the API version
-
-# This should always be $Rev: 8713$ so that Foswiki can determine the checked-in
-# status of the plugin. It is used by the build automation tools, so
-# you should leave it alone.
-$VERSION = '$Rev: 8713$';
-
-# This is a free-form string you can use to "name" your own plugin version.
-# It is *not* used by the build automation tools, but is reported as part
-# of the version number in PLUGINDESCRIPTIONS.
-$RELEASE = '1.01';
-
-# Name of this Plugin, only used in this module
-$pluginName = 'ShowStatPlugin';
-
-=pod
-
----++ initPlugin($topic, $web, $user, $installWeb) -> $boolean
-   * =$topic= - the name of the topic in the current CGI query
-   * =$web= - the name of the web in the current CGI query
-   * =$user= - the login name of the user
-   * =$installWeb= - the name of the web the plugin is installed in
-
-REQUIRED
-
-Called to initialise the plugin. If everything is OK, should return
-a non-zero value. On non-fatal failure, should write a message
-using Foswiki::Func::writeWarning and return 0. In this case
-%FAILEDPLUGINS% will indicate which plugins failed.
-
-In the case of a catastrophic failure that will prevent the whole
-installation from working safely, this handler may use 'die', which
-will be trapped and reported in the browser.
-
-You may also call =Foswiki::Func::registerTagHandler= here to register
-a function to handle tags that have standard Foswiki syntax - for example,
-=%MYTAG{"my param" myarg="My Arg"}%. You can also override internal
-Foswiki tag handling functions this way, though this practice is unsupported
-and highly dangerous!
-
-=cut
-
-sub initPlugin {
-    my( $topic, $web ) = @_;
-
-    # check for Plugins.pm versions
-    if( $Foswiki::Plugins::VERSION < 1.026 ) {
-        Foswiki::Func::writeWarning( "Version mismatch between $pluginName and Plugins.pm" );
-        return 0;
-        }
-
-    return 0 unless $Foswiki::cfg{Plugins}{DatabasePlugin}{ConfigSource};
-    if ( $Foswiki::cfg{Plugins}{DatabasePlugin}{ConfigSource} eq 'Local' ) {
-        foreach  my $info ( @{ $Foswiki::cfg{Plugins}{DatabasePlugin}{Databases} } ) {
-            if ($info->{description} eq "stat") { $dbstat = $info; next; }
-            if ($info->{description} eq "rstat") { $dbrstat = $info; next; }
-            if ($info->{description} eq "cacti") { $dbcacti = $info; next; }
-            }
-      }
-
-    return 0 if (!$dbstat or !$dbrstat);
-
-    # register the _EXAMPLETAG function to handle %EXAMPLETAG{...}%
-    Foswiki::Func::registerTagHandler( 'SHOWSTAT', \&_ShowStat );
-
-    # Plugin correctly initialized
-    return 1;
-}
-
-sub StrToIp{
-return unpack('N',pack('C4',split(/\./,$_[0])));
-}
-
-sub _ShowStat {
-my($session, $params, $theTopic, $theWeb) = @_;
-
-### parameters
-my $host = $params->{_DEFAULT} || $params->{host};
-
-return "" if (!$host);
-
-my $host_aton=StrToIp($host);
-
-#wait for statsync
-sleep(2);
-
-my $connect_options = "dbi:$dbstat->{driver}:database=$dbstat->{database};host=$dbstat->{hostname}";
-my $connect_user = "$dbstat->{username}";
-my $connect_password = "$dbstat->{password}";
-
-if ($theWeb=~/Internet/) {
-    $connect_options = "dbi:$dbrstat->{driver}:database=$dbrstat->{database};host=$dbrstat->{hostname}";
-    $connect_user = "$dbrstat->{username}";
-    $connect_password = "$dbrstat->{password}";
-    }
-
-my $dbh = DBI->connect($connect_options,$connect_user,$connect_password);
-
-my $SQL = "SELECT A.id, A.ip, A.mac, L.login, A.nagios, A.dhcp_hostname, A.enabled, G.group_name, Q.queue_name,
-A.last_found, A.comments FROM User_auth as A, User_list as L, Group_list as G, Queue_list As Q
-WHERE A.user_id = L.id and A.filter_group_id = G.id and Q.id = A.queue_id AND A.deleted =0 and A.ip_int=".$host_aton." LIMIT 1";
-
-my $status = '';
-eval {
-if ( !defined $dbh ) { return "Cannot connect to mySQL server: $DBI::errstr\n"; }
-$dbh->do('SET NAMES utf8mb4');
-$dbh->{'mysql_enable_utf8'} = 1;
-my $sth = $dbh->prepare($SQL);
-$sth->execute;
-my $res = $sth->fetchrow_hashref();
-if ($res) {
-
-    my $cSQL = "SELECT * FROM `config` WHERE option_id=";
-    my $sth1 = $dbh->prepare($cSQL."57");
-    $sth1->execute;
-    my $nagios_row = $sth1->fetchrow_hashref();
-    my $nagios_url;
-    if ($nagios_row) { $nagios_url = $nagios_row->{value}."/cgi-bin/status.cgi?navbarsearch=1&host=".$host; }
-
-    $sth1 = $dbh->prepare($cSQL."62");
-    $sth1->execute;
-    my $stat_row = $sth1->fetchrow_hashref();
-    my $stat_url;
-    if ($stat_row) { $stat_url = $stat_row->{value}."/admin/users/editauth.php?id=".$res->{id}; }
-
-    $status ='<div style="float: right; width: 200px;">';
-    $status.='%BLUE%STAT:%ENDCOLOR%<br>';
-    $status.='id: '.$res->{id}.'<br>';
-    if ($stat_url) {
-        $status.='Login: <a href="'.$stat_url.'">'.$res->{login}.'</a><br>';
-        } else { $status.='Login: '.$res->{login}.'<br>'; }
-    if ($res->{enabled}) { $status.='Включен: Да<br>'; } else { $status.='Включен: Нет<br>'; }
-    if ($res->{nagios}) {
-        if ($nagios_url) {
-            $status.='Nagios: <a href="'.$nagios_url.'">Да</a><br>';
-            } else { $status.='Nagios: Да<br>'; }
-        } else { $status.='Nagios: Нет<br>'; }
-    $status.='Dhcp hostname: '.$res->{dhcp_hostname}.'<br>' if ($res->{dhcp_hostname});
-    $status.='Фильтр: '.$res->{group_name}.'<br>';
-    $status.='Шейпер: '.$res->{queue_name}.'<br>';
-    $status.='Комментарий: '.$res->{comments}.'<br>';
-    $status.='last found: '.$res->{last_found}.'<br>' if ($res->{last_found});
-    $status.='</div>';
-    $status.='</div>';
-    $status.='<div style="clear: left;"><p></p></div>';
-    }
-};
-if ($@) { return "DBI error: $@"; }
-return $status;
-}
-
-1;

+ 0 - 252
docs/wiki/foswiki/StatSyncPlugin.pm

@@ -1,252 +0,0 @@
-package Foswiki::Plugins::StatSyncPlugin;
-
-# Always use strict to enforce variable scoping
-use strict;
-use utf8;
-
-use DBI;
-use Data::Dumper;
-
-# $VERSION is referred to by Foswiki, and is the only global variable that
-# *must* exist in this package
-use vars qw( $VERSION $RELEASE $debug $dbstat $dbrstat $wiki_user $pluginName );
-
-use Foswiki::Func    ();    # The plugins API
-use Foswiki::Plugins ();    # For the API version
-
-# This should always be $Rev: 8713$ so that Foswiki can determine the checked-in
-# status of the plugin. It is used by the build automation tools, so
-# you should leave it alone.
-$VERSION = '$Rev: 8713$';
-
-# This is a free-form string you can use to "name" your own plugin version.
-# It is *not* used by the build automation tools, but is reported as part
-# of the version number in PLUGINDESCRIPTIONS.
-$RELEASE = '1.01';
-
-# Name of this Plugin, only used in this module
-$pluginName = 'StatSyncPlugin';
-
-=pod
-
----++ initPlugin($topic, $web, $user, $installWeb) -> $boolean
-   * =$topic= - the name of the topic in the current CGI query
-   * =$web= - the name of the web in the current CGI query
-   * =$user= - the login name of the user
-   * =$installWeb= - the name of the web the plugin is installed in
-
-REQUIRED
-
-Called to initialise the plugin. If everything is OK, should return
-a non-zero value. On non-fatal failure, should write a message
-using Foswiki::Func::writeWarning and return 0. In this case
-%FAILEDPLUGINS% will indicate which plugins failed.
-
-In the case of a catastrophic failure that will prevent the whole
-installation from working safely, this handler may use 'die', which
-will be trapped and reported in the browser.
-
-You may also call =Foswiki::Func::registerTagHandler= here to register
-a function to handle tags that have standard Foswiki syntax - for example,
-=%MYTAG{"my param" myarg="My Arg"}%. You can also override internal
-Foswiki tag handling functions this way, though this practice is unsupported
-and highly dangerous!
-
-=cut
-
-sub initPlugin {
-    my( $topic, $web, $user ) = @_;
-
-    $wiki_user = "wiki: ".$user;
-
-    # check for Plugins.pm versions
-    if( $Foswiki::Plugins::VERSION < 1.026 ) {
-        Foswiki::Func::writeWarning( "Version mismatch between $pluginName and Plugins.pm" );
-        return 0;
-        }
-
-    return 0 unless $Foswiki::cfg{Plugins}{DatabasePlugin}{ConfigSource};
-    if ( $Foswiki::cfg{Plugins}{DatabasePlugin}{ConfigSource} eq 'Local' ) {
-        foreach  my $info ( @{ $Foswiki::cfg{Plugins}{DatabasePlugin}{Databases} } ) {
-#            next if ($info->{description} ne "stat");
-#            $dbstat = $info;
-#            last;
-            if ($info->{description} eq "stat") { $dbstat = $info; next; }
-            if ($info->{description} eq "rstat") { $dbrstat = $info; next; }
-            }
-      }
-
-    return 0 if (!$dbstat or !$dbrstat);
-
-    # register the _EXAMPLETAG function to handle %EXAMPLETAG{...}%
-    Foswiki::Func::registerTagHandler( 'STATSYNC', \&_STATSYNC );
-
-    # Plugin correctly initialized
-    return 1;
-}
-
-#---------------------------------------------------------------------------------------------------------------
-
-sub GetNowTime {
-my ($sec,$min,$hour,$day,$month,$year,$zone) = localtime(time());
-$month += 1;
-$year += 1900;
-my $now_str=sprintf "%04d-%02d-%02d %02d:%02d:%02d",$year,$month,$day,$hour,$min,$sec;
-return $now_str;
-}
-
-#---------------------------------------------------------------------------------------------------------------
-
-sub StrToIp{
-return unpack('N',pack('C4',split(/\./,$_[0])));
-}
-
-#---------------------------------------------------------------------------------------------------------------
-
-sub write_db_log {
-my $dbh=shift;
-my $msg=shift;
-return if (!$dbh);
-return if (!$msg);
-$msg=~s/[\'\"]//g;
-if (!$wiki_user) { $wiki_user = 'wiki'; }
-my $history_sql="INSERT INTO syslog(customer,message,level,auth_id) VALUES('".$wiki_user."',".$dbh->quote($msg).",3,0)";
-my $history_rf=$dbh->prepare($history_sql);
-$history_rf->execute;
-}
-
-#---------------------------------------------------------------------------------------------------------------
-
-sub do_sql {
-my $dbh=shift;
-my $sql=shift;
-return if (!$dbh);
-return if (!$sql);
-my $sql_prep = $dbh->prepare($sql);
-my $sql_ref;
-if ( !defined $sql_prep ) { die "Cannot prepare statement: $DBI::errstr\n"; }
-$sql_prep->execute;
-if ($sql!~/^select /i) {  write_db_log($dbh,$sql); }
-if ($sql=~/^insert/i) { $sql_ref = $sql_prep->{mysql_insertid}; }
-if ($sql=~/^select /i) { $sql_ref = $sql_prep->fetchall_arrayref(); };
-$sql_prep->finish();
-return $sql_ref;
-}
-
-#---------------------------------------------------------------------------------------------------------------
-
-sub get_record_sql {
-my $dbh = shift;
-my $tsql = shift;
-my @result;
-return @result if (!$dbh);
-return @result if (!$tsql);
-my $list = $dbh->prepare( $tsql . ' LIMIT 1' );
-if ( !defined $list ) { die "Cannot prepare statement: $DBI::errstr\n"; }
-$list->execute;
-my $row_ref = $list ->fetchrow_hashref;
-$list->finish();
-return $row_ref;
-}
-
-#---------------------------------------------------------------------------------------------------------------
-
-sub update_record {
-my $dbh = shift;
-my $table = shift;
-my $record = shift;
-my $filter = shift;
-return if (!$dbh);
-return if (!$table);
-return if (!$filter);
-my $old_record = get_record_sql($dbh,"SELECT * FROM $table WHERE $filter");
-my $diff='';
-my $change_str='';
-my $found_changed=0;
-my $auth_id = 0;
-
-foreach my $field (keys %$record) {
-    if (!defined $record->{$field}) { $record->{$field}=''; }
-    if (!defined $old_record->{$field}) { $old_record->{$field}=''; }
-    my $old_value = quotemeta($old_record->{$field});
-    my $new_value = $record->{$field};
-    $new_value=~s/\'//g;
-    $new_value=~s/\"//g;
-    if ($new_value!~/^$old_value$/) {
-        $diff = $diff." $field => $record->{$field} (old: $old_record->{$field}),";
-        $change_str = $change_str." `$field`=".$dbh->quote($record->{$field}).",";
-        $found_changed++;
-        }
-}
-
-if ($found_changed) {
-    $change_str=~s/\,$//;
-    $diff=~s/\,$//;
-    if ($table eq 'User_auth') { $change_str .= ", `changed_time`='".GetNowTime()."'"; }
-    my $sSQL = "UPDATE $table SET $change_str WHERE $filter";
-    do_sql($dbh,$sSQL);
-    }
-}
-
-sub _STATSYNC {
-my($session, $params, $theTopic, $theWeb) = @_;
-
-### parameters
-my $host = $params->{_DEFAULT} || $params->{host};
-my $dnsname = $params->{dnsname};
-my $comment = $params->{comment};
-my $wikiname = $params->{wikiname};
-
-#my $result="Runned: $host $dnsname $comment $wikiname<br>";
-
-my $result="";
-
-return $result if (!$host);
-
-my $host_aton=StrToIp($host);
-my $SQL = "SELECT * FROM User_auth WHERE ip_int=".$host_aton." and deleted=0 LIMIT 1";
-
-my $connect_options = "dbi:$dbstat->{driver}:database=$dbstat->{database};host=$dbstat->{hostname}";
-my $connect_user = "$dbstat->{username}";
-my $connect_password = "$dbstat->{password}";
-
-if ($theWeb=~/Internet/) {
-    $connect_options = "dbi:$dbrstat->{driver}:database=$dbrstat->{database};host=$dbrstat->{hostname}";
-    $connect_user = "$dbrstat->{username}";
-    $connect_password = "$dbrstat->{password}";
-    }
-
-my $dbh = DBI->connect($connect_options,$connect_user,$connect_password);
-
-eval {
-if ( !defined $dbh ) { return "Cannot connect to mySQL server: $DBI::errstr\n"; }
-$dbh->do('SET NAMES utf8mb4');
-$dbh->{'mysql_enable_utf8'} = 1;
-
-my $sth = $dbh->prepare($SQL);
-$sth->execute;
-my $res = $sth->fetchrow_hashref();
-
-if ($res) {
-    if ($dnsname and $res->{dns_name} ne $dnsname) {
-        my $new_record;
-        $new_record->{dns_name} = $dnsname;
-        update_record($dbh,"User_auth",$new_record,"id=".$res->{id});
-        }
-    if ($comment and $res->{comments} ne $comment) {
-        my $new_record;
-        $new_record->{comments} = $comment;
-        update_record($dbh,"User_auth",$new_record,"id=".$res->{id});
-        }
-    if ($wikiname and $res->{WikiName} ne $wikiname) {
-        my $new_record;
-        $new_record->{WikiName} = $wikiname;
-        update_record($dbh,"User_auth",$new_record,"id=".$res->{id});
-        }
-    }
-};
-if ($@) { return "DBI error: $@"; }
-return $result;
-}
-
-1;

+ 0 - 384
docs/wiki/foswiki/SwitchInfoPlugin.pm

@@ -1,384 +0,0 @@
-package Foswiki::Plugins::SwitchInfoPlugin;
-
-use Net::SNMP qw(:snmp ticks_to_time TRANSLATE_NONE);
-use Net::Ping;
-
-# Always use strict to enforce variable scoping
-use strict;
-
-# $VERSION is referred to by Foswiki, and is the only global variable that
-# *must* exist in this package
-use vars qw( $VERSION $RELEASE $debug $pluginName );
-
-use Foswiki::Func    ();    # The plugins API
-use Foswiki::Plugins ();    # For the API version
-
-# This should always be $Rev: 8713$ so that Foswiki can determine the checked-in
-# status of the plugin. It is used by the build automation tools, so
-# you should leave it alone.
-$VERSION = '$Rev: 8713$';
-
-# This is a free-form string you can use to "name" your own plugin version.
-# It is *not* used by the build automation tools, but is reported as part
-# of the version number in PLUGINDESCRIPTIONS.
-$RELEASE = '1.01';
-
-# Name of this Plugin, only used in this module
-$pluginName = 'SwitchInfoPlugin';
-
-=pod
-
----++ initPlugin($topic, $web, $user, $installWeb) -> $boolean
-   * =$topic= - the name of the topic in the current CGI query
-   * =$web= - the name of the web in the current CGI query
-   * =$user= - the login name of the user
-   * =$installWeb= - the name of the web the plugin is installed in
-
-REQUIRED
-
-Called to initialise the plugin. If everything is OK, should return
-a non-zero value. On non-fatal failure, should write a message
-using Foswiki::Func::writeWarning and return 0. In this case
-%FAILEDPLUGINS% will indicate which plugins failed.
-
-In the case of a catastrophic failure that will prevent the whole
-installation from working safely, this handler may use 'die', which
-will be trapped and reported in the browser.
-
-You may also call =Foswiki::Func::registerTagHandler= here to register
-a function to handle tags that have standard Foswiki syntax - for example,
-=%MYTAG{"my param" myarg="My Arg"}%. You can also override internal
-Foswiki tag handling functions this way, though this practice is unsupported
-and highly dangerous!
-
-=cut
-
-sub initPlugin {
-    my( $topic, $web ) = @_;
-
-    # check for Plugins.pm versions
-    if( $Foswiki::Plugins::VERSION < 1.026 ) {
-        Foswiki::Func::writeWarning( "Version mismatch between $pluginName and Plugins.pm" );
-        return 0;
-    }
-
-    # register the _EXAMPLETAG function to handle %EXAMPLETAG{...}%
-    Foswiki::Func::registerTagHandler( 'SWITCHINFO', \&_SWITCHINFO );
-
-    # Plugin correctly initialized
-    return 1;
-}
-
-sub extract_last_digit {
-my $base_oid = shift;
-my $key = shift;
-$key =~s/^$base_oid\.//;
-return $key;
-}
-
-sub expand_status {
-my ($device) = @_;
-my $ret ='';
-
-my %ifOperStatus =  (
-'1','up',
-'2','down',
-'3','testing',
-'4','unknown',
-'5','dormant',
-'6','notPresent',
-'7','lowerLayerDown'
-);
-
-foreach my $port (sort {$a <=> $b} keys %$device) {
-    next if (!$port);
-    next if (!$device->{$port}->{Index});
-    if (!$device->{$port}->{Alias}) { $device->{$port}->{Alias}=''; }
-    if (!$device->{$port}->{Descr}) { $device->{$port}->{Descr}=''; }
-    if (!$device->{$port}->{AdminStatus}) { $device->{$port}->{AdminStatus}=''; }
-    if (exists $ifOperStatus{$device->{$port}->{AdminStatus}}) { $device->{$port}->{AdminStatus} = $ifOperStatus{$device->{$port}->{AdminStatus}}; }
-    if (!$device->{$port}->{OperStatus}) { $device->{$port}->{OperStatus}=''; }
-    if (exists $ifOperStatus{$device->{$port}->{OperStatus}}) { $device->{$port}->{OperStatus} = $ifOperStatus{$device->{$port}->{OperStatus}}; }
-    if (!$device->{$port}->{Speed}) { $device->{$port}->{Speed}=0; } else {
-	my $speed = $device->{$port}->{Speed};
-	if ($speed eq '10000000') { $device->{$port}->{Speed}='10M'; }
-	if ($speed eq '100000000') { $device->{$port}->{Speed}='100M'; }
-	if ($speed eq '1000000000') { $device->{$port}->{Speed}='1G'; }
-	if ($speed eq '10000000000') { $device->{$port}->{Speed}='10G'; }
-	if ($speed eq '4294967295') { $device->{$port}->{Speed}='10G'; }
-	}
-    if ($device->{$port}->{LastChange} and $device->{$port}->{LastChange}>0 ) {
-	my $day; my $hour; my $min;
-	my $value = int($device->{$port}->{LastChange}/100);
-	$day = int($value/86400);
-	$hour = int(($value - 86400*$day)/3600);
-	$min = int (($value - 86400*$day - 3600*$hour)/60);
-	$device->{$port}->{LastChange} = "$day days $hour:$min";
-	}
-    if (!$device->{$port}->{LastChange}) { $device->{$port}->{LastChange}=''; }
-    if (!$device->{$port}->{Vlan}) { $device->{$port}->{Vlan}='1'; }
-    if (!$device->{$port}->{POE}) { $device->{$port}->{POE}=''; }
-    if (!$device->{$port}->{SFP}) { $device->{$port}->{SFP}=''; }
-    $ret.='| '.$port.' | ';
-    $ret.=$device->{$port}->{Index}.' | ';
-    $ret.=$device->{$port}->{Alias}.' | ';
-    $ret.=$device->{$port}->{Descr}.' | ';
-    $ret.=$device->{$port}->{AdminStatus}.' | ';
-    $ret.=$device->{$port}->{OperStatus}.' | ';
-    $ret.=$device->{$port}->{Speed}.' | ';
-    $ret.=$device->{$port}->{LastChange}.' | ';
-    $ret.=$device->{$port}->{Vlan}.' | ';
-    $ret.=$device->{$port}->{POE}.' | ';
-    $ret.=$device->{$port}->{SFP}." |\n";
-    }
-return $ret;
-};
-
-##########################################################
-
-sub table_callback {
-my ($session, $OID_ifTable, $table) = @_;
-
-my $list = $session->var_bind_list();
-if (!defined $list) {
-    printf "ERROR: %s\n", $session->error();
-    return;
-    }
-
-my @names = $session->var_bind_names();
-my $next  = undef;
-
-while (@names) {
-  $next = shift @names;
-  if (!oid_base_match($OID_ifTable, $next)) { return; }
-  $table->{$next} = $list->{$next};
-}
-
-my $result = $session->get_bulk_request( -varbindlist => [ $next ], -maxrepetitions => 10, );
-if (!defined $result) { printf "ERROR: %s.\n", $session->error(); }
-return;
-}
-
-###########################################################
-
-sub _SWITCHINFO {
-my($session, $params, $theTopic, $theWeb) = @_;
-
-### parameters
-my $vendor = $params->{vendor} || '';
-my $host = $params->{_DEFAULT} || $params->{host};
-
-### check host alive
-my $p = Net::Ping->new("tcp",1,1);
-my $ok= $p->ping($host);
-$p->close();
-
-if (!$ok) { return "Switch is not available<BR>"; }
-undef($p);
-
-my $port = $params->{port} || 161;
-my $timeout = $params->{timeout} || 5;
-my $community = $params->{community};
-if (!$community) { $community =  'public'; }
-
-my %bridgeOIDS=(
-    'Index'      =>'.1.3.6.1.2.1.31.1.1.1.1',
-    'Alias'      =>'.1.3.6.1.2.1.31.1.1.1.18',
-    'Descr'      =>'.1.3.6.1.2.1.2.2.1.2',
-    'Speed'      =>'.1.3.6.1.2.1.2.2.1.5',
-    'AdminStatus'=>'.1.3.6.1.2.1.2.2.1.7',
-    'OperStatus' =>'.1.3.6.1.2.1.2.2.1.8',
-    'LastChange' =>'.1.3.6.1.2.1.2.2.1.9',
-    'Vlan'       =>'.1.3.6.1.2.1.17.7.1.4.5.1.1',
-    'PoeAdmin'   =>'.1.3.6.1.2.1.105.1.1.1.3.1',
-    );
-
-my %VendorOIDS = (
-	"Mikrotik" => {
-	    "Default"=> {
-	        PoeAdmin   =>'.1.3.6.1.4.1.14988.1.1.15.1.1.3',
-#		PoeInt     =>'.1.3.6.1.4.1.14988.1.1.15.1.1.1',
-#		PoeIntName =>'.1.3.6.1.4.1.14988.1.1.15.1.1.2',
-		PoeVolt    =>'.1.3.6.1.4.1.14988.1.1.15.1.1.4',
-		PoeCurrent =>'.1.3.6.1.4.1.14988.1.1.15.1.1.5',
-		PoePower   =>'.1.3.6.1.4.1.14988.1.1.15.1.1.6',
-		},
-	    },
-	"Eltex"  => {
-	    "Default" => {
-		PoePower   =>'.1.3.6.1.4.1.89.108.1.1.5.1',
-		PoeCurrent =>'.1.3.6.1.4.1.89.108.1.1.4.1',
-		PoeVolt    =>'.1.3.6.1.4.1.89.108.1.1.3.1',
-		SfpStatus  =>'.1.3.6.1.4.1.89.90.1.2.1.3',
-		SfpVendor  =>'.1.3.6.1.4.1.35265.1.23.53.1.1.1.5',
-		SfpSN      =>'.1.3.6.1.4.1.35265.1.23.53.1.1.1.6',
-		SfpFreq    =>'.1.3.6.1.4.1.35265.1.23.53.1.1.1.4',
-		SfpLength  =>'.1.3.6.1.4.1.35265.1.23.53.1.1.1.8',
-		},
-	    },
-	"Huawei" => {
-	    "Default"=> {
-		PoeAdmin   =>'.1.3.6.1.4.1.2011.5.25.195.3.1.3',
-		PoePower   =>'.1.3.6.1.4.1.2011.5.25.195.3.1.10',
-		PoeCurrent =>'.1.3.6.1.4.1.4526.11.15.1.1.1.3.1',
-		PoeVolt    =>'.1.3.6.1.4.1.2011.5.25.195.3.1.14',
-		SfpVendor  =>'.1.3.6.1.4.1.2011.5.25.31.1.1.2.1.11',
-		SfpSpeed   =>'.1.3.6.1.4.1.2011.5.25.31.1.1.2.1.2',
-		SfpVolt    =>'.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.6',
-		SfpOptRx   =>'.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.32',
-		SfpOptTx   =>'.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.33',
-		SfpCurrent =>'.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.31',
-		SfpRx      =>'.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.8',
-		SfpTx      =>'.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.9',
-		},
-	    },
-	"Allied Telesis" => {
-	    "Default" => {
-		PoePower  =>'.1.3.6.1.4.1.89.108.1.1.5.1',
-		PoeCurrent=>'.1.3.6.1.4.1.89.108.1.1.4.1',
-		PoeVolt   =>'.1.3.6.1.4.1.89.108.1.1.3.1',
-		},
-	    },
-	"NetGear" => {
-	    "Deafult" =>{
-		PoeAdmin   =>'.1.3.6.1.4.1.4526.11.15.1.1.1.6.1',
-		PoePower   =>'.1.3.6.1.4.1.4526.11.15.1.1.1.2.1',
-		PoeCurrent =>'.1.3.6.1.4.1.4526.11.15.1.1.1.3.1',
-		PoeVolt    =>'.1.3.6.1.4.1.4526.11.15.1.1.1.4.1',
-		},
-	    },
-	"HP" => {
-	    "Default" => {
-		PoePower   =>'.1.3.6.1.4.1.25506.2.14.1.1.4.1',
-		PoeVolt    =>'.1.3.6.1.4.1.25506.2.14.1.1.3.1',
-		},
-	    },
-    );
-
-my %DefaultMibs=(
-'Description'    => '.1.3.6.1.2.1.1.1.0',
-'Uptime'         => '.1.3.6.1.2.1.1.3.0',
-'Name'           => '.1.3.6.1.2.1.1.5.0',
-);
-
-my $snmp_session;
-my $error;
-
-### open SNMP session
-eval {
-    ($snmp_session, $error) = Net::SNMP->session(
-    -hostname  => $host,
-    -community => $community,
-    -nonblocking => 1,
-    -translate   => [-octetstring => 0],
-    -version     => 'snmpv2c',
-    );
-};
-
-if (!defined($snmp_session)) { return "Switch is not available<BR>"; }
-$snmp_session->translate([-timeticks]);
-
-my %defaultTable;
-my $ret = $snmp_session->get_bulk_request(
-    -varbindlist    => [ '.1.3.6.1.2.1.1' ],
-    -callback       => [ \&table_callback, '.1.3.6.1.2.1.1', \%defaultTable ],
-    -maxrepetitions => 10,
-    );
-if (!defined $ret) {
-    $snmp_session->close();
-    return "Wlc not answer!<BR>";
-    }
-# Now initiate the SNMP message exchange.
-snmp_dispatcher();
-
-my %switchTable;
-foreach my $key (keys %bridgeOIDS) {
-my $bridge_mib = $bridgeOIDS{$key};
-my %table;
-my $result = $snmp_session->get_bulk_request(
-    -varbindlist    => [ $bridge_mib ],
-    -callback       => [ \&table_callback, $bridge_mib, \%table ],
-    -maxrepetitions => 10,
-    );
-if (!defined $result) {
-    printf "ERROR: %s\n", $snmp_session->error();
-    $snmp_session->close();
-    exit 1;
-    }
-# Now initiate the SNMP message exchange.
-snmp_dispatcher();
-$switchTable{$key}=\%table;
-}
-
-my %switch_status;
-
-my $poe_found;
-
-my @keys = (keys %bridgeOIDS);
-for (my $index=0; $index<scalar(@keys); $index++)  {
-    my $key = $keys[$index];
-    for my $oid (oid_lex_sort(keys %{$switchTable{$key}})) {
-    next if (!$oid);
-    my $num = extract_last_digit($bridgeOIDS{$key},$oid);
-    my $value = $switchTable{$key}->{$oid};
-    next if ($key ne "Index" and !exists $switch_status{$num}->{num});
-    if ($key eq "Index") {
-	next if ($value=~/^enet0/i);
-	next if ($value=~/^po(\d)/i);
-	next if ($value=~/^lo/);
-	next if ($value=~/^IP/);
-	next if ($value=~/^Vlan/i);
-	next if ($value=~/^Null/i);
-	next if ($value=~/^loop/i);
-	next if ($value=~/^console/i);
-	next if ($value=~/^tunnel/i);
-	next if ($value=~/^MEth/);
-	next if ($value=~/^bridge/i);
-	next if ($value=~/^ppp/i);
-	next if ($value=~/^rtif\(/i);
-	
-        $switch_status{$num}->{num}=$value;
-	}
-    $switch_status{$num}->{$key}=$value;
-    }
-}
-
-#my %ext_walk = %{$VendorOIDS{$vendor}{Default}};
-#foreach my $key (keys %ext_walk) {
-#my $bridge_mib = $ext_walk{$key};
-#my %table;
-#my $result = $snmp_session->get_bulk_request(
-#	-varbindlist    => [ $bridge_mib ],
-#        -callback       => [ \&table_callback, $bridge_mib, \%table ],
-#	-maxrepetitions => 10,
-#        );
-#if (!defined $result) {
-#	printf "ERROR: %s\n", $snmp_session->error();
-#        $snmp_session->close();
-#	exit 1;
-#        }
-## Now initiate the SNMP message exchange.
-#snmp_dispatcher();
-#$switchTable{$key}=\%table;
-#}
-
-$snmp_session->close();
-
-my $result=$defaultTable{$DefaultMibs{Name}}."\n<br>";
-$result.=$defaultTable{$DefaultMibs{Description}}."\n<br>";
-my $uptime = int($defaultTable{$DefaultMibs{Uptime}}/100);
-my $day; my $hour; my $min;
-$day = int($uptime/86400);
-$hour = int(($uptime - 86400*$day)/3600);
-$min = int (($uptime - 86400*$day - 3600*$hour)/60);
-my $s_uptime = "$day days $hour:$min";
-$result.= "$s_uptime\n<br>\n";
-
-$result.= "| *Index* | *Port* | *Alias* | *Description* | *Admin state* | *Oper state* | *Speed* | *Last change* | *Vlan* | *Poe* | *Sfp* |\n";
-
-$result.=expand_status(\%switch_status);
-
-return $result;
-}
-
-1;

+ 0 - 319
docs/wiki/foswiki/UpsInfoPlugin.pm

@@ -1,319 +0,0 @@
-package Foswiki::Plugins::UpsInfoPlugin;
-
-use Net::SNMP;
-use Net::Ping;
-
-# Always use strict to enforce variable scoping
-use strict;
-
-# $VERSION is referred to by Foswiki, and is the only global variable that
-# *must* exist in this package
-use vars qw( $VERSION $RELEASE $debug $pluginName );
-
-use Foswiki::Func    ();    # The plugins API
-use Foswiki::Plugins ();    # For the API version
-
-# This should always be $Rev: 8713$ so that Foswiki can determine the checked-in
-# status of the plugin. It is used by the build automation tools, so
-# you should leave it alone.
-$VERSION = '$Rev: 8713$';
-
-# This is a free-form string you can use to "name" your own plugin version.
-# It is *not* used by the build automation tools, but is reported as part
-# of the version number in PLUGINDESCRIPTIONS.
-$RELEASE = '1.01';
-
-# Name of this Plugin, only used in this module
-$pluginName = 'UpsInfoPlugin';
-
-=pod
-
----++ initPlugin($topic, $web, $user, $installWeb) -> $boolean
-   * =$topic= - the name of the topic in the current CGI query
-   * =$web= - the name of the web in the current CGI query
-   * =$user= - the login name of the user
-   * =$installWeb= - the name of the web the plugin is installed in
-
-REQUIRED
-
-Called to initialise the plugin. If everything is OK, should return
-a non-zero value. On non-fatal failure, should write a message
-using Foswiki::Func::writeWarning and return 0. In this case
-%FAILEDPLUGINS% will indicate which plugins failed.
-
-In the case of a catastrophic failure that will prevent the whole
-installation from working safely, this handler may use 'die', which
-will be trapped and reported in the browser.
-
-You may also call =Foswiki::Func::registerTagHandler= here to register
-a function to handle tags that have standard Foswiki syntax - for example,
-=%MYTAG{"my param" myarg="My Arg"}%. You can also override internal
-Foswiki tag handling functions this way, though this practice is unsupported
-and highly dangerous!
-
-=cut
-
-sub initPlugin {
-    my( $topic, $web, $user, $installWeb ) = @_;
-
-    # check for Plugins.pm versions
-    if( $Foswiki::Plugins::VERSION < 1.026 ) {
-        Foswiki::Func::writeWarning( "Version mismatch between $pluginName and Plugins.pm" );
-        return 0;
-    }
-
-    Foswiki::Func::registerTagHandler( 'UpsINFO', \&_UpsINFO );
-
-    # Plugin correctly initialized
-    return 1;
-}
-
-sub GetSNMPkeyValue {
-my $session = shift;
-my $key = shift;
-my $value;
-eval {
-my $ret = $session->get_request( -varbindlist => [$key] );
-if (!$ret) {
-    #search in subtree
-    $ret = $session->get_next_request( -varbindlist => [$key] );
-    my $branch = $key.'.*';
-    my @keys_next = keys %$ret;
-    my $get_key = $keys_next[0];
-    if ($get_key=~/^$branch$/) { $value = $ret->{$get_key}; }
-    } else { $value = $ret->{$key}; }
-};
-return $value;
-};
-
-sub _UpsINFO {
-    my($session, $params, $theTopic, $theWeb) = @_;
-    # $session  - a reference to the Foswiki session object (if you don't know
-    #             what this is, just ignore it)
-    # $params=  - a reference to a Foswiki::Attrs object containing parameters.
-    #             This can be used as a simple hash that maps parameter names
-    #             to values, with _DEFAULT being the name for the default
-    #             parameter.
-    # $theTopic - name of the topic in the query
-    # $theWeb   - name of the web in the query
-    # Return: the result of processing the tag
-
-    # For example, %EXAMPLETAG{'hamburger' sideorder="onions"}%
-    # $params->{_DEFAULT} will be 'hamburger'
-    # $params->{sideorder} will be 'onions'
-
-my $OIDModel       = '.1.3.6.1.2.1.33.1.1.1.0';
-my $SchneiderModel = '.1.3.6.1.2.1.1.1.0';
-my $OIDidentBasicModel    = '1.3.6.1.4.1.318.1.1.1.1.1.1.0';
-
-# APC OIDs
-my $OIDAPC                = '1.3.6.1.4.1.318.';
-my $OIDhardware           = '1.3.6.1.4.1.318.1.1.';
-my $OIDups                = '1.3.6.1.4.1.318.1.1.1.';
-my $OIDident              = '1.3.6.1.4.1.318.1.1.1.1.';
-my $OIDidentBasic         = '1.3.6.1.4.1.318.1.1.1.1.1.';
-my $OIDidentBasicName     = '1.3.6.1.4.1.318.1.1.1.1.1.2.0';
-my $OIDidentAdv           = '1.3.6.1.4.1.318.1.1.1.1.2.';
-my $OIDidentAdvFW         = '1.3.6.1.4.1.318.1.1.1.1.2.1.0';
-my $OIDidentAdvManuf      = '1.3.6.1.4.1.318.1.1.1.1.2.2.0';
-my $OIDidentAdvSerial     = '1.3.6.1.4.1.318.1.1.1.1.2.3.0';
-my $OIDbattery            = '1.3.6.1.4.1.318.1.1.1.2.';
-my $OIDbatteryBasic       = '1.3.6.1.4.1.318.1.1.1.2.1.';
-my $OIDbatteryBasicStatus = '1.3.6.1.4.1.318.1.1.1.2.1.1.0';
-my $OIDbatteryBasicTime   = '1.3.6.1.4.1.318.1.1.1.2.1.2.0';
-my $OIDbatteryBasicRepl   = '1.3.6.1.4.1.318.1.1.1.2.1.3.0';
-my $OIDbatteryAdv         = '1.3.6.1.4.1.318.1.1.1.2.2.';
-my $OIDbatteryAdvTemp     = '1.3.6.1.4.1.318.1.1.1.2.2.2.0';
-my $OIDbatteryAdvRuntime  = '1.3.6.1.4.1.318.1.1.1.2.2.3.0';
-my $OIDbatteryAdvReplace  = '1.3.6.1.4.1.318.1.1.1.2.2.4.0';
-
-my $apcUpsAdvBatteryStatus              ='1.3.6.1.4.1.318.1.1.1.4.1.1.0';
-my $apcUpsAdvBatteryCapacity            ='1.3.6.1.4.1.318.1.1.1.2.2.1.0';
-my $apcUpsAdvBatteryTemperature         ='1.3.6.1.4.1.318.1.1.1.2.2.2.0';
-my $apcUpsAdvExtTemperature             ='1.3.6.1.4.1.318.1.1.10.2.3.2.1.4.1';
-my $apcUpsAdvBatteryRunTimeRemaining    ='1.3.6.1.4.1.318.1.1.1.2.2.3.0';
-my $apcUpsAdvOutputVoltage              ='1.3.6.1.4.1.318.1.1.1.4.2.1.0';
-my $apcUpsAdvOutputFrequency            ='1.3.6.1.4.1.318.1.1.1.4.2.2.0';
-my $apcUpsAdvOutputLoad                 ='1.3.6.1.4.1.318.1.1.1.4.2.3.0';
-my $apcUpsAdvOutputCurrent              ='1.3.6.1.4.1.318.1.1.1.4.2.4.0';
-my $apcUpsAdvInputLineVoltage           ='1.3.6.1.4.1.318.1.1.1.3.2.1.0';
-my $apcUpsAdvInputFrequency             ='1.3.6.1.4.1.318.1.1.1.3.2.4.0';
-
-my $apcUpsAdvInputLine3Voltage           ='1.3.6.1.4.1.318.1.1.1.3.2.3.0';
-my $apcUpsAdvInputLine2Voltage           ='1.3.6.1.4.1.318.1.1.1.3.2.2.0';
-my $apcUpsAdvInputLine1Voltage           ='1.3.6.1.4.1.318.1.1.1.3.2.1.0';
-
-#EATON
-my $EatonBatteryTemp =' 1.3.6.1.4.1.534.1.6.1.0';
-
-#default UPS mib
-
-my $BATTERYREPLACE = '2';
-
-my $defaultModel          = '.1.3.6.1.2.1.33.1.1.2.0';
-my $defaultBatteryReplace;
-my $defaultBatteryStatus  = '.1.3.6.1.2.1.33.1.2.1';
-my $defaultbatteryTemp    = '.1.3.6.1.2.1.33.1.2.4';
-my $defaultInputAC        = '.1.3.6.1.2.1.33.1.3.3.1.3.1';
-my $defaultInputHz        = '.1.3.6.1.2.1.33.1.3.3.1.2';
-my $defaultOutputAC       = '.1.3.6.1.2.1.33.1.4.4.1.2';
-my $defaultOutputCurrent  = '.1.3.6.1.2.1.33.1.4.4.1.3';
-my $defaultOutputPower    = '.1.3.6.1.2.1.33.1.4.4.1.4';
-my $defaultPercentLoad    = '.1.3.6.1.2.1.33.1.4.4.1.5';
-my $defaultLiveTime       = '.1.3.6.1.2.1.33.1.2.3';
-my $defaultUpsLoad        = '.1.3.6.1.2.1.33.1.4.4.1.5.1';
-my $defaultUpsStatus      = '.1.3.6.1.2.1.33.1.6.3.2';
-my $defaultOutputHz       = '.1.3.6.1.2.1.33.1.4.2';
-
-my $TEMPCRIT = 55;
-my $TEMPWARN = 50;
-
-    my $host = $params->{_DEFAULT} || $params->{host};
-
-    ### check host alive
-    my $p = Net::Ping->new("tcp",1,1);
-    my $ok= $p->ping($host);
-    $p->close();
-
-    if (!$ok) {  return "Ups $host is not available<BR>"; }
-
-    undef($p);
-
-    my $port = $params->{port} || 161;
-    my $timeout = $params->{timeout} || 5;
-
-    my $community = $params->{community};
-    $community =  'public' if (!$community);
-
-    my $snmp_session;
-    my $error;
-
-    ### open SNMP session
-    eval {
-    ($snmp_session, $error) = Net::SNMP->session( -hostname  => $host, -community => $community );
-    };
-
-    return "Ups is not available<BR>"  if (!defined($snmp_session));
-
-    $snmp_session->translate([-timeticks]);
-
-    my $vendor;
-    my $vendor_string = GetSNMPkeyValue($snmp_session,$OIDModel);
-
-    if (!$vendor_string) { $vendor_string = GetSNMPkeyValue($snmp_session,$OIDidentBasicModel); }
-    if (!$vendor_string) { $vendor_string = GetSNMPkeyValue($snmp_session,$SchneiderModel); $vendor = 'Schneider'; }
-
-    return "Ups model unknown!<BR>"  if (!defined($vendor_string));
-
-    if (!$vendor and $vendor_string=~/Eaton/i) { $vendor='EATON'; }
-    if (!$vendor and $vendor_string=~/APC/i) { $vendor='APC'; }
-    if (!$vendor and $vendor_string=~/Symmetra/i) { $vendor='Symmetra'; }
-
-    my $upsModel = GetSNMPkeyValue($snmp_session,$defaultModel) || GetSNMPkeyValue($snmp_session,$OIDidentBasicModel);
-
-#    my $ret = "UPS Model: ".$upsModel." Vendor: ".$vendor." [ $vendor_string ]\n\n";
-    my $ret = "UPS Model: ".$upsModel."\n\n";
-
-    my $battery_status = GetSNMPkeyValue($snmp_session,$defaultBatteryStatus);
-    my $input_voltage = GetSNMPkeyValue($snmp_session,$defaultInputAC);
-
-    my $status = "%GREEN%ONLINE%ENDCOLOR%";
-    $status = "%RED%AHEZ%ENDCOLOR%" if ($battery_status eq 1);
-    $status = "%RED%ON BATTERY%ENDCOLOR%" if ($battery_status eq 3);
-    $status = "%RED%On Smart Boost%ENDCOLOR%" if ($battery_status eq 4);
-    $status = "%RED%Timed Sleeping%ENDCOLOR%" if ($battery_status eq 5);
-    $status = "%RED%Software Bypass%ENDCOLOR%" if ($battery_status eq 6);
-    $status = "%RED%OFF%ENDCOLOR%" if ($battery_status eq 7);
-    $status = "%GREEN%REBOOTING%ENDCOLOR%" if ($battery_status eq 8);
-    $status = "%RED%SWITCHED BYPASS%ENDCOLOR%" if ($battery_status eq 9);
-    $status = "%RED%Hardware Failure Bypass%ENDCOLOR%" if ($battery_status eq 10);
-    $status = "%RED%Sleeping until power return%ENDCOLOR%" if ($battery_status eq 11);
-    $ret .= "| UPS Status | ".$status." |\n";
-
-    if ($vendor eq 'APC' or $vendor eq 'Symmetra') {
-        my $batteryAdvReplace = $snmp_session->get_request(-varbindlist => [$OIDbatteryAdvReplace])->{$OIDbatteryAdvReplace};
-        if ($batteryAdvReplace && ($batteryAdvReplace eq $BATTERYREPLACE)) { $ret .= "| Battery Status | %RED%Battery requires replacement!%ENDCOLOR%|\n"; };
-        $ret .= "| Battery Capacity | ".$snmp_session->get_request(-varbindlist => [$apcUpsAdvBatteryCapacity])->{$apcUpsAdvBatteryCapacity}."% |\n";
-        }
-
-    my $inputHz = GetSNMPkeyValue($snmp_session,$defaultInputHz);
-    if ($inputHz) { $inputHz = int($inputHz/10); }
-
-
-    my $runtime;
-    if ($vendor eq 'APC' or $vendor eq 'Symmetra') {
-        $runtime = GetSNMPkeyValue($snmp_session,$OIDbatteryAdvRuntime);
-        $runtime=int($runtime/6000);
-        }
-
-    if ($vendor eq 'EATON') { $runtime = GetSNMPkeyValue($snmp_session,'.1.3.6.1.4.1.534.1.2.1'); }
-    if (!$runtime) { $runtime = GetSNMPkeyValue($snmp_session,$defaultLiveTime); }
-    if ($vendor eq 'EATON') { $runtime=int($runtime/60); }
-
-    my $outputCurrent;
-    if ($vendor eq 'APC' or $vendor eq 'Symmetra') { $outputCurrent = GetSNMPkeyValue($snmp_session,$apcUpsAdvOutputCurrent); }
-    if (!$outputCurrent) { $outputCurrent = GetSNMPkeyValue($snmp_session,$defaultOutputCurrent); }
-    if ($outputCurrent) { $outputCurrent=$outputCurrent/10; }
-
-    my $batTemp;
-    if ($vendor eq 'APC' or $vendor eq 'Symmetra') { $batTemp=GetSNMPkeyValue($snmp_session,$OIDbatteryAdvTemp); }
-    if ($vendor eq 'EATON') { $batTemp=GetSNMPkeyValue($snmp_session,$EatonBatteryTemp); }
-    if (!$batTemp) { $batTemp=GetSNMPkeyValue($snmp_session,$defaultbatteryTemp); }
-
-    my $extTemp;
-    if ($vendor eq 'APC' or $vendor eq 'Symmetra') { $extTemp=GetSNMPkeyValue($snmp_session,$apcUpsAdvExtTemperature); }
-
-    my $outputVoltage;
-    if ($vendor eq 'APC' or $vendor eq 'Symmetra') { $outputVoltage=GetSNMPkeyValue($snmp_session,$apcUpsAdvOutputVoltage); }
-    if (!$outputVoltage) { $outputVoltage = GetSNMPkeyValue($snmp_session,$defaultOutputAC); }
-
-    my $outputHz;
-    if ($vendor eq 'APC' or $vendor eq 'Symmetra') { $outputHz=GetSNMPkeyValue($snmp_session,$apcUpsAdvOutputFrequency); }
-    if (!$outputHz) { $outputHz = GetSNMPkeyValue($snmp_session,$defaultOutputHz); }
-    if ($outputHz and $outputHz>100 ) { $outputHz = int($outputHz/10); }
-
-    my $outputLoad;
-    if ($vendor eq 'APC' or $vendor eq 'Symmetra') { $outputLoad=GetSNMPkeyValue($snmp_session,$apcUpsAdvOutputLoad); }
-    if (!$outputLoad) { $outputLoad = GetSNMPkeyValue($snmp_session,$defaultUpsLoad); }
-
-    $ret .= "| Runtime Remaining | ". $runtime." min. |\n";
-
-    if ($extTemp) {
-        my $TempStatus = "%GREEN%".$extTemp." C%ENDCOLOR%";
-        $TempStatus = "%RED%".$extTemp." C%ENDCOLOR%" if ($extTemp>28);
-        $ret .= "| Room Temperature | ".$TempStatus." |\n";
-        }
-
-    if ($batTemp) {
-        my $TempStatus = "%GREEN%".$batTemp." C%ENDCOLOR%";
-        $TempStatus = "%RED%".$batTemp." C%ENDCOLOR%" if ($batTemp>38);
-        $ret .= "| Battery Temperature | ".$TempStatus." |\n";
-        }
-
-    if ($vendor eq 'Symmetra') {
-        my $input1=GetSNMPkeyValue($snmp_session,$apcUpsAdvInputLine1Voltage);
-        my $input2=GetSNMPkeyValue($snmp_session,$apcUpsAdvInputLine2Voltage);
-        my $input3=GetSNMPkeyValue($snmp_session,$apcUpsAdvInputLine3Voltage);
-        $ret .= "| Input Line1 Voltage | ".$input1." V |\n";
-        $ret .= "| Input Line2 Voltage | ".$input2." V |\n";
-        $ret .= "| Input Line3 Voltage | ".$input3." V |\n";
-        }
-
-    if ($vendor ne 'Symmetra') {
-        $ret .= "| Input Voltage | ".$input_voltage." V |\n";
-        $ret .= "| Input Frequency | ".$inputHz." Hz |\n";
-        }
-
-    $ret .= "| Output Voltage | ".$outputVoltage." V |\n";
-    $ret .= "| Output Current | ".$outputCurrent."  A |\n";
-    $ret .= "| Output Frequency | ".$outputHz." Hz |\n";
-    $ret .= "| Output Load | ".$outputLoad." % |\n";
-
-
-    $snmp_session->close;
-
-    return $ret;
-}
-
-
-1;

+ 0 - 442
docs/wiki/foswiki/WlcInfoPlugin.pm

@@ -1,442 +0,0 @@
-package Foswiki::Plugins::WlcInfoPlugin;
-
-use utf8;
-use Net::SNMP qw(:snmp ticks_to_time TRANSLATE_NONE);
-use Net::Ping;
-
-# Always use strict to enforce variable scoping
-use strict;
-
-# $VERSION is referred to by Foswiki, and is the only global variable that
-# *must* exist in this package
-use vars qw( $VERSION $RELEASE $debug $pluginName );
-
-use Foswiki::Func    ();    # The plugins API
-use Foswiki::Plugins ();    # For the API version
-
-# This should always be $Rev: 8713$ so that Foswiki can determine the checked-in
-# status of the plugin. It is used by the build automation tools, so
-# you should leave it alone.
-$VERSION = '$Rev: 8713$';
-
-# This is a free-form string you can use to "name" your own plugin version.
-# It is *not* used by the build automation tools, but is reported as part
-# of the version number in PLUGINDESCRIPTIONS.
-$RELEASE = '1.01';
-
-# Name of this Plugin, only used in this module
-$pluginName = 'WlcInfoPlugin';
-
-=pod
-
----++ initPlugin($topic, $web, $user, $installWeb) -> $boolean
-   * =$topic= - the name of the topic in the current CGI query
-   * =$web= - the name of the web in the current CGI query
-   * =$user= - the login name of the user
-   * =$installWeb= - the name of the web the plugin is installed in
-
-REQUIRED
-
-Called to initialise the plugin. If everything is OK, should return
-a non-zero value. On non-fatal failure, should write a message
-using Foswiki::Func::writeWarning and return 0. In this case
-%FAILEDPLUGINS% will indicate which plugins failed.
-
-In the case of a catastrophic failure that will prevent the whole
-installation from working safely, this handler may use 'die', which
-will be trapped and reported in the browser.
-
-You may also call =Foswiki::Func::registerTagHandler= here to register
-a function to handle tags that have standard Foswiki syntax - for example,
-=%MYTAG{"my param" myarg="My Arg"}%. You can also override internal
-Foswiki tag handling functions this way, though this practice is unsupported
-and highly dangerous!
-
-=cut
-
-sub initPlugin {
-    my( $topic, $web, $user, $installWeb ) = @_;
-
-    # check for Plugins.pm versions
-    if( $Foswiki::Plugins::VERSION < 1.026 ) {
-        Foswiki::Func::writeWarning( "Version mismatch between $pluginName and Plugins.pm" );
-        return 0;
-    }
-
-    Foswiki::Func::registerTagHandler( 'WlcINFO', \&_WlcINFO );
-
-    # Plugin correctly initialized
-    return 1;
-}
-
-sub StrToIp{
-return unpack('N',pack('C4',split(/\./,$_[0])));
-}
-
-sub extract_dec_mac {
-my $base_oid = shift;
-my $key = shift;
-$key =~s/^$base_oid\.//;
-return $key;
-}
-
-sub mac_splitted{
-my $mac=shift;
-return if (!$mac);
-my $ch=shift || ":";
-$mac=~s/(\S{2})(\S{2})(\S{2})(\S{2})(\S{2})(\S{2})/$1:$2:$3:$4:$5:$6/g;
-if ($ch ne ":") { $mac=~s/\:/$ch/g; }
-return $mac;
-}
-
-sub dec2mac {
-my $key = shift;
-my @dec_mac = split(/\./,$key);
-my @mac=();
-for (my $i = 0; $i < scalar(@dec_mac); $i++) { $mac[$i]=sprintf("%02x",$dec_mac[$i]); }
-$key = join(':',@mac);
-return $key;
-}
-
-sub expand_status {
-my ($client,$filter) = @_;
-my $ret ='';
-foreach my $id (sort keys %$client) {
-        next if ($filter and $client->{$id}->{mac} ne $filter);
-        $ret.='| '.$client->{$id}->{ap_id}.' | ';
-        $ret.=$client->{$id}->{ap_mac}.' | ';
-        $ret.=$client->{$id}->{sid}.' | ';
-        $ret.=$client->{$id}->{mac}.' | ';
-        if (!$client->{$id}->{ip}) { $client->{$id}->{ip}='0.0.0.0'; }
-        $ret.=$client->{$id}->{ip}.' | ';
-        $ret.=$client->{$id}->{Hz}.' | ';
-        $ret.=$client->{$id}->{ch}.' | ';
-        $ret.=$client->{$id}->{rx}.'/'.$client->{$id}->{tx}.' | ';
-        $ret.=$client->{$id}->{band}.' | ';
-        $ret.=$client->{$id}->{uptime}." |\n";
-        }
-return $ret;
-};
-
-sub table_callback {
-my ($session, $OID_ifTable, $table) = @_;
-
-my $list = $session->var_bind_list();
-if (!defined $list) {
-    printf "ERROR: %s\n", $session->error();
-    return;
-    }
-
-my @names = $session->var_bind_names();
-my $next  = undef;
-
-while (@names) {
-   $next = shift @names;
-   if (!oid_base_match($OID_ifTable, $next)) {
-      return; # Table is done.
-      }
-   $table->{$next} = $list->{$next};
-}
-
-my $result = $session->get_bulk_request( -varbindlist => [ $next ], -maxrepetitions => 10, );
-if (!defined $result) { printf "ERROR: %s.\n", $session->error(); }
-return;
-}
-
-sub _WlcINFO {
-my($session, $params, $theTopic, $theWeb) = @_;
-
-my $host = $params->{_DEFAULT} || $params->{host};
-
-### check host alive
-my $p = Net::Ping->new("tcp",1,1);
-my $ok= $p->ping($host);
-$p->close();
-if (!$ok) {  return "Ups $host is not available<BR>"; }
-
-undef($p);
-
-my $port = $params->{port} || 161;
-my $timeout = $params->{timeout} || 5;
-
-my $community = $params->{community};
-$community =  'public' if (!$community);
-
-#1 - client list
-#2 - mac list
-#3 - ssid list
-#4 - ip list
-
-my $mode = $params->{mode} || '3';
-my $filter = $params->{filter};
-
-my $snmp_session;
-my $error;
-
-my %DefaultMibs=(
-'Description'    => '.1.3.6.1.2.1.1.1.0',
-'Uptime'         => '.1.3.6.1.2.1.1.3.0',
-'Name'           => '.1.3.6.1.2.1.1.5.0',
-);
-
-my %HuaweiWlcMibs=(
-#'ClientList'     =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.2',
-'ClientAPHexList'=>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.3',
-#'ClientAPList'   =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.4',
-#dec-mac = string
-#'APVap'=>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.5',
-#dec-mac = на какой диапазон подкючен клиент 1 - 2.4G 2 - 5G
-'ClientHz'       =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.7',
-'ClientChannel'  =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.9',
-# - полоса - INTEGER{invalid(1),ht40(2),ht20(3),vht80(4)}
-'ClientBand'     =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.11',
-'ClientRxRate'   =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.14',
-'ClientTxRate'   =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.15',
-'ClientSSID'     =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.16',
-'ClientIp'       =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.25',
-'ClientUptime'   =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.30',
-'ClientApId'     =>'.1.3.6.1.4.1.2011.6.139.18.1.2.1.53',
-);
-
-### open SNMP session
-eval {
-    ($snmp_session, $error) = Net::SNMP->session(
-    -hostname  => $host,
-    -community => $community,
-    -nonblocking => 1,
-    -translate   => [-octetstring => 0],
-    -version     => 'snmpv2c',
-    );
-};
-
-return "Wlc is not available<BR>"  if (!defined($snmp_session));
-
-$snmp_session->translate([-timeticks]);
-
-my %defaultTable;
-my $ret = $snmp_session->get_bulk_request(
-    -varbindlist    => [ '.1.3.6.1.2.1.1' ],
-    -callback       => [ \&table_callback, '.1.3.6.1.2.1.1', \%defaultTable ],
-    -maxrepetitions => 10,
-    );
-
-if (!defined $ret) {
-    $snmp_session->close();
-    return "Wlc not answer!<BR>";
-    }
-# Now initiate the SNMP message exchange.
-snmp_dispatcher();
-
-my %wlcTable;
-
-foreach my $key (keys %HuaweiWlcMibs) {
-my $huawei_wlc_mib = $HuaweiWlcMibs{$key};
-my %table;
-my $result = $snmp_session->get_bulk_request(
-    -varbindlist    => [ $huawei_wlc_mib ],
-    -callback       => [ \&table_callback, $huawei_wlc_mib, \%table ],
-    -maxrepetitions => 10,
-    );
-if (!defined $result) {
-    printf "ERROR: %s\n", $snmp_session->error();
-    $snmp_session->close();
-    exit 1;
-    }
-# Now initiate the SNMP message exchange.
-snmp_dispatcher();
-$wlcTable{$key}=\%table;
-}
-
-$snmp_session->close();
-
-my $result=$defaultTable{$DefaultMibs{Name}}."\n<br>";
-$result.=$defaultTable{$DefaultMibs{Description}}."\n<br>";
-my $uptime = int($defaultTable{$DefaultMibs{Uptime}}/100);
-my $day; my $hour; my $min;
-$day = int($uptime/86400);
-$hour = int(($uptime - 86400*$day)/3600);
-$min = int (($uptime - 86400*$day - 3600*$hour)/60);
-my $s_uptime = "$day days $hour:$min";
-$result.= "$s_uptime\n<br>\n";
-
-my %client_status;
-
-my $key = 'ClientApId';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $ap_id = $wlcTable{$key}->{$oid};
-$client_status{$dec_mac}->{mac}=dec2mac($dec_mac);
-$client_status{$dec_mac}->{ap_id}=$ap_id;
-}
-$key = 'ClientAPHexList';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $ap_mac = mac_splitted(unpack('H*',$wlcTable{$key}->{$oid}));
-my $ap_id = $client_status{$dec_mac}->{ap_id};
-$client_status{$dec_mac}->{ap_mac}=$ap_mac;
-}
-$key = 'ClientHz';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $Hz = $wlcTable{$key}->{$oid};
-my $ap_id = $client_status{$dec_mac}->{ap_id};
-if ($Hz eq '1') { $Hz='2.4G'; }
-if ($Hz eq '2') { $Hz='5G'; }
-$client_status{$dec_mac}->{Hz}=$Hz;
-}
-$key = 'ClientChannel';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $ch = $wlcTable{$key}->{$oid};
-my $ap_id = $client_status{$dec_mac}->{ap_id};
-$client_status{$dec_mac}->{ch}=$ch;
-}
-$key = 'ClientBand';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $band = $wlcTable{$key}->{$oid};
-my $ap_id = $client_status{$dec_mac}->{ap_id};
-if ($band eq '1') { $band = '10M'; }
-if ($band eq '2') { $band = '40M'; }
-if ($band eq '3') { $band = '20M'; }
-if ($band eq '4') { $band = '80M'; }
-$client_status{$dec_mac}->{band}=$band;
-}
-$key = 'ClientRxRate';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $rx = $wlcTable{$key}->{$oid};
-if ($rx eq '65535') { $rx = 0; }
-my $ap_id = $client_status{$dec_mac}->{ap_id};
-$client_status{$dec_mac}->{rx}=$rx;
-}
-$key = 'ClientTxRate';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $tx = $wlcTable{$key}->{$oid};
-if ($tx eq '65535') { $tx = 0; }
-my $ap_id = $client_status{$dec_mac}->{ap_id};
-$client_status{$dec_mac}->{tx}=$tx;
-}
-$key = 'ClientSSID';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $SSID = $wlcTable{$key}->{$oid};
-my $ap_id = $client_status{$dec_mac}->{ap_id};
-$client_status{$dec_mac}->{sid}=$SSID;
-}
-$key = 'ClientIp';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $ip = $wlcTable{$key}->{$oid};
-my $ap_id = $client_status{$dec_mac}->{ap_id};
-$client_status{$dec_mac}->{ip}=$ip;
-}
-$key = 'ClientUptime';
-for my $oid (oid_lex_sort(keys %{$wlcTable{$key}})) {
-my $dec_mac = extract_dec_mac($HuaweiWlcMibs{$key},$oid);
-my $uptime = $wlcTable{$key}->{$oid};
-my $ap_id = $client_status{$dec_mac}->{ap_id};
-my $day; my $hour; my $min;
-$day = int($uptime/86400);
-$hour = int(($uptime - 86400*$day)/3600);
-$min = int (($uptime - 86400*$day - 3600*$hour)/60);
-my $s_uptime = "$day days $hour:$min";
-$client_status{$dec_mac}->{uptime}=$s_uptime;
-}
-
-my %wlc_status;
-my $all_clients=0;
-foreach my $dec_mac (sort keys %client_status) {
-my $ssid = $client_status{$dec_mac}->{sid};
-if (!exists($wlc_status{$ssid})) { $wlc_status{$ssid}{count}=0; $wlc_status{$ssid}{count2}=0; $wlc_status{$ssid}{count5}=0; }
-$wlc_status{$ssid}{count}++;
-$all_clients++;
-if ($client_status{$dec_mac}->{Hz} eq '5G') { $wlc_status{$ssid}{count5}++; } else { $wlc_status{$ssid}{count2}++; }
-}
-
-$result.="\n<br>Wireless counters:\n<br>\n";
-$result.="| *SSID* | *Count* | *2.4G* | *5G* |\n";
-foreach my $ssid (sort keys %wlc_status) {
-$result.= "| $ssid | $wlc_status{$ssid}{count} | $wlc_status{$ssid}{count2} | $wlc_status{$ssid}{count5} |\n";
-}
-$result.= "\n<br>Total: $all_clients\n<br>\n";
-
-$result.= "| *AP id* | *AP* | *SSID* | *Client* | *IP* | *Hz* | *Channel* | *Rx/Tx* | *Band* | *Uptime* |\n";
-
-if ($mode eq '1') { $result.=expand_status(\%client_status,$filter); }
-
-if ($mode eq '2') {
-    my %ap_status;
-    foreach my $dec_mac (sort keys %client_status) {
-        if (!$client_status{$dec_mac}->{ip}) { $client_status{$dec_mac}->{ip}='0.0.0.0'; }
-        my $ap_id = $client_status{$dec_mac}->{ap_id};
-        $ap_status{$ap_id}->{$dec_mac}->{ap_id}=$ap_id;
-        $ap_status{$ap_id}->{$dec_mac}->{ap_mac}=$client_status{$dec_mac}->{ap_mac};
-        $ap_status{$ap_id}->{$dec_mac}->{sid}=$client_status{$dec_mac}->{sid};
-        $ap_status{$ap_id}->{$dec_mac}->{mac}=$client_status{$dec_mac}->{mac};
-        $ap_status{$ap_id}->{$dec_mac}->{ip}=$client_status{$dec_mac}->{ip};
-        $ap_status{$ap_id}->{$dec_mac}->{Hz}=$client_status{$dec_mac}->{Hz};
-        $ap_status{$ap_id}->{$dec_mac}->{ch}=$client_status{$dec_mac}->{ch};
-        $ap_status{$ap_id}->{$dec_mac}->{rx}=$client_status{$dec_mac}->{rx};
-        $ap_status{$ap_id}->{$dec_mac}->{tx}=$client_status{$dec_mac}->{tx};
-        $ap_status{$ap_id}->{$dec_mac}->{band}=$client_status{$dec_mac}->{band};
-        $ap_status{$ap_id}->{$dec_mac}->{uptime}=$client_status{$dec_mac}->{uptime};
-        }
-    foreach my $ap_id (sort {$a <=> $b} keys %ap_status) {
-        next if ($filter and $ap_id ne $filter);
-        $result.=expand_status($ap_status{$ap_id});
-        }
-    }
-
-if ($mode eq '3') {
-    my %ssid_status;
-    foreach my $dec_mac (sort keys %client_status) {
-        if (!$client_status{$dec_mac}->{ip}) { $client_status{$dec_mac}->{ip}='0.0.0.0'; }
-        my $ssid = $client_status{$dec_mac}->{sid};
-        $ssid_status{$ssid}->{$dec_mac}->{ap_id}=$client_status{$dec_mac}->{ap_id};
-        $ssid_status{$ssid}->{$dec_mac}->{ap_mac}=$client_status{$dec_mac}->{ap_mac};
-        $ssid_status{$ssid}->{$dec_mac}->{sid}=$ssid;
-        $ssid_status{$ssid}->{$dec_mac}->{mac}=$client_status{$dec_mac}->{mac};
-        $ssid_status{$ssid}->{$dec_mac}->{ip}=$client_status{$dec_mac}->{ip};
-        $ssid_status{$ssid}->{$dec_mac}->{Hz}=$client_status{$dec_mac}->{Hz};
-        $ssid_status{$ssid}->{$dec_mac}->{ch}=$client_status{$dec_mac}->{ch};
-        $ssid_status{$ssid}->{$dec_mac}->{rx}=$client_status{$dec_mac}->{rx};
-        $ssid_status{$ssid}->{$dec_mac}->{tx}=$client_status{$dec_mac}->{tx};
-        $ssid_status{$ssid}->{$dec_mac}->{band}=$client_status{$dec_mac}->{band};
-        $ssid_status{$ssid}->{$dec_mac}->{uptime}=$client_status{$dec_mac}->{uptime};
-        }
-    foreach my $ssid (sort {$a <=> $b} keys %ssid_status) {
-        next if ($filter and $ssid ne $filter);
-        $result.=expand_status($ssid_status{$ssid});
-        }
-    }
-
-if ($mode eq '4') {
-    my %ip_status;
-    my $unknown_count=0;
-    foreach my $dec_mac (sort keys %client_status) {
-        my $ip;
-        if (!$client_status{$dec_mac}->{ip}) { $ip=$unknown_count; $unknown_count++; } else { $ip = StrToIp($client_status{$dec_mac}->{ip}); }
-        $ip_status{$ip}->{$dec_mac}->{ap_id}=$client_status{$dec_mac}->{ap_id};;
-        $ip_status{$ip}->{$dec_mac}->{ap_mac}=$client_status{$dec_mac}->{ap_mac};
-        $ip_status{$ip}->{$dec_mac}->{sid}=$client_status{$dec_mac}->{sid};
-        $ip_status{$ip}->{$dec_mac}->{mac}=$client_status{$dec_mac}->{mac};
-        $ip_status{$ip}->{$dec_mac}->{ip}=$client_status{$dec_mac}->{ip};
-        $ip_status{$ip}->{$dec_mac}->{Hz}=$client_status{$dec_mac}->{Hz};
-        $ip_status{$ip}->{$dec_mac}->{ch}=$client_status{$dec_mac}->{ch};
-        $ip_status{$ip}->{$dec_mac}->{rx}=$client_status{$dec_mac}->{rx};
-        $ip_status{$ip}->{$dec_mac}->{tx}=$client_status{$dec_mac}->{tx};
-        $ip_status{$ip}->{$dec_mac}->{band}=$client_status{$dec_mac}->{band};
-        $ip_status{$ip}->{$dec_mac}->{uptime}=$client_status{$dec_mac}->{uptime};
-        }
-    foreach my $ip (sort {$a <=> $b} keys %ip_status) {
-        next if ($filter and $ip ne $filter);
-        $result.=expand_status($ip_status{$ip});
-        }
-    }
-
-return $result;
-}
-
-1;

+ 0 - 73
docs/wiki/foswiki/data/CommentPluginTemplate.txt

@@ -1,73 +0,0 @@
----+++ simple
-Wiki thread mode comment, signed and dated
-<verbatim>
-
-%TMPL:DEF{PROMPT:simple}%
-   Comment type:
-   <select %DISABLED% name="commenttype">
-    <option>выполненная работа</option>
-    <option>регламент</option>
-    <option>предложение</option>
-    <option>замечание</option>
-    <option>вопрос</option>
-    <option>ответ</option>
-   </select><br />
-   <textarea %DISABLED% rows="%rows|5%" cols="%cols|75%" name="comment" wrap="soft"></textarea><br />
-   <input %DISABLED% type="submit" value="%button|Добавить%" />
-   <input type="hidden" name="redirectto" value="%BASEWEB%.%BASETOPIC%" />
-%TMPL:END%
-
-</verbatim>
-<verbatim>
-%TMPL:DEF{OUTPUT:simple}%%POS:BEFORE%
-<COMMENT><TIME>%SERVERTIME{"$year$mo$day$hours$minutes$seconds"}%</TIME><NAME>%WIKIUSERNAME%</NAME><FTIME>%SERVERTIME{"$hour:$min $day.$mo.$year"}%</FTIME><TYPE>%URLPARAM{"commenttype"}%</TYPE><TEXT>%URLPARAM{"comment" newline="<br />"}%</TEXT></COMMENT>
-%TMPL:END%
-</verbatim>
-
----+++ workflow
-Wiki thread mode comment, signed and dated
-<verbatim>
-
-%TMPL:DEF{PROMPT:workflow}%
-<HR>
-   Comment type:
-   <select %DISABLED% name="commenttype">
-    <option>выполненная работа</option>
-    <option>регламент</option>
-    <option>предложение</option>
-    <option>замечание</option>
-    <option>вопрос</option>
-    <option>ответ</option>
-   </select><br />
-   <textarea %DISABLED% rows="%rows|5%" cols="%cols|75%" name="comment" wrap="soft"></textarea><br />
-   <input %DISABLED% type="submit" value="%button|Добавить%" />
-%TMPL:END%
-
-</verbatim>
-<verbatim>
-%TMPL:DEF{OUTPUT:workflow}%%POS:BEFORE%
-<div style="font-size:75%; display:block; background-color:#E7EDF3; color:#0000cc; height:auto;>
-#WfC%SERVERTIME{"$year$mo$day$hours$minutes$seconds"}% -- %WIKIUSERNAME% - %SERVERTIME{"$day.$mo.$year - $hour:$min"}% - %URLPARAM{"commenttype"}% </div>
-<div style="padding: 0px 10px 2px 10px;">
-%URLPARAM{"comment" newline="<br />"}%
-</div>
-%TMPL:END%
-</verbatim>
----
-
----+++ forum
-
-<verbatim>
-
-%TMPL:DEF{PROMPT:forum}%
-<table><tr valign="middle"><td><textarea rows="%rows|5%" cols="%cols|90%" name="comment" wrap="soft" onfocus="if(this.value=='%MESSAGE%')this.value=''" onblur="if(this.value=='')this.value='%MESSAGE%'">%MESSAGE%</textarea></td><td><input type="submit" value="%button|Добавить сообщение%" /></td></tr></table>
-%TMPL:END%
-
-%TMPL:DEF{OUTPUT:forum}%%POS:BEFORE%%URLPARAM{"comment" }%
-<br />-- %WIKIUSERNAME% - %SERVERTIME{"$day.$mo.$year - $hour:$min"}%
----%TMPL:END%
-
-</verbatim>
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 22
docs/wiki/foswiki/data/CompanyBuildings.txt

@@ -1,22 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604079998" format="1.1" reprev="1" version="1"}%
-Здания, используемые [[WebHome][Организацией]]
-
-%SEARCH{
-topic="Building*"
-type="query"
-nosearch="on"
-nototal="on"
-header="|*Здание*|*Description*|"
-format="| [[$topic][$formfield(Address)]] | $formfield(Description) |"
-}%
-
----++ Добавить
-
-%INCLUDE{IncludeAddBuilding}%
-
-%INCLUDE{IncludeWorkflow}%
-
--- Main.RomanDmitriev - 30 Oct 2020
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 15
docs/wiki/foswiki/data/DefaultATSTemplate.txt

@@ -1,15 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderAts}%
-
-%INCLUDE{IncludeBottomAts}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormNetDevice"}%
-%META:PREFERENCE{name="DENYTOPICVIEW" title="DENYTOPICVIEW" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup, VoipAdminsGroup"}%
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="registeredusers"}%
-%META:PREFERENCE{name="PERMSET_VIEW_DETAILS" title="PERMSET_VIEW_DETAILS" type="Local" value="AdminGroup, VoipAdminsGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup, VoipAdminsGroup"}%

+ 0 - 12
docs/wiki/foswiki/data/DefaultAclTemplate.txt

@@ -1,12 +0,0 @@
----++ Ограничения доступа на [[%QUERY{"parent.name"}%]]
-
----+!! Описание списка доступа
-
-%INCLUDE{IncludeWorkflow}%
-
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="ALLOWTOPICVIEW" title="ALLOWTOPICVIEW" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_VIEW_DETAILS" title="PERMSET_VIEW_DETAILS" type="Local" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 9
docs/wiki/foswiki/data/DefaultAirCondTemplate.txt

@@ -1,9 +0,0 @@
----+!! Кондиционер
-
-%INCLUDE{IncludeWorkflow}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 4
docs/wiki/foswiki/data/DefaultArticleTemplate.txt

@@ -1,4 +0,0 @@
-
----+!! Заголовок %BASETOPIC%
-
-%TOC%

+ 0 - 15
docs/wiki/foswiki/data/DefaultAuthTemplate.txt

@@ -1,15 +0,0 @@
----++ Пароли для [[%QUERY{"parent.name"}%]]
-
----+!! Описание паролей на 
-
-| *Login* | *Password* |
-| | |
-
-%INCLUDE{IncludeWorkflow}%
-
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="ALLOWTOPICVIEW" title="ALLOWTOPICVIEW" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_VIEW_DETAILS" title="PERMSET_VIEW_DETAILS" type="Local" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 10
docs/wiki/foswiki/data/DefaultAuthWirelessPSK.txt

@@ -1,10 +0,0 @@
----+!! PSK ключ [Descr]
-
-KEY:
-
-%INCLUDE{IncludeWorkflow}%
-
-%META:PREFERENCE{name="DENYTOPICVIEW" title="DENYTOPICVIEW" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="DENYTOPICCHANGE" title="DENYTOPICCHANGE" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="registeredusers"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="registeredusers"}%

+ 0 - 19
docs/wiki/foswiki/data/DefaultBrasTemplate.txt

@@ -1,19 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%TOC%
-
----++ Сервер доступа
-
-%INCLUDE{IncludeHeaderBras}%
-
----++ Маршрутизация
-
----++ Политика безопасности
-
-%INCLUDE{IncludeBottomBras}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 13
docs/wiki/foswiki/data/DefaultBuildingTemplate.txt

@@ -1,13 +0,0 @@
----+!! Здание %FORMFIELD{"Description" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderBuilding}%
-
-%INCLUDE{IncludeBottomBuilding}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormBuilding"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 15
docs/wiki/foswiki/data/DefaultCPOTemplate.txt

@@ -1,15 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeShowStat}%
-
-%EDITTABLE{}%
-| *Розетка* | *Устройство* |
-| 1 | |
-
-%INCLUDE{IncludeNetDevCommon}%
-
-%INCLUDE{IncludeWorkflow}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 16
docs/wiki/foswiki/data/DefaultCertTemplate.txt

@@ -1,16 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604395626" format="1.1" reprev="5" version="4"}%
-
----+!! Сертификат %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeWorkflow}%
-
--- Main.RomanDmitriev - 2020/10/11
-
-%META:FORM{name="FormCertificate"}%
-
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="ALLOWTOPICVIEW" title="ALLOWTOPICVIEW" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_VIEW_DETAILS" title="PERMSET_VIEW_DETAILS" type="Local" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 13
docs/wiki/foswiki/data/DefaultDnsZoneTemplate.txt

@@ -1,13 +0,0 @@
----+!! Зона %FORMFIELD{"DnsZoneName" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeFindDnsZone}%
-
-%INCLUDE{IncludeWorkflow}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormDnsZone"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 17
docs/wiki/foswiki/data/DefaultDomainTemplate.txt

@@ -1,17 +0,0 @@
----+!! Домен %FORMFIELD{"Name" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeFindDomain}%
-
----++ Добавить 
-
-%INCLUDE{IncludeAddDnsZone}%
-
-%INCLUDE{IncludeWorkflow}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormDomain"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 1
docs/wiki/foswiki/data/DefaultEquipmentHddTemplate.txt

@@ -1 +0,0 @@
----+!!  %FORMFIELD{"EquipmentType" topic="%BASETOPIC%"}% AT %FORMFIELD{"Parent" topic="%BASETOPIC%"}%

+ 0 - 27
docs/wiki/foswiki/data/DefaultEsxiTemplate.txt

@@ -1,27 +0,0 @@
----+!! Сервер %FORMFIELD{"Name" topic="%BASETOPIC%"}%
-
-%TOC%
-
-%INCLUDE{IncludeShowStat}%
-
----++ Система
-
-ОС:
-
----++ Дисковая подсистема
-
----++ Сеть
-
-%INCLUDE{IncludeNetDevCommon}%
-
-%INCLUDE{IncludeShowServer}%
-
-%INCLUDE{IncludeWorkflow}%
-
--- Main.RomanDmitriev - 2020/10/14
-
-%META:FORM{name="FormServerOs"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 28
docs/wiki/foswiki/data/DefaultGatewayTemplate.txt

@@ -1,28 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
----+!! Маршрутизатор в сети [[WebHome][Организации]]
-
-%TOC%
-
-
-%INCLUDE{IncludeHeaderGateway}%
-
----++ WAN
-
-   * wan-port: dhcp
-
----++ DHCP Relay
-
----++ Маршрутизация
-
----++ Политика безопасности
-
-%INCLUDE{IncludeBottomGateway}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormNetDevice"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 23
docs/wiki/foswiki/data/DefaultHardwareTemplate.txt

@@ -1,23 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1602524519" format="1.1" reprev="2" version="2"}%
----++ Сервер %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%TOC%
-
----+++ Память
-
-| *Type* | *MHz* | *Model* | *Vendor* | *SN* | *Size* |
-
-%INCLUDE{IncludeHeaderHardware}%
-
----+++ Логические тома
-
-| *Name* | *Id* | *mount point* | *Description* |
-
-
-%INCLUDE{IncludeBottomHardware}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 23
docs/wiki/foswiki/data/DefaultKvmHostTemplate.txt

@@ -1,23 +0,0 @@
----+!! Сервер %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%TOC%
-
----++ Система
-
-ОС:
-
-%INCLUDE{IncludeHeaderKvmServer}%
-
----++ Дисковая подсистема
-
----++ Сеть
-
-%INCLUDE{IncludeBottomKvmServer}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormServerOs"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 15
docs/wiki/foswiki/data/DefaultNetdeviceTemplate.txt

@@ -1,15 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%TOC%
-
-%INCLUDE{IncludeHeaderNetDev}%
-
-%INCLUDE{IncludeBottomNetDev}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormNetDevice"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 3
docs/wiki/foswiki/data/DefaultPermission.txt

@@ -1,3 +0,0 @@
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 16
docs/wiki/foswiki/data/DefaultPhoneTemplate.txt

@@ -1,16 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderPhone}%
-
-%INCLUDE{IncludeBottomPhone}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormNetDevice"}%
-
-%META:PREFERENCE{name="DENYTOPICVIEW" title="DENYTOPICVIEW" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup, VoipAdminsGroup"}%
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="registeredusers"}%
-%META:PREFERENCE{name="PERMSET_VIEW_DETAILS" title="PERMSET_VIEW_DETAILS" type="Local" value="AdminGroup, VoipAdminsGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup, VoipAdminsGroup"}%

+ 0 - 13
docs/wiki/foswiki/data/DefaultPoolTemplate.txt

@@ -1,13 +0,0 @@
----++ Dhcp пул для сети %FORMFIELD{"Name" topic="%FORMFIELD{"Subnet" topic="%BASETOPIC%"}%"}%
-
-%INCLUDE{IncludeHeaderDhcpPool}%
-
-%INCLUDE{IncludeBottomDhcpPool}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormDhcpPool"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 13
docs/wiki/foswiki/data/DefaultRackTemplate.txt

@@ -1,13 +0,0 @@
----+!! Стойка %FORMFIELD{"Name" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderRack}%
-
-%INCLUDE{IncludeBottomRack}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormRack"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 15
docs/wiki/foswiki/data/DefaultRoomTemplate.txt

@@ -1,15 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1602750423" format="1.1" reprev="2" version="3"}%
-
----+!! Комната %FORMFIELD{"Name" topic="%BASETOPIC%"}% (%FORMFIELD{"Description" topic="%BASETOPIC%"}%)
-
-%INCLUDE{IncludeHeaderRoom}%
-
-%INCLUDE{IncludeBottomRoom}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormRoom"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 23
docs/wiki/foswiki/data/DefaultRouterTemplate.txt

@@ -1,23 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
----+!! Маршрутизатор в сети [[WebHome][Организации]]
-
-%TOC%
-
-%INCLUDE{IncludeHeaderRouter}%
-
----++ DHCP Relay
-
----++ Маршрутизация
-
----++ Политика безопасности
-
-%INCLUDE{IncludeBottomRouter}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormNetDevice"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 23
docs/wiki/foswiki/data/DefaultServerTemplate.txt

@@ -1,23 +0,0 @@
----+!! Сервер %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%TOC%
-
----++ Система
-
-ОС:
-
-%INCLUDE{IncludeHeaderServer}%
-
----++ Дисковая подсистема
-
----++ Сеть
-
-%INCLUDE{IncludeBottomServer}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormServerOs"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 13
docs/wiki/foswiki/data/DefaultServiceTemplate.txt

@@ -1,13 +0,0 @@
----+!! Сервис %FORMFIELD{"Description" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderService}%
-
-%INCLUDE{IncludeBottomService}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormService"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 13
docs/wiki/foswiki/data/DefaultSiteTemplate.txt

@@ -1,13 +0,0 @@
----+!! Сайт %FORMFIELD{"Httpproto" topic="%BASETOPIC%"}%://%FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderService}%
-
-%INCLUDE{IncludeBottomService}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormSite"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 13
docs/wiki/foswiki/data/DefaultSubnetTemplate.txt

@@ -1,13 +0,0 @@
----+ Network: %FORMFIELD{"Name" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderSubnet}%
-
-%INCLUDE{IncludeBottomSubnet}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormSubnet"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 15
docs/wiki/foswiki/data/DefaultSwitchTemplate.txt

@@ -1,15 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%  (%FORMFIELD{"Description" topic="%BASETOPIC%"}%)
-
-%TOC%
-
-%INCLUDE{IncludeHeaderSwitch}%
-
-%INCLUDE{IncludeBottomSwitch}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormNetDevice"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 14
docs/wiki/foswiki/data/DefaultUpsTemplate.txt

@@ -1,14 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderUps}%
-
-%INCLUDE{IncludeBottomUps}%
-
--- Main.RomanDmitriev - 01 Nov 2020
-
-%META:FORM{name="FormUps"}%
-%META:FIELD{name="DeviceType" title="Device Type" value="UPS"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 11
docs/wiki/foswiki/data/DefaultVideoRegTemplate.txt

@@ -1,11 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%TOC%
-
-%INCLUDE{IncludeHeaderVideoReg}%
-
-%INCLUDE{IncludeBottomVideoReg}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 32
docs/wiki/foswiki/data/DefaultVirtCluster.txt

@@ -1,32 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1627890919" format="1.1" reprev="10" version="10"}%
----+!! Кластер виртуализации
-
-%TOC%
-
----++ Список Host-серверов в кластере %BASETOPIC%
-
-%SEARCH{
-"lc(DeviceType)='kvmhost' and VirtualCluster='%BASETOPIC%'"
-topic="Server*"
-type="query"
-nosearch="on"
-header="|*Name*|*CPU*|*Memory*|*IP*|*Description*|*Rack*|"
-format="| [[$topic][$formfield(DnsName)]] | $formfield(DeviceCPU) | $formfield(DeviceMemory) | $formfield(DeviceIP) | $formfield(Description) | $formfield(Rack) |"
-}%
-
----++ Виртуальные сервера в облаке
-
-%SEARCH{
-"lc(DeviceType)~'virtual*' and VirtualCluster='%BASETOPIC%'"
-topic="Server*"
-type="query"
-nosearch="on"
-header="|*ID*|*Name*|*Virtualization*|*CPU Count*|*Memory*|*OS*|*IP*|*Description*|"
-format="| $formfield(VmID) | [[$topic][$formfield(DnsName)]] | $formfield(Device Type) | $formfield(Device CPU) | $formfield(Device Memory) | $formfield(Device OS) | $formfield(Device IP) | $formfield(Description) |"
-}%
-
----++ Добавить
-
-%INCLUDE{IncludeAddVServerCluster}%
-
-%INCLUDE{IncludeWorkflow}%

+ 0 - 23
docs/wiki/foswiki/data/DefaultVirtualHostTemplate.txt

@@ -1,23 +0,0 @@
----+!! Виртуальная машина %FORMFIELD{"DnsName" topic="%BASETOPIC%"}% на %FORMFIELD{"Name" topic="%FORMFIELD{"ParentHost" topic="%BASETOPIC%"}%"}%
-
-%TOC%
-
----++ Система
-
-ОС:
-
-%INCLUDE{IncludeHeaderVirtualHost}%
-
----++ Дисковая подсистема
-
----++ Сеть
-
-%INCLUDE{IncludeBottomVirtualHost}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormVirtual"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 9
docs/wiki/foswiki/data/DefaultVlanTemplate.txt

@@ -1,9 +0,0 @@
-%META:TOPICINFO{author="roman" date="1602536006" format="1.1" version="1"}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormVlan"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 19
docs/wiki/foswiki/data/DefaultVoipGateTemplate.txt

@@ -1,19 +0,0 @@
----+!!  %FORMFIELD{"DeviceType" topic="%BASETOPIC%"}%  %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderVoipGate}%
-
-%INCLUDE{IncludeBottomVoipGate}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormNetDevice"}%
-%META:PREFERENCE{name="DENYTOPICVIEW" title="DENYTOPICVIEW" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup, VoipAdminsGroup"}%
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="registeredusers"}%
-%META:PREFERENCE{name="PERMSET_VIEW_DETAILS" title="PERMSET_VIEW_DETAILS" type="Local" value="AdminGroup, VoipAdminsGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup, VoipAdminsGroup"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 19
docs/wiki/foswiki/data/DefaultWirelessProfileTemplate.txt

@@ -1,19 +0,0 @@
----+ Wireless SSID: %FORMFIELD{"WirelessSSID" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeFindWPapList}%
-
----++ Добавить
-
-%INCLUDE{IncludeAddAuthPSK}%
-
----++ Работа
-
-%COMMENT{type="workflow"}%
-
--- %WIKIUSERNAME% - %DATE%
-
-%META:FORM{name="FormWirelessProfile"}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 43
docs/wiki/foswiki/data/DefaultWlcTemplate.txt

@@ -1,43 +0,0 @@
----+ Wireless Controller %FORMFIELD{"DnsName" topic="%BASETOPIC%"}%
-
-%INCLUDE{IncludeHeaderNetDev}%
-
----++ Список клиентов (Huawei)
-
-<div id="container1"></div>
-
-<script type="text/javascript">
-$(function() {
-  $("#container1").load("%SCRIPTURLPATH{"rest"}%/RenderPlugin/tag",
-  { name: 'WlcINFO',
-    host: '%FORMFIELD{"DeviceIP" topic="%BASETOPIC%"}%',
-    community: '%FORMFIELD{"Community" topic="%BASETOPIC%"}%',
-    topic: '%BASEWEB%.%BASETOPIC%',
-    web: '%BASEWEB%',
-    render: true }
-);
-});
-</script>
-
----++ Список клиентов (Mikrotik)
-
-<div id="container1"></div>
-
-<script type="text/javascript">
-$(function() {
-  $("#container1").load("%SCRIPTURLPATH{"rest"}%/RenderPlugin/tag",
-  { name: 'CapsManINFO',
-    host: '%FORMFIELD{"DeviceIP" topic="%BASETOPIC%"}%',
-    community: '%FORMFIELD{"Community" topic="%BASETOPIC%"}%',
-    topic: '%BASEWEB%.%BASETOPIC%',
-    web: '%BASEWEB%',
-    render: true }
-);
-});
-</script>
-
-%INCLUDE{IncludeBottomNetDev}%
-
-%META:PREFERENCE{name="ALLOWTOPICCHANGE" title="ALLOWTOPICCHANGE" type="Set" value="AdminGroup"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="details"}%
-%META:PREFERENCE{name="PERMSET_CHANGE_DETAILS" title="PERMSET_CHANGE_DETAILS" type="Local" value="AdminGroup"}%

+ 0 - 82
docs/wiki/foswiki/data/FaqBbb.txt

@@ -1,82 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1606988365" format="1.1" reprev="1" version="1"}%
-%META:TOPICPARENT{name="ListOfFaq"}%
-
----+!! Нюансы настройки BigBlueButton
-
-%TOC%
-
----++ Указание сервера stun
-
-/usr/share/bbb-web/WEB-INF/classes/spring/turn-stun-servers.xml - здесь поменять параметры. Сервер stun в отличии от turn не принимает ключ авторизации! Для работы с приватным сервером его лучше не указывать. Или использовать анонимный stun
-
----++ Greenlight
-
-Это моднявая панель управления пользователями. Работает в докер-контайнере. Контейнер пихает в домашний каталог юзера, от которого ставится! Т.е. при запуске инсталляции от рута или через sudo поставлено оно будет в первоначального юзера. У нас используется bbb.
-
-~/greenlight/.env - основной файл настроек
-
----+++ Параметры 
-
-SAFE_HOSTS=bbb.example.com - имя хоста, на котором работает конференция
-
----++++ SECRET_KEY_BASE в конфигурации получаем так
-
-<verbatim>
-docker run --rm bigbluebutton/greenlight:v2 bundle exec rake secret
-</verbatim>
-
----++++ BigBlueButton Credentials
-
-<verbatim>
-sudo bbb-conf --secret
-</verbatim>
-
-В .env файле указываем полученные параметры BIGBLUEBUTTON_ENDPOINT & BIGBLUEBUTTON_SECRET
-
----+++ Проверка конфигурации
-
-<verbatim>
-docker run --rm --env-file .env bigbluebutton/greenlight:v2 bundle exec rake conf:check
-</verbatim>
-
----+++ Запуск/остановка/обновление
-
----++++ Первоначальная настройка
-<verbatim>
-cd ~/greenlight
-docker-compose -v
-docker run --rm bigbluebutton/greenlight:v2 cat ./docker-compose.yml > docker-compose.yml
-export pass=$(openssl rand -hex 8); sed -i 's/POSTGRES_PASSWORD=password/POSTGRES_PASSWORD='$pass'/g' docker-compose.yml;sed -i 's/DB_PASSWORD=password/DB_PASSWORD='$pass'/g' .env
-docker-compose up -d
-</verbatim>
-
----++++ Старт/стоп
-
-<verbatim>
-docker-compose down
-docker-compose up -d
-</verbatim>
-
----++++ Обновление
-
-<verbatim>
-cd ~/greenlight
-docker pull bigbluebutton/greenlight:v2
-docker-compose down
-docker-compose up -d
-</verbatim>
-
----++ Поддерживаемые браузеры
-
-https://bbb.one.ru/html5client/useragent - здесь смотрим, что наш браузер о себе думает
-
-/usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml - здесь дописать нужное и скрестить пальцы
-
-
--- Main.RomanDmitriev - 03 Dec 2020
-
-
-%META:PREFERENCE{name="DENYTOPICVIEW" title="DENYTOPICVIEW" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="DENYTOPICCHANGE" title="DENYTOPICCHANGE" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="registeredusers"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="registeredusers"}%

+ 0 - 185
docs/wiki/foswiki/data/FaqOpenssl.txt

@@ -1,185 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1606986355" format="1.1" reprev="1" version="3"}%
-%META:TOPICPARENT{name="ListOfFaq"}%
----+!! Полезные команды Openssl
-
-Если что-то не получается - идите [[https://ssl4less.ru/ssl-tools/convert-certificate.html][сюда]]. При копипасте заменить символ "-". Он наверняка будет не тот. Часть команд требует опции -passout pass:PASSWORD или -passin pass:PASSWORD или обоих вместе. 
-
-%TOC%
-
----++ Типы сертификатов
-
-   * PEM - очень часто используется в Linux based  системах или оборудовании, файлы такого формата сертификата используют расширение .cer, .crt, and .pem.
-   * DER - двоичная формат сертификата. DER формат не содержит текста "BEGIN CERTIFICATE/END CERTIFICATE", формат DER чаще всего использует расширение .der
-   * PKCS#7 или P7B - эти форматы сертификата хранятся в формате Base64 ASCII и чаще всего имеют расширения файлов .p7b или .p7c.  Файл P7B, кроме самого сертификата содержит цепочку сертификатов (открытых ключей) выпускающих центров сертификации (Intermediate CAs). Этот формат поддерживается в Microsoft Windows и Java Tomcat.
-   * PKCS#12 или PFX - эти форматы представляют собой двоичный формат для хранения сертификата сервера, промежуточных сертификатов и закрытого ключа в одном зашифрованном файле. Файлы такого формата сертификата используют расширение .pfx and .p12. PFX файлы обычно используются на windows машинах для импорта/экспорта сертификатов и закрытого ключа. 
-
----++ Создание нового секретного ключа и запрос на получение сертификата
-<verbatim>
-openssl req -out cert.csr -newkey rsa:2048 -nodes -key cert.key
-</verbatim>
-
-Команда генерирует CSR и файл 2048-битногоRSA-ключа. Если вы собираетесь использовать этот сертификат на Apache или Nginx, то необходимо отправить CSR-файл в центр сертификации. Он предоставит вам заверенный сертификат (в формате der или pem), который нужно настроить на веб-сервере Apache или Nginx.
-
----++ Создание самоподписанного сертификата
-
-<verbatim>
-openssl req -x509 -sha256 -nodes -days 730 -newkey rsa:2048 -key selfsigned.key -out sfcert.pem
-</verbatim>
-
-Команда генерирует самозаверенный сертификат и файл 2048-битного RSA-ключа. 
-
----++ Верификация CSR-файла
-
-<verbatim>
-openssl req -noout -text -in cert.csr
-</verbatim>
-
-Верификация необходима, чтобы отправленный в регистрационный центр CSR-файл содержал всю необходимую информацию.
-
----++ Создание секретного RSA-ключа
-<verbatim>
-openssl genrsa -out private.key 2048
-</verbatim>
-
----++ Создание CSR с использованием существующего секретного ключа
-<verbatim>
-openssl req -out certificate.csr -keyexisting.key -new
-</verbatim>
-Если не хотите создавать новый секретный ключ вместо существующего, выполните приведенную выше команду.
-
----++ Удаление пароля-фразы из ключа
-<verbatim>
-openssl rsa -in certkey.key -out nopassphrase.key
-</verbatim>
-Если вы используете составной пароль (фразу) в файле ключа и работаете на Apache, то при каждом запуске нужно вводить секретную фразу. Если вас это раздражает, то можно использовать приведенную выше команду, чтобы удалить пароль-фразу из существующего ключа.
-
----++ Верификация секретного ключа
-<verbatim>
-openss lrsa -in certkey.key -check
-</verbatim>
-
----++ Печать содержимого файла сертификата
-<verbatim>
-openssl x509 -in certfile.pem -text -noout
-</verbatim>
-
----++ Верификация центра сертификации
-<verbatim>
-openssl x509 -in certfile.pem -noout -issuer -issuer_hash
-</verbatim>
-
----++ Проверка хеш-значения сертификата
-<verbatim>
-openssl x509 -noout -hash -in bestflare.pem
-</verbatim>
-
----++ Проверка содержимого сертификата в формате PKCS12
-<verbatim>
-openssl pkcs12 -info -nodes -in cert.p12
-</verbatim>
-PKCS12 является двоичным форматом, поэтому вы не сможете просмотреть его содержимое в текстовом редакторе. Для просмотра файла в формате PKCS12 используйте приведенную выше команду.
-
----++ Проверка даты истечения срока действия PEM-файла
-<verbatim>
-openssl x509 -noout -in certificate.pem -dates
-</verbatim>
-
----++ Конвертация сертификатов
-
----+++ Конвертирование x509 в PEM
-<verbatim>
-openssl x509 -in certificate.cer -outform PEM -out certificate.pem 
-</verbatim>
-
----+++ Преобразование формата DER в PEM
-<verbatim>
-
-openssl x509 -inform der -in sslcert.der -out sslcert.pem
-</verbatim>
-
-Центр сертификации предоставляет SSL-сертификат в формате .der. Если вам необходимо использовать его в формате apache или .pem, примените приведенную выше команду для соответствующего преобразования.
-
----+++ Преобразование формата PEM в DER
-<verbatim>
-openssl x509 -outform der -in sslcert.pem -out sslcert.der
-</verbatim>
-
----+++ Преобразование сертификата и секретного ключа в формат PKCS#12
-<verbatim>
-openssl pkcs12 -export -out sslcert.pfx -inkey key.pem -in sslcert.crt
-</verbatim>
-
-Если необходимо использовать сертификат с оборудованием принимающим только формат PKCS#12, примените приведенную выше команду. Она генерирует один pfx файл, содержащий сертификат и ключ.
-
-Вы также можете включить цепочку сертификатов, передав параметр -chain, как показано в примере ниже.
-
-<verbatim>
-openssl pkcs12 -export -out sslcert.pfx -inkey key.pem -in sslcert.cert -chain cacert.pem
-</verbatim>
-
----+++ Конвертирование PEM в P7B
-<verbatim>
-openssl crl2pkcs7 -nocrl -certfile certificate.pem -out certificate.p7b -certfile CACert.cer 
-</verbatim>
-
----+++ Конвертирование PKCS7 в PEM
-<verbatim>
-openssl pkcs7 -print_certs -in certificate.p7b -out certificate.pem
-</verbatim> 
-
----+++ Преобразование формата PKCS12 в PEM-сертификат
-<verbatim>
-openssl pkcs12 -in certificate.pfx -out certificate.cer -nodes 
-</verbatim>
-Если нужно использовать существующий файл в формате pkcs12 на Apache или только в формате pem, в этом поможет приведенная выше команда.
-
----+++ Конвертирование PFX в PKCS#8
-<verbatim>
-openssl pkcs12 -in certificate.pfx -nocerts -nodes -out certificate.pem 
-openSSL pkcs8 -in certificate.pem -topk8 -nocrypt -out certificate.pk8 
-</verbatim>
-
----+++ Конвертирование P7B в PFX
-<verbatim>
-openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
-openssl pkcs12 -export -in certificate.cer -inkey privateKey.key -out certificate.pfx -certfile  cacert.cer 
-</verbatim>
-
----++ Проверка удалённого хоста
-
----+++ Проверка SSL-сертификата определенного URL-адреса
-<verbatim>
-openssls_client -connect yoururl.com:443 -showcerts
-</verbatim>
-
----+++ Проверка срока действия SSL-сертификата для URL-адреса
-<verbatim>
-openssl s_client -connect secureurl.com:443 2>/dev/null | openssl x509 -noout -enddate
-</verbatim>
-
----+++ Проверка, принимается ли на URL-адресе определённая версия SSL/TLS
-<verbatim>
-openssl s_client -connect secureurl.com:443 -ssl2
-openssl s_client -connect secureurl.com:443 -ssl3
-openssl s_client -connect secureurl.com:443 -tls1
-openssl s_client -connect secureurl.com:443 -tls1_1
-openssl s_client -connect secureurl.com:443 -tls1_2
-</verbatim>
-
-Если необходимо проверить, включен ли SSL V2 / V3 или нет, используйте приведенную выше команду. Если он включен, то вы получите сообщение «CONNECTED», в противном случае -сообщение «handshake failure».
-
----+++ Проверка того, принимается ли конкретный шифр на URL-адресе
-<verbatim>
-openssl s_client -cipher 'ECDHE-ECDSA-AES256-SHA' -connect secureurl:443
-</verbatim>
-
-Если шифр будет принят, вы получите сообщение «CONNECTED», иначе - сообщение «handshake failure».
-
-
--- Main.RomanDmitriev - 15 Nov 2020
-
-
-%META:PREFERENCE{name="DENYTOPICVIEW" title="DENYTOPICVIEW" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="DENYTOPICCHANGE" title="DENYTOPICCHANGE" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="registeredusers"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="registeredusers"}%

+ 0 - 131
docs/wiki/foswiki/data/FaqPoe.txt

@@ -1,131 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604300042" format="1.1" reprev="1" version="3"}%
-%META:TOPICPARENT{name="WebHome"}%
----+!! PoE
-%TOC%
-
----++ Стандарты и типы PoE
-
-Технология PoE на данный момент существует в нескольких, кардинально отличающихся видах. Почему так произошло? К тому времени, как ребята из IEEE решили стандартизировать технологию, а произошло это не сразу после ее появления, некоторые корпорации уже изобрели свои собственные реализации PoE. Cisco, к примеру, еще в 2000 году представила питание устройств по витой паре. Да и после принятия официальных стандартов IEEE 802.3af в 2003 году, IEEE 802.3at в 2009 году многие производители внедряют свои собственные способы PoE. В основном, потому что реализация полноценных стандартов 802.3af, 802.3at - это сложно и дорого, а потребителям часто нужны модели эконом-класса. 
-
-В итоге PoE существует в нескольких вариантах: 
-   * по стандарту 802.3af, 
-   * по стандарту 802.3at, 
-   * по фирменным частным стандартам, из которых наиболее известен Passive PoE.   
-
-Питание по витой паре согласно стандартам 802.3af, 802.3at называют активным PoE, питание, реализованное по технологии Passive PoE - пассивным.  
-
-Реализация питания по витой паре в устройствах может различаться по типу распиновки. А также, в зависимости от напряжения, подаваемого на порт, существует несколько классов PoE. Все эти данные должны быть указаны в паспорте производителя и помогают правильно подобрать оборудование для проекта. 
-
----++ Стандарты IEEE 802.3af, 802.3at - активное PoE 
-
----+++ Оборудование PoE и принцип работы
-
-Технология PoE не оказывает влияния на качество передачи данных. Для её реализации используются свойства физического уровня Ethernet:
-* с использованием высокочастотных трансформаторов на обоих концах линии с центральным отводом от обмоток. Постоянное напряжение питания подается на центральные отводы вторичных обмоток этих трансформаторов, и так же с центральных отводов снимается на приемной стороне. Использование центральных отводов сигнальных трансформаторов позволяет без взаимного влияния передавать питание по сигнальным парам, то есть передавать по одним и тем же проводникам и высокочастотные данные, и постоянное напряжение питания;
-* использование свободных пар для подачи питания. Современные кабельные сети Ethernet, соответствующие стандарту [[100BASE-TX]], состоят из четырех пар, две из которых не задействованы.
-   
-Питающие устройства (инжекторы) отличаются по способу подключения питания, при этом питаемые устройства (сплиттеры) являются универсальными. Питаемые устройства должны проектироваться с возможностью приема питания в любом варианте, в том числе и при изменении полярности (например, когда используется перекрестный кабель).
-
-Питающее устройство подает питание в кабель только в том случае, если подключаемое устройство является устройством питаемого типа. Таким образом, оборудование, не поддерживающее технологию PoE и случайно подключенное к питающему устройству, не будет выведено из строя. Фактически, никакое стандартное оборудование Ethernet, соответствующее спецификации и новее, не может быть выведено из строя разностью потенциалов между парами, поскольку стандарт предусматривает обязательную гальваническую развязку. Развязывающие трансформаторы всех производителей тестируются напряжением 500—2000 Vrms. Процедура подачи и отключения питания на кабель состоит из нескольких этапов.
-
----++++ Определение подключения
-Этап определения подключения служит для определения, является ли подключенное на противоположном конце кабеля устройство питаемым (PD). На этом этапе питающее устройство (PSE) подает на кабель напряжение от 2,8 до 10 B и определяет параметры входного сопротивления подключаемого устройства. Для питаемого устройства это сопротивление составляет от 19 до 26,5 кОм с параллельно подключенным конденсатором ёмкостью от 0 до 150 нФ<ref>По данным на микросхему SI3402 указанные номиналы составляют 23,75—26,25 кОм и 50—120 нФ.</ref>. Только после проверки соответствия параметров входного сопротивления для питаемого устройства питающее устройство переходит к следующему этапу, в противном случае питающее устройство повторно, через промежуток времени не менее 2 мс, пытается определить подключение.
-
----++++ Классификация
-После этапа определения подключения питающее устройство может дополнительно выполнять этап классификации, определяя диапазон мощностей, потребляемых питаемым устройством, чтобы затем управлять этой мощностью. Каждому питаемому устройству, в зависимости от заявленной потребляемой мощности, будет присвоен класс от 0 до 4. Минимальный диапазон мощностей имеет класс 0. Класс 4 зарезервирован стандартом для дальнейшего развития. Питающее устройство может снять напряжение с кабеля, если питаемое устройство стало потреблять мощность больше объявленной во время классификации. Классификация выполняется путём введения в кабель питающим устройством напряжения от 14,5 до 20,5 В и измерения тока в линии.
-
----++++ Подключение
-Этап определения подключения служит для определения, является ли подключенное на противоположном конце кабеля устройство питаемым (PD). На этом этапе питающее устройство (PSE) подает на кабель напряжение от 2,8 до 10 B и определяет параметры входного сопротивления подключаемого устройства. Для питаемого устройства это сопротивление составляет от 19 до 26,5 кОм с параллельно подключенным конденсатором ёмкостью от 0 до 150 нФ[7]. Только после проверки соответствия параметров входного сопротивления для питаемого устройства питающее устройство переходит к следующему этапу, в противном случае питающее устройство повторно, через промежуток времени не менее 2 мс, пытается определить подключение.
-
----++++ Подача полного напряжения
-После прохождения этапов определения и классификации питающее устройство подает в кабель напряжение 48 В с фронтом нарастания не быстрее 400 мс. После подачи полного напряжения на питаемое устройство питающее устройство осуществляет контроль его работы двумя способами:
-* если питаемое устройство в течение 400 мс будет потреблять ток меньше 5 мА, то питающее устройство снимает питание с кабеля;
-* питающее устройство подает в кабель напряжение 1,9—5,0 В с частотой 500 Гц и вычисляет входное сопротивление; если это сопротивление будет больше 1980 кОм в течение 400 мс, питающее устройство снимает питание с кабеля.
-
-Кроме того, питающее устройство непрерывно следит за током перегрузки. Если питаемое устройство будет потреблять ток более 400 мА в течение 75 мс, питающее устройство снимет питание с кабеля.
-
----++++ Отключение
-Когда питающее устройство определяет, что питаемое устройство отключено от кабеля или произошла перегрузка потребляемого тока питаемым устройством, происходит снятие напряжение с кабеля за время не менее 500 мс.
-
----+++ Параметры
-| *Характеристика*| *Стандарт 802.3af* | *Стандарт 802.3at (PoE+, PoE plus)*|
-|Диапазон напряжения постоянного тока на питаемом устройстве | от 36 до 57 V (номинальное 48V) | от 42,5 до 57 V |
-|Диапазон напряжения, выдаваемого источником | от 44 до 57 V | от 50 до 57 V |
-|Максимальная мощность PoE-источника | 15,4 Вт | 30 Вт |
-|Максимальная мощность, получаемая PoE-потребителем | 12,95 Вт | 25,50 Вт |
-|Максимальный ток | 350 mA | 600 mA |
-|Максимальное сопротивление кабеля | 20 Ом (для cat.3) | 12,5 Ом (для cat.5)|
-|Классы питания| 0-3 | 0-4 |  
-
----+++ Классы питания 
-
-Самым распространенным является 1 класс питания. 
-|*Класс*| *Стандарт* |*Мощность на порт, Вт* | *Мощность на устройство, Вт* |
-|0 | 802.3af/802.3at | 15,4 | 0,44 - 12,95 |
-|1 | 802.3af/802.3at |4,5 |0,44 - 3,84 |
-|2 | 802.3af/802.3at | 7 | 3,84 - 6,49 |
-|3 | 802.3af/802.3at |15,4 | 6,49 - 12,95 |
-|4 | 802.3at | 30 | 12,95 - 25,5 |
-
----++ Passive PoE 
-
-Этот тип PoE - удешевленный аналог международных стандартов питания по витой паре. Как мы уже говорили выше, полноценная реализация 802.3af/802.3at сложна и повышает стоимость устройства. Поэтому производители сетевого оборудования эконом-сегмента используют вместо них в своей продукции пассивное питание по витой паре. Его особенность в том, что источник Passive PoE не опрашивает питаемое устройство и не согласовывает мощность. По свободным проводникам витой пары просто подается постоянное напряжение. Поэтому, если соединить источник PoE и потребитель, несовместимые друг с другом, оборудование может сгореть: сразу или через некоторое время, в результате постоянного перегрева и подгорания плат. Некоторые производители дополняют технологию Passive PoE полезными функциями. 
-
-Например, PoE out в устройствах MikroTik способно определять, подключено ли к питаемому порту устройство, выявлять, нет ли перегрузки или короткого замыкания. Кроме того, функциями PoE на большинстве устройств MikroTik можно управлять: включать, отключать их на портах, менять режим и т. п. Речь, конечно идет не о простеньких PoE-шнурах, а о реализации PoE в роутерах, коммутаторах и другом оборудовании производителя.
-
-Источники Passive PoE довольно широко варьируются по напряжению, мощности, силе тока. Чаще всего производители выпускают их под свое оборудование, поэтому в каждом отдельном случае нужно подбирать PoE-источник под конкретные потребности. 
-
----++ Типы распиновки 
-
----+++ Для стандарта 802.3af 
-   * Тип А. И электричество, и данные подаются по жилам 1, 2, 3, 6. Жилы 5, 7, 8 не используются. 
-   * Тип B. Для подачи электропитания используются жилы 4, 5, 7, 8. Данные передаются по остальным. 
-
----+++ Для стандарта 802.3at
-   * Применяется только тип B.  Использование распиновки типа A запрещено стандартом. 
-
----+++ Для Passive PoE: 
-В большинстве случаев подача электропитания осуществляется по проводникам 4, 5, 7, 8 (как в типе B стандарта 802.3af).  
-
-   * Распиновка PoE: <br />
-     <img src="%ATTACHURLPATH%/poe-pinout.jpg" alt="poe-pinout.jpg" width='1107' height='466' />
-
-Существует также распиновка по третьему типу, когда для подачи питания задействуются все жилы стандартного четырехпарного кабеля, но она встречается реже, обычно в фирменных реализациях PoE, например, UPOE от Cisco. Если с обеих сторон сети вы устанавливаете оборудование с поддержкой стандартов 802.3af/802.3at, то тип распиновки, фактически не имеет значения, так как устройство-потребитель PoE по стандарту может работать с любой из них. Однако если речь идет о совмещении оборудования разных стандартов, это может быть важным.
-
----++ Кабель для PoE 
-От качества кабеля напрямую зависит качество PoE, и то, на какую расстояние его можно провести. Витую пару необходимо подбирать: 
-   * четырехпарную, не ниже cat.5e, 
-   * медную, а не омедненную (не биметалл), 
-   * с толщиной проводников не менее 0,51 мм (24 AWG), 
-   * с сопротивлением проводников не выше 9,38 Ом/100 м (более высокие значения способствуют большей потери мощности в кабеле)
-   
----++ Длина PoE 
-Согласно стандартов 802.3af и 802.3at длина кабеля для PoE заявляется равной 100 метрам. Однако на практике максимальная длина витой пары PoE зависит от многих факторов, в том числе заранее неизвестных: 
-   * сечения проводников, 
-   * металла проводников, 
-   * количества изгибов на линии, 
-   * наводок, неравномерных характеристик витой пары, перегибов кабеля и пр.   
-
-Со скидкой на перегибы и прочее максимальная длина кабеля PoE желательна не более 75 метров. Однако с действительно качественным кабелем можно сделать и больший пролет. Если же мы говорим о Passive PoE, то здесь длина может быть меньше, вплоть до 30-60 метров. 
-
-Расчет линии надо проводить с учетом: 
-   * какое напряжение нужно питаемому устройству (в том числе при пиковой нагрузке), 
-   * какое напряжение выдает источник, 
-   * каково сопротивление витой пары и, соответственно, каковы будут потери напряжения на линии.  
-
----++ Бюджет мощности PoE   
-При расчете бюджета PoE нужно:
-
-   * Посчитать общую мощность всех потребителей PoE на линии. Подсчет необходимо производить по пиковой нагрузке, с учетом все работающих модулей оборудования. 
-   * Соответственно мощности потребителей подобрать PoE-источник, обратив внимание на мощность отдельных портов (какое устройство к какому порту вы будете подключать?) и суммарную мощность источника (не превышает ли ее общая мощность потребителей?) При этом желательно, чтобы при расчете мощность PoE-источника (коммутатора, роутера) не использовалась более чем на 75% (закладываем резерв). Если линия планирует использоваться не один год, нужно понимать. что со временем выдаваемая источником PoE мощность будет снижаться, потери могут составлять до 10% в год. 
-   * Просчитать потери мощности от источника до потребителя. Главный фактор, от которого они зависят - это сопротивление проводников. Помимо значений по умолчанию, необходимо взять в расчет также и то, что сопротивление проводника повышается при нагреве, а значит, если кабель проложен в помещении с повышенной температурой, или находится под воздействием солнечных лучей, устройство на конце линии будет получать гораздо меньшую мощность, чем в теории.
-
--- Main.RomanDmitriev - 31 Oct 2020
-
-
-
-%META:FILEATTACHMENT{name="poe-pinout.jpg" attachment="poe-pinout.jpg" attr="h" comment="Распиновка PoE" date="1604138207" path="poe-pinout.jpg" size="91801" user="roman" version="1"}%
-%META:PREFERENCE{name="DENYTOPICVIEW" title="DENYTOPICVIEW" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="DENYTOPICCHANGE" title="DENYTOPICCHANGE" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="registeredusers"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="registeredusers"}%

+ 0 - 34
docs/wiki/foswiki/data/FormAP.txt

@@ -1,34 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Firmware | text | 100 | |
-| Community | text | 20 | |
-| Poe In | select | 1 | %INCLUDE{IncludeSelectPoeType}% |
-| SN | text | 80 | |
-| WLAC | checkbox | 1 | Yes |
-| WLAC Name | select | 1 | %INCLUDE{IncludeSelectWLAC}% |
-| Wlac Ap Id | text | 10 | |
-| Wlac Ap Group | text | 15 | |
-| SSIDs | select+multi | 7 | %INCLUDE{IncludeSelectSSID}% |
-| Uplink | text | 20 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 20 | |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Mac | text | 20 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 29
docs/wiki/foswiki/data/FormATS.txt

@@ -1,29 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Rack | select | 1 | %INCLUDE{IncludeSelectRack}% |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Firmware | text | 100 | |
-| Community | text | 20 | |
-| SN | text | 80 | |
-| Uplink | text | 20 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 20 | |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Mac | text | 20 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 38
docs/wiki/foswiki/data/FormAirConditioning.txt

@@ -1,38 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* | *Description* |
-| Name | text  | 80 | %BASETOPIC% | |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% | Место расположения |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% | Тип устройства |
-| Description | text | 80 | | Описание устройства |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% | Производитель |
-| Device Model | text | 80 | | Модель устройтства |
-| Condition Type | select+values | 1 | %INCLUDE{IncludeSelectAriCondType}% | Тип кондиционера |
-| Work Mode | select+multi+values | 4 | ночной режим=night, обогрев=hot, охлаждение=cool, осушение=dry, автоматический режим=auto, вентиляция=fan | Режимы работы |
-| Max Area | text | 10 | | Максимальная площадь помещения |
-| Invertor | checkbox | 1 | Yes | Сплит-система инверторного типа способна автоматически изменять частоту вращения электродвигателя компрессора, поддерживая ее на оптимальном уровне |
-| Compressor | text | 80 | | В данной характеристике указана фирма-производитель компрессора, установленного в определенной модели сплит-системы. |
-| Refrigerating Medium | select | 1 | R32, R410A | Хладагент |
-| Warm Start | checkbox | 1 | Yes | При работе в режиме обогрева исключается подача холодного воздуха. Кондиционер запускает вентилятор только после того, как становится возможным нагнетание теплого воздуха. |
-| Dehumidification Rate | text | 10 | | Интенсивность осушения показывает объем поглощенной влаги из воздуха в литрах за час.  |
-| Remote Managment | select | 1 | , IR, WiFi | Удалённое управление |
-| IFeel | checkbox | 1 | Yes | При включении функции I-FEEL температура в помещении измеряется не по датчику, расположенному во внутреннем блоке, а по температурному датчику, встроенному в пульт дистанционного управления. |
-| Cooling Capacity | text | 10 | | В отличие от потребляемой мощности, мощность кондиционера при охлаждении является параметром, получаемым опытным путем. Эта величина, выражаемая в Вт, характеризует тепловую энергию, которую кондиционер способен «выводить» из помещения при работе в режиме охлаждения.  |
-| Heating Power | text | 10 | | Показатель, характеризующий рассеиваемое кондиционером тепло в режиме обогрева.  |
-| Indoor Unit Air Flow | text | 10 | | Количество проходящего через внутренний блок воздуха. м3/ч |
-| ERR | text | 10 | | Характеристика сплит-системы, базирующаяся на общепринятом показателе энергоэффективности ERR |
-| COP | text | 10 | | Характеристика сплит-системы, базирующаяся на общепринятом показателе энергоэффективности COP |
-| Self Diagnosis | checkbox | 1 | Yes | Функция, позволяющая информировать пользователя о виде возникших неполадок или о том, какие плановые работы (например – очистку фильтра) необходимо произвести. |
-| Anti Ice System | checkbox | 1 | Yes | Кондиционер защищен от образования льда и инея на поверхности внешнего блока. Система функционирует в автоматическом режиме. |
-| Protection | select+multi+values | 3 | по давлению=pressure, ip24=ip24, от переохлаждения=hypothermia, ipx0=ipx0, ipx4=ipx4 | Классы защиты |
-| Outdoor Unit Noise Level | text | 10 | | Уровень шума наружного блока, dBm |
-| Refrigerant Piping Maximum Length | text | 10 | | Показатель, обуславливающий максимально допустимое расстояние между внутренним и внешним блоком сплит-системы. |
-| Disabled | checkbox | 1 |  Yes | Отключен |
-| Deleted | checkbox | 1 |  Yes | Снят |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 14
docs/wiki/foswiki/data/FormBuilding.txt

@@ -1,14 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1602792683" format="1.1" reprev="1" version="3"}%
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Parent | text  | 80 | %BASETOPIC% |
-| Name | text  | 80 | %BASETOPIC% |
-| Description | text | 80 | |
-| Address | text  | 255 | |
-
--- Main.RomanDmitriev - 2020/10/05
-
-%META:PREFERENCE{name="DENYTOPICVIEW" title="DENYTOPICVIEW" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="DENYTOPICCHANGE" title="DENYTOPICCHANGE" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="registeredusers"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="registeredusers"}%

+ 0 - 32
docs/wiki/foswiki/data/FormCPO.txt

@@ -1,32 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Rack | select | 1 | %INCLUDE{IncludeSelectRack}% |
-| Unit | text | 10 | |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Firmware | text | 100 | |
-| Power Outlets | text | 10 | |
-| Network Interface | select+multi+values | 3 | %INCLUDE{IncludeSelectEtherNetType}% |
-| Community | text | 20 | |
-| SN | text | 80 | |
-| Uplink | text | 20 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 20 | |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Mac | text | 16 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 18
docs/wiki/foswiki/data/FormCertificate.txt

@@ -1,18 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604395580" format="1.1" reprev="2" version="3"}%
----+ Certificate Form
-
-This is a topic for used certificate info
-
----++ Data form definition of used certifacates
-
-| *Name*  | *Type* | *Size* | *Values* |
-| CertType | select | 1 | Free, Paid |
-| Name | text  | 80 | %BASETOPIC% |
-| Dns Name | text | 80 | |
-| Description | text | 80 | |
-| Cert Alt names | text | 255 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectCertParent}% |
-| Cert Vendor | text | 80 | |
-| Cert Period | text | 80 | |
-| Cert Valid To | date | | |
--- Main.RomanDmitriev - 2020/10/05

+ 0 - 20
docs/wiki/foswiki/data/FormDevice.txt

@@ -1,20 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Rack | select | 1 | %INCLUDE{IncludeSelectRack}% |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Firmware | text | 100 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 10
docs/wiki/foswiki/data/FormDhcpPool.txt

@@ -1,10 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1602757095" format="1.1" reprev="3" version="3"}%
----+ Basic info dhcp pool
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text | 40 | %BASETOPIC% |
-| Description | text | 80 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-
--- Main.RomanDmitriev - 2020/10/11

+ 0 - 10
docs/wiki/foswiki/data/FormDnsZone.txt

@@ -1,10 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1605425093" format="1.1" reprev="3" version="3"}%
----++ DNS zone
-
-| *Name* | *Type* | *Size* | *Values* |
-| Name | text | 80 | %BASETOPIC% |
-| Description | text | 80 | |
-| Dns Zone Name | text | 80 | |
-| Domain Name | select | 1 | %INCLUDE{IncludeSelectDomain}% |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 19
docs/wiki/foswiki/data/FormDomain.txt

@@ -1,19 +0,0 @@
-%META:TOPICINFO{author="roman" date="1602403329" format="1.1" version="1"}%
----+ Domain information Form
-
-This is a topic for registered domains
-
----++ Data form definition of registered domains
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Domain Type | select | 1 | Internet, Intranet |
-| Domain Created | date |  | |
-| Domain Paid | date |  | |
-| Domain Free | date| | |
-| Registrator | text | 40 | |
-| Dogovor | text | 40 | |
-
--- Main.RomanDmitriev - 2020/10/11

+ 0 - 33
docs/wiki/foswiki/data/FormEquipmentHdd.txt

@@ -1,33 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for HDD
-
-This is a topic, used for HDD
-
----++ Data form definition
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Parent | select | 1 | %INCLUDE{IncludeSelectHardware}% |
-| Description | text | 80 | |
-| System Name | text | 10 | |
-| Logical Volume | text | 10 | |
-| Mount | text | 40 | |
-| Slot | text | 10 | |
-| Equipment Type | text | 10 | %INCLUDE{IncludeSelectEquipmentType}% |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectHddType}% |
-| Interface Type | select | 1 | SATA, SATA2, SATA3, SAS, SCSI, NVME, ATA, USB |
-| Form Factor | select | 1 | , 2.5, 3.5 |
-| Family | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Size | text | 10 | |
-| Firmware | text | 100 | |
-| SN | text | 80 | |
-| WWN | text | 80 | |
-| Date Commissioning | date | | |
-| Last Check | date | | |
-| Last Age | text | 10 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 36
docs/wiki/foswiki/data/FormHardware.txt

@@ -1,36 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1605521718" format="1.1" reprev="4" version="4"}%
-%META:TOPICPARENT{name="WebHome"}%
----+ Server Hardware Form
-
-This is a topic, used for create server hardware
-
----++ Data form definition of server hardwares topics
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Server OS | select | 1 | %INCLUDE{IncludeSelectHardwareOs}% |
-| Name | text  | 80 | %BASETOPIC% |
-| Description | text | 80 | |
-| Form Factor | select+values | 1 | 1U, 2U, 3U, 4U, 5U, Other |
-| Manufacturer | text | 80 | |
-| Product Name | text | 80 | |
-| Serial Number | text | 80 | |
-| Base Board | text | 80 | |
-| CPU | text | 80 | |
-| Cpu Count | text | 2 | |
-| Cores Per Cpu | text | 2 | |
-| Network | text | 80 | |
-| Network Count | text | 2 | |
-| Memory | text | 10 | |
-| Memory Type | select | 1 | DDR, DDR2, DDR3, DDR4 |
-| Memory Form Factor | select | 1 | DIMM, FB-DIMM, RDIMM, LRDIMM |
-| Memory ECC | checkbox | 1 | Yes |
-| Memory REG | checkbox | 1 | Yes |
-| Memory Freq | text | 10 | |
-| RAID | text | 80 | |
-| Hdd Type | select+multi+values | 4 | %INCLUDE{IncludeSelectHddType}% |
-| Hdd Form Factor | select+multi+values | 2 | 2.5, 3.5 |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/04

+ 0 - 13
docs/wiki/foswiki/data/FormIP.txt

@@ -1,13 +0,0 @@
-%META:TOPICINFO{author="roman" date="1602421276" format="1.1" version="1"}%
----+ Basic info for ip-address
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text | 40 | %BASETOPIC% |
-| IP | text | 18 | |
-| Mac | text | 20 | |
-| Description | text | 80 | |
-| Dns Name | text  | 80 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetHost}% |
-| Subnet Parent | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-
--- Main.RomanDmitriev - 2020/10/11

+ 0 - 30
docs/wiki/foswiki/data/FormIPCAM.txt

@@ -1,30 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Videoregistrator | select | 1 | %INCLUDE{IncludeSelectVideoReg}% |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Firmware | text | 100 | |
-| Community | text | 20 | |
-| Poe In | select | 1 | %INCLUDE{IncludeSelectPoeType}% |
-| SN | text | 80 | |
-| Uplink | text | 20 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 20 | |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Mac | text | 20 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 26
docs/wiki/foswiki/data/FormKvmHost.txt

@@ -1,26 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1603006547" format="1.1" reprev="6" version="3"}%
----++ Data form
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Hardware | select | 1 | %INCLUDE{IncludeSelectClusterHardware}% |
-| Name | text  | 80 | %BASETOPIC% |
-| Dns Name | text | 80 | |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Rack | select | 1 | %INCLUDE{IncludeSelectRack}% |
-| Description | text | 80 | |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| VirtualCluster | select | 1 | %INCLUDE{IncludeSelectCluster}% |
-| Device OS | select | 1 | %INCLUDE{IncludeSelectOsList}% |
-| Device CPU | text | 20 | |
-| Device Memory | text | 20 | |
-| Uplink | text | 40 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 40 | |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Mac | text | 20 | |
-| User List | text | 80 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/05

+ 0 - 33
docs/wiki/foswiki/data/FormNetDevice.txt

@@ -1,33 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Rack | select | 1 | %INCLUDE{IncludeSelectRack}% |
-| Unit | text | 10 | |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Firmware | text | 100 | |
-| Community | text | 20 | |
-| Poe In | select | 1 | %INCLUDE{IncludeSelectPoeType}% |
-| Poe Out | select | 1 |  %INCLUDE{IncludeSelectPoeType}% |
-| Poe W | text | 10 | |
-| SN | text | 80 | |
-| Uplink | text | 20 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 20 | |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Mac | text | 20 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 32
docs/wiki/foswiki/data/FormPhone.txt

@@ -1,32 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Name | text  | 80 | %BASETOPIC% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| ATS | select+multi | 2 | %INCLUDE{IncludeSelectATS}% |
-| Voip Gate | select | 1 | %INCLUDE{IncludeSelectVoipGate}% |
-| Phone Type | select | 1 | %INCLUDE{IncludeSelectPhoneTypes}%  |
-| Phone Number | text | 30 | |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Firmware | text | 100 | |
-| Community | text | 20 | |
-| SN | text | 80 | |
-| Uplink | text | 20 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 20 | |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Mac | text | 20 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 38
docs/wiki/foswiki/data/FormPrinter.txt

@@ -1,38 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Share Name | text | 40 | |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Firmware | text | 100 | |
-| Printing Type | select+values | 1 | лазерный/светодиодный=laser, струйный=inkjet, сублимационный=sublimation, термопринтер=thermal |
-| Color | checkbox | 1 | Yes |
-| MFU | checkbox | 1 | Yes |
-| PaperSize | select | 1 | A4, A3, A3+ |
-| Email Print | checkbox | 1 | Yes |
-| iPrint | checkbox | 1 | Yes |
-| Wi-Fi Direct | checkbox | 1 | Yes |
-| Network | checkbox | 1 | Yes |
-| Wifi | checkbox | 1 | Yes |
-| Community | text | 20 | |
-| SN | text | 80 | |
-| Uplink | text | 20 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 20 | |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Mac | text | 20 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 9
docs/wiki/foswiki/data/FormRack.txt

@@ -1,9 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1602757095" format="1.1" reprev="3" version="3"}%
----+ Basic info by closet
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Parent | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Name | text | 40 | %BASETOPIC% |
-| Description | text | 80 | |
-
--- Main.RomanDmitriev - 2020/10/11

+ 0 - 9
docs/wiki/foswiki/data/FormRoom.txt

@@ -1,9 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1602757095" format="1.1" reprev="3" version="3"}%
----+ Basic info by closet
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Parent | select | 1 | %INCLUDE{IncludeSelectBuilding}% |
-| Name | text | 40 | %BASETOPIC% |
-| Description | text | 80 | |
-
--- Main.RomanDmitriev - 2020/10/11

+ 0 - 41
docs/wiki/foswiki/data/FormRouter.txt

@@ -1,41 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Rack | select | 1 | %INCLUDE{IncludeSelectRack}% |
-| Unit | text | 10 | |
-| Hardware | select | 1 | %INCLUDE{IncludeSelectHardware}% |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Device OS | select | 1 | %INCLUDE{IncludeSelectOsList}% |
-| Device CPU | text | 20 | |
-| Device Memory | text | 20 | |
-| Routing Type | select+multi+values | 4 | BGP, RIP, OSPF, Static |
-| Firmware | text | 100 | |
-| Community | text | 20 | |
-| Poe In | select | 1 | %INCLUDE{IncludeSelectPoeType}% |
-| Poe Out | select | 1 | %INCLUDE{IncludeSelectPoeType}% |
-| Poe W | text | 10 | |
-| SN | text | 80 | |
-| Uplink | text | 20 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 20 | |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Managment IP | text | 20 | |
-| Mac | text | 20 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
-
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 30
docs/wiki/foswiki/data/FormSensor.txt

@@ -1,30 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604772215" format="1.1" reprev="1" version="7"}%
----+ Basic info for network device
-
-This is a topic, used for create network device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Dns Name | text  | 80 | |
-| Description | text | 80 | |
-| Vendor | select | 1 | %INCLUDE{IncludeSelectVendor}% |
-| Device Model | text | 80 | |
-| Firmware | text | 100 | |
-| Community | text | 20 | |
-| Poe In | select | 1 | %INCLUDE{IncludeSelectPoeType}% |
-| Sensor Types | select+multi+values | 9 | Напряжение=Volt, Ток=Circut, Влажность=Humidity, Температура=Temperature, Давление=Pressure, Протечка=Leak, Дым=Smoke, Пожар=Fire, Контакт=DryContact  |
-| SN | text | 80 | |
-| Uplink | text | 20 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 20 | |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| Mac | text | 16 | |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 21
docs/wiki/foswiki/data/FormServerOs.txt

@@ -1,21 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1603006547" format="1.1" reprev="6" version="3"}%
----++ Data form
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Hardware | select | 1 | %INCLUDE{IncludeSelectClusterHardware}% |
-| Device Type | select | 1 | %INCLUDE{IncludeSelectDeviceType}% |
-| Name | text  | 80 | %BASETOPIC% |
-| Dns Name | text | 80 | |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Rack | select | 1 | %INCLUDE{IncludeSelectRack}% |
-| Description | text | 80 | |
-| Device OS | select | 1 | %INCLUDE{IncludeSelectOsList}% |
-| Device CPU | text | 20 | |
-| Device Memory | text | 20 | |
-| Uplink | text | 40 | |
-| Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Parent Port | text | 40 | |
-| Device Subnet | select | 1 | %INCLUDE{IncludeSelectSubnet}% |
-| Device IP | text | 20 | |
-| User List | text | 80 | |
--- Main.RomanDmitriev - 2020/10/05

+ 0 - 10
docs/wiki/foswiki/data/FormService.txt

@@ -1,10 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1602685881" format="1.1" reprev="2" version="3"}%
----++ Data form
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Parent | select | 1 | %INCLUDE{IncludeSelectDeviceParent}% |
-| Name | text  | 80 | %BASETOPIC% |
-| Description | text | 80 | |
-| Service type | select | 1 | %INCLUDE{IncludeSelectServiceType}% |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 12
docs/wiki/foswiki/data/FormServiceDns.txt

@@ -1,12 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1602761200" format="1.1" reprev="1" version="1"}%
----++ Data form
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Parent | select | 1 | %INCLUDE{IncludeSelectDeviceParent}% |
-| Name | text  | 80 | %BASETOPIC% |
-| Description | text | 80 | |
-| Service type | text | 10 | DNS |
-| Zone List | select+multi | 10 | %INCLUDE{IncludeSelectDnsZone}% |
-
--- Main.RomanDmitriev - 2020/10/15
-

+ 0 - 15
docs/wiki/foswiki/data/FormSimple.txt

@@ -1,15 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604238916" format="1.1" reprev="1" version="4"}%
----+ Basic info for device
-
-This is a topic, used for create device
-
----++ Data form definition of server os settings
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Name | text  | 80 | %BASETOPIC% |
-| Place | select | 1 | %INCLUDE{IncludeSelectPlace}% |
-| Rack | select | 1 | %INCLUDE{IncludeSelectRack}% |
-| Unit | text | 10 | |
-| Description | text | 80 | |
-
--- Main.RomanDmitriev - 2020/10/12

+ 0 - 20
docs/wiki/foswiki/data/FormSite.txt

@@ -1,20 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1602792683" format="1.1" reprev="1" version="3"}%
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Parent | select | 1 | %INCLUDE{IncludeSelectServer}% |
-| Name | text  | 80 | %BASETOPIC% |
-| Description | text | 80 | |
-| Dns Name | text  | 80 | |
-| Http proto | select | 1 | https, http |
-| Site alias | text | 80 | |
-| Site IP | text | 20 | |
-| Backend | select | 1 | %INCLUDE{IncludeSelectWebServer}% |
-| Disabled | checkbox | 1 |  Yes |
-| Deleted | checkbox | 1 |  Yes |
-
--- Main.RomanDmitriev - 2020/10/05
-
-%META:PREFERENCE{name="DENYTOPICVIEW" title="DENYTOPICVIEW" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="DENYTOPICCHANGE" title="DENYTOPICCHANGE" type="Set" value="WikiGuest"}%
-%META:PREFERENCE{name="PERMSET_VIEW" title="PERMSET_VIEW" type="Local" value="registeredusers"}%
-%META:PREFERENCE{name="PERMSET_CHANGE" title="PERMSET_CHANGE" type="Local" value="registeredusers"}%

+ 0 - 13
docs/wiki/foswiki/data/FormSubnet.txt

@@ -1,13 +0,0 @@
-%META:TOPICINFO{author="roman" comment="reprev" date="1604901710" format="1.1" reprev="2" version="3"}%
----+ Basic info for subnet
-
-| *Name*  | *Type* | *Size* | *Values* |
-| Subnet Parent | select | 1 | %INCLUDE{IncludeSelectNetParent}% |
-| Name | text  | 80 | %BASETOPIC% |
-| Subnet | text  | 80 | |
-| Description | text | 255 | |
-| Subnet Type | select+values | 1 | Public, Private |
-| Subnet Mask | select+values | 1 | 255.0.0.0=8, 255.128.0.0=9, 255.192.0.0=10, 255.224.0.0=11, 255.240.0.0=12, 255.248.0.0=13, 255.252.0.0=14, 255.254.0.0=15, 255.255.0.0=16, 255.255.128.0=17, 255.255.192.0=18, 255.255.224.0=19, 255.255.240.0=20, 255.255.248.0=21, 255.255.252.0=22, 255.255.254.0=23, 255.255.255.0=24, 255.255.255.128=25, 255.255.255.192=26, 255.255.255.224=27, 255.255.255.240=28, 255.255.255.248=29, 255.255.255.252=30, 255.255.255.254=31, 255.255.255.255=32 |
-| Subnet Dhcp Pool | select | 1 | %INCLUDE{IncludeSelectDhcpPool}% |
-
--- Main.RomanDmitriev - 2020/10/11

Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff