def setUp(self): self.backend1 = SQLTelerivetBackend( name='TELERIVET1', is_global=True, hq_api_id=SQLTelerivetBackend.get_api_id()) self.backend1.set_extra_fields(webhook_secret='abc') self.backend1.save() self.backend2 = SQLTelerivetBackend( name='TELERIVET2', is_global=True, hq_api_id=SQLTelerivetBackend.get_api_id()) self.backend2.set_extra_fields(webhook_secret='def') self.backend2.save()
def setUp(self): super(TelerivetLogCallTestCase, self).setUp() self.backend = SQLTelerivetBackend( name='MOBILE_BACKEND_TELERIVET', is_global=True, hq_api_id=SQLTelerivetBackend.get_api_id()) self.backend.set_extra_fields(webhook_secret='abc') self.backend.save()
def send_sample_sms(request, domain): request_token = request.POST.get('request_token') if not TelerivetSetupView.get_cached_webhook_secret(request_token): return { 'success': False, 'unexpected_error': TelerivetSetupView.unexpected_error, } outgoing_sms_form = TelerivetOutgoingSMSForm({ 'api_key': request.POST.get('api_key'), 'project_id': request.POST.get('project_id'), 'phone_id': request.POST.get('phone_id'), }) test_sms_form = TelerivetPhoneNumberForm({ 'test_phone_number': request.POST.get('test_phone_number'), }) # Be sure to call .is_valid() on both outgoing_sms_form_valid = outgoing_sms_form.is_valid() test_sms_form_valid = test_sms_form.is_valid() if not outgoing_sms_form_valid or not test_sms_form_valid: return json_response({ 'success': False, 'api_key_error': TelerivetSetupView.get_error_message(outgoing_sms_form, 'api_key'), 'project_id_error': TelerivetSetupView.get_error_message(outgoing_sms_form, 'project_id'), 'phone_id_error': TelerivetSetupView.get_error_message(outgoing_sms_form, 'phone_id'), 'test_phone_number_error': TelerivetSetupView.get_error_message(test_sms_form, 'test_phone_number'), }) tmp_backend = SQLTelerivetBackend() tmp_backend.set_extra_fields( api_key=outgoing_sms_form.cleaned_data.get('api_key'), project_id=outgoing_sms_form.cleaned_data.get('project_id'), phone_id=outgoing_sms_form.cleaned_data.get('phone_id'), ) sms = SMS(phone_number=clean_phone_number( test_sms_form.cleaned_data.get('test_phone_number')), text="This is a test SMS from CommCareHQ.") tmp_backend.send(sms) return json_response({ 'success': True, })
def setUp(self): self.backend = SQLTelerivetBackend( name='TELERIVET', is_global=True, hq_api_id=SQLTelerivetBackend.get_api_id()) self.backend.set_extra_fields( webhook_secret='The chamber of webhook secrets') self.backend.save() self.sms = SMS(phone_number='27845698785', text="Fame is fickle") self.sms.save()
def setUp(self): super(TestProcessMessageStatus, self).setUp() self.backend = SQLTelerivetBackend( name='TELERIVET', is_global=True, hq_api_id=SQLTelerivetBackend.get_api_id()) self.backend.set_extra_fields( webhook_secret='The chamber of webhook secrets') self.backend.save() self.sms = SMS( text='I am testy', custom_metadata={'case_id': '123'}, ) self.sms.save()
def create_backend(request, domain): webhook_secret = TelerivetSetupView.get_cached_webhook_secret( request.POST.get('request_token')) values = { 'name': request.POST.get('name'), 'description': _("My Telerivet Gateway"), 'api_key': request.POST.get('api_key'), 'project_id': request.POST.get('project_id'), 'phone_id': request.POST.get('phone_id'), 'webhook_secret': webhook_secret, } form = TelerivetBackendForm(values, domain=domain, backend_id=None) if form.is_valid(): with transaction.atomic(): backend = SQLTelerivetBackend( backend_type=SQLMobileBackend.SMS, inbound_api_key=webhook_secret, hq_api_id=SQLTelerivetBackend.get_api_id(), is_global=False, domain=domain, name=form.cleaned_data.get('name'), description=form.cleaned_data.get('description')) backend.set_extra_fields( api_key=form.cleaned_data.get('api_key'), project_id=form.cleaned_data.get('project_id'), phone_id=form.cleaned_data.get('phone_id'), webhook_secret=webhook_secret) phone_number = backend.get_phone_number_or_none() if phone_number: backend.description += ' {}'.format(phone_number) backend.reply_to_phone_number = phone_number backend.save() if request.POST.get( 'set_as_default') == FinalizeGatewaySetupForm.YES: SQLMobileBackendMapping.set_default_domain_backend( domain, backend) return json_response({'success': True}) name_error = TelerivetSetupView.get_error_message(form, 'name') return json_response({ 'success': False, 'name_error': name_error, 'unexpected_error': None if name_error else TelerivetSetupView.unexpected_error, })