def perform_task(reactor): agent = Agent(reactor) http = HTTPClient(agent) d = http.put(url, auth=(admin, passwd)) d.addCallback(check_created) d.addCallback(json_content) d.addCallback(create_design_doc, http, scheme, host, port, db, admin, passwd) d.addCallback(report_status) d.addCallback(json_content) #d.addCallback(print_result) d.addErrback(log_error) d.addBoth(stop, reactor) return d
def handle_outbound_message(self, message): headers = { 'Content-Type': 'application/json; charset=utf-8', } headers.update(self.get_auth_headers()) params = { 'to_addr': message['to_addr'], 'content': message['content'], 'message_id': message['message_id'], 'in_reply_to': message['in_reply_to'], 'session_event': message['session_event'] } if 'helper_metadata' in message: params['helper_metadata'] = message['helper_metadata'] http_client = HTTPClient(self.agent_factory()) resp = yield http_client.put(self.get_url('messages.json'), data=json.dumps(params).encode('utf-8'), headers=headers) resp_body = yield resp.content() if resp.code != http.OK: log.warning('Unexpected status code: %s, body: %s' % (resp.code, resp_body)) self.update_status( status='down', component='submitted-to-vumi-go', type='bad_request', message='Message submission rejected by Vumi Go') yield self.publish_nack(message['message_id'], reason='Unexpected status code: %s' % (resp.code, )) return remote_message = json.loads(resp_body) yield self.map_message_id(remote_message['message_id'], message['message_id']) self.update_status(status='ok', component='submitted-to-vumi-go', type='good_request', message='Message accepted by Vumi Go') yield self.publish_ack(user_message_id=message['message_id'], sent_message_id=remote_message['message_id'])
def handle_outbound_message(self, message): headers = { 'Content-Type': 'application/json; charset=utf-8', } headers.update(self.get_auth_headers()) params = { 'to_addr': message['to_addr'], 'content': message['content'], 'message_id': message['message_id'], 'in_reply_to': message['in_reply_to'], 'session_event': message['session_event'] } if 'helper_metadata' in message: params['helper_metadata'] = message['helper_metadata'] http_client = HTTPClient(self.agent_factory()) resp = yield http_client.put( self.get_url('messages.json'), data=json.dumps(params).encode('utf-8'), headers=headers) resp_body = yield resp.content() if resp.code != http.OK: log.warning('Unexpected status code: %s, body: %s' % ( resp.code, resp_body)) self.update_status( status='down', component='submitted-to-vumi-go', type='bad_request', message='Message submission rejected by Vumi Go') yield self.publish_nack(message['message_id'], reason='Unexpected status code: %s' % ( resp.code,)) return remote_message = json.loads(resp_body) yield self.map_message_id( remote_message['message_id'], message['message_id']) self.update_status( status='ok', component='submitted-to-vumi-go', type='good_request', message='Message accepted by Vumi Go') yield self.publish_ack(user_message_id=message['message_id'], sent_message_id=remote_message['message_id'])