@@ -43,19 +43,17 @@ public class WebhookController {
43
43
@ PostMapping ("/viber/bot/webhook" )
44
44
public ResponseEntity <?> webhook (@ RequestBody String callback ) {
45
45
String event = getEventValueToCallback (callback );
46
-
46
+ if (getTextToMessage (callback ).equals ("retry" ))
47
+ event = CONVERSATION_STARTED ;
47
48
if (event .equals (CONVERSATION_STARTED )) {
48
- String accountId = getUserId (callback );
49
- tokenConfig .generateToken (accountId );
49
+ generateToken (callback );
50
50
return sendWelcomeMessage .execute ();
51
51
}
52
52
if (event .equals (MESSAGE )) {
53
53
String accountId = getSenderId (callback );
54
54
boolean isValidToken = tokenConfig .validateToken (accountId );
55
- boolean isRetry = validateRetry (callback );
56
- if (isValidToken || isRetry ) {
57
- if (!isValidToken ) tokenConfig .generateToken (accountId );
58
- return sendWelcomeMessage .execute ();
55
+ if (isValidToken ) {
56
+ return sendResponseByTextInMessage (callback );
59
57
}
60
58
else return sendInvalidTokenMessage .execute (accountId );
61
59
}
@@ -130,13 +128,9 @@ private static String getSenderId (String callback) {
130
128
private static boolean isTrackingDataValid (String trackingData ){
131
129
return trackingData .equals ("name" ) || trackingData .equals ("email" ) || trackingData .equals ("message" ) || trackingData .equals ("discount_code" );
132
130
}
133
-
134
- public boolean validateRetry (String callback ) {
135
- String string = new JSONObject (callback ).getJSONObject ("message" ).getString ("text" );
136
- if (string .equals ("retry" )) {
137
- return true ;
138
- }
139
- return false ;
131
+ private void generateToken (String callback ) {
132
+ String accountId = getUserId (callback );
133
+ tokenConfig .generateToken (accountId );
140
134
}
141
135
142
136
static class EventType {
0 commit comments