Skip to content

Commit

Permalink
Updated PING request to AVS procedure
Browse files Browse the repository at this point in the history
  • Loading branch information
nangsan committed Oct 28, 2017
1 parent acb0a24 commit e4e7f9b
Showing 1 changed file with 42 additions and 42 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,8 @@ public class DownChannelService extends Service {
private AlexaManager alexaManager;
private Call currentCall;
private AndroidSystemHandler handler;

private Handler runnableHandler;
private Runnable pingRunnable;

@Nullable
@Override
Expand All @@ -56,6 +57,44 @@ public void onCreate() {
alexaManager = AlexaManager.getInstance(this);
handler = AndroidSystemHandler.getInstance(this);

runnableHandler = new Handler(Looper.getMainLooper());
pingRunnable = new Runnable() {
@Override
public void run() {
TokenManager.getAccessToken(alexaManager.getAuthorizationManager().getAmazonAuthorizationManager(), DownChannelService.this, new TokenManager.TokenCallback() {
@Override
public void onSuccess(String token) {

Log.i(TAG, "Sending heartbeat");
final Request request = new Request.Builder()
.url(alexaManager.getPingUrl())
.get()
.addHeader("Authorization", "Bearer " + token)
.build();

ClientUtil.getTLS12OkHttpClient()
.newCall(request)
.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {

}

@Override
public void onResponse(Call call, Response response) throws IOException {
runnableHandler.postDelayed(pingRunnable, 4 * 60 * 1000);
}
});
}

@Override
public void onFailure(Throwable e) {

}
});
}
};

openDownChannel();

}
Expand All @@ -67,6 +106,7 @@ public void onDestroy() {
if(currentCall != null){
currentCall.cancel();
}
runnableHandler.removeCallbacks(pingRunnable);
}


Expand Down Expand Up @@ -97,7 +137,7 @@ public void onResponse(Call call, Response response) throws IOException {
@Override
public void success(AvsResponse result) {
handler.handleItems(result);
sendHeartbeat();
runnableHandler.post(pingRunnable);
}
});

Expand Down Expand Up @@ -133,44 +173,4 @@ public void onFailure(Throwable e) {
});
}

private void sendHeartbeat(){
TokenManager.getAccessToken(alexaManager.getAuthorizationManager().getAmazonAuthorizationManager(), DownChannelService.this, new TokenManager.TokenCallback() {
@Override
public void onSuccess(String token) {

Log.i(TAG, "Sending heartbeat");
final Request request = new Request.Builder()
.url(alexaManager.getPingUrl())
.get()
.addHeader("Authorization", "Bearer " + token)
.build();

ClientUtil.getTLS12OkHttpClient()
.newCall(request)
.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {

}

@Override
public void onResponse(Call call, Response response) throws IOException {

}
});

new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
@Override
public void run() {
sendHeartbeat();
}
}, 4 * 60 * 1000);
}

@Override
public void onFailure(Throwable e) {

}
});
}
}

0 comments on commit e4e7f9b

Please sign in to comment.