Sessions saved to the `parts` list get cancelled after a failure. In
case of one session failing with an 'insufficient funds', don't save
that session to the `parts` list so the code doesn't try to cancel it.
Instead just destroy the session.
Change-Id: I43c3791baea5af07e1c6f6777e03c63ea2baae34
the accept header can contain a list of comma-separated values. If only
one of those is application/json or */*, we should send that.
Example of an Accept header:
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Change-Id: I45bdea5dca05060c1cc17ce5bbdff9c58cb5ca72
* improved the CF "mode" field tooltip
* the tooltip also states that the "mode" field is mandatory
Change-Id: I44a0bee7ca75d71d0c60df2b45ea9d968e1e54fa
implemented for Source Sets and B-Number Set in:
* Panel
* /api/cfbnumbersets/
* /api/cfsourcesets/
* /api/callforwards/
in addition, the fields have also been documented in the forms (and therefore
also in the API documentation)
Change-Id: I955dd9addf1e61ec7516b4c518adec151248bacc
* $sess returned from SMS::session_create() can be either
>0 = success
0 = remote rejected (subscriber=inactive)
-1 = internal error
* improve the error messages and the session reason based
on the refined return values
Change-Id: I775c637bd3d08fea3bf53094b4ab60072daabfa6
We can replace the apply usage with map plus a returning s///.
This also fixes a hidden bug with the liblist-moreutils-perl dependency
missing from debian/control, being indirectly pulled by some other
dependency, while an implementation detail.
Change-Id: Ibfc7b362ad77c4b202d93cf71774c40623503f14
* perform_prepaid_billing() part of the code
that cancels the session is moved into a new
function cancel_prepaid_billing()
* cancel_prepaid_billing is called in perform_prepaid_billing()
and after init_prepaid_billing() if session status != 'ok'
* add_journal_record() set default coding=0 if undefined
Change-Id: Id98f8e5b738953d5bb047f59657218f5fa6cab62
* smsc_peer is set as 'default' if none is identified
* fill in status and reason fields for sms receive
* write 'cli' fields as intended
Change-Id: I7316935c3253563db96104d481cbaba7213ad436
* fix routine path
* fix passing arguments as an array, not hashref
* send_sms() uses UTF-8 charset for the query_form() method
Change-Id: I3039999751ffc666ce10b40cb01209a69c98e94e
one was actually a true positive. the others were false positives
and are going to be silenced for the time being, while we try to find
an upstream solution. more details can be found in the ticket.
Change-Id: Iae8df7606774a9d26e4d44dbba557c9fe62d2252
this is to fix the TAP tests of the sipwise QA chain
fixed (or ignored):
- ControlStructures::ProhibitMutatingListFunctions
- Documentation::RequirePodSections
- InputOutput::RequireEncodingWithUTF8Layer
- Subroutines::ProhibitSubroutinePrototypes
- BuiltinFunctions::ProhibitStringySplit
- TestingAndDebugging::ProhibitNoStrict
- TestingAndDebugging::ProhibitProlongedStrictureOverride
- InputOutput::ProhibitTwoArgOpen
- CodeLayout::ProhibitQuotedWordLists
Change-Id: I7dce4ce123bad40de2d9b51ba5b1a141e20c3783
to fix:
Can't modify non-lvalue subroutine call of &NGCP::Panel::Utils::Generic::is_int
in scalar assignment at lib/NGCP/Panel/Controller/Rewrite.pm line 278, near ")) "
Change-Id: Ic19001b4e8ebae843b2371e83c8cf4329d2b091b
these are to fix sipwise TAP tests. The following policies were
violated and have been fixed (or ignored where apppropriate):
- Variables::ProhibitAugmentedAssignmentInDeclaration
- Variables::ProhibitConditionalDeclarations
- Variables::RequireLocalizedPunctuationVars
Change-Id: Ifee93d537cd6e33d9e6e6ef8026be4b2b9fd0ee5
* enables fetching captured sip data
GET all collection returns JSON with available SIP messages
GET item collection requires a valid call-id and
returns pcap data generated from the packets of the call-id
Change-Id: I552ee9a312a4b9acf95bde93f6c584bbf82f9ea9
* Storage model provides with a layer for more than one
DBIx::Class connection and handles them, currently only
first connection is supported.
* Storage model also uses different DSN than the DB model
* Callflows use the Storage model to fetch captured dialogs
Change-Id: I6e742b7a7f1f9f047ca68ea75f6eea01349c8664
this is to clean the Sipwise TAP tests for this repo
the critical places where undef is really the intended return value (because
a scalar should always be returned) the rule has been overridden
Change-Id: I66e217a03a00e0f366db9c0cbc5007dd15cd9f96
"Mixed high and low-precedence booleans"
The operations have different precedence and must not be mixed together.
Change-Id: If38e25d6e94f599dc9462d9ee37ce165fa303b35
translate forms in NGCP::Panel::Form (the caching module) instead of in the
templates. This gives us better control to avoid translating cached forms
multiple times. Multiple translations lead to errors due to escaping of
special symbols and simply fails from one (non-english) language to another.
Change-Id: I234b22cb70dc068530e4a9f241cb9bb5653e1959
The only two files left with such warning:
* lib/NGCP/Panel/Field/URI.pm
* t/lib/Selenium/Remote/Driver/Extensions.pm
While they need some special Perl magic to be fixed.
Change-Id: I23553bbffd5bfb38b222733bdeb3937945eabf3e
Revert "TT#11701 check existence of voip number in InterceptionDB"
This reverts commit b803c1ae3e.
Change-Id: I56832cf412a97c4f0fc9f169498a60653d979614
* add missing 'sip:' prefix for caller_uri/callee_uri containing the
domain part
* caller_domain is used in callee_uri if callee_domain is not
specified
Change-Id: Iacf0e29f6ec5c2d97aad5918bb4afef67e4e0e45
inflate/deflate DateTime for simple (complete) timestamps
considering the correct timezone at the latest possible point
in the action chains: on form-level as well as in the DataTables json output.
Change-Id: Icfe94d6d5a9ac02d9fca0f4b8d048d86cf66cffa
* Consider POST body not utf8 encoded, so encode "json" parameter
* Allow empty body for multipart/form-data controlled by configuration
as faxes took text from "json" part too.
* Allow empty return from create, meaning asynchronous operations,
like fax creation
* Allow to skip hal validation through form.
Can be used for collections without PUT and PATCH.
Change-Id: If0d0e7cdc6abe53d76ad0b18568e93743040e90f
* remove $config->{sms}{smsc} selection as
there is no such thing as smsc in ngcp_panel.conf
* remove charset from the send_sms query form as charset
is now set in the smsc peer group and taken from the template
Change-Id: I12ac8b74d2923a54194685c3f5e28a37f8df1902
* smsc_peer preference is mandatory for NGCP::Utils::SMS::send_sms()
and contains a handle of one of the avilable group=smsc id
* sms_journal is extended to also store smsc_peer
Change-Id: I1a368b55c263bb5ea2acda004bbaf463d6431413
* moved sms_journal record creation into a new
NGCP::Utils::SMS::add_journal_record()
* 'cli' is used when sending sms to store
user_cli or cli subscriber preference.
that is useful for calls where caller is a
remote number
Change-Id: I80bc31da294a56b302e154133525eea187ab6aff