آخرین تغییرات IBSng

از ویکی پارس پویش
(تفاوت بین نسخه‌ها)
پرش به: ناوبری, جستجو
سطر ۸: سطر ۸:
  
 
=''' C Branch '''=
 
=''' C Branch '''=
 +
 +
=='''تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۳''' ==
 +
 +
- Bugfix: #1339 Load Invoice Main in Online Worker
 +
 +
- Bugfix : #1300  delete realtime request log  interface
 +
 +
  real time request log  deleted  from interface because the source code of this link  had been deleted before .
 +
 +
- Bugfix: #1339 Load Invoice Main in Online Worker
 +
 +
- Bugfix: #1278 Fix Account Not Started Counter
 +
 +
  When "account not started" counter got negative value,
 +
  IBSng web panel shown "0*" value that means negative number.
 +
  The main reason for this issue was when a user had several sub services,
 +
  it tried to decrease counter per each of them (when their requests received),
 +
  while it increased counter once on authentication action. So to solve this issue,
 +
  we handled __decreamentNotStartedCounter method which check loaded user's
 +
  instance that must be Master to run decrease action.
 +
  Example diagram for this issue:
 +
  Step1: Authentication +1  << Correct
 +
  Step2: Master        -1  << Correct
 +
  Step3: Free-Site      -1  << Incorrect
 +
  StepN: SubServiceN    -1  << Incorrect
 +
  StepX: SubServiceX    -1  << Incorrect
 +
 +
- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group
 +
   
 +
  When user chooses more than one group/isp/etc in Search User panel and
 +
  selects bulk kill action it raises and error. It was because of
 +
  invalid format of passing parameters.
 +
 +
- Bugfix: Fix Minor Typo Error
 +
 +
- Bugfix: #1235 Fix Minor Invoicing DB Bug
 +
   
 +
  Column reference to 'pi_issue_date' was ambiguous!
 +
 +
- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field
 +
   
 +
  Resolving 'max_rule_time_usage' charg rule to be read from user
 +
  custome field (e.g: 'F:time') haven't been handled.
 +
 +
- Bugfix: #1215 Fix Timezone Issue in Online Graph
 +
  
 
=='''تگ 360 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==
 
=='''تگ 360 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==
سطر ۵۱۳: سطر ۵۵۹:
  
 
=''' C_staging Branch '''=
 
=''' C_staging Branch '''=
 +
 +
=='''تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۷''' ==
 +
 +
- Bugfix: #1339 Load Invoice Main in Online Worker
 +
 +
- Bugfix : #1300  delete realtime request log  interface
 +
   
 +
  real time request log  deleted  from interface because the source code of this link  had been deleted before .
 +
 +
- Bugfix: #1339 Load Invoice Main in Online Worker
 +
 +
- Bugfix: #1278 Fix Account Not Started Counter
 +
   
 +
  When "account not started" counter got negative value,
 +
  IBSng web panel shown "0*" value that means negative number.
 +
  The main reason for this issue was when a user had several sub services,
 +
  it tried to decrease counter per each of them (when their requests received),
 +
  while it increased counter once on authentication action. So to solve this issue,
 +
  we handled __decreamentNotStartedCounter method which check loaded user's
 +
  instance that must be Master to run decrease action.
 +
  Example diagram for this issue:
 +
  Step1: Authentication +1  << Correct
 +
  Step2: Master        -1  << Correct
 +
  Step3: Free-Site      -1  << Incorrect
 +
  StepN: SubServiceN    -1  << Incorrect
 +
  StepX: SubServiceX    -1  << Incorrect
 +
 +
- BugFix: reloadUser without wait for lock caused infinite loop
 +
 +
- BugFix: Online User Storage must be flushed during IBSng start up
 +
 +
- Cleanup: Cleaned up check online method
 +
 +
- BugFix: Fixed reloadUser might incorrectly run while lock has not been acquired
 +
 +
- BugFix: Redis might incorrectly reset pubsub in busy situations
 +
 +
- BugFix: Credit Limit was displayed incorrectly
 +
 +
- BugFix: Mutable object should not be passed as default argument
 +
 +
- BugFix: Fix Relogin User Issue On Update Custom Field
 +
 +
- BugFix: Fix Relogin User Issue On Update Custom Field
 +
 +
- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group
 +
   
 +
  When user chooses more than one group/isp/etc in Search User panel and
 +
  selects bulk kill action it raises and error. It was because of
 +
  invalid format of passing parameters.
 +
 +
- BugFix: mp observer change in isp loader caused isp states to reset
 +
 +
- BugFix: unload/load instead of reload causes race condition where isp object is no longer available
 +
 +
- BugFix: Online user storage were using incorrect redis db
 +
 +
- Bugfix: #1235 Fix Minor Invoicing DB Bug
 +
 +
- Bugfix: #1235 Fix Minor Invoicing DB Bug
 +
   
 +
  Column reference to 'pi_issue_date' was ambiguous!
 +
 +
- BugFix: Kairos might be initialized incorrectly because system redis library was imported instead of local one
 +
 +
- Cleanup: Remove Unused Method `__renewMustResetCredit`
 +
 +
- BugFix: Kairos might be initialized incorrectly because system redis library was imported instead of local one
 +
 +
- BugFix: Fixed Typo which cause isp deposit role back not to work correctly
 +
 +
- BugFix: __internetReauthorizeCheckForIncorrectSubService was not working due to typo
 +
 +
- BugFix: Fix memory leak of web service process by replacing cyclic-reference-creator collections.OrderedDict with odict.odict in kairos library
 +
 +
- BugFix: Consume ISP deposit was broken after Internal Relogin. Fix to always reload ISP and log after consuming deposit.
 +
 +
- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field
 +
 +
- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field
 +
 
 +
  Resolving 'max_rule_time_usage' charg rule to be read from user
 +
  custome field (e.g: 'F:time') haven't been handled.
 +
 +
- BugFix: Duplicate detector was not caching reply packets and never replay them
 +
 +
- Bugfix: #1215 Fix Timezone Issue in Online Graph
 +
 +
- Improvement: Log next event and kill dict in can stay event of log console
 +
 +
- BugFix: Prevent maximum threshold minutes might have caused avalanche situtation, causing cisco ISG bras to overload
 +
 +
- BugFix: Use Acct-Session-Id in kick user via coa instead of Cisco-Account-Info
 +
 +
- BugFix: Internal relogin cleanup and bug fixes
 +
 +
- Improvement: Increased default max thresholds to decrease the load on ras and ibs
 +
 +
- Cleanup: Change RAS Name 'Wireless' to '4ipnet'
 +
 +
- Cleanup: SOAP Cleanup
 +
 +
- Feature: add send_lock_users capability to notification rules
 +
  
 
=='''تگ 369 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==
 
=='''تگ 369 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==
سطر ۱٬۱۶۲: سطر ۱٬۳۱۲:
 
- Feature: Add User ID Attribute to Search User Page
 
- Feature: Add User ID Attribute to Search User Page
  
=''' C_shahkar Branch '''=
+
=''' C_pmacct Branch '''=
  
=='''تگ 367 تا 370 در تاریخ ۹۵/۱۱/۲۴'''==
+
=='''تگ 372 تا 373 در تاریخ ۹۶/۰۳/۲۷'''==
  
- Bugfix: #1449 Fix `users.group_id` Bug
+
- Bugfix: Fix CSV Report of Web Analyser
  
  Fixed `getDBColName` in a way which returns the part after the dot,
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  e.g 'usersgroup_id' => 'group_id'
+
  
- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report
+
- Bugfix : #1300  delete realtime request log  interface
 
      
 
      
   After adding two columns `user_id` and `group_id` to `connection_log`
+
   real time request log  deleted  from interface because the source code of this link  had been deleted before .
  table it created a conflict with `users` table on in management
+
  summary queries; in this fix we change SQL queries to exactly specify
+
  which fields we mean by `user_id` and `group_id`: `users.user_id`,
+
  `users.group_id`, etc.
+
  
- Bugfix: add missing function call on commit of periodic acc plugin
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
- Improvement: Few logging for radius process
+
- Feature: #1223 Modify 'urldump' sniffer application to fetch 'ip_map' data directly from IBSng
  
- BugFix: Reauthorize bytes were deducted twice from remaining bytes
+
- Bugfix: Fix LDAP Permissions
  
- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log
+
- Bugfix: #1278 Fix Account Not Started Counter
 +
   
 +
  When "account not started" counter got negative value,
 +
  IBSng web panel shown "0*" value that means negative number.
 +
  The main reason for this issue was when a user had several sub services,
 +
  it tried to decrease counter per each of them (when their requests received),
 +
  while it increased counter once on authentication action. So to solve this issue,
 +
  we handled __decreamentNotStartedCounter method which check loaded user's
 +
  instance that must be Master to run decrease action.
 +
  Example diagram for this issue:
 +
  Step1: Authentication +1  << Correct
 +
  Step2: Master        -1  << Correct
 +
  Step3: Free-Site      -1  << Incorrect
 +
  StepN: SubServiceN    -1  << Incorrect
 +
  StepX: SubServiceX    -1  << Incorrect
  
- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize
+
=''' C_mongo Branch '''=
  
- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet
+
=='''تگ 372 تا 374 در تاریخ ۱۳۹۶/۰۳/۲۷''' ==
  
- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold
+
- Bugfix : #1300  delete realtime request log  interface
 +
   
 +
  real time request log  deleted  from interface because the source code of this link  had been deleted before .
  
- Feature: Multiple prepaid services per account support
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them
+
- Bugfix: #1278 Fix Account Not Started Counter
 +
   
 +
  When "account not started" counter got negative value,
 +
  IBSng web panel shown "0*" value that means negative number.
 +
  The main reason for this issue was when a user had several sub services,
 +
  it tried to decrease counter per each of them (when their requests received),
 +
  while it increased counter once on authentication action. So to solve this issue,
 +
  we handled __decreamentNotStartedCounter method which check loaded user's
 +
  instance that must be Master to run decrease action.
 +
  Example diagram for this issue:
 +
  Step1: Authentication +1  << Correct
 +
  Step2: Master        -1  << Correct
 +
  Step3: Free-Site      -1  << Incorrect
 +
  StepN: SubServiceN    -1  << Incorrect
 +
  StepX: SubServiceX    -1  << Incorrect
  
- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh
+
- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group
 +
   
 +
  When user chooses more than one group/isp/etc in Search User panel and
 +
  selects bulk kill action it raises and error. It was because of
 +
  invalid format of passing parameters.
  
- BugFix: Multi login did not work with Multi Service rases other than ISG
+
- Improvement: #1186 Run mongo index in thread
  
 +
- Improvement: #1186 Run mongo index in thread
 +
 +
- Bugfix: #1235 Fix Minor Invoicing DB Bug
 +
   
 +
  Column reference to 'pi_issue_date' was ambiguous!
 +
 +
- Bugfix: Correct Delete Query of Redundant Partial Log Records
 +
 +
- Improvement: Read From Config File Whether to Write on PSQL or Not
 +
   
 +
  Until now we read `defs.PSQL_LOG_CONNECTIONS` value to define whether
 +
  we should write connection logs into PostgreSQL or not. With this
 +
  commit value of `connection_log_use_psql` in `DATABASE_MONGO` section
 +
  of IBSng config file defines our behaviour.
  
=''' C_mongo Branch '''=
 
  
 
=='''تگ 372 در تاریخ ۱۳۹۶/۰۱/۲۶''' ==
 
=='''تگ 372 در تاریخ ۱۳۹۶/۰۱/۲۶''' ==
سطر ۱٬۴۳۵: سطر ۱٬۶۲۷:
  
 
=''' C_diameter Branch '''=
 
=''' C_diameter Branch '''=
 +
 +
=='''تگ 377 تا 381 در تاریخ ۱۳۹۶/۰۳/۲۷''' ==
 +
 +
- NewFeature: Rates for diameter request and replies and also exposing them via snmp
 +
 +
- Bugfix: #1339 Load Invoice Main in Online Worker
 +
 +
- BugFix: Make ibs init script lsb compatible
 +
 +
- NewFeature: Script to gracefully reload charges
 +
 +
- Bugfix : #1300  delete realtime request log  interface
 +
   
 +
  real time request log  deleted  from interface because the source code of this link  had been deleted before .
 +
 +
- Improvement: Kill support of PCEF Master session
 +
 +
- BugFix: Re-online might mess up with Cisco PCEF Sessions
 +
 +
- Improvement: A check script for cisco pcef session validation
 +
 +
- Improvement: Log if reauthorize has changed any service
 +
 +
- Bugfix: #1339 Load Invoice Main in Online Worker
 +
 +
- Improvement: Increased isg session ttl to make sure no session is being lost
 +
 +
- Improvement: Updated SNMP bridge to support more OIDs and be compatible with C branch
 +
 +
- BugFix: Cisco PCEF stop awareness did not work sometimes due to incorrect session id
 +
 +
- Bugfix: Session dictionary might be lost if the time between master session and starting of traffic is more than 4 update accountings. Make is 24 hours instead
 +
 +
- Improvement: Notify admin about starting and finishing partial and second user mapping
 +
 +
- Bugfix: Re-Online did not create cisco pcef session correctly
 +
 +
- Bugfix: Proxy-State were not correct for reject cache responses. It should be exactly the same as request value
 +
 +
- BugFix: First snapshot online loop should not happen in start critical path
 +
 +
- Improvement: New roundrobin policy queues to prevent a unreachable ras to slow policy changes of other rases
 +
 +
- BugFix: 0 in/out would returned if a diameter ras does not receive tariff change reauthorize
 +
 +
- Bugfix: #1278 Fix Account Not Started Counter
 +
   
 +
  When "account not started" counter got negative value,
 +
  IBSng web panel shown "0*" value that means negative number.
 +
  The main reason for this issue was when a user had several sub services,
 +
  it tried to decrease counter per each of them (when their requests received),
 +
  while it increased counter once on authentication action. So to solve this issue,
 +
  we handled __decreamentNotStartedCounter method which check loaded user's
 +
  instance that must be Master to run decrease action.
 +
  Example diagram for this issue:
 +
  Step1: Authentication +1  << Correct
 +
  Step2: Master        -1  << Correct
 +
  Step3: Free-Site      -1  << Incorrect
 +
  StepN: SubServiceN    -1  << Incorrect
 +
  StepX: SubServiceX    -1  << Incorrect
 +
 +
- BugFix: Make check online less intrusive by increasing sleep time
 +
 +
- BugFix: Re-online packets did not fill pcef master session id causing pcef stop not to work for re-onlined sessions
 +
 +
- BugFix: Idle threshold were not working correctly with sub services, causing users to be detected idle incorrectly
 +
 +
- BugFix: Better handling of isg session dict to fix pcef stop requests not being sent
 +
 +
- Improvement: Allow kill requests on all policy workers
 +
 +
- Improvement: Suppress unnecessary errors when receiving reauthorize
 +
 +
- BugFix: reloadUser without wait for lock caused infinite loop
 +
 +
- BugFix: Online User Storage must be flushed during IBSng start up
 +
 +
- BugFix: Credit Limit was displayed incorrectly
 +
 +
- BugFix: Redis might incorrectly reset pubsub in busy situations
 +
 +
- BugFix: Mutable object should not be passed as default argument
 +
 +
- Cleanup: Cleaned up check online method
 +
 +
- BugFix: Fixed reloadUser might incorrectly run while lock has not been acquired
 +
 +
- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group
 +
   
 +
  When user chooses more than one group/isp/etc in Search User panel and
 +
  selects bulk kill action it raises and error. It was because of
 +
  invalid format of passing parameters.
 +
 +
- Bugfix: #1235 Fix Minor Invoicing DB Bug
 +
   
 +
  Column reference to 'pi_issue_date' was ambiguous!
 +
  
 
=='''تگ 372 تا 377 در تاریخ ۱۳۹۶/۰۲/۱۹''' ==
 
=='''تگ 372 تا 377 در تاریخ ۱۳۹۶/۰۲/۱۹''' ==
سطر ۱٬۷۳۷: سطر ۲٬۰۲۶:
  
  
=''' C_lan_acc Branch '''=
+
=''' C_diameter_mongo Branch '''=
  
