Od verzije aplikacije 1.75.2 i verzije AIDL biblioteke 1.28 nadalje možete koristiti app2app API za prijavu ili odjavu iz aplikacije izravno iz sustava. Također možete osloboditi terminal ako je već u upotrebi na drugom uređaju.
Prijavite se u aplikaciju
Zahtjev
Ulazne vrijednosti su parametri sadržani kao JSON u LoginEntity:
Potrebne atribute:
-
- korisničko ime: adresa e-pošte za prijavu u aplikaciju GP TOM
- lozinka: lozinka za navedenog korisnika za aplikaciju GP TOM
- identifikator terminala: TID/ identifikator terminala
Izborne atribute:
- kôd za autorizaciju: Autentički kod koji se koristi za oslobađanje zauzetog TID-a
void login(String username, String password, String terminalId)
Entitet za prijavu(
/* korisničko ime = */ korisničko ime,
/* lozinka = */ lozinka,
/* terminalId = */ terminalId,
/* authCode = */ authCode
)
Odgovor – statusi
Tablica u nastavku navodi statusne kodove koje možete primiti. Uspješan status definira se kao Korisnik je prijavljen ili TID_DOODIJELJENO_I_PRIJAVLJENO.
Ako primite statusni kod Zahtjev za oslobađanje TID-a, morate ponovno pozvati API za prijavu i ovaj put ispuniti parametar kôd za autorizaciju, koji se automatski šalje na vašu e-poštu. Sustav će potom vratiti status TID_DOODIJELJENO_I_PRIJAVLJENO – Sustav je korisniku dodijelio TID i prijavio ga.
Preostali statusni kodovi označavaju stanje pogreške i uzrok pogreške.
Ako se tijekom prijave vrati sljedeći status Potrebna promjena lozinke, Ovo je vaš prvi prijem, pa ćete prvo morati promijeniti lozinku.
Prvo prijavljivanje u aplikaciju uz promjenu lozinke
Ako primite status Potrebna promjena lozinke, Ovo je prvi prijem korisnika, stoga je potrebno postaviti novu lozinku. Nova lozinka se postavlja u dva koraka.
void changePassword (String oldPass, String newPass, String authCode, boolean validationOnly)
U prvom koraku u zahtjevu se popunjavaju sljedeći atributi:
- stari lozinka – početna lozinka korisnika
- nova lozinka – lozinka novog korisnika
- kôd za autorizaciju – nevažeće
- samo validacija – istina
Ovo će generirati kod za autorizaciju, koji se šalje na vašu e-mail adresu. Kao dio ovog koraka, status vam se vraća. LOZINKA_ČEKA_POTVRDU.
Kod autorizacije mora se unijeti u drugom koraku, gdje se polja popunjavaju na sljedeći način:
- stari lozinka – početna lozinka korisnika
- nova lozinka – lozinka novog korisnika
- kôd za autorizaciju – kod poslan kod vašoj e-pošti
- samo validacija – lažan
Ako je kod za provjeru ispravan, primit ćete poruku o statusu. LOZINKA_PROMIJENJENA. U ovom trenutku korisnikova lozinka je promijenjena i možete ga prijaviti u aplikaciju.
Odjavi se iz aplikacije
Unutar app2app API-ja također je moguće odjaviti korisnika s odabranog TID-a putem krajnje točke.
void prijavljanje
Nakon što se uspješno odjavite, vaš će status biti vraćen. KORISNIK_ODJAVLJEN. Ako operacija odjave ne uspije, vraća se status Prijava je neuspjela.
Primjeri upotrebe
Prijava
val intent = Intent(„com.globalpayments.atom.BIND_TO_LOGIN_SERVICE“) context.bindService(intent, connection, (Kontekst.BIND_AUTO_CREATE)
```
service?.registerCallback(callback)
val loginEntity = LoginEntity(
/* korisničko ime = */ korisničko ime,
/* lozinka = */ lozinka,
/* terminalId = */ terminalId,
/* authCode = */ authCode
)
service?.login(Gson().toJson(loginEntity))
```
Promijeni lozinku
// Korak 1 – validacija (kod zahtjeva)
val changePasswordValidationEntity = ChangePasswordEntity(
/* oldPass = */ currentPassword,
/* newPass = */ newPassword,
/* authCode = */ null,
/* validationOnly = */ true,
)
service?.changePassword(Gson().toJson(changePasswordValidationEntity))
// Korak 2 – primijenite novu lozinku pomoću koda
val changePasswordEntity = ChangePasswordEntity(
/* oldPass = */ currentPassword,
/* newPass = */ newPassword,
/* authCode = */ authCode,
/* validationOnly = */ false,
)
service?.changePassword(Gson().toJson(changePasswordEntity))
Odjavi se
usluga?.odjavi()
Kodovi statusa
EN: Korisnik se uspješno prijavio.
EN: Korisnik se uspješno odjavio.
EN: Pokušaj prijave nije uspio.
EN: Pokušaj odjave nije uspio.
EN: Neispravno korisničko ime ili lozinka.
EN: Nedostaje ili neispravan parametar.
EN: ID terminala nije povezan s ovim korisnikom.
Još jedan TID/korisnik je aktivan na ovom uređaju.
EN:Terminal uspješno dodijeljen i korisnik je prijavljen.
EN: ID terminala nije pronađen.
EN: ID terminala je neaktivan ili onemogućen.
Za ovu sesiju nije odabran nijedan terminal.
Ako je Terminal ID već u upotrebi od strane nekog drugog i nije dostavljen kod za autorizaciju, usluga će zatražiti kod za autorizaciju kako bi oslobodila TID.
EN: Za izdavanje TID-a naveden je netočan authCode.
EN: Korisnici moraju promijeniti svoju lozinku prije prijave.
EN: Potvrdni kod je poslan za promjenu vaše lozinke.
EN: Lozinka je uspješno promijenjena.
EN: Pokušaj promjene lozinke nije uspio.
