Seit der App-Version 1.75.2 und der AIDL-Bibliothek 1.28 ist es möglich, sich über die app2app-API direkt von Ihrem System aus bei der App an- und abzumelden. Es ist auch möglich, das Terminal zu entsperren, wenn es bereits auf einem anderen Gerät in Gebrauch war.
Anmeldung bei der App
Anfrage
Die Eingabewerte sind Parameter, die als json in LoginEntity enthalten sind:
Obligatorische Attribute:
-
- Nutzername: E-Mail zur Anmeldung bei GP TOM
- PasswortPasswort: Passwort für den Benutzer der GP TOM-Anwendung
- terminalIdTID/ Terminal-ID
Optionale Attribute:
- authCodeAuthentifizierungscode: Authentifizierungscode, der zur Freigabe der belegten TID verwendet wird
void login(String username, String password, String terminalId)
LoginEntity(
/* username = */ username,
/* Passwort = */ Passwort,
/* terminalId = */ terminalId,
/* authCode = */ authCode
)
Antwort - Staaten
In der nachstehenden Tabelle sind die Status aufgeführt, die Sie erhalten können. Ein erfolgreicher Status ist gegeben, wenn USER_LOGGED_IN oder TID_ASSIGNED_AND_LOGGED_IN.
Falls Sie einen Statuscode erhalten TID_FREIGABE_ANFORDERUNG, müssen Sie die Login-API erneut aufrufen und dieses Mal den Parameter authCode, die automatisch an Ihre E-Mail gesendet wird. Das System gibt dann den Status zurück TID_ASSIGNED_AND_LOGGED_IN - Das System weist dem Benutzer eine TID zu und meldet ihn an.
Die übrigen Zustände zeigen den Fehlerzustand und die Fehlerursache an.
Wenn der Status als Teil der Anmeldung zurückgegeben wird PASSWORD_CHANGE_REQUIRED, Dies ist die erste Anmeldung, bei der Sie zunächst Ihr Passwort ändern müssen.
Erstmalige Anmeldung bei der Anwendung mit Passwortänderung
Wenn Sie einen Status erhalten PASSWORD_CHANGE_REQUIRED, ist dies die erste Anmeldung des Benutzers, und es muss ein neues Passwort festgelegt werden. Das neue Passwort wird in zwei Schritten festgelegt.
void changePassword (String oldPass, String newPass, String authCode, boolean validationOnly)
Im ersten Schritt werden die Attribute in der Anfrage ausgefüllt:
- alterPass - anfängliches Benutzerpasswort
- newPass - neues Benutzerpasswort
- authCode - nichtig
- validationOnly - richtig
Dadurch wird ein Autorisierungscode erzeugt, der an die E-Mail gesendet wird. Im Rahmen dieses Schritts wird der Status an Sie zurückgegeben PASSWORT_ANHAENGIG_BESTAETIGUNG.
Der Berechtigungscode muss im zweiten Schritt verwendet werden, in dem die Attribute wie folgt ausgefüllt werden:
- alterPass - anfängliches Benutzerpasswort
- newPass - neues Benutzerpasswort
- authCode - Code an Ihre E-Mail geschickt
- validationOnly - falsch
Wenn der Validierungscode korrekt ist, wird der Status an Sie zurückgegeben PASSWORT_GEÄNDERT. Nun ist das Passwort des Benutzers geändert worden und Sie können ihn bei der Anwendung anmelden.
Abmelden von der App
Innerhalb der app2app API ist es auch möglich, einen Benutzer über einen Endpunkt von einer ausgewählten TID abzumelden.
void logout()
Nach erfolgreicher Abmeldung wird Ihr Status an Sie zurückgegeben BENUTZER_ABGEMELDET_AUS. Wenn die Abmeldung zu einem Fehler führt, wird der Status zurückgegeben LOGOUT_FAILED.
Beispiele für die Verwendung
Anmeldung
val intent = Intent(„com.globalpayments.atom.BIND_TO_LOGIN_SERVICE“) context.bindService(intent, connection, Context.BIND_AUTO_CREATE)
service?.registerCallback(callback)
val loginEntity = LoginEntity(
/* username = */ username,
/* Passwort = */ Passwort,
/* terminalId = */ terminalId,
/* authCode = */ authCode
)
service?.login(Gson().toJson(loginEntity))
Passwort ändern
// Schritt 1 - Validierung (Anforderungscode)
val changePasswordValidationEntity = ChangePasswordEntity(
/* oldPass = */ currentPassword,
/* newPass = */ newPassword,
/* authCode = */ null,
/* validationOnly = */ true,
)
service?.changePassword(Gson().toJson(changePasswordValidationEntity))
// Schritt 2 - neues Passwort mit Code anwenden
val changePasswordEntity = ChangePasswordEntity(
/* oldPass = */ currentPassword,
/* newPass = */ newPassword,
/* authCode = */ authCode,
/* validationOnly = */ false,
)
service?.changePassword(Gson().toJson(changePasswordEntity))
Abmeldung
service?.logout()
Status-Codes
DE: Benutzer erfolgreich eingeloggt.
DE: Benutzer erfolgreich abgemeldet.
DE: Login-Versuch fehlgeschlagen.
DE: Abmeldeversuch fehlgeschlagen.
DE: Ungültiger Benutzername oder Passwort.
DE: Fehlender oder ungültiger Parameter.
DE: Die Terminal-ID ist nicht mit diesem Benutzer verknüpft.
DE: Eine andere TID/Benutzer ist auf diesem Gerät aktiv.
DE:Terminal erfolgreich zugewiesen und Benutzer eingeloggt.
DE: Terminal ID nicht gefunden.
EN: Terminal ID ist inaktiv oder deaktiviert.
DE: Kein Terminal für diese Sitzung ausgewählt.
DE: Wenn die Terminal-ID bereits von einer anderen Person belegt ist und kein Autorisierungscode angegeben wurde, fordert der Dienst einen Autorisierungscode zur Freigabe der TID an.
DE: Es wurde ein falscher authCode für die TID-Freigabe angegeben.
DE: Der Benutzer muss sein Passwort vor der Anmeldung ändern.
DE: Bestätigungscode für Passwortänderung gesendet.
DE: Passwort erfolgreich geändert.
DE: Versuch der Passwortänderung fehlgeschlagen.
