+
+ 'svc_pbx' => {
+ 'columns' => [
+ 'svcnum', 'int', '', '', '', '',
+ 'id', 'int', 'NULL', '', '', '',
+ 'title', 'varchar', 'NULL', $char_d, '', '',
+ 'max_extensions', 'int', 'NULL', '', '', '',
+ 'max_simultaneous', 'int', 'NULL', '', '', '',
+ ],
+ 'primary_key' => 'svcnum',
+ 'unique' => [],
+ 'index' => [ [ 'id' ] ],
+ },
+
+ 'svc_mailinglist' => { #svc_group?
+ 'columns' => [
+ 'svcnum', 'int', '', '', '', '',
+ 'username', 'varchar', '', $username_len, '', '',
+ 'domsvc', 'int', '', '', '', '',
+ 'listnum', 'int', '', '', '', '',
+ 'reply_to', 'char', 'NULL', 1, '', '',#SetReplyTo
+ 'remove_from', 'char', 'NULL', 1, '', '',#RemoveAuthor
+ 'reject_auto', 'char', 'NULL', 1, '', '',#RejectAuto
+ 'remove_to_and_cc', 'char', 'NULL', 1, '', '',#RemoveToAndCc
+ ],
+ 'primary_key' => 'svcnum',
+ 'unique' => [],
+ 'index' => [ ['username'], ['domsvc'], ['listnum'] ],
+ },
+
+ 'mailinglist' => {
+ 'columns' => [
+ 'listnum', 'serial', '', '', '', '',
+ 'listname', 'varchar', '', $char_d, '', '',
+ ],
+ 'primary_key' => 'listnum',
+ 'unique' => [],
+ 'index' => [],
+ },
+
+ 'mailinglistmember' => {
+ 'columns' => [
+ 'membernum', 'serial', '', '', '', '',
+ 'listnum', 'int', '', '', '', '',
+ 'svcnum', 'int', 'NULL', '', '', '',
+ 'contactemailnum', 'int', 'NULL', '', '', '',
+ 'email', 'varchar', 'NULL', 255, '', '',
+ ],
+ 'primary_key' => 'membernum',
+ 'unique' => [],
+ 'index' => [['listnum'],['svcnum'],['contactemailnum'],['email']],
+ },
+
+ 'bill_batch' => {
+ 'columns' => [
+ 'batchnum', 'serial', '', '', '', '',
+ 'status', 'char', 'NULL','1', '', '',
+ 'pdf', 'blob', 'NULL', '', '', '',
+ ],
+ 'primary_key' => 'batchnum',
+ 'unique' => [],
+ 'index' => [],
+ },
+
+ 'cust_bill_batch' => {
+ 'columns' => [
+ 'billbatchnum', 'serial', '', '', '', '',
+ 'batchnum', 'int', '', '', '', '',
+ 'invnum', 'int', '', '', '', '',
+ ],
+ 'primary_key' => 'billbatchnum',
+ 'unique' => [],
+ 'index' => [ [ 'batchnum' ], [ 'invnum' ] ],
+ },
+
+ 'cust_bill_batch_option' => {
+ 'columns' => [
+ 'optionnum', 'serial', '', '', '', '',
+ 'billbatchnum', 'int', '', '', '', '',
+ 'optionname', 'varchar', '', $char_d, '', '',
+ 'optionvalue', 'text', 'NULL', '', '', '',
+ ],
+ 'primary_key' => 'optionnum',
+ 'unique' => [],
+ 'index' => [ [ 'billbatchnum' ], [ 'optionname' ] ],
+ },
+
+ 'msg_template' => {
+ 'columns' => [
+ 'msgnum', 'serial', '', '', '', '',
+ 'msgname', 'varchar', '', $char_d, '', '',
+ 'agentnum', 'int', 'NULL', '', '', '',
+ 'subject', 'varchar', 'NULL', 512, '', '',
+ 'mime_type', 'varchar', '', $char_d, '', '',
+ 'body', 'blob', 'NULL', '', '', '',
+ 'disabled', 'char', 'NULL', 1, '', '',
+ 'from_addr', 'varchar', 'NULL', 255, '', '',
+ 'bcc_addr', 'varchar', 'NULL', 255, '', '',
+ ],
+ 'primary_key' => 'msgnum',
+ 'unique' => [ ['msgname', 'mime_type'] ],
+ 'index' => [ ['agentnum'], ]
+ },
+
+ 'svc_cert' => {
+ 'columns' => [
+ 'svcnum', 'int', '', '', '', '',
+ 'recnum', 'int', 'NULL', '', '', '',
+ 'privatekey', 'text', 'NULL', '', '', '',
+ 'csr', 'text', 'NULL', '', '', '',
+ 'certificate', 'text', 'NULL', '', '', '',
+ 'cacert', 'text', 'NULL', '', '', '',
+ 'common_name', 'varchar', 'NULL', $char_d, '', '',
+ 'organization', 'varchar', 'NULL', $char_d, '', '',
+ 'organization_unit', 'varchar', 'NULL', $char_d, '', '',
+ 'city', 'varchar', 'NULL', $char_d, '', '',
+ 'state', 'varchar', 'NULL', $char_d, '', '',
+ 'country', 'char', 'NULL', 2, '', '',
+ 'cert_contact', 'varchar', 'NULL', $char_d, '', '',
+ ],
+ 'primary_key' => 'svcnum',
+ 'unique' => [],
+ 'index' => [], #recnum
+ },
+
+ 'nms_device' => {
+ 'columns' => [
+ 'nms_devicenum', 'serial', '', '', '', '',
+ #'agentnum', 'int', 'NULL', '', '', '',
+ 'devicename', 'varchar', '', $char_d, '', '',
+ 'ip', 'varchar', '', 15, '', '',
+ 'protocol', 'varchar', '', $char_d, '', '',
+# 'last', 'int', '', '', '', '',
+ ],
+ 'primary_key' => 'nms_devicenum',
+ 'unique' => [],
+ 'index' => [],
+ },
+
+ 'nms_deviceport' => {
+ 'columns' => [
+ 'portnum', 'serial', '', '', '', '',
+ 'nms_devicenum', 'int', '', '', '', '',
+ 'deviceport', 'int', '', '', '', '',
+ #'ip', 'varchar', 'NULL', 15, '', '',
+ 'svcnum', 'int', 'NULL', '', '', '',
+ ],
+ 'primary_key' => 'portnum',
+ 'unique' => [ [ 'nms_devicenum', 'deviceport' ] ],
+ 'index' => [ [ 'svcnum' ] ],
+ },
+
+ 'svc_port' => {
+ 'columns' => [
+ 'svcnum', 'int', '', '', '', '',
+ ],
+ 'primary_key' => 'svcnum',
+ 'unique' => [],
+ 'index' => [], #recnum
+ },
+
+ %{ tables_hashref_torrus() },
+
+