=='''تگ 369 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==
+
=='''تگ 375 تا 376 در تاریخ ۱۳۹۶/۰۳/۲۷''' ==
  
- Bugfix: Fix Active Leaves
+
- Bugfix: #1339 Load Invoice Main in Online Worker
 +
 
 +
- Bugfix : #1300  delete realtime request log  interface
 
      
 
      
   The `getActiveLeaves` method must be called in 'MAIN' process.
+
   real time request log  deleted  from interface because the source code of this link  had been deleted before .
  
- BugFix: We should not add internal_relogin flag to user attributes
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
- BugFix: Various Internal Relogin fixes
 
  
- Improvement: Make sure listen loop won't exit on an abnormal exception
+
=''' C_lan_acc Branch '''=
  
- BugFix: Setting max rule traffic usage value as a float in custom fields would have break max rule traffic plugin
+
=='''تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۴''' ==
  
- Improvement: Disable Partitioning Check Contraints
+
- Bugfix: Fix CSV Report of Web Analyser
   
+
  This is done because of some efficiency issues
+
  
- Improvement: Disable adding check constraint to partitioned tables
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
- BugFix: We should ignore negative threshold when QV is passed to cisco isg
+
- Bugfix : #1300  delete realtime request log  interface
 +
   
 +
  real time request log  deleted  from interface because the source code of this link  had been deleted before .
  
- BugFix: A mid session reauthorize after a restart will create an instance without start accounting
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
- BugFix: Do not panic if charge rule is None during stop session
+
- Feature : #1223 Modify 'urldump' sniffer application to fetch 'ip_map' data directly from IBSng
  
- BugFix: Not saving user after logout will lead to inconsistent user object
+
- Bugfix: Fix LDAP Permissions
  
- BugFix: Take credit limit into account when calculating remaining bytes. This fixes postpaid user problem with isg prepaid services
+
- Bugfix: #1278 Fix Account Not Started Counter
 +
   
 +
  When "account not started" counter got negative value,
 +
  IBSng web panel shown "0*" value that means negative number.
 +
  The main reason for this issue was when a user had several sub services,
 +
  it tried to decrease counter per each of them (when their requests received),
 +
  while it increased counter once on authentication action. So to solve this issue,
 +
  we handled __decreamentNotStartedCounter method which check loaded user's
 +
  instance that must be Master to run decrease action.
 +
  Example diagram for this issue:
 +
  Step1: Authentication +1  << Correct
 +
  Step2: Master        -1  << Correct
 +
  Step3: Free-Site      -1  << Incorrect
 +
  StepN: SubServiceN    -1  << Incorrect
 +
  StepX: SubServiceX    -1  << Incorrect
  
- Improvement: Kill max delay default value was too large. Set it to 2 hours by default
+
- BugFix : #1263 fix urldump does'nt showing group name in web analyzer log
 
+
- Improvement: Make auth rate control optional and turn it off by default
+
 
+
- Bugfix: #1512 Fix `int` Convertion of `float` String
+
 
+
- Bugfix: #1449 Fix `users.group_id` Bug
+
 
      
 
      
   Fixed `getDBColName` in a way which returns the part after the dot,
+
   this bug fixed in the interface.
   e.g 'usersgroup_id' => 'group_id'
+
   it also fixed in real time web analyzer page.
  
- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report
+
- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group
 
      
 
      
   After adding two columns `user_id` and `group_id` to `connection_log`
+
   When user chooses more than one group/isp/etc in Search User panel and
   table it created a conflict with `users` table on in management
+
   selects bulk kill action it raises and error. It was because of
  summary queries; in this fix we change SQL queries to exactly specify
+
   invalid format of passing parameters.
  which fields we mean by `user_id` and `group_id`: `users.user_id`,
+
   `users.group_id`, etc.
+
  
- Bugfix: add missing function call on commit of periodic acc plugin
+
- Cleanup: We Don't Have `web_analyzer_log` Table Any More
 
+
- Bugfix: #1503 Fix MAC Extraction From RAS of ZTE Type
+
 
      
 
      
   ZTE model rases change the format of user mac address in recent
+
   Also raised an error when we wanted to delete a user on deleting web
   framework update, e.g:
+
   analyzer logs, because there is no such table available any more
  old format: `78d99fd34e4b`
+
  new format: `78:d9:9f:d3:4e:4b`
+
  
- Improvement: Few logging for radius process
+
- Bugfix: Fix Minor Typo Error
  
- BugFix: Reauthorize bytes were deducted twice from remaining bytes
+
- Bugfix: #1235 Fix Minor Invoicing DB Bug
 
+
- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log
+
 
+
- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize
+
 
+
- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet
+
 
+
- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.
+
 
+
- Bugfix: don't assign ip to sub service
+
 
+
- Bugfix: skip users without ignore_ras
+
 
+
- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold
+
 
+
- Feature: Multiple prepaid services per account support
+
 
+
- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them
+
 
+
- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh
+
 
+
- BugFix: Multi login did not work with Multi Service rases other than ISG
+
 
+
- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu
+
 
      
 
      
   The following links are deprecated and removed:
+
   Column reference to 'pi_issue_date' was ambiguous!
  All Realtime Graph
+
  Internet Realtime Graph
+
  Voip Realtime Graph
+
  BW Realtime Graph 
+
  Also updated modified links
+
  
- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services
+
- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field
 
+
- Bugfix: #1136 Fix Name of Import File in Import User Menu
+
 
      
 
      
   Note: after changing the log process to pass the logging mechanism to
+
   Resolving 'max_rule_time_usage' charg rule to be read from user
  python syslog module, user_import logs won't be written to a local
+
   custome field (e.g: 'F:time') haven't been handled.
  file which will cause to "View Import Log" link on "Import User" page
+
  after uploading CSV file won't work. this can be fixed by adding new
+
   log type (aside `QueueLogger` and `DirectLogger`) to IBS logger
+
  module, but this is not a priority now; look at the comments on
+
  changed files for more info.
+
  
- BugFix: Re-Onlined users might have get failed status due to left over from previous sessions
+
- Bugfix: #1215 Fix Timezone Issue in Online Graph
  
- BugFix: Radius Attributes with integer values were not working in charge rule attribute radius
 
  
- Improvement: Allow Acct-Interim-Interval to be passed to failed users
+
=='''تگ 369 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==
 
+
- Improvement: Exception handling for internal relogin
+
 
+
- BugFix: Removed Extra print
+
 
+
- Bugfix: Incorrect call to getUserAttrs caused exception
+
 
+
- BugFix: Some initial variables where missing in configuration file and advanced configuration
+
 
+
- BugFix: Undefined session raised unnecessary exception
+
 
+
- Improvement: API cleanups for cisco isg rases
+
 
+
- Bugfix: cast ignore ras ids to int
+
 
+
- Bugfix: read min/max event time directly from defs
+
 
+
- Bugfix: fix group usages of connection analysis
+
 
+
- Improvement: Remove `price` Filter From User ID Attribute
+
 
+
- Feature: Add User ID Attribute to Search User Page
+
 
+
- BugFix: Threshold Bytes/Seconds did not trigger internal reauthorize due to bad merge
+
 
+
- BugFix: Second username change fail in case of internal relogin
+
 
+
- Improvement: get method for SNMP client
+
 
+
- Feature: optionally do autoRenew on abs expired user
+
 
+
- Bugfix: log deposit_type in deposit change
+
 
+
- Cleanup: clean md5 response
+
 
+
=='''تگ 359 تا 360 در تاریخ ۱۳۹۵/۱۱/۱۶'''==
+
 
+
- Bugfix: add removed ad user info in comment tab
+
 
+
- Bugfix: affect search base for paged searches
+
 
+
=''' C_lan_acc_staging Branch '''=
+
 
+
=='''تگ 360 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==
+
  
 
- Bugfix: Fix Active Leaves
 
- Bugfix: Fix Active Leaves
سطر ۲٬۰۴۴: سطر ۲٬۲۵۵:
  
  
=''' C_invoice Branch '''=
+
=''' C_lan_mongo Branch '''=
  
=='''تگ 323 در تاریخ ۱۳۹۵/۰۵/۰۳'''==
+
=='''تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۷''' ==
  
Bug fix: Group Info -> Auto Recharge -> Edit
+
- Bugfix: Fix CSV Report of Web Analyser
  
Bug fixes and improvements in Notification
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
Feature: Notification: add Message Type = URL to bypass Message Center, and call a URL template directly
+
- Bugfix : #1300  delete realtime request log  interface
 +
   
 +
  real time request log  deleted  from interface because the source code of this link  had been deleted before .
  
Fix critical bug in IBSng.conf.default, duplicate mikrotik_api_port with empty value prevents IBSng from starting
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
Fix critical bug in Thread Pool
+
- Feature: #1223 Modify 'urldump' sniffer application to fetch 'ip_map' data directly from IBSng
  
Performance improvement in Bandwidth Manager
+
- Bugfix: Fix LDAP Permissions
  
Bug fix: Kick failed user after online payment was not working in some cases
+
- Bugfix: #1278 Fix Account Not Started Counter
 +
   
 +
  When "account not started" counter got negative value,
 +
  IBSng web panel shown "0*" value that means negative number.
 +
  The main reason for this issue was when a user had several sub services,
 +
  it tried to decrease counter per each of them (when their requests received),
 +
  while it increased counter once on authentication action. So to solve this issue,
 +
  we handled __decreamentNotStartedCounter method which check loaded user's
 +
  instance that must be Master to run decrease action.
 +
  Example diagram for this issue:
 +
  Step1: Authentication +1  << Correct
 +
  Step2: Master        -1  << Correct
 +
  Step3: Free-Site      -1  << Incorrect
 +
  StepN: SubServiceN    -1  << Incorrect
 +
  StepX: SubServiceX    -1  << Incorrect
  
Feature: allow giving isp_id to isp.getISPInfo json-rpc handler method
+
- BugFix : #1263 fix urldump does'nt showing group name in web analyzer log
 +
   
 +
  this bug fixed in the interface.
 +
  it also fixed in real time web analyzer page.
  
Bug fix in Max Rule Traffic Usage
+
- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group
 +
   
 +
  When user chooses more than one group/isp/etc in Search User panel and
 +
  selects bulk kill action it raises and error. It was because of
 +
  invalid format of passing parameters.
  
 +
- Improvement: #1186 Run mongo index in thread
  
=='''تگ 322 در تاریخ ۱۳۹۵/۰۷/۱۷'''==
+
- Improvement: #1186 Run mongo index in thread
  
Bugfix: Bandwidth Manager: fix unexpected BW shaping after user disconnect
+
- Cleanup: We Don't Have `web_analyzer_log` Table Any More
 +
   
 +
  Also raised an error when we wanted to delete a user on deleting web
 +
  analyzer logs, because there is no such table available any more
  
Bugfix: user's credit became negative in some cases
+
- Bugfix: #1235 Fix Minor Invoicing DB Bug
  
Bugfix: user was not disconnected in some rare cases after expiration or credit finish
+
- Bugfix: Fix Minor Typo Error
  
Bugfix: fix Internal Re-login was not working
+
- Bugfix: #1235 Fix Minor Invoicing DB Bug
 +
   
 +
  Column reference to 'pi_issue_date' was ambiguous!
  
Bugfix: COA was not shown in Log Console
+
- Bugfix: Correct Delete Query of Redundant Partial Log Records
  
=='''تگ 320 در تاریخ ۱۳۹۵/۰۷/۱۰'''==
+
- Improvement: Read From Config File Whether to Write on PSQL or Not
 +
   
 +
  Until now we read `defs.PSQL_LOG_CONNECTIONS` value to define whether
 +
  we should write connection logs into PostgreSQL or not. With this
 +
  commit value of `connection_log_use_psql` in `DATABASE_MONGO` section
 +
  of IBSng config file defines our behaviour.
  
Bugfix: Fixes in BW Manager
+
- Bugfix: #1231 Fix Total Values of User Connection Logs Panel
 +
   
 +
  Before migrating to MongoDB we used "1" to indicate whether to show
 +
  total values in connection log report or not, but after migration we
 +
  used "On"!!, this has been handled in this commit to work with both of
 +
  them.
  
Bugfix: Fix ISP charge rule attribute
+
- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field
  
Bugfix: Don't kill failed user after Deposit Change
+
- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field
 +
   
 +
  Resolving 'max_rule_time_usage' charg rule to be read from user
 +
  custome field (e.g: 'F:time') haven't been handled.
  
Bugfix: Kill failed user after Change Credit
+
- Bugfix: #1201 Fix Slow Start of IBSng and Multiple Partial Log
  
Bugfix: Fix getting Mikrotik API password from config file
+
- Improvement: #1154 Add More Log in Case of Bulk Write Error
  
Improvement: Group List: faster page load
+
- Bugfix: #1215 Fix Timezone Issue in Online Graph
  
Improvement: Better handling of paths in initial setups
+
- Bugfix: #1201 Fix Slow Start of IBSng and Multiple Partial Log
 +
   
 +
  It has been seen that the number of online user doesn't match the
 +
  records count on partial data table, it will result in slow start of
 +
  IBSng (in recover partial log phase). This commit will fix this issue
 +
  and makes some improvement on writing partial log data.
  
Improvement: Better online session timings to prevent run/shm from filling up
+
- Improvement: Optimized partial log recovery for postgresql. Not exists queries are much more efficient for large inner queries with index
  
Improvement: Enhancements to radius server
+
- BugFix: Internal relogin cleanup and bug fixes
  
Improvement: Improve Timing
+
- Improvement: Increased default max thresholds to decrease the load on ras and ibs
  
Improvement: CanStayRunner class to prevent multiple can stays for different instances of a single user
+
- Bugfix: #1474 remove please wait in report pages
 +
   
 +
  removing blockui  javascrpit code which caused please  wait deadlock in report pages
  
Feature: Notification: add message_type == user_event insert directly to user_events table
 
  
Feature: New JSON-RPC method: user.getTopConnectionCount
+
=''' C_lan_acc_staging Branch '''=
  
Feature: add new JSON-RPC method user.setFeshfesheParams
+
=='''تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۷''' ==
  
='''C_invoice_staging Branch '''=
+
- Bugfix: Fix CSV Report of Web Analyser
  
=='''تگ 323 در تاریخ ۱۳۹۵/۰۵/۰۳'''==
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
Bug fix: Group Info -> Auto Recharge -> Edit
+
- Bugfix : #1300  delete realtime request log  interface
 +
   
 +
  real time request log  deleted  from interface because the source code of this link  had been deleted before .
  
Bug fixes and improvements in Notification
+
- Bugfix: #1339 Load Invoice Main in Online Worker
  
Feature: Notification: add Message Type = URL to bypass Message Center, and call a URL template directly
+
- Feature : #1223 Modify 'urldump' sniffer application to fetch 'ip_map' data directly from IBSng
 +
   
 +
- Bugfix: Fix LDAP Permissions
  
Fix critical bug in IBSng.conf.default, duplicate mikrotik_api_port with empty value prevents IBSng from starting
+
- Bugfix: #1278 Fix Account Not Started Counter
 +
   
 +
  When "account not started" counter got negative value,
 +
  IBSng web panel shown "0*" value that means negative number.
 +
  The main reason for this issue was when a user had several sub services,
 +
  it tried to decrease counter per each of them (when their requests received),
 +
  while it increased counter once on authentication action. So to solve this issue,
 +
  we handled __decreamentNotStartedCounter method which check loaded user's
 +
  instance that must be Master to run decrease action.
 +
  Example diagram for this issue:
 +
  Step1: Authentication +1  << Correct
 +
  Step2: Master        -1  << Correct
 +
  Step3: Free-Site      -1  << Incorrect
 +
  StepN: SubServiceN    -1  << Incorrect
 +
  StepX: SubServiceX    -1  << Incorrect
  
Fix critical bug in Thread Pool
+
- BugFix : #1263 fix urldump does'nt showing group name in web analyzer log
 +
   
 +
  this bug fixed in the interface.
 +
  it also fixed in real time web analyzer page.
  
Performance improvement in Bandwidth Manager
+
- BugFix: reloadUser without wait for lock caused infinite loop
  
Bug fix: Kick failed user after online payment was not working in some cases
+
- BugFix: Online User Storage must be flushed during IBSng start up
  
Feature: allow giving isp_id to isp.getISPInfo json-rpc handler method
+
- Cleanup: Cleaned up check online method
  
Bug fix in Max Rule Traffic Usage
+
- BugFix: Fixed reloadUser might incorrectly run while lock has not been acquired
  
=='''تگ 321 تاریخ ۱۳۹۵/۰۴/۰۸'''==
+
- BugFix: Redis might incorrectly reset pubsub in busy situations
  
Bug Fix: Database: Fixed admin_request_limit column was missing in db/tables.sql
+
- BugFix: Credit Limit was displayed incorrectly
  
Bug Fix: Charge Rule: Fixed Max Rule Traffic Usage reports incorrect applicable until time when rule is applied more than once in a session
+
- BugFix: Mutable object should not be passed as default argument
  
Bug Fix: Web Service: util.getUsernameForIP: don't return error if IP is not online
+
- BugFix: Fix Relogin User Issue On Update Custom Field
  
Bug Fix: (CRITICAL) User's credit was going far under zero in case user has deposit
+
- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group
 +
   
 +
  When user chooses more than one group/isp/etc in Search User panel and
 +
  selects bulk kill action it raises and error. It was because of
 +
  invalid format of passing parameters.
  
Feature: Search User: Bulk Action: add kill user (Kick & Clear) actions
+
- Bugfix: #1283 Add Back Missing LDAP SOAP Functions
 +
   
 +
  Some of LDAP SOAP functions have been deleted mistakenly in previous
 +
  merges.
  
Feature: Reject Cache: show user's reject cache info in Admin -> User Info
+
- BugFix: mp observer change in isp loader caused isp states to reset
  
Feature: Reject Cache: extract macs from raw text
+
- BugFix: unload/load instead of reload causes race condition where isp object is no longer available
  
=='''تگ 319 تاریخ ۱۳۹۵/۰۴/۰۱'''==
+
- Cleanup: We Don't Have `web_analyzer_log` Table Any More
 +
   
 +
  Also raised an error when we wanted to delete a user on deleting web
 +
  analyzer logs, because there is no such table available any more
  
Bug Fix: Periodic Accounting and Periodic Credit Charge were not working in 318
+
- BugFix: Online user storage were using incorrect redis db
  
Bug Fix: Fix change rate functionality for re-online users
+
- Bugfix: #1235 Fix Minor Invoicing DB Bug
 +
   
 +
  Column reference to 'pi_issue_date' was ambiguous!
  
Bug Fix: Handle multilogin in plugins only
+
- Cleanup: Remove Unused Method `__renewMustResetCredit`
  
Bug Fix: Charge Rule: "Date" attribute: ignore empty custom field value
+
- BugFix: Kairos might be initialized incorrectly because system redis library was imported instead of local one
  
Bug Fix: Message Center: Asre Fara Ertebat: update WSDL
+
- BugFix: Fixed Typo which cause isp deposit role back not to work correctly
  
Feature: Charge Rule: add "ISP" attribute (limitation)
+
- BugFix: __internetReauthorizeCheckForIncorrectSubService was not working due to typo
  
Feature: Charge Rule: add "Radius Attribute" attribute
+
- BugFix: Fix memory leak of web service process by replacing cyclic-reference-creator collections.OrderedDict with odict.odict in kairos library
  
=='''تگ 318 در تاریخ ۱۳۹۵/۰۳/۳۱'''==
+
- BugFix: Consume ISP deposit was broken after Internal Relogin. Fix to always reload ISP and log after consuming deposit.
  
Bug Fix: (Critical) Fix bug in thread pool, causing service to freeze in some cases
+
- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field
  
Bug Fix: (Critical) Fix reloading user not working in some cases
+
  Resolving 'max_rule_time_usage' charg rule to be read from user
 +
  custome field (e.g: 'F:time') haven't been handled.
  
Bug Fix: Charge Rule: Fix "Maximum Rule Traffic Usage" attribute was not working
+
- BugFix: Duplicate detector was not caching reply packets and never replay them
  
Bug Fix: Charge Rule: Fix "Date" attribute was not working
+
- Bugfix: Remove Remaining Partitioning Check Code
 +
   
 +
  Since we don't check for partitioning capability of PostgreSQL any
 +
  more (see recent commits) we don't need this any more.
  
Bug Fix: Charge Rule: Fix a few general bugs in charge rules
+
- Bugfix: #1215 Fix Timezone Issue in Online Graph
  
Bug Fix: Mikrotik: Fix PPPOE service might have conflict with isg services
+
- Bugfix: Remove Calling Deleted Module
  
Bug Fix: Database: Add foreign key from users.group_id to groups table
+
- Improvement: Log next event and kill dict in can stay event of log console
  
Bug Fix: Online Payment: Change amount in database to numeric(16, 2) to avoid error for very large amounts
+
- BugFix: Prevent maximum threshold minutes might have caused avalanche situtation, causing cisco ISG bras to overload
  
Bug Fix: Online Payment: (Minor) fix not adding report details records for Eghtesad Novin
+
- BugFix: Use Acct-Session-Id in kick user via coa instead of Cisco-Account-Info
  
Bug Fix: Online Payment: (Minor) fix old report of Search Pending Online Payments
+
- BugFix: Internal relogin cleanup and bug fixes
  
Feature: Allow group status to set to inactive, so no new user can be added or moved to that group
+
- Improvement: Increased default max thresholds to decrease the load on ras and ibs
  
=='''تگ 316 در تاریخ ۱۳۹۵/۰۳/۳۰'''==
+
- Cleanup: Change RAS Name 'Wireless' to '4ipnet'
  
Bug Fix: Cisco VPDN ras: Fix Change Rate Limit
+
- Cleanup: SOAP Cleanup
  
Feature: Web Admin: add Save Report option for User View Credit Changes report
+
- Feature: add isp mapping from LDAP
  
Bug Fix: BW Manager: remove mangle on user logout and change rule
+
- Feature: add send_lock_users capability to notification rules
  
Bug Fix: BW Manager: rereate tree on startup
+
- Improvement: use whenchanged attribute in ldap query
  
Enhancement: BW Manager: Chainify bandwidth manager on mikrotik
 
  
Bug Fix: (Invoice) Web Admin: Pay Invoice by admin: Paid Amount: show 0 as default
+
=='''تگ 360 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==
  
