900baf3
Merge branch 'dry-sentry'
Click to expand commit body
* dry-sentry: DRY up sentry and logging
Stephen Paul Weber created
900baf3
Merge branch 'dry-sentry'
* dry-sentry: DRY up sentry and logging
Stephen Paul Weber created
3e43c1c
Merge branch 'vcard4'
* vcard4: Switch TTS OGM from vcard-temp to vcard4 PEP
Stephen Paul Weber created
a84946c
DRY up sentry and logging
Wrap every blather handler in sentry setup and exception capturing so each route doesn't have to handle it seperately. panic is a last resort, usually better to return an XMPP error and report/log, so default to that. Also wraps each handler in a span. Note that for multistage command handlers this span is too long and they will want to call finish/set_span internally.
Stephen Paul Weber created
eaf8fee
Merge branch 'background-log'
* background-log: Log in background thread Don't run our whole app in an at_exit
Stephen Paul Weber created
21848ff
Log in background thread
File IO is fast, but can still block reactor.
Stephen Paul Weber created
2aa1030
Don't run our whole app in an at_exit
We don't use much of it, and this makes using other at_exit hooks more realistic.
Stephen Paul Weber created
c89a05d
Merge branch 'new-blather'
* new-blather: Update to latest blather upstream notify_customer helper
Stephen Paul Weber created
8575f64
Fix for em-pg-client and latest pg gem
Stephen Paul Weber created
84b4e76
Minitest 5.16 contains a breaking change
See: https://github.com/minitest/minitest/issues/912
Stephen Paul Weber created
c2b0584
Update to latest blather upstream
Which has merged our changes
Stephen Paul Weber created
ff4d42f
notify_customer helper
Stephen Paul Weber created
6c9e479
Switch TTS OGM from vcard-temp to vcard4 PEP
Stephen Paul Weber created
a5300d6
hotfix
Stephen Paul Weber created
da80d0c
Throttle notification processing to prevent starvation
Stephen Paul Weber created
d0569f4
Do not catchup low-balance notifications for expired customers
Makes the number of users to do on startup much smaller and slower-growing. Expired users have been told about their low balance quite a bit already, and will be notified by billing cronjob etc from here out.
Stephen Paul Weber created
07aca05
Optional alternate transcription with rev.ai
The bitfield bit 1 was used by a different project (sgx-catapult, see:
https://gitlab.com/ossguy/sgx-catapult/-/commit/459d7d1dfe208db1708f1d648b82b38c002ad35a).
This other project no longer uses the bit, and in fact that whole project is
dead and gone, but if you previously ran that project against the same redis
that you now run this project against then please make sure you have zeroed-out
that bit first.
You can verify using this script:
redis = Redis.new
redis.keys("catapult_settings_flags-*").each do |k|
p redis.getbit(k, 1)
end
Stephen Paul Weber created
ab95e3b
Bad XML parser produces hash for one element, array for >1
Stephen Paul Weber created
0e62b91
Empty URI is invalid
Stephen Paul Weber created
d5ca7cf
Fix tests for sip account using APIError
Stephen Paul Weber created
2f5450c
Amount needs to be a number to check it
Stephen Paul Weber created
7474137
Add to_s for Expired
Stephen Paul Weber created
1a0e03a
Extract response_status type errors
Stephen Paul Weber created
0cca353
Don't bother looking for nothing
Stephen Paul Weber created
cd3111b
Merge branch 'snikket'
* snikket: Initial bare-bones admin command for launching a snikket instance
Stephen Paul Weber created
b31d693
Merge branch 'limit-credit-card-amount'
* limit-credit-card-amount: Limit size of credit card transaction by trust level
Stephen Paul Weber created
3a71f5f
Limit size of credit card transaction by trust level
Stephen Paul Weber created
a0ebeca
Merge branch 'limit-top-up-take-2'
* limit-top-up-take-2: Only one credit card transaction per customer per day
Stephen Paul Weber created
ecd2752
Only one credit card transaction per customer per day
Stephen Paul Weber created
92ed217
Initial bare-bones admin command for launching a snikket instance
Stephen Paul Weber created
c2b986f
Fix test broken by hotfix
Stephen Paul Weber created
c4fc3de
Revert "Merge branch 'limit-top-up-freq'"
This reverts commit 7a28753d7df5d7d6f5f890d302634b1bdbd25f73, reversing changes made to e4ec9b8eb368ed0997887ebd99f8c79982640d20.
Stephen Paul Weber created
7a28753
Merge branch 'limit-top-up-freq'
* limit-top-up-freq: Only allow one credit card transaction per customer per day
Stephen Paul Weber created
e4ec9b8
Move between accounts requires a sip peer id
Stephen Paul Weber created
e412993
Update iris patch for new gem version
Stephen Paul Weber created
92bd0c6
EmptyRepo can wrap another to allow mutation
Stephen Paul Weber created
917096e
Only allow one credit card transaction per customer per day
Stephen Paul Weber created
97df926
Merge branch 'cancel-account'
* cancel-account: Admin command to cancel customer Move Customer factory/extractor to Customer
Stephen Paul Weber created
051be0a
Admin command to cancel customer
Notify customer Deregister from SGX Deregister from Cheogram Disconnect from Bandwidth If on special list, move intead of disconnect
Stephen Paul Weber created
4e51ed4
Move Customer factory/extractor to Customer
The repo's job is to get the data, constructing the object can be a factory's job.
Stephen Paul Weber created
9440485
Merge branch 'more-admin-info'
* more-admin-info: Test Admin Info with Numbers Refetch Customer on Repeated Customer Info Calls Trust Level in Customer Info Show Callability State in Customer Info PromiseHash No Settled Transactions is 0, not Null
Stephen Paul Weber created
84c77d8
Test Admin Info with Numbers
My current two AdminInfo tests have unregistered customers because it's easier, but it means that some parts of the logic don't get tested. This one digs a bit deeper to test this part of the forms, but it requires injecting a repo
Christopher Vollick created
ebd6fcc
Refetch Customer on Repeated Customer Info Calls
This means if I fetch a user, make a change (add a transaction, set their trust level, etc), I can re-run info from the menu to get the same user with up-to-date info, so you can see the thing I just did reflected back to me.
Christopher Vollick created
8041a50
Trust Level in Customer Info
We have this thing, so we should probably be able to see it
Christopher Vollick created
dbf8df7
Show Callability State in Customer Info
This shows relatively easily which class a given user finds themselves in. Whether they can't call because they have no balance, or if they have lots of room, or if they're being asked. Hopefully this will make it easier to tell at a glance if a calling issue is due to a few things.
Christopher Vollick created
fd7951d
PromiseHash
Here in info I'm doing a lot of this pattern:
EMPromise.all([one, two three]).then { |one, two, three|
new(one: one, two: two, three: three)
}
Which felt really noisy for what is a pretty logical operation.
So now I can keep the keys and values together and do:
PromiseHash.all(one: one, two: two, three:three).then(&method(:new))
It's smaller, but more importantly it's more meaningful to me.
It keeps the declaration of the meaning together with the sourcing of
the value.
And because it uses EMPromise.all in the guts it's not a problem if some
of the keys are not promises.
Easy-peasy!
Christopher Vollick created
5f30fd7
No Settled Transactions is 0, not Null
Unexpectedly this doesn't return either no columns or a column with a value of 0, but instead a column with no value...
Christopher Vollick created
c3f3220
Merge branch 'message-limits'
* message-limits: Block outgoing messages when expired Contacting support is not billable Use TrustLevel to determine daily quota Refactor message limits, change to 500/day
Stephen Paul Weber created
5dfee34
Block outgoing messages when expired
Stephen Paul Weber created
0925ae7
Contacting support is not billable
Stephen Paul Weber created
94cef4e
Use TrustLevel to determine daily quota
Stephen Paul Weber created