MT#19795 rtc change apiclient login realm

plus more verbose debug info

Change-Id: I2452274b0a05d4efdf6ddc6089d1c953180e22c7
changes/76/6876/7
Gerhard Jungwirth 10 years ago committed by Dominik Kukacka
parent 2010b14537
commit 5c5adb5b9a

@ -199,8 +199,11 @@ sub POST :Allow {
config => $c->config,
reseller_item => $reseller,
err_code => sub {
$c->log->warn(shift); return;
});
my ($msg, $debug) = @_;
$c->log->debug($debug) if $debug;
$c->log->warn($msg);
return;
});
} catch($e) {
$c->log->error("failed to create reseller: $e"); # TODO: user, message, trace, ...
$self->error($c, HTTP_INTERNAL_SERVER_ERROR, "Failed to create reseller.");

@ -171,9 +171,11 @@ sub POST :Allow {
subscriber_item => $subscriber_item,
resource => $resource,
err_code => sub {
my ($err) = @_;
$self->error($c, HTTP_UNPROCESSABLE_ENTITY, $err);
});
my ($msg, $debug) = @_;
$c->log->debug($debug) if $debug;
$self->error($c, HTTP_UNPROCESSABLE_ENTITY, $msg);
return;
});
last unless $session_item;
$guard->commit;

@ -137,8 +137,11 @@ sub update_reseller {
config => $c->config,
reseller_item => $reseller,
err_code => sub {
$c->log->warn(shift); return;
});
my ($msg, $debug) = @_;
$c->log->debug($debug) if $debug;
$c->log->warn($msg);
return;
});
# TODO: should we lock reseller admin logins if reseller gets terminated?
# or terminate all his customers and delete non-billing data?