Bug Fix: Web Admin: Fix error when disabling RAS: isAnyOneOnlineOnRas
+
- Bugfix: Fix Active Leaves
 +
   
 +
  The `getActiveLeaves` method must be called in 'MAIN' process.
  
Bug Fix: Web Admin: Fix error when deleting IPPool
+
- BugFix: We should not add internal_relogin flag to user attributes
  
Feature: Web Admin: Search User: Search by Radius Attribute
+
- BugFix: Various Internal Relogin fixes
  
Bug Fix: Web Admin: fix Extra Cahrge List not working for non-GOD admins
+
- Improvement: Make sure listen loop won't exit on an abnormal exception
  
Bug Fix: Notification: Fix not sending notification SMS when one user has invalid Cell Phone
+
- BugFix: Setting max rule traffic usage value as a float in custom fields would have break max rule traffic plugin
  
Bug Fix: Web Admin: Fix bad Radius Attributes value in User Info after migration to C
+
- Improvement: Disable Partitioning Check Contraints
 +
   
 +
  This is done because of some efficiency issues
  
Feature: Notification: allow using user_id in notification text
+
- Improvement: Disable adding check constraint to partitioned tables
  
Feature: show state of user in reject cache or remove from cache
+
- BugFix: We should ignore negative threshold when QV is passed to cisco isg
  
Feature: Web Service: allowing calling group.getGroupInfo by group_id instead of group_name
+
- BugFix: A mid session reauthorize after a restart will create an instance without start accounting
  
Bug Fix: write kill_reason in connection_log
+
- BugFix: Do not panic if charge rule is None during stop session
  
Bug Fix: Online Payment: fix error "AttributeError ssl._create_default_https_context" on old Python versions
+
- BugFix: Not saving user after logout will lead to inconsistent user object
  
Bug Fix: Web Admin: (C_invoice) remove Recently Expired Users from home page
+
- BugFix: Take credit limit into account when calculating remaining bytes. This fixes postpaid user problem with isg prepaid services
  
=='''تگ 315 در تاریخ ۱۳۹۵/۰۳/۱۱'''==
+
- Improvement: Kill max delay default value was too large. Set it to 2 hours by default
  
Invoice: after online payment, consume from gateway's ISP deposit not user's ISP deposit
+
- Improvement: Make auth rate control optional and turn it off by default
  
PostgreSQL function "get_user_events" (used by CRM): only pop (return and delete) 1000 records in each call
+
- Bugfix: #1512 Fix `int` Convertion of `float` String
  
Radius DummyPacket Fixes
+
- Bugfix: #1449 Fix `users.group_id` Bug
 +
   
 +
  Fixed `getDBColName` in a way which returns the part after the dot,
 +
  e.g 'usersgroup_id' => 'group_id'
  
Made sure auto renew would not end up in a dead lock
+
- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report
 +
   
 +
  After adding two columns `user_id` and `group_id` to `connection_log`
 +
  table it created a conflict with `users` table on in management
 +
  summary queries; in this fix we change SQL queries to exactly specify
 +
  which fields we mean by `user_id` and `group_id`: `users.user_id`,
 +
  `users.group_id`, etc.
  
Show group name (as Current Service) in user's web panel home page
+
- Bugfix: add missing function call on commit of periodic acc plugin
  
Improve Transaction feature
+
- Bugfix: #1503 Fix MAC Extraction From RAS of ZTE Type
 +
   
 +
  ZTE model rases change the format of user mac address in recent
 +
  framework update, e.g:
 +
  old format: `78d99fd34e4b`
 +
  new format: `78:d9:9f:d3:4e:4b`
  
Show Charge Rule Usage in user web panel Connection Log
+
- Improvement: Few logging for radius process
  
Bug fixes in "Periodic Accounting" and "Periodic Credit Change" when DST (Daylight Saving Time) switches
+
- BugFix: Reauthorize bytes were deducted twice from remaining bytes
  
=='''تگ 313 در تاریخ ۱۳۹۵/۰۳/۰۳'''==
+
- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log
  
:* '''Bug Fixes'''​
+
- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize
  
- Transaction functionality, in database for now: add transaction_id column to tables: credit_change, user_deposit_change, user_audit_log
+
- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet
  
- Bug fix in checking permissions ALLOW NEGATIVE CREDIT CHANGE INPUT and ALLOW REDUCE NEGATIVE CREDIT
+
- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.
  
- Add rfc2868 to radius server dictionaries
+
- Bugfix: don't assign ip to sub service
  
- Measure and show web service response time statistics: Admin home: Rates Web Service
+
- Bugfix: skip users without ignore_ras
  
- Fix invoice bug: show Increase Deposit by Group Credit action in add/edit invoice rule
+
- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold
  
- Fix a few bugs preventing service startup
+
- Feature: Multiple prepaid services per account support
  
- Fix bug: ISP online user count was double incremented
+
- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them
  
- Fix bug in Search User page: Select All was not working
+
- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh
  
- Fix user BW graph not working in user panel
+
- BugFix: Multi login did not work with Multi Service rases other than ISG
  
- Fix not working: Admin -> User -> search by Phone
+
- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu
 +
   
 +
  The following links are deprecated and removed:
 +
  All Realtime Graph
 +
  Internet Realtime Graph
 +
  Voip Realtime Graph
 +
  BW Realtime Graph 
 +
  Also updated modified links
  
- Night Free user/group attribute (without custom field)
+
- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services
  
- Allow using any user attribute (not only custom fields) in Charge Rule attributes, for example: "A:credit", or "A:night_free"
+
- Bugfix: #1136 Fix Name of Import File in Import User Menu
 +
   
 +
  Note: after changing the log process to pass the logging mechanism to
 +
  python syslog module, user_import logs won't be written to a local
 +
  file which will cause to "View Import Log" link on "Import User" page
 +
  after uploading CSV file won't work. this can be fixed by adding new
 +
  log type (aside `QueueLogger` and `DirectLogger`) to IBS logger
 +
  module, but this is not a priority now; look at the comments on
 +
  changed files for more info.
  
- Feature: Extra Charge Rule: add Set and Multiply actions (other than Add)
+
- BugFix: Re-Onlined users might have get failed status due to left over from previous sessions
  
- Feature: Extra Charge Rule: add change_target = "night_free" (other than "credit" and "deposit")
+
- BugFix: Radius Attributes with integer values were not working in charge rule attribute radius
  
- Add internal relogin mechanism to automatically logout/login when renew is performed while user is online
+
- Improvement: Allow Acct-Interim-Interval to be passed to failed users
  
- Bug Fix in BW Manager: getRootNode
+
- Improvement: Exception handling for internal relogin
  
- Feature: invoice: add new group flag "Invoice Renew Do Not Reset Credit"
+
- BugFix: Removed Extra print
  
='''C Branch '''=
+
- Bugfix: Incorrect call to getUserAttrs caused exception
  
=='''تگ 304 در تاریخ ۱۳۹۵/۰۱/۳۰'''==
+
- BugFix: Some initial variables where missing in configuration file and advanced configuration
  
:* '''Bug Fixes'''​
+
- BugFix: Undefined session raised unnecessary exception
  
1. Fix backward compatibility in radius_attrs
+
- Improvement: API cleanups for cisco isg rases
  
2. Fix RemainingDurationAndBytes calculation
+
- Bugfix: cast ignore ras ids to int
  
3. UPDATE WSDL of Mihansms, AFE and Magfa
+
- Bugfix: read min/max event time directly from defs
  
4. Fix Deposit amount in search user
+
- Bugfix: fix group usages of connection analysis
  
5. Fix Report Cleaner
+
- Improvement: Remove `price` Filter From User ID Attribute
  
6. Fix Feshfesheh functionality
+
- Feature: Add User ID Attribute to Search User Page
  
7. Enable audit log for fast_dial
+
- BugFix: Threshold Bytes/Seconds did not trigger internal reauthorize due to bad merge
  
8. Fix Bandwidth Manager init
+
- BugFix: Second username change fail in case of internal relogin
  
:* '''Feature'''
+
- Improvement: get method for SNMP client
  
1. نمایش گزینه remote IP در Search user برگه Online user
+
- Feature: optionally do autoRenew on abs expired user
  
2. متدی برای دریافت لیست کاربران منقضی شده همراه با exp date و first login
+
- Bugfix: log deposit_type in deposit change
  
3. قطع اتصال توسط کاربر در پنل کاربری (Kill user)
+
- Cleanup: clean md5 response
  
4. نمایش سرویس در قسمت '''تغییر سرویس''' فاکتور براساس '''ISP''' گروه و کاربر
+
=='''تگ 359 تا 360 در تاریخ ۱۳۹۵/۱۱/۱۶'''==
  
:* '''Other'''
+
- Bugfix: add removed ad user info in comment tab
 
+
1. حذف گزینه web analyzer در گزارشات تمامی برنچ ها بجز برنچ lan_acc
+
 
+
2. Set Default value of admin_request_limit to -1 (unlimited)
+
 
+
3. +Some code cleanup and minor bugfix
+
 
+
='''تگ 273 در تاریخ ۱۳۹۴/۱۰/۲۸'''=
+
 
+
:* Bug Fixes​
+
:* بهبود عملکرد سیستم
+
 
+
='''تگ 256 در C Branch تاریخ ۱۳۹۴/۰۸/۲۷'''=
+
 
+
:* Bug Fixes​
+
:* بهبود عملکرد Kill
+
:* Cisco Dialup and IN Ras
+
:* Generic Ras
+
:* درج توضیحات برای Node در Bw manager
+
:* درج اولویت برای درگاه های بانک
+
:*/etc/init.d/IBSng optimizepg will optimize postgresql parameters depending on current hardware.
+
:* لاگ تغییر پهنای باند در گزارش Log console
+
 
+
 
+
='''IBSng C  '''=
+
 
+
:* ‌Bug fix
+
 
+
:* نمایش میزان مصرف به تفکیک rule های شارژ
+
 
+
:* امکان failed user با تنظیمات جدید
+
 
+
:* امکان Ip realese (IDLE threshold) (ماژول بصورت جدا قابل خریداری است)
+
 
+
:* اضافه شدن online user IP در user information
+
 
+
:* اضافه شدن max rule usage به تفکیک Time,Traffic و Credit
+
 
+
:* اضافه شدن گزینه saved report جهت گزارشات بالای 5000 رکورد
+
 
+
='''تگ T181 تاریخ ۱۳۹۳/۰۶/۰۲'''=
+
 
+
:* تغییر BW در ساعات مختلف با Limit bw Inras (سرویس API)
+
 
+
='''تگ T180 تاریخ ۱۳۹۳/۰۵/۲۶'''=
+
 
+
:* رفع Bug های نرم افزار
+
 
+
='''B1.35 تاریخ ۱۳۹۳/۰۱/۰۱'''=
+
 
+
:* رفع Bug های نرم افزار
+
 
+
:* مدل جدید اعلام هشدار و اخطار در صفحه اطلاعات کاربر (نمای بهتر، رفع خطای invalid referrer)
+
 
+
:* نمایش گراف ها با فرمت جدید و اضافه شدن امکان export از گراف ها(همخوانی با IE)
+
 
+
:*  رفع مشکل نمایش گراف ها
+
 
+
:* اضافه شدن گراف جدید به پنل کاربران
+
 
+
:* حل مشکل گراف جدید در پنل مدیران در مورد فیلتر کردن ISP
+
 
+
:* سازگاری نرم افزار با کلیه Browser ها و اعمال استاندارد های وب
+
 
+
:* بهینه سازی گزارشات شامل connection logs و ...
+
 
+
:* اضافه شدن Allow auto renew on credit finish و Auto renew do not reset credit در قسمت Flags
+
 
+
:* اضافه شدن Reseller bonus در قسمت user information
+
 
+
:* اضافه شدن online payment recharge from renew deposit و online payment arbitrary convert formula  در برگه Online payment در گروه
+
 
+
:* اضافه شدن max rule usage جدیدی بنام credit/time/traffic usage در شارژ
+
 
+
:* اضافه شدن امکان جستجو براساس status کاربران در Search user
+
 
+
:* اضافه شدن ignore update در Advanced config
+
 
+
:* اضافه شدن IGNORE USER UPLOAD در Advanced config
+
 
+
='''تگ T138 تاریخ ۱۳۹۲/۰۱/۱۵ '''=
+
 
+
:* حل مشکل در Search expired user
+
 
+
:* حل مشکل Exp date ثبت شده در User بعد از Renew
+
 
+
:* حل مشکل ADD ISP و فیلد Failed user ID
+
 
+
:* برطرف کردن مشکلات Search user
+
 
+
:* حل مشکل عدم نمایش Recently Expired Users
+
 
+
:* رفع ناخوانایی ایمیل های ارسالی Notiifcation
+
 
+
:* حل مشکل عدم نمایش IP search شده در Connection logs
+
 
+
:* حل مشکل ADD new user بعد از Update
+
 
+
:* حل مشکل مقدار دهی به Increment value در Increase recharge deposit const
+
 
+
:* حل مشکل Delete user در ASRS
+
 
+
:* حل مشکل راند کردن CPM
+
 
+
:* حل مشکل ریست کردن first login توسط ادمین System بدون داشتن Action
+
 
+
:* حل مشکل ست کردن Public endpoint در قسمت Message center
+
 
+
:* Item Lookup Box for lists
+
 
+
:* امکان قرار دادن یک مقدار ثابت برای یک ستون در لاگ سازمان
+
 
+
:* Admin می تواند در زمان دلخواه Status کاربری را که به آن دسترسی دارد تغییر دهد
+
 
+
:* کل لینک‌های گراف‌های قدیمی حذف شده است
+
 
+
:* در filter های Search user گزینه ای به لیست Equal,... اضافه شده است که Not یا Null را هم برای آن گزینه جستجو کند
+
 
+
:* اضافه شدن گزینه ای که مشخص کند هنگام renew و recharge اگر credit کاربر منفی بود از Credit جدید کسر شود یا خیر
+
 
+
:* در invoice_on_demand اضافه شدن بستانکاری در فاکتورها انتخابی است
+
 
+
:* اضافه شدن گزینه ای که مشخص کند Credit هنگام Recharge ست شود یا خیر
+
 
+
:* اضافه شدن برگه profile در User information
+
 
+
:* اضافه شدن In Ras Ippool در قسمت Search user
+
 
