9daaf10
Refactor message limits, change to 500/day
Stephen Paul Weber created
9daaf10
Refactor message limits, change to 500/day
Stephen Paul Weber created
4b5310c
CallAttempt needs customer
Stephen Paul Weber created
15a0f77
JID Switch
This allows a customer to change their JID, but it's a bit raw. In practice I don't expect anyone to actually run this directly, instead cheogram covers with with a friendlier and safer version. This is just the business.
Christopher Vollick created
d4d9e6c
Merge branch 'block-calls-when-expired'
* block-calls-when-expired: Block voice calls when account is expired Refactor CallAttempt factory to use registration pattern
Stephen Paul Weber created
0db4192
Revert "Merge branch 'three_d_secure'"
This reverts commit 36f441c031a5318385ec78d7d2e021a8e2fab186, reversing changes made to 3b0ae3c9387d3be41b30bd6dd4552ff0a841d8ed.
Stephen Paul Weber created
36f441c
Merge branch 'three_d_secure'
* three_d_secure: Send 3DS id when making a transaction
Stephen Paul Weber created
b1c4110
Block voice calls when account is expired
Allow for "transitional" (no plan) users for now, because we still have a bunch of those.
Stephen Paul Weber created
982324b
Refactor CallAttempt factory to use registration pattern
Stephen Paul Weber created
3b0ae3c
Need repo too during bill plan command
Stephen Paul Weber created
45d76a6
Wrap the connection yielded from a transaction
Stephen Paul Weber created
d3a8cab
Use trampoline instead of custom fiber
Stephen Paul Weber created
125227e
Merge branch 'change-billing-lock'
* change-billing-lock: ExpiringLock instead of require expired Atomic ExpiringLock
Stephen Paul Weber created
bb9f4f1
Send 3DS id when making a transaction
Stephen Paul Weber created
7a49aaf
ExpiringLock instead of require expired
We *want* to try billing a little before expiry, to prevent the account lapsing. So use an ExpiringLock to prevent double-billing races.
Stephen Paul Weber created
adc801c
Atomic ExpiringLock
Stephen Paul Weber created
c5447fe
Merge branch 'only-bill-if-expired'
* only-bill-if-expired: Only bill customer if they for sure have balance and are expired Allow an in-transaction condition for billing Change multiline chain style
Stephen Paul Weber created
0d1a200
Merge branch 'sip-concurrency'
* sip-concurrency: Limit call concurrency for outbound SIP
Stephen Paul Weber created
b47b7d0
Merge branch 'fwd-cleanup'
* fwd-cleanup: Try to classify URI before saving, even if timeout.zero? v1 is dead and everyone has been moved Allow finishing adming command
Stephen Paul Weber created
17d9b2f
Only bill customer if they for sure have balance and are expired
Stephen Paul Weber created
6a7c0e9
Allow an in-transaction condition for billing
Stephen Paul Weber created
dc2c141
Change multiline chain style
Stephen Paul Weber created
85a7a4e
Limit call concurrency for outbound SIP
Stephen Paul Weber created
acd8226
CustomerPlan.extract
To allow building from a hash with extra keys. Makes the CustomerRepo more readable.
Stephen Paul Weber created
f571b5e
Postgres#query_one
Helper for queries that only return a single row.
Stephen Paul Weber created
da30c37
Allow finishing admin command
Stephen Paul Weber created
18258dd
Try to classify URI before saving, even if timeout.zero?
Stephen Paul Weber created
016d8c4
v1 is dead and everyone has been moved
Stephen Paul Weber created
9827b8b
Allow finishing adming command
Stephen Paul Weber created
c92ea39
Say what customer was affected
Stephen Paul Weber created
74b3ab7
NoCustomer is not registered
Stephen Paul Weber created
688e78b
Merge branch 'max-call-length'
* max-call-length: Calculate the maximum allowable call length
Stephen Paul Weber created
39e3b0f
Merge branch 'credit-card-blacklist'
* credit-card-blacklist: Credit card blacklist
Stephen Paul Weber created
72b4436
Credit card blacklist
Any card on the list is just treated as though it is not present, preventing it from being used.
Stephen Paul Weber created
e636c33
Calculate the maximum allowable call length
Asterisk could use this to actually limit the call, for example.
Stephen Paul Weber created
c3bd04f
Merge branch 'trustlevel-repo'
* trustlevel-repo:
TrustLevel{,Repo}
Stephen Paul Weber created
b16e8df
TrustLevel{,Repo}
To determine how much permission a customer account should have to take risky actions. Seperate from their plan, this is not how much they could do in theory, but how much the system will allow in practise due to perceived risk. Starts out with a simple model based on amount of settled payments, and being used to decide what is an "expensive" route for outbound calls.
Stephen Paul Weber created
2b3ebc3
Merge branch 'insert-settled-after'
* insert-settled-after: Credit card transactions settle after 90 days, bills instantly
Stephen Paul Weber created
6e76abb
Update to schema with settled_after
Stephen Paul Weber created
fa0e681
Merge branch 'bill-with-note'
* bill-with-note: Add a note when billing account
Stephen Paul Weber created
bb33b0c
Add a note when billing account
Stephen Paul Weber created
42add6d
Credit card transactions settle after 90 days, bills instantly
Stephen Paul Weber created
a688701
Merge branch 'activate-with-balance'
* activate-with-balance: If customer already has enough balance, just bill them and finish New BillPay registration step Save plan to DB as soon as it is selected Move credit_to lookup into relevant class
Stephen Paul Weber created
8291b15
If customer already has enough balance, just bill them and finish
Stephen Paul Weber created
4ef20f6
New BillPay registration step
Assumes they have enough balance (anyone using this step must be sure of this) and then does the billing before proceeding to finish.
Stephen Paul Weber created
27be78a
Save plan to DB as soon as it is selected
Customer will appear as instantly expired (having been active for 1 second in the immediate past). This can replace the pending_plan key for BTC activations. It also serves as a record for mail-in activation of what plan they had selected. Once the account is really activated the tiny row is removed.
Stephen Paul Weber created
2e7f0c4
Move credit_to lookup into relevant class
Stephen Paul Weber created
8fd61ce
Merge branch 'monthly-billing'
* monthly-billing: Allow the DB to notify us to bill a customer Command.execution setter Bill plan command Clearer name for lock bypass factory
Stephen Paul Weber created
3b7abeb
Allow the DB to notify us to bill a customer
Stephen Paul Weber created
8a4e129
Command.execution setter
Stephen Paul Weber created
655624d
Bill plan command
Implements the full logic of the billing_monthly_cronjob for one customer by reusing code that has been written more robustly in sgx-jmp for some time. This will allow the cronjob to just execute this command once a day for each expiring customer to get all the correct billing behaviours.
Stephen Paul Weber created