Unix systems default to using /bin/sh when trying to run an executable
script that has no shebang.
Change-Id: I18ef857fbc54fd72e6ad06b0f85c8c908fb0880d
We require these with perlcritic, but have not been triggered as these
scripts have no shebang, which we will be adding later.
Change-Id: I81ac98c9ee72cce9b3446a98e1aae53e4c04b578
List all used modules, remove unused ones and add missing ones. Move
some optional dependencies into suggests.
Change-Id: I66966af1fb32e97cb44c15fe9aec9cac96e36050
Use the new dependency structure instead of the deprecated one, which is
more semantically rich, and uniform.
Change-Id: I2288c0d349cfe6ae5c0168e35f2c7cf00e8b7091
This will make updating them more clear, to easily see what got removed
or added, and not lose sight in between the sorting noise.
Change-Id: I3826668b726873e7dcce6c4c86dde8d8ea2bea9a
+ prepare/merge/clean callforward+voicemail Y/N data
+ add voip_cf_destinations dao
+ add voip_cf_destination_sets dao
+ voip_cf_mappings, destination_sets and destinations
insert dao method
+ write callforwards
+ write callforward related preference values
+ not well-formed enough: fixed issues popped up when
trying to view/edit created callfowards in panel
+ fix "database locked" error - properly handle SQLite's
serialized transactions (single transaction at a time).
+ write report file for debugging/review
- json graph of merged data of a subscriber
- including fields info/warning/error messages
for a subscriber
- write it snychronized now
+ get rid of JSON::XS
+ extend NGCPRestApi connector to support file transfers
+ heuristic for missing "channels" (by subscriber number
count)
+ prevent mysql deadlocks when writing to ngcp
+ strictly consider record order from imports
+ task end result stats polished
+ cleanup code a bit
+ add kmailio.location dao
+ add kmailio.location insert dao method
+ writing "permanent registrations" to kamailio.location
+ generate location "ruid" and "partition" according to kamailio
Change-Id: Ief9a7634b4930e51d79ac5e963ba48769d3708ea
- CSV importer: escaped field enclosing, mutliline values,
comment char, constant memory
- SQLite table to hold flat file content
- multithread import for large files
- concept of single flatfile abandonend as teletek also wants
to import AllowedIPs, MaxConcurrentCalls, NCOS levels,
CallForwards
- load teletek's main subscriber flatfile
- single insert/upsert txn import to identify duplicate
cc+ac+sn
- alias range unfolding
- alias range unfolding fix, analysis of duplicate cc+ac+sn
in export_kundinfo_leica2.csv
- fixed one-off bug in parser
- aliases sorting
- aliases dupe check
- check for sip account used by different contacts
- reseller cache/check for missing reseller
- domain cache/check for missing domain
- billing profile cache/check for missing billing profile
- rest api cert-authentification, multi-user, thread safe, tested
- contact create, no update
- contract create, no update
- billing mapping creaet, no update
- contract balance create, no update
- billing subscriber, prov subscriber, primary voip_number and voip_dbalias
- prefs: account_id, cc, ac
- prefs: allowed_cli, cli
- load allowed clis file, identify dupes
- todo: remove partly adjusted old code parts, depending on this will be extended or not.
- add aliases, tested, panel can display 1000+ aliases.
- disable multithreading
Change-Id: I4f5ae61610bab744e3d0644f7a56afa8874a2c3c
The latter does not support YAML 1.1, nor many parts of the
specification. Use the more compliant implementation, in addition to try
to converge to a single one, so that we do not get serialization delta
surprises.
Change-Id: Ia3f6808b9bb84afb224cc29040964eefe07bf118
+subscriber provisioning via db:
+delta handling
+create billing subscriber
+create provisioning subscriber
+create/update billing voip_number
+create cli preference
+update billing subscriber
+create voip_dbalias
+create allowed clis preference
+release other subscriber's voip numbers
+delete obsolete dbalieses
+delete obsolete allowed_clis
+create kamailio voicemail user
+create account_id preference
+create cc preference
+check config parameters (billing profile of same reseller..)
+subscriber and contract termination via api
+reprovisioning use-case (upon changed password):
-terminate subscriber
-terminate contract
-create contact, contract, subscriber as normal
+log successful provisions
+limit to imported batch with --batch
+bulk write subscriber preferences directly to db
+barring profile to adm_ncos_ID preference
+peer_aut_* preferences: init, switchover, clear modes
+bulk write via rest-api:
+call forwards from features_define.cfg
+bulk create lnp_numbers
+checks, delta detection for lnp carriers
+changed from txn per record (42min) to txn per block (3min)
+tuning sqlite params to prevent db lock error
with multithreading
+workaround for
https://rt.cpan.org/Public/Bug/Display.html?id=102791
+include .pl and .cfg file types to be installed by the
package
+fixup to skip '0' usernames with --skip-errors
+check for minimum password length
+block rollback issue
+import txns only, stmt was not "finished"
+fix db_do "E0E" return value
+disable multithreading when perldebug
+warning counter (--skip-errors only)
+fixed locking issue
+make the --run=<db-prefix> option work to use
different import slite db's
Change-Id: I82d27b593b1d5194331c1559b022cf677e232550
+possibility to load ngcp conf files
+db connectivity must be set up explicitly for now..
+start implementing subscriber creation
+main record iteration loop, only reading the dump:
single thread: ~10min
2 threads: ~5 min
4 threads: ~3.5 min
+"check" task
+rest-api requests
+collection processing
+multithreaded processing
+rest item object prototype
Change-Id: I8ee12037b863f878101e53d69b6ae2b44a96780b
+allow #* symbols in setoptionitems in
Features_Define.cfg
+prevent double execution+log properly
+make sure to close all db connections before
forking threads, not only project-specific ones
+per-db dao folder for ipgallery migration project
+start with ngcp db dao's:
+contract_balances
+contracts
+refactor dao/sql processing class
+params hash for method with long arg list
+take out obselete methods
+dedicated unique field option for "insert_record"
+split SqlRecord class into
SqlRecord&SqlProcessor
+dependencies in Build.pl and debian/control
+took out comments from debian/control
+calcualte deltas of Subscriber_Define.cfg imports
+"truncate subscriber import" task
Change-Id: I8eab88319e6a4ba3d5b6ba935e50a56cc1763ad9