+
='''تگ T137 تاریخ ۱۳۹۱/۲/۰۲'''=
+
 
+
:*اضافه شدن شرط notification روی Deposit و Deposit+Credit (جمع هر دو پارامتر)
+
 
+
:*گزینه Ras Username به لیست ویژگی‌های قابل مشاهده در گزارش کاربران Online اضافه شد. از این گزینه برای مشاهده Username واقعی که توسط کاربر در هنگام اتصال وارد شده استفاده می‌شود.
+
 
+
:*حذف گزینه های Allow Receive Deposit و Allow Take Away Deposit از قسمت Flags در User و Group
+
 
+
:*تغییر کلی گراف ها
+
 
+
:*امکان مشخص کردن Failed User ID برای هر ISP
+
 
+
:*امکان ویرایش Phone و Cell Phone در Search User
+
 
+
:*اضافه کردن Postal Code و Address به لیست Attribute های قابل مشاهده در Search User
+
 
+
:*رفع مشکل IBSng برای سرویس‌های VoIP در حالتی که مدت زمان مکالمه از میزان ثانیه‌های رایگان کمتر بود
+
 
+
:*نمایش Username ها در Online payment report
+
 
+
:*نمایش lock reason در پنل کاربر
+
 
+
='''تگ T135 تاریخ ۱۳۹۰/۵/۱۳'''=
+
 
+
رفع باگ در Squid RAS
+
 
+
بهینه‌سازی در verify کردن دستی بانک ملی
+
 
+
بهینه‌سازی در صفحهٔ Edit LDAP Domain
+
 
+
 
+
 
+
='''تگ T134 تاریخ ۱۳۹۰/۵/۵'''=
+
 
+
بهینه‌سازی در لیست کاربران آنلاین در پنل مدیریت
+
 
+
رفع باگ مهم در لاگین failed user (که در صورت پرداخت آنلاین به حساب کاربر دیگری اضافه می‌شد)
+
 
+
اضافه شدن پشیبانی از درگاه جدید بانک ملی به نام سداد
+
 
+
رفع باگ در قسمت asterisk
+
 
+
رفع باگ مهم در تاریخ انقضای حساب کاربران
+
 
+
پرداخت‌های آنلاین در موفقیت از لیست Pending Payment حذف شوند
+
 
+
رفع باگی که تعدادی از permission های مربوط به پرداخت آنلاین، در پنل مدیریت نشان داده نمی‌شد و قابل اضافه کردن به مدیران نبود
+
 
+
بهینه‌سازی و رفع باگ در پشتیبانی از میکروتیک
+
 
+
بهینه‌سازی و رفع باگ در bandwidth manager درونی IBSng
+
 
+
رفع باگ در bulk delete user یا حذف کردن یکبارهٔ تعدادی از کاربران
+
 
+
رفع باگ در database partitioning
+
 
+
رفع باگ در صفحهٔ User Credit Changes در پنل مدیریت (مقدار اشتباه After Credit در مواردی که کردیت قبلی منفی بوده)
+
 
+
بهینه‌سازی در asterisk
+
 
+
بهینه‌سازی در caller id blacklist
+
 
+
رفع باگ در ISP Page Style
+
 
+
بهینه‌سازی در نمایش گراف‌ها در پنل مدیریت
+
 
+
افزایش حداکثر طول نام‌کاربری در CISCO از ۸ به ۱۲ کاراکتر
+
 
+
نمایش مبالغ پرداخت بصورت عدد صحیح در notification
+
 
+
 
+
 
+
='''تگ T133 تاریخ ۱۳۹۰/۳/۲۲'''=
+
 
+
امکان اعمال شدن بیشتر از تغییرات احتمالی در کد (که روی سرور انجام می‌شود، بخاطر customize یا رفع باگ یا...) بدون ری‌استارت کردن سرویس IBSng یعنی دیگر خیلی کمتر (نسبت به قبل) نیاز به ری‌استارت کردن سرویس خواهد بود
+
 
+
رفع تعدادی باگ در صفحات پرداخت آنلاین (پنل ادمین و یوزر)
+
 
+
='''تگ T132 تاریخ ۱۳۹۰/۳/۸'''=
+
 
+
رفع باگ در bandwidth manager درونی IBSng
+
 
+
رفع باگ در تاریخ انقضای کاربر از زمان ایجاد کاربر (expirtion date from creation date)
+
 
+
رفع باگ در پشتیبانی از میکروتیک
+
 
+
رفع باگ در LDAP
+
 
+
اضافه شدن دو مجوز CHANGE VOIP PREFIX و CHANGE VOIP TARRIF برای مدیران
+
 
+
 
+
 
+
='''تگ T131 تاریخ ۱۳۹۰/۳/۳'''=
+
 
+
رفع یک باگ مهم که بدون رمز عبور می‌توانستند وارد پنل مدیریت شوند (ولی کاری نمی‌توانستند انجام دهند)
+
 
+
اضافه شدن گزینهٔ Auto Renew on Credit Finish به صفحهٔ مشخصات کاربر در پنل مدیریت
+
 
+
بهینه‌سازی در درگاه بانک ملت
+
 
+
 
+
 
+
='''تگ T130 تاریخ ۱۳۹۰/۳/۱'''=
+
 
+
اضافه شدن فیلتری در صفحه Search User در پنل مدیریت، که بتوان کاربرانی که از تاریخ خاصی تا تاریخ خاصی لاگین نکرده‌اند را سرچ کرد
+
 
+
بهینه‌سازی در bandwidth manager درونی IBSng
+
 
+
بهینه‌سازی و رفع باگ در Load Balancing Dispatcjer
+
 
+
بهینه‌سازی و رفع باگ در پرداخت آنلاین
+
 
+
رفع باگ در charge rule
+
 
+
رفع باگ در صفحهٔ User Deposit Changes
+
 
+
رفع باگ در قسمت Voucher
+
 
+
اضافه شدن فیلتر cpm در گزارش اتصات کاربران در پنل مدیریت
+
 
+
ثبت شدن تاریخچهٔ لاگین مدیران در پنل مدیریت
+
 
+
رفع باگ در لاگین کاربران VoIP
+
 
+
اضافه شدن گزارش کاملی از پرداخت‌های آنلاین (به نام Online Payment Report) در پنل مدیریت
+
 
+
رفع باگ در Monthly Expirtion Date کاربران
+
 
+
بهینه‌سازی در LDAP
+
  
 +
- Bugfix: affect search base for paged searches
  
 
</div>
 
</div>
 
</font>
 
</font>

نسخهٔ ‏۱۸ ژوئن ۲۰۱۷، ساعت ۲۲:۳۰


محتویات


C Branch

تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۳

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix : #1300 delete realtime request log interface

 real time request log  deleted  from interface because the source code of this link  had been deleted before .

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix: #1278 Fix Account Not Started Counter

 When "account not started" counter got negative value,
 IBSng web panel shown "0*" value that means negative number.
 The main reason for this issue was when a user had several sub services,
 it tried to decrease counter per each of them (when their requests received),
 while it increased counter once on authentication action. So to solve this issue,
 we handled __decreamentNotStartedCounter method which check loaded user's
 instance that must be Master to run decrease action.
 Example diagram for this issue:
  Step1: Authentication +1   << Correct
  Step2: Master         -1   << Correct
  Step3: Free-Site      -1   << Incorrect
  StepN: SubServiceN    -1   << Incorrect
  StepX: SubServiceX    -1   << Incorrect

- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group

 When user chooses more than one group/isp/etc in Search User panel and
 selects bulk kill action it raises and error. It was because of
 invalid format of passing parameters.

- Bugfix: Fix Minor Typo Error

- Bugfix: #1235 Fix Minor Invoicing DB Bug

 Column reference to 'pi_issue_date' was ambiguous!

- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field

 Resolving 'max_rule_time_usage' charg rule to be read from user
 custome field (e.g: 'F:time') haven't been handled.

- Bugfix: #1215 Fix Timezone Issue in Online Graph


تگ 360 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰

- Bugfix: Fix Active Leaves

 The `getActiveLeaves` method must be called in 'MAIN' process.

- BugFix: Various Internal Relogin fixes

- Improvement: Make sure listen loop won't exit on an abnormal exception

- BugFix: Setting max rule traffic usage value as a float in custom fields would have break max rule traffic plugin

- Improvement: Disable Partitioning Check Contraints

 This is done because of some efficiency issues

- BugFix: We should ignore negative threshold when QV is passed to cisco isg

- BugFix: A mid session reauthorize after a restart will create an instance without start accounting

- BugFix: Do not panic if charge rule is None during stop session

- BugFix: Not saving user after logout will lead to inconsistent user object

- BugFix: Take credit limit into account when calculating remaining bytes. This fixes postpaid user problem with isg prepaid services

- Improvement: Kill max delay default value was too large. Set it to 2 hours by default

- Improvement: Make auth rate control optional and turn it off by default

- Bugfix: #1449 Fix `users.group_id` Bug

Fixed `getDBColName` in a way which returns the part after the dot,
e.g 'usersgroup_id' => 'group_id'

- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report

 After adding two columns `user_id` and `group_id` to `connection_log`
 table it created a conflict with `users` table on in management
 summary queries; in this fix we change SQL queries to exactly specify
 which fields we mean by `user_id` and `group_id`: `users.user_id`,
 `users.group_id`, etc.

- Bugfix: add missing function call on commit of periodic acc plugin

- Bugfix: #1503 Fix MAC Extraction From RAS of ZTE Type

 ZTE model rases change the format of user mac address in recent
 framework update, e.g:
 old format: `78d99fd34e4b`
 new format: `78:d9:9f:d3:4e:4b`

- Improvement: Few logging for radius process

- BugFix: Reauthorize bytes were deducted twice from remaining bytes

- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log

- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize

- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet

- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.

- Bugfix: don't assign ip to sub service

- Bugfix: skip users without ignore_ras

- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold

- Feature: Multiple prepaid services per account support

- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them

- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh

- BugFix: Multi login did not work with Multi Service rases other than ISG

- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu

 The following links are deprecated and removed:
 All Realtime Graph
 Internet Realtime Graph
 Voip Realtime Graph
 BW Realtime Graph
 Also updated modified links

- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services

- Bugfix: #1136 Fix Name of Import File in Import User Menu

 Note: after changing the log process to pass the logging mechanism to
 python syslog module, user_import logs won't be written to a local
 file which will cause to "View Import Log" link on "Import User" page
 after uploading CSV file won't work. this can be fixed by adding new
 log type (aside `QueueLogger` and `DirectLogger`) to IBS logger
 module, but this is not a priority now; look at the comments on
 changed files for more info.

- Bugfix: cast ignore ras ids to int

- Bugfix: read min/max event time directly from defs

- Bugfix: fix group usages of connection analysis

- Improvement: Remove `price` Filter From User ID Attribute

- Feature: Add User ID Attribute to Search User Page

- Feature: optionally do autoRenew on abs expired user

- Bugfix: log deposit_type in deposit change

- Cleanup: clean md5 response

تگ 360 در تاریخ ۱۳۹۵/۱۰/۲۹

  • Bug Fixes

1. Re-Onlined users might have get failed status due to left over from previous sessions

2. Radius Attributes with integer values were not working in charge rule attribute radius

3. Removed Extra print

4. Incorrect call to getUserAttrs caused exception

5. Some initial variables where missing in configuration file and advanced configuration

6. Undefined session raised unnecessary exception

7. Threshold Bytes/Seconds did not trigger internal reauthorize due to bad merge

8. Second username change fail in case of internal relogin

  • Improvement

1. Allow Acct-Interim-Interval to be passed to failed users

2. Exception handling for internal relogin

3. API cleanups for cisco isg rases

4. get method for SNMP client

تگ 359 در تاریخ ۱۳۹۵/۱۰/۲۹

Bugfix: fix internal relogin answer to main proc

Bugfix: Race condition might cause internal relogin to fail

Bugfix: Autorenew would fail if user has next group and current group does not have group_credit

Bugfix: fix limit port binding

Bugfix: fix periodic acc failed login

Bugfix: fix non-working periodic accounting plugin

Bugfix: Some mikrotik devices send mschapv2 flags as non-zero which is not compliant by standard but leads to wrong passwords

Improvement: add zero credit limit to search user

Bugfix: Make sure we never get blocked infinitely in relogin process

Bugfix: Do not fetch in/out bytes in case accounting not started to prevent lots of nagging about online dic not found with ISG prepaid services

Cleanup: Internal Relogin Cleanups

Bugfix: Try to retry query in case of deadlock

Feature: Add PubSub to Extra Charge and MC Modules

Improvement: Allow relogin to be called in blocking mode, so caller will not return until relogin is finished

Bugfix: Race condition caused internal relogin to raise error

Feature: add a plugin to ignore checking limit port based on incoming ras

Bugfix: Internal Relogin were not working correctly with multiple concurrent requests

Bugfix: Threshold might not be defined in session yet

Bugfix: ChangeCredit Set and AutoRenew was not working with new Internal Relogin

Bugfix: Internal Relogin support for changeCredit, updateUserAttrs and setOneChargeRuleUsage to prevent incorrect calculations during online sessions

Bugfix: Clear internal reauthorize threshold, if it is not required anymore

Bugfix: Renew should be called while user instances has been temporarily logged off

Bugfix: Length of DummyPacket were not working

Bugfix: Critical bug in new sub services which caused partial logs not to work properly

Bugfix: allow God admin to send SMS

Bugfix: ignore updating None user object

Feature: Ability to fetch ip-to-mac mapping from a redis database

Bugfix: default value for field references

Bugfix: set online status base on online layout data

Bugfix: up/down cpmb doesn't support field value

Bugfix: hide negative acct not started (business care, we should fix root cause in core)

Bugfix: fix getting charge rule value from user

Bugfix: fix night-free extra charge

Bugfix: fix active leave list

Bugfix: fix setting attribute field in max_rule_traffic_usage

Bugfix: Various new ISG service fixes

Improvement: Log traceback if an online session dictionary has been found

Bugfix: wait for reload after creditChange

Bugfix: ISG Minor Fixes

Bugfix: fix non-working script to recreate bw tree

Feature: Add charging name and qos name to service definition of charge rules

Bugfix: Prevent error if we receive a slave stop accounting without having a session on master isg ras

Cleanup: Cleaned up redis backend section of configuration file

Improvement: Better error handling of expired ras storage dict items

Bugfix: ACS2 ras unique ids were changing for every call. Changed it to use authenticator of incomding packet instead

Bugfix: dhcp attributes should be available in slave aps as it might have individual dhcp ippools

Bugfix: Delete and ttl method of ras storage were not working

Bugfix: Cisco ISG fixes to work with new redis based ras storage

Bugfix: Delete and ttl method of ras storage were not working

Bugfix: fix bulk user deposit

Feature: show charge rules of each service in separate tab

Bugfix: fix non-working home graphs again, issue #1190

Bugfix: DHCP IP assignment was not working correctly if multiple online workers were used

Bugfix: fix graphs in interface (replace realtime stuff), issue #1169

Bugfix: add unique id to ras_msg

Bugfix: Peridic Notification: Credit rule: behave like user plugin Check for AUTO RENEW and AUTO RECHARGE eligibilty before sending notification

Bugfix: Cisco ISG bandwidth attributes were reverse

Improvement: Optimized event for better response time

Improvement: Cisco ISG IP EAP Send account logon on receive of a session start event

Improvement: When syncing subscriber services on cisco ISG only deactivate/activate services which has been changed.

Improvement: Better calculation of ISG bandwidth bursts

Bugfix: Session Dict for Primay service were not created on start accounting

Bugfix: Multiple fixes in cisco ISG EAP ras

Improvement: Use redis ttl instead of iterate and cleanup

Bugfix: Fixed Typo in log console

Bugfix: Minor fixes and cleanups

Bugfix: Change Service with empty service list should not be sent

Improvement: Log activated services in log console while authenticating

Bugfix: Fixed conflicting attributes between mvts and cisco

Bugfix: If user was re-online after rule change occured, we would have never switch services. Current approch will sync services upon re-online using cisco isg session query

Feature: Switched ras storage from lmdb to redis

Bugfix: EAP ras state dictionary was growing without bound

Bugfix: user disconnecting from slave ap should trigger logout on ISG ras

Bugfix: Service kill should deactive service

Bugfix: Reonline of new enhanced services were not working correctly

Bugfix: COA log console were not written

Bugfix: log console were not written for change service

Improvement: Do Deactivate and activate coa requests in a single packet

Improvement: Enhanced services tested

Feature: Initial support for enhanced services

Bugfix: Internal Reauthorize were not working in ISG rases

Bugfix: Can stay runner were not working properly

Bugfix: internet reauthorize was not using can stay runner

Bugfix: Reauthorize packet on cisco 10k series does no pass any cisco-avpair

Bugfix: Service kill did not initiate master session kill

Bugfix: Fixed half written partials caused duplicated deletion processs which might not be necessary

Bugfix: Fixed Typo

Improvement: Various minor enhancements

Improvement: Killing a service in POD style should KILL parent session

Bugfix: Minor cisco ISG fixes

Feature: Add cisco_isg_ios_software cisco attribute with options IOS and IOSXR

Bugfix: Fixed typo which might cause prepaid reauthorize to fail before credit finish

Bugfix: Fixed reauthorize after a restart might cause incorrect values in ras storage

Improvement: Renamed remaining secs to next event secs to clarify the value

Bugfix: Cisco isg prevent avalanche for tarriff change reauthorizes

Improvement: Improved timing to prevent run/shm from filling up

Improvement: Prevent XSS

Bugfix: Fixed reauthorize caused session to be overwritten

