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

از ویکی پارس پویش
(تفاوت بین نسخه‌ها)
پرش به: ناوبری, جستجو
سطر ۱٬۴۳۵: سطر ۱٬۴۳۵:
  
 
=''' C_diameter Branch '''=
 
=''' C_diameter Branch '''=
 +
 +
=='''تگ 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 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==
 
=='''تگ 364 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰''' ==

نسخهٔ ‏۱۵ آوریل ۲۰۱۷، ساعت ۱۶:۱۶


محتویات


C Branch

تگ 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

تگ 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_shahkar Branch

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

- 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

- 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.

- 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


C_mongo Branch

تگ 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

تگ 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_lan_acc Branch

تگ 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_acc_staging Branch

تگ 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

C_khalij Branch

تگ 371 تا 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: 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

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

- 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

- NewFeature: Jetsib PGW Support

- BugFix: PCEF stop provisioning was not sent

- 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: Threshold calculations was went south due to bad merge

- FIX: Always set a time threshold even if it is not enforced by charging, to make sure we don't get into check online fail situation

- FIX: Make sure exceptions are captured

- FIX: Input/Output octets in diameter translation were in reverse

- ENHANCEMENT: Reauthorize should use ras methods to assign quota/threshold

- FIX: Douran user awareness messages were incorrect

- ENHANCEMENT: Increased available port range for all workers, so more than 19 workers might be used

- ENHANCEMENT: Increased maximum number of threads in radius process, to be able to have more radius workers

- ENHANCEMENT: Support multiple reauthorizes for a user at the same time

- FIX: Use random ID/Port for server packet generation, so it's safe to be run in multiple processes

- FIX: Fake reply were not working. Also do not process diameter requests without any rating group

- FIX: Shared collection might use data out of mmap allocated memory

- FIX: rsyslog configuration were not included diameter log

- FEATURE: Support for Diameter Rating Groups and PCEF Provisioning

- FIX: Queue size log were filling log file with non-useful information

- FEATURE: Added support for following methods in ras required for correct diameter support

 setThresholdBytesInPacket: Set threshold for next reauthorize bytes in a packet sent to the bras
 setThresholdTimeInPacket: Set threshold for next reauthorize seconds in a packet sent to the bras
 setQuotaBytesInPacket: Set reserved quota bytes in the packet
 setQuotaTimeInPacket: Set reserved quota time in the packet
 setTarrifChangeTimeInPacket: Set tarrif change time in the packet

- FIX: Multilogin for sub services were not working correctly in multi service rases other than ISG

- ENHANCEMENT: More accuracy in event times which are less than a second apart

- ENHANCEMENT: Use random timers for retry of a locked user in cases where multiple requests arrive at same time (happens especially in diameter)

- PCEF Support fixes

- Partial PCEF Support

- FEATURE: Switched ras storage from lmdb to redis

- Use epoll instead of select

- Change Origin-Host and Host IP to play along with relay agent

- More standard compliancy

- Fixed tarrif_change_support was never applied

- UNIT_INDETERMINATE was incorrect according to https://tools.ietf.org/html/rfc4006#section-8.27

- Diameter: bugfix and cleanup merge mess

- Diameter: addapt with new changes

- Reply stop requests immediately to improve response time

- Diameter ras fixes

- Fixed disconnecting of a diameter client cause high cpu usage

- Diameter ras fixes to not load radius packet in main process

- Better handling of late requests

- Fixed all requests were counted as reonline

- Diameter server fixes to reflect same scenario as new packet dispatcher

- Fixed for new plugins API

- Diameter fixes. Implemented Tariff Change, Re-Online, Hotline

- Fixed usage attributes were not extracted correctly

- Diameter Watchdog support

- Initial Diameter Support

تگ 363 تا 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: 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

- 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: First reauthorize on ISG would cause lots of nagging and also leaves session dict without necessary attributes

- 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: #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: #1512 Fix `int` Convertion of `float` String

- 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`

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

- 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: #1478 Add `bson.int64.Int64` Marshaling Support to XMLRPCLib

- 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: Fix Typo

 User serial returned as `list` variable instead of `str`

- 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`].

- Feature: #1469 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

 The report doesn't show any output!

- 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.

- Cleanup: Use `pop` Instead of `del` for Fetch and Delete

- Improvement: Remove Deprecated Field of Connection Log

 parent_isp_credit_used' is no longer needed in `connection_log`
 collection

- Bugfix: #1431 Fix In/Out Bytes Columns of Connection Log Report

- Revert "Bugfix: Fix In/Out Bytes Columns of Connection Log"

 This reverts commit f64700a1de22e23d6959042a9206effea5948a85.
   
 The specified commit will cause the `report.getConnection` API method
 to broke its backward compatibility so we revert the commit.

- 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

- Feature: #1440 Add 'Remaining Credit' Field to Connection Log Report

 Remaining credit is the result of 'Before Credit' minus 'Credit Used'.

- Bugfix: #1450 Fix 'Group' and 'Before Credit' Fields of Connection Log

 'Group' and 'Before Credit' shown no value in connection log report

- 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: #1437 Fix Connection Log Filter Over Sub Service Name/Charging

- Bugfix: #1438 Fix Analyze Kill Reason Compatibility with MongoDB

- Improvement: Remove Unnecessary Index on Connection Log

- Improvement: Add Index to Connection Log Collection of MongoDB

- Bugfix: Fix In/Out Bytes Columns of Connection Log

 The columns of in/out bytes in connection log always shown `0` value, which wasn't correct.

- Improvement: Change Slow/Normal/Fast Mode of Mongo Connection Logs Converter

 Note: It's recommonded to use the "Normal" mode, and "Slow" mode if your
 system is under a lot of load.
   
 Use Fast mode only if your are aware of the loading of your system
 because, it may cause your system speed to decrease tremendously or in
 some situations it will crash :(

- Improvement: Speed Up MongoDB Connection Logs Converter

 Also Fixed the bug issue #1411

- Bugfix: apply new changes (+before_credit,group_id) in mongo branch

- Bugfix: add all of type_details info to connection_log row

- Bugfix: resolve merge conflict in defs.sql

- Bugfix: Fix Graphs Datetime Timezones

 When date conditions are passed to IBSng from graph forms, they should
 be converted to UTC timezone; thus MongoDB to be able to fetch correct
 data in specified date range

- Bugfix: Fix `datetimeToEpoch` Function

 The epoch convertion must be calculated based on "UTC" timezone; this
 issue affected realtime graphs

- Bugfix: bw rate unit is bit/s not byte/s

- Bugfix: bw rate unit is bit/s not byte/s

- Bugfix: Fix All Online Graph

- Bugfix: Fix Snapshot Realtime Graphs to Read From MongoDB

 After changing the snapshots database from PostgreSQL to MongoDB; the
 realtime graphs need some modifications to match the changes

- Bugfix: Fix Casting Error of Session ID

- Bugfix: Fix Race Condition of Snapshot Module

 Normally we SET values of group, isp and ras snapshots, it may raise
 race condition bug because multiple processes may modify these values
 at the same time; so we used the HINCRBY feature of Redis database to
 overcome this bug :)

- Bugfix: Fix Some Mongo Snapshot Bugs

- Improvement: Use `RedisDict` Wrapper Instead of Using Redis Directly

- Bugfix: Fix Snapshot Module

 Because different Radius Workers in seperate threads write on snapshot
 module, there should be a place which threads refer to for accessing
 BW info; so we have chosen Redis. All snapshots infos first will be
 written on Redis then they will be written in MongoDB.

- Improvement: Change `timestamp` Index Direction to DESC

 This will make the snapshot queries to run faster.

- Improvement: Add More Index to Mongo Snapshot Collections

- Improvement: Add Index to Mongo Snapshot Collections

 After moving the Snapshot PostgreSQL tables to MongoDB collections,
 the application performance decreases because on each insertion of
 snapshot record, the server must find the relevant record and update
 it if neccessary; by creating index we hope that performance goes back
 to its normal level - finger crossed ;)
  
 The index was created on `timestamp` field of all snapshot collections

- Bugfix: online user count should be sum of online worker values not avg

- Bugfix: fix load user funcs (bug created in cleanups)

- Bugfix: filter connection log with username if requester is user

- Bugfix: fix mongo cleanup and utc bugs

- Bugfix: use timezone in highchart

- Bugfix: add mongo default defs

- Cleanup: Clean `connection_log_importer.py` Script

 Add Docstring
 Convert local datetime attributes to UTC
 Some code cleanup

- Cleanup: Use `utcfromtimestamp` Instead of `UTC` Converter

- Bugfix: Fix Syntax Error

- Bugfix: Rollback the DB Cursor in Case of an Error

- Bugfix: Insert Connection Log DateTime Attr in UTC Format

 Because MongoDB only knows the UTC datetime (doesn't know anything
 about timezone!), so we have to convert every datetime related
 attributes from local to UTC datetime before inserting them into
 MongoDB

- Feature: Add TimeZone Option to Mongo Cursor

 Because MongoDB assumes that dates and times are in UTC (ISODate),
 care should be taken in reading datetime according to timzone of local
 system; for now the timezone is set to 'Asia/Tehran', it's better to
 be set in application config file, for now it suffice :)

- Feature: Add Local to UTC DateTime Converter

- Bugfix: fix mongo snapshot

- Bugfix: fix insert connection log

- Bugfix: fix snapshot init

- Bugfix: fix updating retry count in mongo

- Bugfix: fix snapshot init

- Bugfix: fix setting remaining data

- Cleaup: #1080 Delete `connection_log_partial_to_delete` Query

- Cleanup: #1080 Remove `connection_log_partial_to_delete` Table

 Before moving the partial tables to their base tables we compare
 the records of two tables and omit the records which are already in
 base table, so we don't need `connection_log_partial_to_delete`
 table any more. Also we don't need
 `deleteAlreadyWritterPartialLogs` method.
   
 Did some cleanup on connection log code to be compatible with this
 new structure (plugin mode)

- Cleanup: #1080 Add Docstring to `postgres.py` Module

- Cleanup: #1080 Add Docstring to `mongo.py` Module

- Cleanup: #1080 Add Docstring to `connection_log_[factory/manager].py` Modules

- Cleanup: #1080 Add Docstring to `db_cursor.py` Module

 Also did some cleanup on other DB modules

- Cleanup: #1080 Add Docstring to `db_redis.py` Module

- Cleanup: #1080 Add Docstring to `db_lmdb.py` Module

- Cleanup: #1080 Add Docstring to `db_mongo.py` Module

 Added docstring to `core.db.db_mongo.py` file
 Remove deprecated `insert` and `remove` methods of PyMongo module
 from `core.db.db_mongo.py` file
 Did some cleanup on `core.db.db_mongo.py` file

- Cleanup: #1080 Add Docstring to `db_main.py` Module

- Cleanup: #1080 Add Docstring to `db_handle.py` Module

- Cleanup: #1080 Add Docstring to `dbpool.py` Module

- Cleanup: #1080 Add Docstring to `db_check.py` Module

- Cleanup: #1080 Add Docstring to `ibs_query.py` Module

- Cleanup: #1080 Add Docstring to `db_result_wrapper.py` Module

- Cleanup: #1080 Add Docstring to `db_pg.py` Module

 Added docstring to `core.db.db_pg.py` file
 Did some code cleanup on `core.db.db_pg.py` file

- Cleanup: #1080 Add Docstring to `ibs_db.py` Module

 Added docstring to `core.db.ibs_db.py` file
 Did some code cleanup on `core.db.ibs_db.py` file

- Mongo: connection log, usage and snapshot searcher

- Mongo: queryTime decorator

- Mongo: importer to convert psql data into mongodb

- Write some user_info to lmdb

- Connection Log: log connection via new system

- Connection Log: new connection log system

- Snapshot: remove snapshot tables from postgresql partitioning

- Mongo: add mongo query to ibs_query

- New Snapshot system

- Add Mogo DB

C_invoice Branch

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

Bug fix: Group Info -> Auto Recharge -> Edit

Bug fixes and improvements in Notification

Feature: Notification: add Message Type = URL to bypass Message Center, and call a URL template directly

Fix critical bug in IBSng.conf.default, duplicate mikrotik_api_port with empty value prevents IBSng from starting

Fix critical bug in Thread Pool

Performance improvement in Bandwidth Manager

Bug fix: Kick failed user after online payment was not working in some cases

Feature: allow giving isp_id to isp.getISPInfo json-rpc handler method

Bug fix in Max Rule Traffic Usage


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

Bugfix: Bandwidth Manager: fix unexpected BW shaping after user disconnect

Bugfix: user's credit became negative in some cases

Bugfix: user was not disconnected in some rare cases after expiration or credit finish

Bugfix: fix Internal Re-login was not working

Bugfix: COA was not shown in Log Console

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

Bugfix: Fixes in BW Manager

Bugfix: Fix ISP charge rule attribute

Bugfix: Don't kill failed user after Deposit Change

Bugfix: Kill failed user after Change Credit

Bugfix: Fix getting Mikrotik API password from config file

Improvement: Group List: faster page load

Improvement: Better handling of paths in initial setups

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

Improvement: Enhancements to radius server

Improvement: Improve Timing

Improvement: CanStayRunner class to prevent multiple can stays for different instances of a single user

Feature: Notification: add message_type == user_event insert directly to user_events table

Feature: New JSON-RPC method: user.getTopConnectionCount

Feature: add new JSON-RPC method user.setFeshfesheParams

C_invoice_staging Branch

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

Bug fix: Group Info -> Auto Recharge -> Edit

Bug fixes and improvements in Notification

Feature: Notification: add Message Type = URL to bypass Message Center, and call a URL template directly

Fix critical bug in IBSng.conf.default, duplicate mikrotik_api_port with empty value prevents IBSng from starting

Fix critical bug in Thread Pool

Performance improvement in Bandwidth Manager

Bug fix: Kick failed user after online payment was not working in some cases

Feature: allow giving isp_id to isp.getISPInfo json-rpc handler method

Bug fix in Max Rule Traffic Usage

تگ 321 تاریخ ۱۳۹۵/۰۴/۰۸

Bug Fix: Database: Fixed admin_request_limit column was missing in db/tables.sql

Bug Fix: Charge Rule: Fixed Max Rule Traffic Usage reports incorrect applicable until time when rule is applied more than once in a session

Bug Fix: Web Service: util.getUsernameForIP: don't return error if IP is not online

Bug Fix: (CRITICAL) User's credit was going far under zero in case user has deposit

Feature: Search User: Bulk Action: add kill user (Kick & Clear) actions

Feature: Reject Cache: show user's reject cache info in Admin -> User Info

Feature: Reject Cache: extract macs from raw text

تگ 319 تاریخ ۱۳۹۵/۰۴/۰۱

Bug Fix: Periodic Accounting and Periodic Credit Charge were not working in 318

Bug Fix: Fix change rate functionality for re-online users

Bug Fix: Handle multilogin in plugins only

Bug Fix: Charge Rule: "Date" attribute: ignore empty custom field value

Bug Fix: Message Center: Asre Fara Ertebat: update WSDL

Feature: Charge Rule: add "ISP" attribute (limitation)

Feature: Charge Rule: add "Radius Attribute" attribute

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

Bug Fix: (Critical) Fix bug in thread pool, causing service to freeze in some cases

Bug Fix: (Critical) Fix reloading user not working in some cases

Bug Fix: Charge Rule: Fix "Maximum Rule Traffic Usage" attribute was not working

Bug Fix: Charge Rule: Fix "Date" attribute was not working

Bug Fix: Charge Rule: Fix a few general bugs in charge rules

Bug Fix: Mikrotik: Fix PPPOE service might have conflict with isg services

Bug Fix: Database: Add foreign key from users.group_id to groups table

Bug Fix: Online Payment: Change amount in database to numeric(16, 2) to avoid error for very large amounts

Bug Fix: Online Payment: (Minor) fix not adding report details records for Eghtesad Novin

Bug Fix: Online Payment: (Minor) fix old report of Search Pending Online Payments

Feature: Allow group status to set to inactive, so no new user can be added or moved to that group

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

Bug Fix: Cisco VPDN ras: Fix Change Rate Limit

Feature: Web Admin: add Save Report option for User View Credit Changes report

Bug Fix: BW Manager: remove mangle on user logout and change rule

Bug Fix: BW Manager: rereate tree on startup

Enhancement: BW Manager: Chainify bandwidth manager on mikrotik

Bug Fix: (Invoice) Web Admin: Pay Invoice by admin: Paid Amount: show 0 as default

Bug Fix: Web Admin: Fix error when disabling RAS: isAnyOneOnlineOnRas

Bug Fix: Web Admin: Fix error when deleting IPPool

Feature: Web Admin: Search User: Search by Radius Attribute

Bug Fix: Web Admin: fix Extra Cahrge List not working for non-GOD admins

Bug Fix: Notification: Fix not sending notification SMS when one user has invalid Cell Phone

Bug Fix: Web Admin: Fix bad Radius Attributes value in User Info after migration to C

Feature: Notification: allow using user_id in notification text

Feature: show state of user in reject cache or remove from cache

Feature: Web Service: allowing calling group.getGroupInfo by group_id instead of group_name

Bug Fix: write kill_reason in connection_log

Bug Fix: Online Payment: fix error "AttributeError ssl._create_default_https_context" on old Python versions

Bug Fix: Web Admin: (C_invoice) remove Recently Expired Users from home page

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

Invoice: after online payment, consume from gateway's ISP deposit not user's ISP deposit

PostgreSQL function "get_user_events" (used by CRM): only pop (return and delete) 1000 records in each call

Radius DummyPacket Fixes

Made sure auto renew would not end up in a dead lock

Show group name (as Current Service) in user's web panel home page

Improve Transaction feature

Show Charge Rule Usage in user web panel Connection Log

Bug fixes in "Periodic Accounting" and "Periodic Credit Change" when DST (Daylight Saving Time) switches

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

  • Bug Fixes

- Transaction functionality, in database for now: add transaction_id column to tables: credit_change, user_deposit_change, user_audit_log

- Bug fix in checking permissions ALLOW NEGATIVE CREDIT CHANGE INPUT and ALLOW REDUCE NEGATIVE CREDIT

- Add rfc2868 to radius server dictionaries

- Measure and show web service response time statistics: Admin home: Rates Web Service

- Fix invoice bug: show Increase Deposit by Group Credit action in add/edit invoice rule

- Fix a few bugs preventing service startup

- Fix bug: ISP online user count was double incremented

- Fix bug in Search User page: Select All was not working

- Fix user BW graph not working in user panel

- Fix not working: Admin -> User -> search by Phone

- Night Free user/group attribute (without custom field)

- Allow using any user attribute (not only custom fields) in Charge Rule attributes, for example: "A:credit", or "A:night_free"

- Feature: Extra Charge Rule: add Set and Multiply actions (other than Add)

- Feature: Extra Charge Rule: add change_target = "night_free" (other than "credit" and "deposit")

- Add internal relogin mechanism to automatically logout/login when renew is performed while user is online

- Bug Fix in BW Manager: getRootNode

- Feature: invoice: add new group flag "Invoice Renew Do Not Reset Credit"

C Branch

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

  • Bug Fixes

1. Fix backward compatibility in radius_attrs

2. Fix RemainingDurationAndBytes calculation

3. UPDATE WSDL of Mihansms, AFE and Magfa

4. Fix Deposit amount in search user

5. Fix Report Cleaner

6. Fix Feshfesheh functionality

7. Enable audit log for fast_dial

8. Fix Bandwidth Manager init

  • Feature

1. نمایش گزینه remote IP در Search user برگه Online user

2. متدی برای دریافت لیست کاربران منقضی شده همراه با exp date و first login

3. قطع اتصال توسط کاربر در پنل کاربری (Kill user)

4. نمایش سرویس در قسمت تغییر سرویس فاکتور براساس ISP گروه و کاربر

  • Other

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


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

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