# file: log file name
# level: /trace/debug/info/warn/error/fatal, default: debug
# duration: rotation time with xx hours, example: 1/12/24 hours
# count: rotation count of log, default is 30 rotation
logger:
  file: d:/local.git/nms_nbi/restagent/log/restagent.log
  level: trace
  duration: 24
  count: 2

# rest agent listen ipv4/v6 and port, support multiple routines
# ip: 0.0.0.0 or ::0, support IPv4/v6
# clientAuthType: 0:NoClientCert (default), 1:RequestClientCert, 2:RequireAnyClientCert,
#                 3:VerifyClientCertIfGiven, 4:RequireAndVerifyClientCerts
rest:
  - ipv4: 0.0.0.0
    ipv6:
    port: 33040
  - ipv4: 0.0.0.0
    ipv6:
    port: 33443
    scheme: https
    clientAuthType: 0
    caFile: ./etc/certs/omc-ca.crt
    certFile: ./etc/certs/omc-server.crt
    keyFile: ./etc/certs/omc-server.key

webServer:
  enabled: false
  rootDir: d:/local.git/fe.ems.vue3/dist
  listen:
    - addr: :80
      schema: http
    - addr: :443
      scheme: https
      clientAuthType: 0
      caFile: ./etc/certs/omc-ca.crt
      certFile: ./etc/certs/omc-server.crt
      keyFile: ./etc/certs/omc-server.key

database:
  type: mysql
  user: root
  password: "root@1234"
  host: "192.168.5.59"
  port: 3306
  name: omc_db
  backup: d:/local.git/be.ems/restagent/database

# Redis 缓存数据，数据源声明全小写
redis:
  dataSource:
    # OMC系统使用库
    default:
      port: 6379 # Redis port
      host: "192.168.5.59" # Redis host
      password: "redis@1234"
      db: 10 # Redis db_num
    # UDM网元用户库
    udmuser:
      port: 6379 # Redis port
      host: "192.168.13.140"
      password: ""
      db: 0 # Redis db_num
  # 多个数据源时可以用这个指定默认的数据源
  defaultDataSourceName: "default"

# sleep: time delay for after write buffer (millisecond)
# deadLine: timeout for io read and write (second)
mml:
  port: 4100
  port2: 5002
  sleep: 200
  deadLine: 10
  user: admin
  password: admin
  mmlHome: ./mmlhome
  upload: /home/agtuser

# NE config
ne:
  user: agtuser
  etcdir: /usr/local/etc
  bindir: /usr/local/bin
  omcdir: /usr/local/omc
  scpdir: /tmp
  licensedir: /usr/local/etc/{neType}/license
  # backup etc list of IMS,no space
  etcListIMS: "{*.yaml,mmtel,vars.cfg}"
  etcListDefault: "{*.yaml,*.conf,*.cfg}"
  # true/false to overwrite config file when dpkg ne software
  dpkgOverwrite: false
  # dpkg timeout (second)
  dpkgTimeout: 180

# chk2ne: true/false, if put OmcNeConfig parameters to NE
omc:
  uriPrefix: "/omc/rest"
  neType: OMC
  neId: 001
  rmUID: 4400HX101
  neName: OMC
  province: GD
  vendor: ""
  dn: 4600
  chk2ne: false
  sn: "-"
  checksign: false
  rootDir: ./
  binDir: ./bin
  backup: ./backup
  upload: ./upload
  frontUpload: d:/local.git/fe.ems/upload
  frontTraceDir: d:/local.git/fe.ems/trace
  software: ./software
  license: ./license
  gtpUri: gtp:192.168.2.219:2152
  checkContentType: false
  testMode: false
  rbacMode: true
  runDir:
  cmdTimeout: 120

# Alarm module setting
# Forward interface:
# email/sms
alarm:
  forwardAlarm: true
  email:
    smtp: mail.agrandtech.com
    port: 25
    user: smtpext@agrandtech.com
    password: "1000smtp@omc!"
    # TLS skip verify: true/false
    tlsSkipVerify: true
  sms:
    apiURL: http://smsc.xxx.com.cn/
    accessKeyID: xxxx
    accessKeySecret: xxxx
    signName: xxx SMSC
    templateCode: 1000
  smsc:
    addr: "192.168.14.211:2775"
    userName: OMC
    password: "123456"

#User authorized information
# crypt: mysql/md5/bcrypt
# token: true/false to check accessToken
# expires for session, unit: second
# Support single/multiple session of user
#
auth:
  crypt: bcrypt
  token: true
  expires: 1800
  session: multiple
  publicKey: ./etc/certs/omc_pub.key
  privateKey: ./etc/certs/omc_pri.key

# Parameter for limit number
# rmuid_maxnum: the max number of rmUID, default: 50
# alarmid_maxnum: the max number of AlarmID, default: 50
# pmid_maxnum: the max number of pmID, default: 50
# subid_maxnum: the max number of subscription ID, default: 20
# uri_maxlen: the max length of uri, default: 8192
# rmuid_regexp: regexp pattern of rmUID
params:
  rmuidmaxnum: 50
  alarmidmaxnum: 50
  pmidmaxnum: 50
  subidmaxnum: 20
  urimaxlen: 2100000
  rmuidregexp: "[0-9]{4}[A-Z]{2}[A-Z]{2}[0-9A-Z]{1}[0-9A-Z]{3}[0-9A-Z]{1,16}"

testConfig:
  enabled: true
  file: ./etc/testconfig.yaml

# NMS-中国星网研究院
nmsCXY:
  # 注入路由组
  routerGroup: "/nms-cxy/api/rest"
  # 专业编码2位 核心网HX 无线网WX
  professionCode: "HX"
  # 厂商编码2位 中信科ZX
  vendorCode: "AG"
  # OMC编号3位
  omcCode: "001"
  # 设备序列号
  serialNumber: "1153492"
  # Kafka配置
  kafka:
    addrs:
      - "192.168.5.59:19092"
      - "192.168.5.59:29092"
      - "192.168.5.59:39092"
    # 启用 Kerberos 认证
    krb5:
      enable: false
      config:
        configPath: "/path/to/krb5.conf"
        keyTabPath: "/path/to/keytab"
        serviceName: "kafka"
        realm: "EXAMPLE.COM"
        username: "client"

  # OSS配置
  oss:
    bucketname: "omc-bucket"
    endpoint: "192.168.5.59:9000"
    useSSL: false
    accessKeyID: "aOW0r1gfw74G88Z3XZJ6"
    secretAccessKey: "9tDErvtCEuVox6LoQu5BOVtycQKcQjlXOGvjl1eD"