Improvement: Better online session timings to prevent run/shm from filling up

Bugfix: Fixed typo

Improvement: Reauthorize used bytes are passed as total used bytes in this session

Feature: Only god admins are allowed to call runDebugCode

Improvement: Enhancements to radius server

Bugfix: More Cisco ISG Fixes

Improvement: Online user count now separate services from master sessions

Bugfix: Fixed reauthorize credit finish were not working

Improvement: Cisco ISG refactoring to improve code reusability

Bugfix: fix failed login

Feature: Log sub service in log console

Improvement: Sub services should not allocate ip addresses

Improvement: Enhanced remaining seconds calculations

Bugfix: Fixed error message

Bugfix: Fixed ISG change bw were not working

Improvement: Use threshold bytes instead of remaining for cisco isg remaining quota

Improvement: Decreased maximum reauthorize time to 4 hours and 1GB

Bugfix: ISG Fixes

Bugfix: Fixed Cisco ISG ras did not delete some ras storage data leading to full /run/shm

Feature: Added support for method beforeDeleteSessionDict to RasPacketHandler

Bugfix: Fixed Cisco ISG does not allow volumes more than 4GB

Feature: Added saveDecodedData method to be able to manually commit decoded data changes (ex. EAP ras)

Bugfix: Fixed update services is not needed on re-online

Bugfix: Fixed ras msgs without service points to Master session

Bugfix: Cisco ISG fixes for prepaid services

Feature: Allow changing of accounting list in ISG

Improvement: Moved common cisco isg methods into a base class, Cisco isg Portal ras

Bugfix: Cisco ISG Ras Fixes

Bugfix: Cisco ISG PPP Fixes

Feature: Send username during COA

Bugfix: Cisco ISG Ras Fixes

Bugfix: Cisco ISG Slave AP ras to overcome weird behaviour of cisco isg on radius proxy+dhcp configuration

Improvement: Removed testing code form isg ip

Feature: Cisco ISG IP EAP with IBS assigned dhcp addresses and dhcp initiator

Feature: Added real time notification default

Bugfix: Fixed items were returning all lmdb items instead of just target dict

Bugfix: Fixed maclib to support more formats

Improvement: Better debugging

Improvement: Better logging

Improvement: Turned off debug by default

Bugfix: New Plugin API fixes

Bugfix: Fixed unresolved conflict

Bugfix: Fixed syntax error

Bugfix: Fixed conflict between service accounting and prepaid services

Bugfix: Fixed Typo

Bugfix: Fixed a race condition which might cause ISG user service not to accept

Bugfix: Fixed peap inner identifiers were incorrect

Bugfix: EAP Ras Fixes to conform RFC

Bugfix: Fixed tariff change flag were not working

Bugfix: ISG IP EAP Ras Fixes

Cleaup: Removed merge leftovers

Bugfix: Fixed indentation errors caused by merge

Bugfix: Fixed COA attributes were not passed correctly

Bugfix: Fixed primary service passed serveral times

Feature: Reauthorize and tariff change support in charge plugin

Bugfix: Fixed multiple typos

Feature: Added a link pointing on how to create cert files

Bugfix: Fixed multiservice on isg ip eap

Feature: EAPCalc added in addons

Bugfix: Fixed tls keys should be optional

Improvement: Sample config for cisco isg ip eap

Feature: Cisco ISG IP EAP Ras Support

Improvement: EAP Ras Minor Enhancements

Improvement: Minor Enhancements

Improvement: Charge rule cache enhancements

Bugfix: Fixed Reauthorize requests should not create a new session

Bugfix: Fixed Typo

Bugfix: More EAP Fixes

Bugfix: Fixed cisco isg service sessions were initiated in no start accoungint state

Bugfix: Fixed re-online multilogin wasn't correctly work due to subservices

Improvement: Better Logging

Bugfix: Fixed mac and port were not shown correctly

Bugfix: Cisco ISG Fixes

Feature: Cisco ISG PPP Ras in new ras branch

Feature: Added showing sub-service in user info online session layer and connection log

Bugfix: More cisco ISG Fixes

Feature: Added support for cisco ISG services

Improvement: Cisco ISG PPP Enhancements

Feature: Cisco ISG PPP Ras

Feature: In RAS BW for Cisco ISG

C_staging Branch

تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۷

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix : #1300 delete realtime request log interface

 real time request log  deleted  from interface because the source code of this link  had been deleted before .

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix: #1278 Fix Account Not Started Counter

 When "account not started" counter got negative value,
 IBSng web panel shown "0*" value that means negative number.
 The main reason for this issue was when a user had several sub services,
 it tried to decrease counter per each of them (when their requests received),
 while it increased counter once on authentication action. So to solve this issue,
 we handled __decreamentNotStartedCounter method which check loaded user's
 instance that must be Master to run decrease action.
 Example diagram for this issue:
  Step1: Authentication +1   << Correct
  Step2: Master         -1   << Correct
  Step3: Free-Site      -1   << Incorrect
  StepN: SubServiceN    -1   << Incorrect
  StepX: SubServiceX    -1   << Incorrect

- BugFix: reloadUser without wait for lock caused infinite loop

- BugFix: Online User Storage must be flushed during IBSng start up

- Cleanup: Cleaned up check online method

- BugFix: Fixed reloadUser might incorrectly run while lock has not been acquired

- BugFix: Redis might incorrectly reset pubsub in busy situations

- BugFix: Credit Limit was displayed incorrectly

- BugFix: Mutable object should not be passed as default argument

- BugFix: Fix Relogin User Issue On Update Custom Field

- BugFix: Fix Relogin User Issue On Update Custom Field

- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group

 When user chooses more than one group/isp/etc in Search User panel and
 selects bulk kill action it raises and error. It was because of
 invalid format of passing parameters.

- BugFix: mp observer change in isp loader caused isp states to reset

- BugFix: unload/load instead of reload causes race condition where isp object is no longer available

- BugFix: Online user storage were using incorrect redis db

- Bugfix: #1235 Fix Minor Invoicing DB Bug

- Bugfix: #1235 Fix Minor Invoicing DB Bug

 Column reference to 'pi_issue_date' was ambiguous!

- BugFix: Kairos might be initialized incorrectly because system redis library was imported instead of local one

- Cleanup: Remove Unused Method `__renewMustResetCredit`

- BugFix: Kairos might be initialized incorrectly because system redis library was imported instead of local one

- BugFix: Fixed Typo which cause isp deposit role back not to work correctly

- BugFix: __internetReauthorizeCheckForIncorrectSubService was not working due to typo

- BugFix: Fix memory leak of web service process by replacing cyclic-reference-creator collections.OrderedDict with odict.odict in kairos library

- BugFix: Consume ISP deposit was broken after Internal Relogin. Fix to always reload ISP and log after consuming deposit.

- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field

- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field

 Resolving 'max_rule_time_usage' charg rule to be read from user
 custome field (e.g: 'F:time') haven't been handled.

- BugFix: Duplicate detector was not caching reply packets and never replay them

- Bugfix: #1215 Fix Timezone Issue in Online Graph

- Improvement: Log next event and kill dict in can stay event of log console

- BugFix: Prevent maximum threshold minutes might have caused avalanche situtation, causing cisco ISG bras to overload

- BugFix: Use Acct-Session-Id in kick user via coa instead of Cisco-Account-Info

- BugFix: Internal relogin cleanup and bug fixes

- Improvement: Increased default max thresholds to decrease the load on ras and ibs

- Cleanup: Change RAS Name 'Wireless' to '4ipnet'

- Cleanup: SOAP Cleanup

- Feature: add send_lock_users capability to notification rules


تگ 369 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰

- Bugfix: Fix Active Leaves

 The `getActiveLeaves` method must be called in 'MAIN' process.

- BugFix: We should not add internal_relogin flag to user attributes

- BugFix: Various Internal Relogin fixes

- Improvement: Make sure listen loop won't exit on an abnormal exception

- BugFix: Setting max rule traffic usage value as a float in custom fields would have break max rule traffic plugin

- Bugfix: fix delete notification bug

- Improvement: Disable Partitioning Check Contraints

 This is done because of some efficiency issues

- Improvement: Disable adding check constraint to partitioned tables

- BugFix: We should ignore negative threshold when QV is passed to cisco isg

- BugFix: A mid session reauthorize after a restart will create an instance without start accounting

- BugFix: Do not panic if charge rule is None during stop session

- BugFix: Not saving user after logout will lead to inconsistent user object

- BugFix: Take credit limit into account when calculating remaining bytes. This fixes postpaid user problem with isg prepaid services

- Improvement: Kill max delay default value was too large. Set it to 2 hours by default

- Improvement: Make auth rate control optional and turn it off by default

- Bugfix: #1449 Fix `users.group_id` Bug

 Fixed `getDBColName` in a way which returns the part after the dot,
 e.g 'usersgroup_id' => 'group_id'

- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report

 After adding two columns `user_id` and `group_id` to `connection_log`
 table it created a conflict with `users` table on in management
 summary queries; in this fix we change SQL queries to exactly specify
 which fields we mean by `user_id` and `group_id`: `users.user_id`,
 `users.group_id`, etc.

- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report

 After adding two columns `user_id` and `group_id` to `connection_log`
 table it created a conflict with `users` table on in management
 summary queries; in this fix we change SQL queries to exactly specify
 which fields we mean by `user_id` and `group_id`: `users.user_id`,
 `users.group_id`, etc.

- Bugfix: add missing function call on commit of periodic acc plugin

- Bugfix: Add `disabled` Column to `online_payment_gateway` Table

- Bugfix: #1503 Fix MAC Extraction From RAS of ZTE Type

 ZTE model rases change the format of user mac address in recent
 framework update, e.g:
 old format: `78d99fd34e4b`
 new format: `78:d9:9f:d3:4e:4b`

- Improvement: Few logging for radius process

- BugFix: Reauthorize bytes were deducted twice from remaining bytes

- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log

- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize

- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet

- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.

- BugFix: Fixed bad commit

- Bugfix: #1449 Fix `users.group_id` Bug

 Fixed `getDBColName` in a way which returns the part after the dot,
 e.g 'usersgroup_id' => 'group_id'

- Bugfix: don't assign ip to sub service

- Bugfix: use ippool interface method fix #1468

- Bugfix: skip users without ignore_ras

- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold

- Feature: Multiple prepaid services per account support

- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them

- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh

- BugFix: Multi login did not work with Multi Service rases other than ISG

- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu

 The following links are deprecated and removed:
 All Realtime Graph
 Internet Realtime Graph
 Voip Realtime Graph
 BW Realtime Graph  
 Also updated modified links

- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services

- Bugfix: #1136 Fix Name of Import File in Import User Menu

 Note: after changing the log process to pass the logging mechanism to
 python syslog module, user_import logs won't be written to a local
 file which will cause to "View Import Log" link on "Import User" page
 after uploading CSV file won't work. this can be fixed by adding new
 log type (aside `QueueLogger` and `DirectLogger`) to IBS logger
 module, but this is not a priority now; look at the comments on
 changed files for more info.

- BugFix: Re-Onlined users might have get failed status due to left over from previous sessions

- BugFix: Radius Attributes with integer values were not working in charge rule attribute radius

- Improvement: Allow Acct-Interim-Interval to be passed to failed users

- Improvement: Exception handling for internal relogin

- Bugfix: Incorrect call to getUserAttrs caused exception

- BugFix: Some initial variables where missing in configuration file and advanced configuration

- BugFix: Undefined session raised unnecessary exception

- Improvement: API cleanups for cisco isg rases

- Bugfix: cast ignore ras ids to int

- Bugfix: read min/max event time directly from defs

- Improvement: Add Sample Configurations for Work Queue, Pub/Sub and Topic

 Also did some modification to broker module to work with different
 configurations

- Bugfix: fix group usages of connection analysis

- Improvement: Add Abstraction Layer Over BrokerFactory for Connection Handler

- Improvement: Add Open Channel Callback Function

 Some initialization should be done after channel opened in
 non-blocking mode.  
 Also add some add callback function to be able to define callbacks
 after conneciton initiation

- Improvement: Remove `price` Filter From User ID Attribute

- Feature: Add User ID Attribute to Search User Page

- BugFix: Threshold Bytes/Seconds did not trigger internal reauthorize due to bad merge

- Feature: Add RabbitMQ Broker

- BugFix: Second username change fail in case of internal relogin

- Improvement: get method for SNMP client

- Bugfix: fix edit invoice rule

- Bugfix: fix online payment

- Bugfix: fix editInvoiceProfile

- Bugfix: fix add/update extra charge profile

- Improvement: Apply Post Rotate Script With Each Rotate

- Improvement: Apply Standard Format to Shahkar Output Files

- Feature: Add ShahakrID and CodeMelli to Shahkar Log

- Feature: Add ShahkarID and CodeMelli to User Attrs

 These attributes added to 'Comment' section of user attributes

- Improvment: Change Default CSVStorage Splitter and Make PyTables Logging of Radius Server Optional

- Feature: Add CSVStorage to Log Module

 Also changed 'Shahkar' module to use CSVStorage instead of
 PostgreSQLStorage

- Bugfix: fix auto_recharge_ignore_deposit flag

- Bugfix: fix typo in checking charge usage

- Feature: add group and before credit to connection_log attrs

- Feature: implement rabbitmq interface

- Bugfix: fix failed login for limit port/mac and password)

- Feature: md5 digest

- Bugfix: fix coordinate in shahkar log

- Feature: wireless ras

- Feature: try to get ap_name and coordinate from instance attrs

- Feature: new plugin (autoRenew requires next group)

- Bugfix: fix handling empty/None ras_ids in log console

- Bugfix: fix and complete write/read group and before_credit in connection logs

- Bugfix: convert console buffer to list

- Feature: show kill reason in connection log of user panael

- Bugfix: fix adding msg to buffer

- Bugfix: fix sending ras_loader

- Feature: Save Radius Log in PyTables Structure

- Feature: MC: add 'armaghan' SMS provider, issue #729

- Cleanup: User Location: remove SOAP handler (Location should be removed completely)

- Bugfix: User Import: fix KeyError and cleaning in user_import_actions: __updateImportingStats

- Bugfix: TG: User Import: wrong arguments order in re.sub

- Bugfix: TG: User Import: NameError

- Cleanup: C_invoice_dev: remove Invoice SOAP handler and all WSDL methods (models are there), migrated to JSON-RPC

- Feature: C_invoice: add config param 'change_service_share_isp_groups', used in getServiceSelection

- Bugfix: adapt pytables with new C branch

- Bugfix: SOAPModel: vales with type 'long' were skipped when converting to dict

- Bugfix: SOAPModel: vales with type 'long' were skipped when converting to dict

- Cleanup: remove extra_charge_soap_handler.py, migrate to JSON-RPC

- Doc: fix docstring in voucher_handler.py

- Doc: fix docstring in extra_charge_soap_handler.py

- Bugfix: C_dev: templates: fix again in KILL and CLAER perms, online_users_js.tpl

- Bugfix: fix commit 04111c, related to KILL USER and CLEAR USER again, #940

- Bugfix: C_invoice: service_price plugin: remove checkInput methods, issue #1121

 modifying group's service price and extra traffic options by non-GOD admin is not working
 permission checking (CHANGE GROUP and CHANGE USER ATTRIBUTES) has been done before

- Feature: Online Payment: add 'Disable' property to Gateway

- Improvement: add JSON-RPC method getGatewayInfo, use it in TG

- Bugfix: allow using user attr 'A:<attr-name>' in charge rule attributes

- Bugfix: C_dev: call transactionFinished in finally block

- Cleanup: C_dev: user_actions.py: yet more cleaning

- Cleanup: C_dev: user_actions.py: more cleanings

- Cleanup: C_dev: user_actions.py: rechargeUsers

- Feature: add flag auto_renew_ignore_deposit: cherry-picked in C_dev

- Cleanup: C_dev: rewrite reset credit / trash remaining decision logic

- added isp names and group names select as general ibs widgets

- Bugfix: irrelevant perm check in bw.getAllLeafNames

- remove realtime graphs & old php image-based graphs, fix timezone bug #888, #1051

- Feature: add user/group flag: Renew Do Not Reset Charge Rule Usage

- Bugfix: fix NameError in core/user/plugins/enable_failed_login.py: NoSectionError

- Feature: C_dev: Notification: add message_type == user_event

 insert directly to user_events table
 no relation to Message Center

- Bugfix: fix and update Saman gateway WSDL, remove old files

 rename ReferencePayment.wsdl.old to ReferencePayment_OLD.wsdl

- Cleanup: C_dev: cleaning online_payment_actions.py

- Bugfix: C_dev: user_actions.py: NameError in addNewUsersQuery

- Bugfix: TG: fix bad GroupNameSelecField and ISPNameSelecField

- added isp names and group names select as general ibs widgets

- Bugfix: C_invoice_dev: Fixed Rounding problem with user deposit

- Cleanup: Clean Init Function of Report Cleaner

- Bugfix: C_dev: call transactionFinished in finally block

- Cleanup: C_dev: user_actions.py: yet more cleaning

- Feature: add flag auto_renew_ignore_deposit: cherry-picked in C_dev

- Bugfix: C_invoice_dev: online_payment_arbitrary_convert_formula

- Bugfix: TG: fix bad GroupNameSelecField and ISPNameSelecField

- added isp names and group names select as general ibs widgets

- Bugfix: fix and update Saman gateway WSDL, remove old files

 rename ReferencePayment.wsdl.old to ReferencePayment_OLD.wsdl

- Cleanup: C_invoice_dev: online_payment_main.py: remove duplocate mellat_shaparak

