آخرین تغییرات IBSng
سطر ۱٬۴۳۵: | سطر ۱٬۴۳۵: | ||
=''' C_diameter Branch '''= | =''' C_diameter Branch '''= | ||
+ | |||
+ | =='''تگ 372 تا 377 در تاریخ ۱۳۹۶/۰۲/۱۹''' == | ||
+ | |||
+ | - BugFix: mp observer change in isp loader caused isp states to reset | ||
+ | |||
+ | - BugFix: unload/load instead of reload causes race condition where isp object is no longer available | ||
+ | |||
+ | - BugFix: Reporting Reason was not parsed correctly | ||
+ | |||
+ | - Improvement: Added two more timers to radius packets | ||
+ | |||
+ | - BugFix: Online user storage were using incorrect redis db | ||
+ | |||
+ | - BugFix: Reporting Reason is a sub attribute of Used-Service-Unit. | ||
+ | |||
+ | - Improvement: Improve internet reauthorize response time by increasing the priority of reauthorize initiated recalc next event queries | ||
+ | |||
+ | - BugFix: Fixed Typo which cause isp deposit role back not to work correctly | ||
+ | |||
+ | - BugFix: Consume ISP deposit was broken after Internal Relogin. Fix to always reload ISP and log after consuming deposit. | ||
+ | |||
+ | - BugFix: Fixed diameter update messages might not be replied by better error handling of internetReAuthorizeResult | ||
+ | |||
+ | - BugFix: Make sure we always call canstay callbacks. Also use canstay callbacks instead of specific purporse reauthorize in progress mechanism | ||
+ | |||
+ | - BugFix: Do not send Failover diameter attribute as not all PGW supports it | ||
+ | |||
+ | - BugFix: Diameter ASR and RAR were not working after switching to policy workers scheme | ||
+ | |||
+ | - BugFix: Webservice port selection for RADIUS and DIAMETER processes were messed up | ||
+ | |||
+ | - BugFix: Fix memory leak of web service process by replacing cyclic-reference-creator collections.OrderedDict with odict.odict in kairos library | ||
+ | |||
+ | - BugFix: __internetReauthorizeCheckForIncorrectSubService was not working due to typo | ||
+ | |||
+ | - Improvement: Added Allocation-Retention-Priority to diameter dictionary | ||
+ | |||
+ | - Improvement: Rename KILL Process to POLICY_WORKER and allow multiple policy worker to be run simultaneously | ||
+ | |||
+ | - Improvement: Sandvine ras compatibility improvement | ||
+ | |||
+ | - Improvement: Support for separated In/Out bytes in diameter requests | ||
+ | |||
+ | - Improvement: Support more 3gpp attributes in CCRs | ||
+ | |||
+ | - NewFeature: Log watchdogs, init_and_terminates, updates, asr_and_rar diameter requests and replies in different files under DIAMETER folder | ||
+ | |||
+ | - Bugfix: #1228 Fix Max Time Usage Charge From Custom Field | ||
+ | |||
+ | Resolving 'max_rule_time_usage' charg rule to be read from user | ||
+ | custome field (e.g: 'F:time') haven't been handled. | ||
+ | |||
+ | - BugFix: Duplicate detector was not caching reply packets and never replay them | ||
+ | |||
+ | - BugFix: RADIUS,ACCT,DIAMETER request id generation was not correct | ||
+ | |||
+ | - BugFix: Reject cache leaked memory in redis, with non-expiring keys | ||
+ | |||
+ | - BugFix: Reject cache might show incorrect macs in user interface | ||
+ | |||
+ | - NewFeature: Sandvine PCEF Support | ||
+ | |||
+ | - Improvement: Diameter Server Enhancements to comply with 3GPP 32.299 v.12 diameter charging application | ||
+ | |||
+ | - Bugfix: #1215 Fix Timezone Issue in Online Graph | ||
+ | |||
+ | - BugFix: Turned off sub service check by default | ||
+ | |||
+ | - NewFeature: New features for sub services starting and checking | ||
+ | |||
+ | *Sub services has now two new boolean options, auto_start and auto_check | ||
+ | auto_start: Should this sub service auto started when subscriber master session brought up | ||
+ | auto_check: Should this sub service checked during can stay and ensure it's available. | ||
+ | |||
+ | *Service Auto Check is a new mechanism which compares current subscriber services with applicable ones. | ||
+ | If there's a difference, it will resync services after a guard time. Guard time prevents resyncing when sub services in queue to start. | ||
+ | |||
+ | - Improvement: Log next event and kill dict in can stay event of log console | ||
+ | |||
+ | - Improvement: Few Logging for diameter translator | ||
+ | |||
+ | - BugFix: Cleanup diameter server connection after connection is closed | ||
+ | |||
+ | - Improvement: Use a TTL based dictionary for diameter packets to ensure we dont eat up all memory due to a problem in packet processing. | ||
+ | |||
+ | - BugFix: Fixed InternetReauthorize were not working correctly because of bad merge | ||
+ | |||
+ | - BugFix: SOAP Server is only available in WS process | ||
+ | |||
+ | - Improvement: Increased default threshold megabytes and update interval for better performance | ||
+ | |||
+ | - Improvement: Decreased number of threads for protocol listeners | ||
+ | |||
+ | - BugFix: Cisco ISG reauthorize threshold ras attributes were missing | ||
+ | |||
+ | - BugFix: Cisco ISG IPAccountLogon packet detection was not accurate | ||
+ | |||
+ | - Improvement: Run Radius Auth, Radius Acct and Diameter in separate processes to increase scalability | ||
+ | |||
+ | - BugFix: Cisco PCEF Stop did not work due to bad session id | ||
+ | |||
+ | - BugFix: Added missing imports due to bad merge | ||
+ | |||
+ | - BugFix: Internal relogin cleanup and bug fixes | ||
+ | |||
+ | - Improvement: Increased default max thresholds to decrease the load on ras and ibs | ||
=='''تگ 372 در تاریخ ۱۳۹۵/۱۲/۲۲''' == | =='''تگ 372 در تاریخ ۱۳۹۵/۱۲/۲۲''' == |
نسخهٔ ۶ ژوئن ۲۰۱۷، ساعت ۱۸:۰۵
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 تا 377 در تاریخ ۱۳۹۶/۰۲/۱۹
- BugFix: mp observer change in isp loader caused isp states to reset
- BugFix: unload/load instead of reload causes race condition where isp object is no longer available
- BugFix: Reporting Reason was not parsed correctly
- Improvement: Added two more timers to radius packets
- BugFix: Online user storage were using incorrect redis db
- BugFix: Reporting Reason is a sub attribute of Used-Service-Unit.
- Improvement: Improve internet reauthorize response time by increasing the priority of reauthorize initiated recalc next event queries
- BugFix: Fixed Typo which cause isp deposit role back not to work correctly
- BugFix: Consume ISP deposit was broken after Internal Relogin. Fix to always reload ISP and log after consuming deposit.
- BugFix: Fixed diameter update messages might not be replied by better error handling of internetReAuthorizeResult
- BugFix: Make sure we always call canstay callbacks. Also use canstay callbacks instead of specific purporse reauthorize in progress mechanism
- BugFix: Do not send Failover diameter attribute as not all PGW supports it
- BugFix: Diameter ASR and RAR were not working after switching to policy workers scheme
- BugFix: Webservice port selection for RADIUS and DIAMETER processes were messed up
- BugFix: Fix memory leak of web service process by replacing cyclic-reference-creator collections.OrderedDict with odict.odict in kairos library
- BugFix: __internetReauthorizeCheckForIncorrectSubService was not working due to typo
- Improvement: Added Allocation-Retention-Priority to diameter dictionary
- Improvement: Rename KILL Process to POLICY_WORKER and allow multiple policy worker to be run simultaneously
- Improvement: Sandvine ras compatibility improvement
- Improvement: Support for separated In/Out bytes in diameter requests
- Improvement: Support more 3gpp attributes in CCRs
- NewFeature: Log watchdogs, init_and_terminates, updates, asr_and_rar diameter requests and replies in different files under DIAMETER folder
- Bugfix: #1228 Fix Max Time Usage Charge From Custom Field
Resolving 'max_rule_time_usage' charg rule to be read from user custome field (e.g: 'F:time') haven't been handled.
- BugFix: Duplicate detector was not caching reply packets and never replay them
- BugFix: RADIUS,ACCT,DIAMETER request id generation was not correct
- BugFix: Reject cache leaked memory in redis, with non-expiring keys
- BugFix: Reject cache might show incorrect macs in user interface
- NewFeature: Sandvine PCEF Support
- Improvement: Diameter Server Enhancements to comply with 3GPP 32.299 v.12 diameter charging application
- Bugfix: #1215 Fix Timezone Issue in Online Graph
- BugFix: Turned off sub service check by default
- NewFeature: New features for sub services starting and checking
*Sub services has now two new boolean options, auto_start and auto_check auto_start: Should this sub service auto started when subscriber master session brought up auto_check: Should this sub service checked during can stay and ensure it's available. *Service Auto Check is a new mechanism which compares current subscriber services with applicable ones. If there's a difference, it will resync services after a guard time. Guard time prevents resyncing when sub services in queue to start.
- Improvement: Log next event and kill dict in can stay event of log console
- Improvement: Few Logging for diameter translator
- BugFix: Cleanup diameter server connection after connection is closed
- Improvement: Use a TTL based dictionary for diameter packets to ensure we dont eat up all memory due to a problem in packet processing.
- BugFix: Fixed InternetReauthorize were not working correctly because of bad merge
- BugFix: SOAP Server is only available in WS process
- Improvement: Increased default threshold megabytes and update interval for better performance
- Improvement: Decreased number of threads for protocol listeners
- BugFix: Cisco ISG reauthorize threshold ras attributes were missing
- BugFix: Cisco ISG IPAccountLogon packet detection was not accurate
- Improvement: Run Radius Auth, Radius Acct and Diameter in separate processes to increase scalability
- BugFix: Cisco PCEF Stop did not work due to bad session id
- BugFix: Added missing imports due to bad merge
- BugFix: Internal relogin cleanup and bug fixes
- Improvement: Increased default max thresholds to decrease the load on ras and ibs
تگ 372 در تاریخ ۱۳۹۵/۱۲/۲۲
- Improvement: Decreased number of threads for protocol listeners
- BugFix: Cisco ISG reauthorize threshold ras attributes were missing
- BugFix: Cisco ISG IPAccountLogon packet detection was not accurate
- Improvement: Run Radius Auth, Radius Acct and Diameter in separate processes to increase scalability
- BugFix: Cisco PCEF Stop did not work due to bad session id
- BugFix: Internal relogin cleanup and bug fixes
- Improvement: Increased default max thresholds to decrease the load on ras and ibs
تگ 364 تا 371 در تاریخ ۱۳۹۵/۱۲/۱۰
- Bugfix: Fix Active Leaves
The `getActiveLeaves` method must be called in 'MAIN' process.
تگ 364 در تاریخ ۱۳۹۵/۱۲/۰۷
- Bugfix: Add Missing Imports to Radius Module
تگ 363 در تاریخ ۱۳۹۵/۱۲/۰۴
- BugFix: Internal relogin cleanup and bug fixes
- Improvement: Increased default max thresholds to decrease the load on ras and ibs
تگ 355 تا 362 در تاریخ ۱۳۹۵/۱۲/۰۲
- BugFix: Some ASRs does not allow logoff request without username
- BugFix: Various Internal Relogin fixes
- Improvement: Make sure listen loop won't exit on an abnormal exception
- BugFix: Setting max rule traffic usage value as a float in custom fields would have break max rule traffic plugin
- BugFix: Using same ID generator for radius and diameter process will cause concurrent access to generator
-Improvement: Increased number of threads in radius processes to 200. PCEF rases might establish lots of connections which run the process out of threads
- Improvement: Disable Partitioning Check Contraint, This is done because of some efficiency issues
- BugFix: We should ignore negative threshold when QV is passed to cisco isg
- BugFix: A mid session reauthorize after a restart will create an instance without start accounting
- BugFix: Not saving user after logout will lead to inconsistent user object
- BugFix: Take credit limit into account when calculating remaining bytes. This fixes postpaid user problem with isg prepaid services
- Improvement: Kill max delay default value was too large. Set it to 2 hours by default
- Improvement: Make auth rate control optional and turn it off by default
- Bugfix: #1512 Fix `int` Convertion of `float` String
- Bugfix: #1449 Fix `users.group_id` Bug
Fixed `getDBColName` in a way which returns the part after the dot, e.g 'usersgroup_id' => 'group_id'
- Bugfix: #1449 Fix Ambiguous Fields `user_id` and `group_id` in Management Summary Report
After adding two columns `user_id` and `group_id` to `connection_log` table it created a conflict with `users` table on in management summary queries; in this fix we change SQL queries to exactly specify which fields we mean by `user_id` and `group_id`: `users.user_id`, `users.group_id`, etc.
- Bugfix: #1503 Fix MAC Extraction From RAS of ZTE Type
ZTE model rases change the format of user mac address in recent framework update, e.g: old format: `78d99fd34e4b` new format: `78:d9:9f:d3:4e:4b`
- Improvement: Few logging for radius process
- BugFix: Reauthorize bytes were deducted twice from remaining bytes
- BugFix: Do not start accounting on reauthorize. Removes lots of nagging about online dic not found in error log
- Improvement: Make sure we never return a quota of 0 in case of a successful reauthorize
- Improvement: Run internal relogin with same priority as auth. Long queues might cause WS request to return while task has not been done yet
- BugFix: reauthorize_used_bytes should be used bytes from last update and not from start of session. Fixed premature QV0 while user still has credit.
- Bugfix: don't assign ip to sub service
- Feature: Jetsib PGW Support
- Bugfix: skip users without ignore_ras
- Feature: Add support for cisco_isg_max_reauthorize_mbytes and cisco_isg_max_reauthorize_minutes attributes to force reauthorize after a certain threshold
- Feature: Multiple prepaid services per account support
- BugFix: Max Rule Traffic Usage were not working correctly with multiple rules sharing one value (and custom field) and multiple instances using them
- BugFix: Onlines table in single user info page were became messed up after first ajax based refresh
- BugFix: Multi login did not work with Multi Service rases other than ISG
- Bugfix: #1452 Fix/Update Deprecated Links in Graph Menu
The following links are deprecated and removed: All Realtime Graph Internet Realtime Graph Voip Realtime Graph BW Realtime Graph Also updated modified links
- BugFix: Limit Port might cause error if ignored ras is not available in user attrs
- BugFix: PCEF stop provisioning was not sent
- Improvement: Second username mapping should not be flushed on restart
- Improvement: Failure to change sub services (ex. failed COA) should be detected. Also resync services after internal relogin to make sure we have correct services
- Bugfix: #1136 Fix Name of Import File in Import User Menu
Note: after changing the log process to pass the logging mechanism to python syslog module, user_import logs won't be written to a local file which will cause to "View Import Log" link on "Import User" page after uploading CSV file won't work. this can be fixed by adding new log type (aside `QueueLogger` and `DirectLogger`) to IBS logger module, but this is not a priority now; look at the comments on changed files for more info.
- BugFix: Re-Onlined users might have get failed status due to left over from previous sessions
- BugFix: Radius Attributes with integer values were not working in charge rule attribute radius
- Improvement: Allow Acct-Interim-Interval to be passed to failed users
- Improvement: Exception handling for internal relogin
- Bugfix: Incorrect call to getUserAttrs caused exception
- BugFix: Some initial variables where missing in configuration file and advanced configuration
- Improvement: API cleanups for cisco isg rases
- BugFix: Undefined session raised unnecessary exception
- BugFix: Some initial variables where missing in configuration file and advanced configuration
- Feature: Cisco ISG IPoE as PCEF support
- Bugfix: cast ignore ras ids to int
- Bugfix: read min/max event time directly from defs
- Bugfix: fix group usages of connection analysis
- Feature: Add User ID Attribute to Search User Page
- BugFix: Threshold Bytes/Seconds did not trigger internal reauthorize due to bad merge
- BugFix: Threshold calculations was went south due to bad merge
- BugFix: Second username change fail in case of internal relogin
- Improvement: get method for SNMP client
- Bugfix: fix internal relogin answer to main proc
- Bugfix: Race condition might cause internal relogin to fail
- Bugfix: Autorenew would fail if user has next group and current group does not have group_credit
- Bugfix: fix limit port binding
- Bugfix: fix periodic acc failed login
- Bugfix: fix non-working periodic accounting plugin
- Bugfix: Some mikrotik devices send mschapv2 flags as non-zero which is not compliant by standard but leads to wrong passwords
- Feature: optionally do autoRenew on abs expired user
- Bugfix: log deposit_type in deposit change
- Cleanup: clean md5 response
C_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_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