Handle invalid customer id
An invalid customer id is an error from braintree, so handle the error and
return an empty list of payment methods.
Refactor command list to use composition
Also rename buy credit to top up
Add btc_addresses to Customer
And use that in registration instead of implementing it inline
Command to get to the credit card settings page
Add plans and electrum structure to example
Reply to extdisco with sip server
Spec says we must reply to all IQs
So say feature-not-implemented if we haven't got it with some other handler.
Validate that amount of credit to buy is in valid range
Rename buy-credit to buy credit
When no plan, all plan attributes are nil
Merge branch 'conditionally-show-commands'
* conditionally-show-commands:
Only show buy credit option if customer has a plan and a credit card
Show commands conditionally (plus add voicemail record command)
Only show buy credit option if customer has a plan and a credit card
Show commands conditionally (plus add voicemail record command)
Refactor to a factory that allows commands to be shown conditionally, so that
the voicemail record command can only be shown if the customer has a forwarding
target set up.
Merge branch 'credit-card-bonus'
* credit-card-bonus:
Insert bonus when paying by credit card
Merge branch 'tel-search-temp'
* tel-search-temp:
No tel picker yet, so just go to the webpage
Use before filter to actually come before everything
Otherwise we go in hierarchy order and stanza comes last.
Merge branch 'passthrough-commands'
* passthrough-commands:
Pass through commands we know the SGX can handle
Pass everything from SGX to user, not just <message/>
Remove some of the noise from the command list
Insert bonus when paying by credit card