- Cleanup: C_invoice_dev: cleaning online_payment_actions.py, and compatibility with C_dev

- Bugfix: fix and update Saman gateway WSDL, remove old files

- Bugfix: fix active leave list

- Bugfix: Online Payment: issue #991, fix error formats don't wrap GeneralException in GeneralException again

- Feature: JSON-RPC: add method isp.listISPsWithIDs, issue #993

- Feature: JSON-RPC: add method group.listGroupsWithIDs, issue #993

- Bugfix: MihanSMS: fix stupid and non-working code of __getBodies written by a newbie, issue #874

- Bugfix: Security: fix Bug #1007, add .htaccess file to /util, /inc, /help, IN_user

- Feature: allow performing online payment without any result action(credit/deposit)

 added for wispot, issue #994
 must put 'no_action' key in web_attributes in preparePayment request

- Cleanup: paymentVerified: argument 'add_type' was ignore and not passed

- Improvement: Online Payment: return Bank Ref ID in Verify

 return ref_id in verifyPayment and manualVerifyPayment json-rpc methods
 change msg to ref_id in gateway.verify and gateway.manualVerify return values
 issue #989 for wispot

- Bugfix: fix NameError in pasargad_gateway.py: getExceptionText, issue #990

- Feature: add new JSON-RPC method login.webLogin for new integrated web panel, issue #930

- Bugfix: notification: don't set threshold if notify failed

 return succeed (True/False) in rule.notify

- Bugfix: C_invoice: typo in invoice_controller.py: startwsith->startswith, #976

- Bugfix: C_invoice: autoRecharge: fix stupid logic of checking user_recharge_deposit call transactionFinished in finally block

- Bugfix: notification: fix non-working msg_type='url', issue #680

- Bugfix: C_dev: CRITICAL: unable to change normal username

 Bug initiated after a cherry-pick of Farshad's old commit by me on 2016-07-16

- add addons/client/reload/reload_defs.py

- Cleanup: move all params from defs.py to core/defs_lib/defs_defaults.py and core/paths.py

 Feature: allow changing all params (except for paths) from web, by updating db/defs.sql using defs_defaults.py
 Must run db/defs.sql after each update

- Bugfix: update db/defs.sql

- Feature: C_dev: add IranKish gateway (Tejarat Bank), issue #937, not tested on C_dev

- Bugfix: fix non-working MihanSMS mc provider

- Bugfix: fix smarty function canDo, don't add admin_username to params

 remove unused argument admin_username
 Fixes Bug #940, related to KILL USER and CLEAR USER

- Feature: use custom field in group

- C_invoice: Credit Notiticatio Rule: take {credit + recharge_deposit} instead of {credit + deposit}

- Feature: C_invoice: add config param 'change_service_share_isp_groups', used in getServiceSelection

- Remove Map page (containing outdated or redundant links) from Admin panel -> Home

- Bugfix: Negative Credit Expiration Date: saved Start='1970-01-01' in DB

- Bugfix: SyntaxError in core/notification/notification_rule.py

- Improvement: turbogears: use JSON-RPC instead of XML-RPC

- Online Payment: preparePayment: rename argument 'attribute_map' to 'attributes'

- Online Payment: add mandatory argument 'callback_url' to preparePayment

 remove gateway attributes for callback/return/revert url (default 127.0.0.1*IBSng-tg), wrong by design

- Cleanup: soap: remove unused complex types related to online payment

- Cleanup: get rid of online_payment_soap_handler, and the rest of online payment related soap methods

- Cleanup: remove unused online payment soap handlers: manualVerifyPayment, manualApplyPayment, purgePayment

- Cleanup: remove unused soap import from /admin/setting/online_payment/online_payment_controller.py

- Cleanup: remove (old) report of Search Pending Payments, admins must use Online Payment Report

- Cleanup: less usage of soap handlers in Admin -> Settings -> Online Payment

 add getAllGatewayInfos, manualApplyPayment and purgePayment xml-rpc handlers
 rename manualVerify into manualVerifyPayment
 remove manualSettle which is not used

- Bugfix: TG: restoreAuthDataBySessionID was not working, wrong param

- Improvement: json-rpc and xml-rpc: authenticate: INVALID_AUTH_TYPE: show given value

- Cleanup: remove soap handler verifyPayment

- Cleanup: remove soap handler preparePayment

- Cleanup: remove soap handler getPaymentSuggestedAmount

- Cleanup: remove soap handler getAvailablePaymentGateways

- Cleanup: TG: Unify admin and user online payment controllers

- Cleanup: TG: cleaning user/online_payment_controller.py

- Cleanup: TG: online payment: cleaning and trying to abstract user and admin controllers

- Improvement: TG: online payment: show ZarinPal bank Ref ID

- Improvement: TG: online payment: show Saman bank Ref ID

- Cleanup: C_staging: remove "Transfer Deposit" feature, which was disabled in 2012 (tag 137)

- Improvement: parsianCallback: change 'Operation Canceled' message to 'Incomplete Request, no "au"'

- Cleanup: online payment: fix unused xml-rpc methods, add missing ones

 replace soap with xml-rpc in turbogears user controllers
 and some cleaning in turbogears user controllers

- Cleanup: online payment: don't use soap model in actions

- Cleanup: online_payment_actions: getAvailableGatewayTypes: remove duplicate gateway types, preserving the order

- Cleanup: online payment: add actions.getAvailableGatewayTypes, use it in soap handler

- Cleanup: TG: session.py: use XML-RPC instead of SOAP

 restoreAuthDataBySessionID is used in online payment callbacks

- Cleanup: TG: replace SOAPError with Exception in @exception_handler(...)

- Cleanup: replace imports of "soap.soap_util.auth" with "ibsng.lib.auth" in turbogears controllers

- Improvement: soap: Map class: add __iter__ method and newFromDictionary classmethod

- Improvement: soap: add __iter__ method to SOAPModel, so that we can convert model into dict simply by dict(model)

- Feature: Online Payment Report: add 'Amount From' and 'Amount To' filters

- Improvement: add 'before_credit' column to connection_log, not tested

- Improvement: add 'group_id' column to connection_log, not tested

- Cleanup: db/functions.sql: break long list of args

- Bugfix: NameError (db_main) in core/user/plugins/mc.py

- Cleanup: remove 'partitioning_pg_min_version' and 'partitioning_pg_max_version' config params

- Bugfix: DB Partitioning: drop and re-create trigger if it was on another table (possibly *_previous_data)

- Bugfix: user_actions.calcRemainingDurationAndBytes, bytes is (str of) integer, not float, issue #912

- Bugfix: add BaseOnlineUsers.getOnlineUserIDsWithChargeID, use it in charge_actions.py before deleting a charge

- Bugfix: connection_usage.py: TypeError: 'NoneType' object has no attribute '__getitem__'

- Bugfix: minor bug in interface: Admin -> User Info -> Message Center -> always showed Yes