@ -32,7 +32,10 @@ sub hal_from_item {
config => $c->config,
include_id => $include_id,
err_code => sub {
$c->log->warn(shift); return;
my ($msg, $debug) = @_;
$c->log->debug($debug) if $debug;
$c->log->warn($msg);
return;
});
} else {
}
@ -117,7 +120,10 @@ sub update_item {
config => $c->config,
reseller_item => $reseller,
err_code => sub {
$c->log->warn(shift); return;
my ($msg, $debug) = @_;
$c->log->debug($debug) if $debug;
$c->log->warn($msg);
return;
});
try {

@ -33,7 +33,10 @@ sub hal_from_item {
config => $c->config,
item => $item,
err_code => sub {
$c->log->warn(shift); return;
my ($msg, $debug) = @_;
$c->log->debug($debug) if $debug;
$c->log->warn($msg);
return;
});
if ($rtc_session) {
$resource->{rtc_browser_token} = $rtc_session->{data}{token};

@ -31,7 +31,7 @@ sub login {
my ( $self, $username, $password, $netloc ) = @_;
my $ua = $self->ua;
$netloc //= $self->host =~ s!^https?://(.*:[0-9]*)(/.*$|$)!$1!r;
$ua->credentials($netloc, "ComX", $username, $password);
$ua->credentials($netloc, "rtcengine", $username, $password);
my $resp = $ua->get($self->host . '/users');
$self->login_status( $self->_create_response($resp) );
return;
@ -248,7 +248,7 @@ sub _resolve_collection_fast {
'expand=true';
my $res = $ua->get($self->host . $rel_url);
my @result;
return {code => $res->code, response => $res} unless $res->code == 200;
return $self->_create_response($res) unless $res->code == 200;
my $collection = JSON::decode_json($res->content);
return {code => $res->code, response => $res,
error_detail => 'could not decode_json'} unless $collection;
@ -278,13 +278,18 @@ sub _strip_host {
sub _create_response {
my ($self, $res) = @_;
my $data;
my $debug;
if ($res->is_success && $res->content) {
$data = decode_json($res->content);
} else {
$debug = "RTC response: " . $res->decoded_content
. ", RTC request: " . $res->request->as_string;
}
return {
code => $res->code,
data => $data,
response => $res,
$debug ? (debug => $debug) : (),
};
}

@ -87,7 +87,7 @@ sub _create_rtc_user {
$config->{rtc}{host}.':'.$config->{rtc}{port});
if ($comx->login_status->{code} != 200) {
return unless &{$err_code}(
'Rtc Login failed. Check config settings.');
'Rtc Login failed. Check config settings. Status code: ' . $comx->login_status->{code}, $comx->login_status->{debug});
}
my $user = $comx->create_user(
$reseller_name . '@ngcp.com',
@ -95,7 +95,7 @@ sub _create_rtc_user {
);
if ($user->{code} != 201) {
return unless &{$err_code}(
'Creating rtc user failed. Error code: ' . $user->{code});
'Creating rtc user failed. Error code: ' . $user->{code}, $user->{debug});
}
# 3. create relation in our db
@ -111,7 +111,7 @@ sub _create_rtc_user {
);
if ($app->{code} != 201) {
return unless &{$err_code}(
'Creating rtc app failed. Error code: ' . $app->{code});
'Creating rtc app failed. Error code: ' . $app->{code}, $app->{debug});
}
# 5. create related networks
@ -130,7 +130,7 @@ sub _create_rtc_user {
);
if ($n_response->{code} != 201) {
return unless &{$err_code}(
'Creating rtc network failed. Error code: ' . $n_response->{code});
'Creating rtc network failed. Error code: ' . $n_response->{code}, $n_response->{debug});
}
}
return;
@ -152,7 +152,7 @@ sub _delete_rtc_user {
$config->{rtc}{host}.':'.$config->{rtc}{port});
if ($comx->login_status->{code} != 200) {
return unless &{$err_code}(
'Rtc Login failed. Check config settings.');
'Rtc Login failed. Check config settings. Status code: ' . $comx->login_status->{code}, $comx->login_status->{debug});
}
my $rtc_user = $reseller_item->rtc_user;
@ -168,7 +168,7 @@ sub _delete_rtc_user {
$rtc_user->delete;
} else {
return unless &{$err_code}(
'Deleting rtc user failed. Error code: ' . $delete_resp->{code});
'Deleting rtc user failed. Error code: ' . $delete_resp->{code}, $delete_resp->{debug});
}
return;
}
@ -240,7 +240,7 @@ sub modify_rtc_apps {
$config->{rtc}{host}.':'.$config->{rtc}{port});
if ($comx->login_status->{code} != 200) {
return unless &{$err_code}(
'Rtc Login failed. Check config settings.');
'Rtc Login failed. Check config settings. Status code: ' . $comx->login_status->{code}, $comx->login_status->{debug});
}
my (@deleted, @new);
@ -306,14 +306,14 @@ sub get_rtc_networks {
$config->{rtc}{host}.':'.$config->{rtc}{port});
if ($comx->login_status->{code} != 200) {
return unless &{$err_code}(
'Rtc Login failed. Check config settings.');
'Rtc Login failed. Check config settings. Status code: ' . $comx->login_status->{code}, $comx->login_status->{debug});
}
my $networks_resp = $comx->get_networks_by_user_id($rtc_user_id);
my $networks = $networks_resp->{data};
unless (defined $networks && 'ARRAY' eq ref $networks && @{ $networks }) {
return unless &{$err_code}(
'Fetching networks failed. Code: ' . $networks_resp->{code});
'Fetching networks failed. Code: ' . $networks_resp->{code}, $networks_resp->{debug});
}
my $res = [map {{
@ -382,7 +382,7 @@ sub modify_rtc_networks {
my $n_response = $comx->delete_network($nw->{id});
if ($n_response->{code} != 200) {
return unless &{$err_code}(
'Deleting rtc network failed. Error code: ' . $n_response->{code});
'Deleting rtc network failed. Error code: ' . $n_response->{code}, $n_response->{debug});
}
}
for my $nw (@new) {
@ -394,7 +394,7 @@ sub modify_rtc_networks {
);
if ($n_response->{code} != 201) {
return unless &{$err_code}(
'Creating rtc network failed. Error code: ' . $n_response->{code});
'Creating rtc network failed. Error code: ' . $n_response->{code}, $n_response->{debug});
}
}
return;
@ -504,7 +504,7 @@ sub _create_subscriber_rtc {
$config->{rtc}{host}.':'.$config->{rtc}{port});
if ($comx->login_status->{code} != 200) {
return unless &{$err_code}(
'Rtc Login failed. Check config settings.');
'Rtc Login failed. Check config settings. Status code: ' . $comx->login_status->{code}, $comx->login_status->{debug});
}
my $comx_apps = $comx->get_apps_by_user_id($rtc_user->rtc_user_id);
@ -522,7 +522,7 @@ sub _create_subscriber_rtc {
);
if ($session->{code} != 201) {
return unless &{$err_code}(
'Creating rtc session failed. Error code: ' . $session->{code});
'Creating rtc session failed. Error code: ' . $session->{code}, $session->{debug});
}
# # 3. create relation in our db
@ -573,7 +573,7 @@ sub _delete_subscriber_rtc {
# $config->{rtc}{host}.':'.$config->{rtc}{port});
# if ($comx->login_status->{code} != 200) {
# return unless &{$err_code}(
# 'Rtc Login failed. Check config settings.');
# 'Rtc Login failed. Check config settings. Status code: ' . $comx->login_status->{code}, $comx->login_status->{debug});
# }
# my $rtc_user = $reseller_item->rtc_user;
@ -626,7 +626,7 @@ sub create_rtc_session {
$config->{rtc}{host}.':'.$config->{rtc}{port});
if ($comx->login_status->{code} != 200) {
return unless &{$err_code}(
'Rtc Login failed. Check config settings.');
'Rtc Login failed. Check config settings. Status code: ' . $comx->login_status->{code}, $comx->login_status->{debug});
}
my $comx_apps = $comx->get_apps_by_user_id($rtc_user->rtc_user_id);
@ -653,7 +653,7 @@ sub create_rtc_session {
);
if ($session->{code} != 201) {
return unless &{$err_code}(
'Creating rtc session failed. Error code: ' . $session->{code});
'Creating rtc session failed. Error code: ' . $session->{code}, $session->{debug});
}
for my $n (@{ $comx_networks->{data} }) {
my $identifier;
@ -674,7 +674,7 @@ sub create_rtc_session {
);
if ($account->{code} != 201) {
return unless &{$err_code}(
"Creating rtc account ($n->{tag}) failed. Error code: " . $account->{code});
"Creating rtc account ($n->{tag}) failed. Error code: " . $account->{code}, $account->{debug});
}
}
@ -704,13 +704,13 @@ sub get_rtc_session {
$config->{rtc}{host}.':'.$config->{rtc}{port});
if ($comx->login_status->{code} != 200) {
return unless &{$err_code}(
'Rtc Login failed. Check config settings.');
'Rtc Login failed. Check config settings. Status code: ' . $comx->login_status->{code}, $comx->login_status->{debug});
}
my $session = $comx->get_session($item->rtc_session_id);
if ($session->{code} != 200) {
return unless &{$err_code}(
"Couldn't find session. Error code: " . $session->{code});
"Couldn't find session. Error code: " . $session->{code}, $session->{debug});
}
return $session;
}

Loading…
Cancel
Save