Después de configurar los parámetros correctos e inicializar XpressPlug, todas las funciones disponibles están listas para usarse e interactuar con el SDK.
Aviso
Solo inicializa XpressPlug una vez por sesión, preferentemente durante el inicio de la aplicación o en la etapa más temprana posible. No podrás ejecutar ningún punto de entrada hasta que se inicialice XpressPlug.
Puedes interactuar con XpressPlug y llamar a los puntos de entrada. Estos se usan para conectarse con las funcionalidades de Veritran, como los procesos o las transacciones.
Los puntos de entrada pueden ser visuales, como invocar una pantalla que abre la cámara del dispositivo para tomar una fotografía, o no visuales, como la validación de un inicio de sesión. Para interactuar con estos puntos de entrada, ingresa la siguiente sintaxis: Para interactuar con estos puntos de entrada, ingresa la sintaxis a continuación, donde:
EntryPointName: String para el nombre del punto de entrada.
Parameters: Parámetros de entrada a utilizar, siguiendo el formato ([String,String]).
Delegate: Instancia que implementa el XpressPlugDelegate.
viewController: ViewController que invocará la vista de XpressPlug.
@objc public class XpressPlugSDK: NSObject {
@objc public static func run(
_ entryPointName: String,
withParameters parameters: [String: String]?,
andDelegate delegate: XpressPlugDelegate,
andViewController viewController: UIViewController
)
} XpressPlugModule.callEntryPoint (entryPointName, inputParameters, outputKeys);
Nota
El equipo de Veritran proporcionará los nombres de los puntos de entrada y sus parámetros.
En el siguiente ejemplo, el punto de entrada se llama I_DOCU_SDK y sus parámetros de entrada incluyen un mapa con un nombre de usuario de tipo string. Las claves definidas como claves de salida son "errorCode" y "age". Como resultado, la función devuelve un mapa con el formato <llave, Valor> que contiene valores previamente establecidos en el array outputKeys. Ve el ejemplo a continuación para aprender cómo llamar a un punto de entrada:
@IBAction func onClick(_: Any) {
print(“Calling XpressPlugModule EntryPoint”)
XpressPlugSDK.run(
" I_DOCU_SDK ", withParameters: [" userName ": "Veritran"], andDelegate: self, andViewController: self)
}
Luego, usa el código a continuación para implementar XpressPlugDelegate:
//MARK: XpressPlug Delegate
extension ViewController: XpressPlugDelegate {
func onError(
_ viewController: UIViewController, errorId: Int32, message: String, entryPoint: String?
) {
print("XpressPlugModule EntryPoint Result errorId :\(errorId)")
}
func onUpdateConfigurationRequired(_ viewController: UIViewController, entryPoint: String?) {}
func onXpressPlugNeedsUpdate(_ viewController: UIViewController, entryPoint: String?) {}
func onClose(_ viewController: UIViewController, entryPoint: String?, result: OutboundParameters)
{
let age = result.get('age')
let statusCode = result.get('statusCode')
print("XpressPlugModule EntryPoint Result-- Age: \(age), StatusCode: \(statusCode)")
}
}
Consulta el código y la tabla a continuación para ver un ejemplo de posibles resultados del punto de entrada:
func onMessage(_ viewController: UIViewController, entryPoint: String?, command: String, result:
XPOutboundParameters) {
}
func onError(_ viewController: UIViewController, entryPoint: String?) {
}
func onUpdateConfigurationRequired(_ viewController: UIViewController, entryPoint: String?) {
}
func onUpdateSdkRequired(_ viewController: UIViewController, entryPoint: String?) {
}
func onClose(_ viewController: UIViewController, entryPoint: String?, result: XPOutboundParameters) {
}
onMessage | Devuelve el estado de XpressPlug al delegado. |
onException | Se ejecuta cuando se produce un error. |
onUpdateConfigurationRequired | Aparece cuando se debe actualizar la configuración. |
onUpdateSdkRequired | Aparece cuando se debe actualizar el SDK. |
onClose | Muestra el resultado obtenido después de ejecutar los puntos de entrada. Recibe un diccionario con parámetros de salida como resultado. |