- Feature: show user attributes of (User Info's) Comment tab in Search User -> Attributes to Edit

- replace non-working isp_mapped_user_online_instances with isp_online_users_count getting from redis

 add isp_obj.getOnlineUsersCount(), use it in isp_obj.hasOnlineUsers()

- don't send any notification (expiration/credit/birthday) to a locked user

- replace `map(None, x)` with `list(x)`

- replace `filter(lambda...)` with list comprehention

- remove `apply` with static number of arguments

- remove all the SortedList and SortedDic crap, needs to be reviewed/tested for possible typos

- replace list.sort cmp function with key function while fixing a stupid bug in user_import_factory: cmp must return 0, -1, 1

- replace all `map(lambda...` crap with list comprehension or normal for loop

- Bugfix: C_lan_acc_staging: mikrotik.py: ras_msg: rename "pppoe_service" into "service"

 "service" is used in charge rules
 and "pppoe_service" is not used anywhere

- replace LOWERCASE_LETTERS_ON_USER_LOGIN flag with 2 new flags: LOWERCASE_USERNAME_ON_USER_LOGIN and LOWERCASE_PASSWORD_ON_USER_LOGIN

- Feature: Monthly Report Email: send connection logs of users to their email at the begining of Jalali month

- Bugfix: AbsDate: change AttributeError to a nice GeneralException

- imrovement: user panel: disconnect: change message (Persian / English) to prevent user's confusions

- Search Expired Users: show default '0 Days' for Expiration Date To, to avoid confusions

- bug fix: Copy This Group was not working, added Status to template

- C_staging: add missing perm DISALLOW ADD MULTIPLE USERS, used in user_handler.py exists in non-C branches since tag 173

- Added CHANGE INTERNET USERNAME permission and disallow changing username by default

- Feature: Add Query Wrapper for PyTable

- feature: allow admins to reset Real First Login in user info

- Cleanup: Remove PostgreSQL Storage

- add docstring for getUsersExpDateFirstLogin in user_actions.py, and remove extra newlines

- Feature: Add PyTables Log Type

- Feature: Add `md5_hexdigest` Function

- Feature: write LI log for shahkar service

- Feature: add flock

- fix interface bug in Bulk Renew Users: did not show error message

- sendNormalPasswordSMS: only check for attr_name='cell_phone'

- login_actions.py: break long lines

- send password: login_actions.py: fix style and remove uneeded lines

- security fix, add config options send_password_email and send_password_sms for web service, disable sms by default

- add Send Password feature (via EMail / SMS) as an interface config option

- disable XSS cleaning for inserted attrs too

- GenericHTTP mc provider: always save failure reason in report

 add "failure_response_errors" comma-seperated attribute
 do addToFailed is request failed
 not tested

- GenericHTTP provider: add success_response_pattern parameter, a regex to decide if sending message was successful

- generic_http.py: replace __findEPointObjs with a simple list comprehension in receive

تگ 369 در تاریخ ۹۵/۱۱/۱۶

- BugFix: Reauthorize bytes were deducted twice from remaining bytes

- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log

- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize

- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet

- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.

- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold

- Feature: Multiple prepaid services per account support

- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them

- BugFix: Multi login did not work with Multi Service rases other than ISG


تگ 368 در تاریخ ۹۵/۱۱/۱۱

- nothing changed in this tag

تگ 367 در تاریخ ۹۵/۱۱/۱۱

- Bugfix: skip users without ignore_ras


تگ 366 در تاریخ ۹۵/۱۱/۰۴

- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu

- Bugfix: #1136 Fix Name of Import File in Import User Menu


تگ 365 در تاریخ ۹۵/۱۰/۲۹

- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services


تگ 364 در تاریخ ۹۵/۱۰/۲۹

- BugFix: Re-Onlined users might have get failed status due to left over from previous sessions

- BugFix: Radius Attributes with integer values were not working in charge rule attribute radius

- Improvement: Allow Acct-Interim-Interval to be passed to failed users

- BugFix: Some initial variables where missing in configuration file and advanced configuration

- Improvement: API cleanups for cisco isg rases


تگ 363 در تاریخ ۹۵/۱۰/۲۶

- Bugfix: cast ignore ras ids to int

- Bugfix: read min/max event time directly from defs


تگ 361 تا 362 در تاریخ ۹۵/۱۰/۱۹

- Bugfix: fix group usages of connection analysis

- Feature: Add User ID Attribute to Search User Page

C_pmacct Branch

تگ 372 تا 373 در تاریخ ۹۶/۰۳/۲۷

- Bugfix: Fix CSV Report of Web Analyser

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix : #1300 delete realtime request log interface

 real time request log  deleted  from interface because the source code of this link  had been deleted before .

- Bugfix: #1339 Load Invoice Main in Online Worker

- Feature: #1223 Modify 'urldump' sniffer application to fetch 'ip_map' data directly from IBSng

- Bugfix: Fix LDAP Permissions

- Bugfix: #1278 Fix Account Not Started Counter

 When "account not started" counter got negative value,
 IBSng web panel shown "0*" value that means negative number.
 The main reason for this issue was when a user had several sub services,
 it tried to decrease counter per each of them (when their requests received),
 while it increased counter once on authentication action. So to solve this issue,
 we handled __decreamentNotStartedCounter method which check loaded user's
 instance that must be Master to run decrease action.
 Example diagram for this issue:
  Step1: Authentication +1   << Correct
  Step2: Master         -1   << Correct
  Step3: Free-Site      -1   << Incorrect
  StepN: SubServiceN    -1   << Incorrect
  StepX: SubServiceX    -1   << Incorrect

C_mongo Branch

تگ 372 تا 374 در تاریخ ۱۳۹۶/۰۳/۲۷

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix : #1300 delete realtime request log interface

 real time request log  deleted  from interface because the source code of this link  had been deleted before .

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix: #1278 Fix Account Not Started Counter

 When "account not started" counter got negative value,
 IBSng web panel shown "0*" value that means negative number.
 The main reason for this issue was when a user had several sub services,
 it tried to decrease counter per each of them (when their requests received),
 while it increased counter once on authentication action. So to solve this issue,
 we handled __decreamentNotStartedCounter method which check loaded user's
 instance that must be Master to run decrease action.
 Example diagram for this issue:
  Step1: Authentication +1   << Correct
  Step2: Master         -1   << Correct
  Step3: Free-Site      -1   << Incorrect
  StepN: SubServiceN    -1   << Incorrect
  StepX: SubServiceX    -1   << Incorrect

- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group

 When user chooses more than one group/isp/etc in Search User panel and
 selects bulk kill action it raises and error. It was because of
 invalid format of passing parameters.

- Improvement: #1186 Run mongo index in thread

- Improvement: #1186 Run mongo index in thread

- Bugfix: #1235 Fix Minor Invoicing DB Bug

 Column reference to 'pi_issue_date' was ambiguous!

- Bugfix: Correct Delete Query of Redundant Partial Log Records

- Improvement: Read From Config File Whether to Write on PSQL or Not

 Until now we read `defs.PSQL_LOG_CONNECTIONS` value to define whether
 we should write connection logs into PostgreSQL or not. With this
 commit value of `connection_log_use_psql` in `DATABASE_MONGO` section
 of IBSng config file defines our behaviour.


تگ 372 در تاریخ ۱۳۹۶/۰۱/۲۶

- Improvement: #1154 Add More Log in Case of Bulk Write Error

- Bugfix: #1201 Fix Slow Start of IBSng and Multiple Partial Log

 It has been seen that the number of online user doesn't match the
 records count on partial data table, it will result in slow start of
 IBSng (in recover partial log phase). This commit will fix this issue
 and makes some improvement on writing partial log data.

- Improvement: Optimized partial log recovery for postgresql. Not exists queries are much more efficient for large inner queries with index

- BugFix: Internal relogin cleanup and bug fixes

- Improvement: Increased default max thresholds to decrease the load on ras and ibs

تگ 369 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰

- Improvement: Add Missing Log for MongoDB Bulk Action Failure

- Bugfix: Fix Active Leaves

 The `getActiveLeaves` method must be called in 'MAIN' process.

- Improvement: Add Debug Log When Bulk Action of MongoDB Fails

- Bugfix: Fix Substracting User Credit Twice on Moving Partial Data

 When we are restarting IBSng, all records of Connection Log Partial
 Data Table/Collection will be moved to the base Table/Collection,
 meanwhile used credit must be substracted from current credit of user,
 but it will be done seperately on each plugin: PostgreSQL and MongoDB,
 this will result in substracting used credit twice from user credit
 which is WRONG; this has been handled in this commit.
   
 Also we have done some performance improvement on moving collection
 records completely (bulk action) on MongoDB.

- BugFix: First reauthorize on ISG would cause lots of nagging and also leaves session dict without necessary attributes

- BugFix: Limit Port might cause error if ignored ras is not available in user attrs

- Improvement: Second username mapping should not be flushed on restart

تگ 369 در تاریخ ۱۳۹۵/۱۱/۳۰

- BugFix: We should not add internal_relogin flag to user attributes

- BugFix: Various Internal Relogin fixes

- Improvement: Make sure listen loop won't exit on an abnormal exception

- BugFix: Setting max rule traffic usage value as a float in custom fields would have break max rule traffic plugin

- Improvement: Disable Partitioning Check Contraints, this is done because of some efficiency issues

- Improvement: Add Index on `login_time` Field of Connection Log Collection

- BugFix: We should ignore negative threshold when QV is passed to cisco isg

- BugFix: A mid session reauthorize after a restart will create an instance without start accounting

- BugFix: Do not panic if charge rule is None during stop session

- BugFix: Not saving user after logout will lead to inconsistent user object

- Improvement: Handle Mongo Query Limitation in Query Generation Function

- Bugfix: #1476 Fix CSV/PDF Report of Connection Usages in MongoDB

- Bugfix: Replace <i8> Tag of XMLRPCLib to <int> For Backward Compatibility

 According to XMLRPC specification long integer variables (INT64)
 should be handled with <i8> tag, but unfortunately this haven't been
 handled in C#, PHP, etc languages. So we are forced to use <int> tag
 with variables in range of INT32 and use <string> tag with variables
 not in specified range.

- Improvement: Cast All Elements of Details Section of Connection Log Report to String

- BugFix: Take credit limit into account when calculating remaining bytes. This fixes postpaid user problem with isg prepaid services

- Improvement: Kill max delay default value was too large. Set it to 2 hours by default

- Improvement: Make auth rate control optional and turn it off by default

- Bugfix: #1476 Fix CSV/PDF Report of Connection Log in MongoDB

- Bugfix: #1512 Fix `int` Convertion of `float` String

- Bugfix: #1503 Fix MAC Extraction From RAS of ZTE Type

 ZTE model rases change the format of user mac address in recent
 framework update, e.g:
 old format: `78d99fd34e4b`
 new format: `78:d9:9f:d3:4e:4b`

- Bugfix: #1500 Fix Sorting and Pagination Problem of Connection Usages Report

- Bugfix: don't assign ip to sub service


تگ 368 در تاریخ ۱۳۹۵/۱۱/۲۵

- Bugfix: add missing function call on commit of periodic acc plugin

- Improvement: Few logging for radius process

- BugFix: Reauthorize bytes were deducted twice from remaining bytes

- BugFix: Fixed bad commit

- BugFix: Do not start accounting on reauthorize; Removes lots of nagging about online dic not found in error log

- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize

- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet

- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.

- Bugfix: skip users without ignore_ras

- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold

- Feature: Multiple prepaid services per account support

- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them

- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh

- BugFix: Multi login did not work with Multi Service rases other than ISG

- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu

 The following links are deprecated and removed:
 All Realtime Graph
 Internet Realtime Graph
 Voip Realtime Graph
 BW Realtime Graph
 Also updated modified links

- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services

- Bugfix: #1136 Fix Name of Import File in Import User Menu

- BugFix: Re-Onlined users might have get failed status due to left over from previous sessions

- BugFix: Radius Attributes with integer values were not working in charge rule attribute radius

- Improvement: Allow Acct-Interim-Interval to be passed to failed users

- Improvement: Exception handling for internal relogin

- Bugfix: Incorrect call to getUserAttrs caused exception

- BugFix: Some initial variables where missing in configuration file and advanced configuration

- BugFix: Undefined session raised unnecessary exception

- Improvement: API cleanups for cisco isg rases

- Bugfix: cast ignore ras ids to int

- Bugfix: read min/max event time directly from defs

- Bugfix: fix group usages of connection analysis

- Feature: Add User ID Attribute to Search User Page

- Feature: optionally do autoRenew on abs expired user

- Bugfix: log deposit_type in deposit change

- Cleanup: clean md5 response


تگ 367 در تاریخ ۱۳۹۵/۱۱/۱۳

- Bugfix: #1449 Fix `users.group_id` Bug

- Feature: #1478 Add `bson.int64.Int64` Marshaling Support to XMLRPCLib

- Bugfix: #1465 Fix Remaining Credit Feild of Connection Log Report

 Some older records (or first record) of user connection log may not
 have before credit field or has the value `None`, which yields to
 raising an exception when calculating the value of `remaining_credit`
 field [`remaining_credit = before_credit - credit_used`].

- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report

 After adding two columns `user_id` and `group_id` to `connection_log`
 table it created a conflict with `users` table on in management
 summary queries; in this fix we change SQL queries to exactly specify
 which fields we mean by `user_id` and `group_id`: `users.user_id`,
 `users.group_id`, etc.


تگ 366 در تاریخ ۱۳۹۵/۱۱/۰۹

- Feature: Add `getConnectionUsages` Method to API

 The old methods of connection usages report (`getCreditUsages`,
 `getDurationUsages` and `getInOutUsages`) won't support ISG feature:
 `sub_service_name`, `sub_service_charging` and `sub_service_qos`.
 So we added a new method called `getConnectionUsages` which covers
 ISG features.

- Bugfix: #1460 Fix Connection Usage Report


تگ 365 در تاریخ ۱۳۹۵/۱۱/۰۵

Improvement: Second username mapping should not be flushed on restart

BugFix: Re-Onlined users might have get failed status due to left over from previous sessions

Improvement: Allow Acct-Interim-Interval to be passed to failed users

Bugfix: Incorrect call to getUserAttrs method of API caused exception

BugFix: Some initial variables where missing in configuration file and advanced configuration

BugFix: Undefined session raised unnecessary exception

Improvement: API cleanups for cisco isg rases

C_diameter Branch

تگ 377 تا 381 در تاریخ ۱۳۹۶/۰۳/۲۷

- NewFeature: Rates for diameter request and replies and also exposing them via snmp

- Bugfix: #1339 Load Invoice Main in Online Worker

- BugFix: Make ibs init script lsb compatible

- NewFeature: Script to gracefully reload charges

- Bugfix : #1300 delete realtime request log interface

 real time request log  deleted  from interface because the source code of this link  had been deleted before .

- Improvement: Kill support of PCEF Master session

- BugFix: Re-online might mess up with Cisco PCEF Sessions

- Improvement: A check script for cisco pcef session validation

- Improvement: Log if reauthorize has changed any service

- Bugfix: #1339 Load Invoice Main in Online Worker

- Improvement: Increased isg session ttl to make sure no session is being lost

- Improvement: Updated SNMP bridge to support more OIDs and be compatible with C branch

- BugFix: Cisco PCEF stop awareness did not work sometimes due to incorrect session id

- Bugfix: Session dictionary might be lost if the time between master session and starting of traffic is more than 4 update accountings. Make is 24 hours instead

- Improvement: Notify admin about starting and finishing partial and second user mapping

- Bugfix: Re-Online did not create cisco pcef session correctly

- Bugfix: Proxy-State were not correct for reject cache responses. It should be exactly the same as request value

- BugFix: First snapshot online loop should not happen in start critical path

- Improvement: New roundrobin policy queues to prevent a unreachable ras to slow policy changes of other rases

- BugFix: 0 in/out would returned if a diameter ras does not receive tariff change reauthorize

- Bugfix: #1278 Fix Account Not Started Counter

 When "account not started" counter got negative value,
 IBSng web panel shown "0*" value that means negative number.
 The main reason for this issue was when a user had several sub services,
 it tried to decrease counter per each of them (when their requests received),
 while it increased counter once on authentication action. So to solve this issue,
 we handled __decreamentNotStartedCounter method which check loaded user's
 instance that must be Master to run decrease action.
 Example diagram for this issue:
  Step1: Authentication +1   << Correct
  Step2: Master         -1   << Correct
  Step3: Free-Site      -1   << Incorrect
  StepN: SubServiceN    -1   << Incorrect
  StepX: SubServiceX    -1   << Incorrect

- BugFix: Make check online less intrusive by increasing sleep time

- BugFix: Re-online packets did not fill pcef master session id causing pcef stop not to work for re-onlined sessions

- BugFix: Idle threshold were not working correctly with sub services, causing users to be detected idle incorrectly

- BugFix: Better handling of isg session dict to fix pcef stop requests not being sent

- Improvement: Allow kill requests on all policy workers

- Improvement: Suppress unnecessary errors when receiving reauthorize

- BugFix: reloadUser without wait for lock caused infinite loop

- BugFix: Online User Storage must be flushed during IBSng start up

- BugFix: Credit Limit was displayed incorrectly

- BugFix: Redis might incorrectly reset pubsub in busy situations

- BugFix: Mutable object should not be passed as default argument

- Cleanup: Cleaned up check online method

- BugFix: Fixed reloadUser might incorrectly run while lock has not been acquired

- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group

 When user chooses more than one group/isp/etc in Search User panel and
 selects bulk kill action it raises and error. It was because of
 invalid format of passing parameters.

- Bugfix: #1235 Fix Minor Invoicing DB Bug

 Column reference to 'pi_issue_date' was ambiguous!


تگ 372 تا 377 در تاریخ ۱۳۹۶/۰۲/۱۹

- BugFix: mp observer change in isp loader caused isp states to reset

- BugFix: unload/load instead of reload causes race condition where isp object is no longer available

- BugFix: Reporting Reason was not parsed correctly

- Improvement: Added two more timers to radius packets

- BugFix: Online user storage were using incorrect redis db

- BugFix: Reporting Reason is a sub attribute of Used-Service-Unit.

- Improvement: Improve internet reauthorize response time by increasing the priority of reauthorize initiated recalc next event queries

- BugFix: Fixed Typo which cause isp deposit role back not to work correctly

- BugFix: Consume ISP deposit was broken after Internal Relogin. Fix to always reload ISP and log after consuming deposit.

- BugFix: Fixed diameter update messages might not be replied by better error handling of internetReAuthorizeResult

- BugFix: Make sure we always call canstay callbacks. Also use canstay callbacks instead of specific purporse reauthorize in progress mechanism

- BugFix: Do not send Failover diameter attribute as not all PGW supports it

- BugFix: Diameter ASR and RAR were not working after switching to policy workers scheme

- BugFix: Webservice port selection for RADIUS and DIAMETER processes were messed up

- BugFix: Fix memory leak of web service process by replacing cyclic-reference-creator collections.OrderedDict with odict.odict in kairos library

- BugFix: __internetReauthorizeCheckForIncorrectSubService was not working due to typo

- Improvement: Added Allocation-Retention-Priority to diameter dictionary

- Improvement: Rename KILL Process to POLICY_WORKER and allow multiple policy worker to be run simultaneously

- Improvement: Sandvine ras compatibility improvement

- Improvement: Support for separated In/Out bytes in diameter requests

- Improvement: Support more 3gpp attributes in CCRs

- NewFeature: Log watchdogs, init_and_terminates, updates, asr_and_rar diameter requests and replies in different files under DIAMETER folder

- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field

 Resolving 'max_rule_time_usage' charg rule to be read from user
 custome field (e.g: 'F:time') haven't been handled.

- BugFix: Duplicate detector was not caching reply packets and never replay them

- BugFix: RADIUS,ACCT,DIAMETER request id generation was not correct

- BugFix: Reject cache leaked memory in redis, with non-expiring keys

- BugFix: Reject cache might show incorrect macs in user interface

- NewFeature: Sandvine PCEF Support

- Improvement: Diameter Server Enhancements to comply with 3GPP 32.299 v.12 diameter charging application

- Bugfix: #1215 Fix Timezone Issue in Online Graph

- BugFix: Turned off sub service check by default

- NewFeature: New features for sub services starting and checking

 *Sub services has now two new boolean options, auto_start and auto_check
 auto_start: Should this sub service auto started when subscriber master session brought up
 auto_check: Should this sub service checked during can stay and ensure it's available.
   
 *Service Auto Check is a new mechanism which compares current subscriber services with applicable ones.
 If there's a difference, it will resync services after a guard time. Guard time prevents resyncing when sub services in queue to start.

- Improvement: Log next event and kill dict in can stay event of log console

- Improvement: Few Logging for diameter translator

- BugFix: Cleanup diameter server connection after connection is closed

- Improvement: Use a TTL based dictionary for diameter packets to ensure we dont eat up all memory due to a problem in packet processing.

- BugFix: Fixed InternetReauthorize were not working correctly because of bad merge

- BugFix: SOAP Server is only available in WS process

- Improvement: Increased default threshold megabytes and update interval for better performance

- Improvement: Decreased number of threads for protocol listeners

- BugFix: Cisco ISG reauthorize threshold ras attributes were missing

- BugFix: Cisco ISG IPAccountLogon packet detection was not accurate

- Improvement: Run Radius Auth, Radius Acct and Diameter in separate processes to increase scalability

- BugFix: Cisco PCEF Stop did not work due to bad session id

- BugFix: Added missing imports due to bad merge

- BugFix: Internal relogin cleanup and bug fixes

- Improvement: Increased default max thresholds to decrease the load on ras and ibs

تگ 372 در تاریخ ۱۳۹۵/۱۲/۲۲

- Improvement: Decreased number of threads for protocol listeners

- BugFix: Cisco ISG reauthorize threshold ras attributes were missing

- BugFix: Cisco ISG IPAccountLogon packet detection was not accurate

- Improvement: Run Radius Auth, Radius Acct and Diameter in separate processes to increase scalability

- BugFix: Cisco PCEF Stop did not work due to bad session id

- BugFix: Internal relogin cleanup and bug fixes

- Improvement: Increased default max thresholds to decrease the load on ras and ibs

تگ 364 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰

- Bugfix: Fix Active Leaves

 The `getActiveLeaves` method must be called in 'MAIN' process.


تگ 364 در تاریخ ۱۳۹۵/۱۲/۰۷

- Bugfix: Add Missing Imports to Radius Module

تگ 363 در تاریخ ۱۳۹۵/۱۲/۰۴

- BugFix: Internal relogin cleanup and bug fixes

- Improvement: Increased default max thresholds to decrease the load on ras and ibs

تگ 355 تا 362 در تاریخ ۱۳۹۵/۱۲/۰۲

- BugFix: Some ASRs does not allow logoff request without username

- BugFix: Various Internal Relogin fixes

- Improvement: Make sure listen loop won't exit on an abnormal exception

- BugFix: Setting max rule traffic usage value as a float in custom fields would have break max rule traffic plugin

- BugFix: Using same ID generator for radius and diameter process will cause concurrent access to generator

-Improvement: Increased number of threads in radius processes to 200. PCEF rases might establish lots of connections which run the process out of threads

- Improvement: Disable Partitioning Check Contraint, This is done because of some efficiency issues

- BugFix: We should ignore negative threshold when QV is passed to cisco isg

- BugFix: A mid session reauthorize after a restart will create an instance without start accounting

- BugFix: Not saving user after logout will lead to inconsistent user object

- BugFix: Take credit limit into account when calculating remaining bytes. This fixes postpaid user problem with isg prepaid services

- Improvement: Kill max delay default value was too large. Set it to 2 hours by default

- Improvement: Make auth rate control optional and turn it off by default

- Bugfix: #1512 Fix `int` Convertion of `float` String

- Bugfix: #1449 Fix `users.group_id` Bug

 Fixed `getDBColName` in a way which returns the part after the dot,
 e.g 'usersgroup_id' => 'group_id'

- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report

 After adding two columns `user_id` and `group_id` to `connection_log`
 table it created a conflict with `users` table on in management
 summary queries; in this fix we change SQL queries to exactly specify
 which fields we mean by `user_id` and `group_id`: `users.user_id`,
 `users.group_id`, etc.

- Bugfix: #1503 Fix MAC Extraction From RAS of ZTE Type

 ZTE model rases change the format of user mac address in recent
 framework update, e.g:
 old format: `78d99fd34e4b`
 new format: `78:d9:9f:d3:4e:4b`

- Improvement: Few logging for radius process

- BugFix: Reauthorize bytes were deducted twice from remaining bytes

- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log

- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize

- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet

- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.

- Bugfix: don't assign ip to sub service

- Feature: Jetsib PGW Support

- Bugfix: skip users without ignore_ras

- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold

- Feature: Multiple prepaid services per account support

- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them

- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh

- BugFix: Multi login did not work with Multi Service rases other than ISG

- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu

 The following links are deprecated and removed:
 All Realtime Graph
 Internet Realtime Graph
 Voip Realtime Graph
 BW Realtime Graph
 Also updated modified links

- BugFix: Limit Port might cause error if ignored ras is not available in user attrs

- BugFix: PCEF stop provisioning was not sent

- Improvement: Second username mapping should not be flushed on restart

- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services

- Bugfix: #1136 Fix Name of Import File in Import User Menu

 Note: after changing the log process to pass the logging mechanism to
 python syslog module, user_import logs won't be written to a local
 file which will cause to "View Import Log" link on "Import User" page
 after uploading CSV file won't work. this can be fixed by adding new
 log type (aside `QueueLogger` and `DirectLogger`) to IBS logger
 module, but this is not a priority now; look at the comments on
 changed files for more info.

- BugFix: Re-Onlined users might have get failed status due to left over from previous sessions

- BugFix: Radius Attributes with integer values were not working in charge rule attribute radius

- Improvement: Allow Acct-Interim-Interval to be passed to failed users

- Improvement: Exception handling for internal relogin

- Bugfix: Incorrect call to getUserAttrs caused exception

- BugFix: Some initial variables where missing in configuration file and advanced configuration

- Improvement: API cleanups for cisco isg rases

- BugFix: Undefined session raised unnecessary exception

- BugFix: Some initial variables where missing in configuration file and advanced configuration

- Feature: Cisco ISG IPoE as PCEF support

- Bugfix: cast ignore ras ids to int

- Bugfix: read min/max event time directly from defs

- Bugfix: fix group usages of connection analysis

- Feature: Add User ID Attribute to Search User Page

- BugFix: Threshold Bytes/Seconds did not trigger internal reauthorize due to bad merge

- BugFix: Threshold calculations was went south due to bad merge

- BugFix: Second username change fail in case of internal relogin

- Improvement: get method for SNMP client

- Bugfix: fix internal relogin answer to main proc

- Bugfix: Race condition might cause internal relogin to fail

- Bugfix: Autorenew would fail if user has next group and current group does not have group_credit

- Bugfix: fix limit port binding

- Bugfix: fix periodic acc failed login

- Bugfix: fix non-working periodic accounting plugin

- Bugfix: Some mikrotik devices send mschapv2 flags as non-zero which is not compliant by standard but leads to wrong passwords

- Feature: optionally do autoRenew on abs expired user

- Bugfix: log deposit_type in deposit change

- Cleanup: clean md5 response


C_diameter_mongo Branch

تگ 375 تا 376 در تاریخ ۱۳۹۶/۰۳/۲۷

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix : #1300 delete realtime request log interface

 real time request log  deleted  from interface because the source code of this link  had been deleted before .

- Bugfix: #1339 Load Invoice Main in Online Worker


C_lan_acc Branch

تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۴

- Bugfix: Fix CSV Report of Web Analyser

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix : #1300 delete realtime request log interface

 real time request log  deleted  from interface because the source code of this link  had been deleted before .

- Bugfix: #1339 Load Invoice Main in Online Worker

- Feature : #1223 Modify 'urldump' sniffer application to fetch 'ip_map' data directly from IBSng

- Bugfix: Fix LDAP Permissions

- Bugfix: #1278 Fix Account Not Started Counter

 When "account not started" counter got negative value,
 IBSng web panel shown "0*" value that means negative number.
 The main reason for this issue was when a user had several sub services,
 it tried to decrease counter per each of them (when their requests received),
 while it increased counter once on authentication action. So to solve this issue,
 we handled __decreamentNotStartedCounter method which check loaded user's
 instance that must be Master to run decrease action.
 Example diagram for this issue:
  Step1: Authentication +1   << Correct
  Step2: Master         -1   << Correct
  Step3: Free-Site      -1   << Incorrect
  StepN: SubServiceN    -1   << Incorrect
  StepX: SubServiceX    -1   << Incorrect

- BugFix : #1263 fix urldump does'nt showing group name in web analyzer log

 this bug fixed in the interface.
 it also fixed in real time web analyzer page.

- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group

 When user chooses more than one group/isp/etc in Search User panel and
 selects bulk kill action it raises and error. It was because of
 invalid format of passing parameters.

- Cleanup: We Don't Have `web_analyzer_log` Table Any More

 Also raised an error when we wanted to delete a user on deleting web
 analyzer logs, because there is no such table available any more

- Bugfix: Fix Minor Typo Error

- Bugfix: #1235 Fix Minor Invoicing DB Bug

 Column reference to 'pi_issue_date' was ambiguous!

- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field

 Resolving 'max_rule_time_usage' charg rule to be read from user
 custome field (e.g: 'F:time') haven't been handled.

- Bugfix: #1215 Fix Timezone Issue in Online Graph


تگ 369 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰

- Bugfix: Fix Active Leaves

 The `getActiveLeaves` method must be called in 'MAIN' process.

- BugFix: We should not add internal_relogin flag to user attributes

- BugFix: Various Internal Relogin fixes

- Improvement: Make sure listen loop won't exit on an abnormal exception

- BugFix: Setting max rule traffic usage value as a float in custom fields would have break max rule traffic plugin

- Improvement: Disable Partitioning Check Contraints

 This is done because of some efficiency issues

- Improvement: Disable adding check constraint to partitioned tables

- BugFix: We should ignore negative threshold when QV is passed to cisco isg

- BugFix: A mid session reauthorize after a restart will create an instance without start accounting

- BugFix: Do not panic if charge rule is None during stop session

- BugFix: Not saving user after logout will lead to inconsistent user object

- BugFix: Take credit limit into account when calculating remaining bytes. This fixes postpaid user problem with isg prepaid services

- Improvement: Kill max delay default value was too large. Set it to 2 hours by default

- Improvement: Make auth rate control optional and turn it off by default

- Bugfix: #1512 Fix `int` Convertion of `float` String

- Bugfix: #1449 Fix `users.group_id` Bug

 Fixed `getDBColName` in a way which returns the part after the dot,
 e.g 'usersgroup_id' => 'group_id'

- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report

 After adding two columns `user_id` and `group_id` to `connection_log`
 table it created a conflict with `users` table on in management
 summary queries; in this fix we change SQL queries to exactly specify
 which fields we mean by `user_id` and `group_id`: `users.user_id`,
 `users.group_id`, etc.

- Bugfix: add missing function call on commit of periodic acc plugin

- Bugfix: #1503 Fix MAC Extraction From RAS of ZTE Type

 ZTE model rases change the format of user mac address in recent
 framework update, e.g:
 old format: `78d99fd34e4b`
 new format: `78:d9:9f:d3:4e:4b`

- Improvement: Few logging for radius process

- BugFix: Reauthorize bytes were deducted twice from remaining bytes

- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log

- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize

- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet

- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.

- Bugfix: don't assign ip to sub service

- Bugfix: skip users without ignore_ras

- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold

- Feature: Multiple prepaid services per account support

- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them

- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh

- BugFix: Multi login did not work with Multi Service rases other than ISG

- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu

 The following links are deprecated and removed:
 All Realtime Graph
 Internet Realtime Graph
 Voip Realtime Graph
 BW Realtime Graph  
 Also updated modified links

- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services

- Bugfix: #1136 Fix Name of Import File in Import User Menu

 Note: after changing the log process to pass the logging mechanism to
 python syslog module, user_import logs won't be written to a local
 file which will cause to "View Import Log" link on "Import User" page
 after uploading CSV file won't work. this can be fixed by adding new
 log type (aside `QueueLogger` and `DirectLogger`) to IBS logger
 module, but this is not a priority now; look at the comments on
 changed files for more info.

- BugFix: Re-Onlined users might have get failed status due to left over from previous sessions

- BugFix: Radius Attributes with integer values were not working in charge rule attribute radius

- Improvement: Allow Acct-Interim-Interval to be passed to failed users

- Improvement: Exception handling for internal relogin

- BugFix: Removed Extra print

- Bugfix: Incorrect call to getUserAttrs caused exception

- BugFix: Some initial variables where missing in configuration file and advanced configuration

- BugFix: Undefined session raised unnecessary exception

- Improvement: API cleanups for cisco isg rases

- Bugfix: cast ignore ras ids to int

- Bugfix: read min/max event time directly from defs

- Bugfix: fix group usages of connection analysis

- Improvement: Remove `price` Filter From User ID Attribute

- Feature: Add User ID Attribute to Search User Page

- BugFix: Threshold Bytes/Seconds did not trigger internal reauthorize due to bad merge

- BugFix: Second username change fail in case of internal relogin

- Improvement: get method for SNMP client

- Feature: optionally do autoRenew on abs expired user

- Bugfix: log deposit_type in deposit change

- Cleanup: clean md5 response

تگ 359 تا 360 در تاریخ ۱۳۹۵/۱۱/۱۶

- Bugfix: add removed ad user info in comment tab

- Bugfix: affect search base for paged searches


C_lan_mongo Branch

تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۷

- Bugfix: Fix CSV Report of Web Analyser

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix : #1300 delete realtime request log interface

 real time request log  deleted  from interface because the source code of this link  had been deleted before .

- Bugfix: #1339 Load Invoice Main in Online Worker

- Feature: #1223 Modify 'urldump' sniffer application to fetch 'ip_map' data directly from IBSng

- Bugfix: Fix LDAP Permissions

- Bugfix: #1278 Fix Account Not Started Counter

 When "account not started" counter got negative value,
 IBSng web panel shown "0*" value that means negative number.
 The main reason for this issue was when a user had several sub services,
 it tried to decrease counter per each of them (when their requests received),
 while it increased counter once on authentication action. So to solve this issue,
 we handled __decreamentNotStartedCounter method which check loaded user's
 instance that must be Master to run decrease action.
 Example diagram for this issue:
  Step1: Authentication +1   << Correct
  Step2: Master         -1   << Correct
  Step3: Free-Site      -1   << Incorrect
  StepN: SubServiceN    -1   << Incorrect
  StepX: SubServiceX    -1   << Incorrect

- BugFix : #1263 fix urldump does'nt showing group name in web analyzer log

 this bug fixed in the interface.
 it also fixed in real time web analyzer page.

- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group

 When user chooses more than one group/isp/etc in Search User panel and
 selects bulk kill action it raises and error. It was because of
 invalid format of passing parameters.

- Improvement: #1186 Run mongo index in thread

- Improvement: #1186 Run mongo index in thread

- Cleanup: We Don't Have `web_analyzer_log` Table Any More

 Also raised an error when we wanted to delete a user on deleting web
 analyzer logs, because there is no such table available any more

- Bugfix: #1235 Fix Minor Invoicing DB Bug

- Bugfix: Fix Minor Typo Error

- Bugfix: #1235 Fix Minor Invoicing DB Bug

 Column reference to 'pi_issue_date' was ambiguous!

- Bugfix: Correct Delete Query of Redundant Partial Log Records

- Improvement: Read From Config File Whether to Write on PSQL or Not

 Until now we read `defs.PSQL_LOG_CONNECTIONS` value to define whether
 we should write connection logs into PostgreSQL or not. With this
 commit value of `connection_log_use_psql` in `DATABASE_MONGO` section
 of IBSng config file defines our behaviour.

- Bugfix: #1231 Fix Total Values of User Connection Logs Panel

 Before migrating to MongoDB we used "1" to indicate whether to show
 total values in connection log report or not, but after migration we
 used "On"!!, this has been handled in this commit to work with both of
 them.

- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field

- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field

 Resolving 'max_rule_time_usage' charg rule to be read from user
 custome field (e.g: 'F:time') haven't been handled.

- Bugfix: #1201 Fix Slow Start of IBSng and Multiple Partial Log

- Improvement: #1154 Add More Log in Case of Bulk Write Error

- Bugfix: #1215 Fix Timezone Issue in Online Graph

- Bugfix: #1201 Fix Slow Start of IBSng and Multiple Partial Log

 It has been seen that the number of online user doesn't match the
 records count on partial data table, it will result in slow start of
 IBSng (in recover partial log phase). This commit will fix this issue
 and makes some improvement on writing partial log data.

- Improvement: Optimized partial log recovery for postgresql. Not exists queries are much more efficient for large inner queries with index

- BugFix: Internal relogin cleanup and bug fixes

- Improvement: Increased default max thresholds to decrease the load on ras and ibs

- Bugfix: #1474 remove please wait in report pages

 removing blockui  javascrpit code which caused please  wait deadlock in report pages


C_lan_acc_staging Branch

تگ 371 تا 372 در تاریخ ۱۳۹۶/۰۳/۲۷

- Bugfix: Fix CSV Report of Web Analyser

- Bugfix: #1339 Load Invoice Main in Online Worker

- Bugfix : #1300 delete realtime request log interface

 real time request log  deleted  from interface because the source code of this link  had been deleted before .

- Bugfix: #1339 Load Invoice Main in Online Worker

- Feature : #1223 Modify 'urldump' sniffer application to fetch 'ip_map' data directly from IBSng

- Bugfix: Fix LDAP Permissions

- Bugfix: #1278 Fix Account Not Started Counter

 When "account not started" counter got negative value,
 IBSng web panel shown "0*" value that means negative number.
 The main reason for this issue was when a user had several sub services,
 it tried to decrease counter per each of them (when their requests received),
 while it increased counter once on authentication action. So to solve this issue,
 we handled __decreamentNotStartedCounter method which check loaded user's
 instance that must be Master to run decrease action.
 Example diagram for this issue:
  Step1: Authentication +1   << Correct
  Step2: Master         -1   << Correct
  Step3: Free-Site      -1   << Incorrect
  StepN: SubServiceN    -1   << Incorrect
  StepX: SubServiceX    -1   << Incorrect

- BugFix : #1263 fix urldump does'nt showing group name in web analyzer log

 this bug fixed in the interface.
 it also fixed in real time web analyzer page.

- BugFix: reloadUser without wait for lock caused infinite loop

- BugFix: Online User Storage must be flushed during IBSng start up

- Cleanup: Cleaned up check online method

- BugFix: Fixed reloadUser might incorrectly run while lock has not been acquired

- BugFix: Redis might incorrectly reset pubsub in busy situations

- BugFix: Credit Limit was displayed incorrectly

- BugFix: Mutable object should not be passed as default argument

- BugFix: Fix Relogin User Issue On Update Custom Field

- Bugfix: #1292 Fix Bulk Kill Action in Case of Choosing More Than One Group

 When user chooses more than one group/isp/etc in Search User panel and
 selects bulk kill action it raises and error. It was because of
 invalid format of passing parameters.

- Bugfix: #1283 Add Back Missing LDAP SOAP Functions

 Some of LDAP SOAP functions have been deleted mistakenly in previous
 merges.

- BugFix: mp observer change in isp loader caused isp states to reset

- BugFix: unload/load instead of reload causes race condition where isp object is no longer available

- Cleanup: We Don't Have `web_analyzer_log` Table Any More

 Also raised an error when we wanted to delete a user on deleting web
 analyzer logs, because there is no such table available any more

- BugFix: Online user storage were using incorrect redis db

- Bugfix: #1235 Fix Minor Invoicing DB Bug

 Column reference to 'pi_issue_date' was ambiguous!

- Cleanup: Remove Unused Method `__renewMustResetCredit`

- BugFix: Kairos might be initialized incorrectly because system redis library was imported instead of local one

- BugFix: Fixed Typo which cause isp deposit role back not to work correctly

- BugFix: __internetReauthorizeCheckForIncorrectSubService was not working due to typo

- BugFix: Fix memory leak of web service process by replacing cyclic-reference-creator collections.OrderedDict with odict.odict in kairos library

- BugFix: Consume ISP deposit was broken after Internal Relogin. Fix to always reload ISP and log after consuming deposit.

- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field

 Resolving 'max_rule_time_usage' charg rule to be read from user
 custome field (e.g: 'F:time') haven't been handled.

- BugFix: Duplicate detector was not caching reply packets and never replay them

- Bugfix: Remove Remaining Partitioning Check Code

 Since we don't check for partitioning capability of PostgreSQL any
 more (see recent commits) we don't need this any more.

- Bugfix: #1215 Fix Timezone Issue in Online Graph

- Bugfix: Remove Calling Deleted Module

- Improvement: Log next event and kill dict in can stay event of log console

- BugFix: Prevent maximum threshold minutes might have caused avalanche situtation, causing cisco ISG bras to overload

- BugFix: Use Acct-Session-Id in kick user via coa instead of Cisco-Account-Info

- BugFix: Internal relogin cleanup and bug fixes

- Improvement: Increased default max thresholds to decrease the load on ras and ibs

- Cleanup: Change RAS Name 'Wireless' to '4ipnet'

- Cleanup: SOAP Cleanup

- Feature: add isp mapping from LDAP

- Feature: add send_lock_users capability to notification rules

- Improvement: use whenchanged attribute in ldap query


تگ 360 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰

- Bugfix: Fix Active Leaves

 The `getActiveLeaves` method must be called in 'MAIN' process.

- BugFix: We should not add internal_relogin flag to user attributes

- BugFix: Various Internal Relogin fixes

- Improvement: Make sure listen loop won't exit on an abnormal exception

- BugFix: Setting max rule traffic usage value as a float in custom fields would have break max rule traffic plugin

- Improvement: Disable Partitioning Check Contraints

 This is done because of some efficiency issues

- Improvement: Disable adding check constraint to partitioned tables

- BugFix: We should ignore negative threshold when QV is passed to cisco isg

- BugFix: A mid session reauthorize after a restart will create an instance without start accounting

- BugFix: Do not panic if charge rule is None during stop session

- BugFix: Not saving user after logout will lead to inconsistent user object

- BugFix: Take credit limit into account when calculating remaining bytes. This fixes postpaid user problem with isg prepaid services

- Improvement: Kill max delay default value was too large. Set it to 2 hours by default

- Improvement: Make auth rate control optional and turn it off by default

- Bugfix: #1512 Fix `int` Convertion of `float` String

- Bugfix: #1449 Fix `users.group_id` Bug

 Fixed `getDBColName` in a way which returns the part after the dot,
 e.g 'usersgroup_id' => 'group_id'

- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report

 After adding two columns `user_id` and `group_id` to `connection_log`
 table it created a conflict with `users` table on in management
 summary queries; in this fix we change SQL queries to exactly specify
 which fields we mean by `user_id` and `group_id`: `users.user_id`,
 `users.group_id`, etc.

- Bugfix: add missing function call on commit of periodic acc plugin

- Bugfix: #1503 Fix MAC Extraction From RAS of ZTE Type

 ZTE model rases change the format of user mac address in recent
 framework update, e.g:
 old format: `78d99fd34e4b`
 new format: `78:d9:9f:d3:4e:4b`

- Improvement: Few logging for radius process

- BugFix: Reauthorize bytes were deducted twice from remaining bytes

- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log

- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize

- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet

- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.

- Bugfix: don't assign ip to sub service

- Bugfix: skip users without ignore_ras

- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold

- Feature: Multiple prepaid services per account support

- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them

- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh

- BugFix: Multi login did not work with Multi Service rases other than ISG

- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu

 The following links are deprecated and removed:
 All Realtime Graph
 Internet Realtime Graph
 Voip Realtime Graph
 BW Realtime Graph  
 Also updated modified links

- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services

- Bugfix: #1136 Fix Name of Import File in Import User Menu

 Note: after changing the log process to pass the logging mechanism to
 python syslog module, user_import logs won't be written to a local
 file which will cause to "View Import Log" link on "Import User" page
 after uploading CSV file won't work. this can be fixed by adding new
 log type (aside `QueueLogger` and `DirectLogger`) to IBS logger
 module, but this is not a priority now; look at the comments on
 changed files for more info.

- BugFix: Re-Onlined users might have get failed status due to left over from previous sessions

- BugFix: Radius Attributes with integer values were not working in charge rule attribute radius

- Improvement: Allow Acct-Interim-Interval to be passed to failed users

- Improvement: Exception handling for internal relogin

- BugFix: Removed Extra print

- Bugfix: Incorrect call to getUserAttrs caused exception

- BugFix: Some initial variables where missing in configuration file and advanced configuration

- BugFix: Undefined session raised unnecessary exception

- Improvement: API cleanups for cisco isg rases

- Bugfix: cast ignore ras ids to int

- Bugfix: read min/max event time directly from defs

- Bugfix: fix group usages of connection analysis

- Improvement: Remove `price` Filter From User ID Attribute

- Feature: Add User ID Attribute to Search User Page

- BugFix: Threshold Bytes/Seconds did not trigger internal reauthorize due to bad merge

- BugFix: Second username change fail in case of internal relogin

- Improvement: get method for SNMP client

- Feature: optionally do autoRenew on abs expired user

- Bugfix: log deposit_type in deposit change

- Cleanup: clean md5 response

تگ 359 تا 360 در تاریخ ۱۳۹۵/۱۱/۱۶

- Bugfix: add removed ad user info in comment tab

- Bugfix: affect search base for paged searches

ابزارهای شخصی

گویش‌ها
فضاهای نام
عملکردها
گشتن
جعبه‌ابزار