Welcome to the
WalkMe Help Center
Please log in to continue
Please log in to continue
Los pasos de acción son un tipo de paso que resulta muy útil para los casos de uso de automatización. La capacidad de actuar en nombre de los usuarios finales mejora la productividad y acelera el tiempo para obtener valor para los usuarios de aplicaciones. Anteriormente, WalkMe Mobile admitía pasos de globos y banners, así como pasos de auto-tap. El primer tipo de paso de acción añadido es "Desplazamiento" y en el futuro se añadirán más tipos de acciones


| Tipo | Subtipo | Valor |
| Desplazarse | Callback | Tipo de elemento (por ejemplo, UILabel). |
A continuación se muestra una descripción de todos los pasos necesarios para implementar callbacks de Paso de Acción.
Para poder registrarte en los callbacks de campaña, primero implementa este protocolo:
/** * Interface definition for a callback to be invoked in Campaign actions. */@protocol WMCampaignInfoDelegate <NSObject>/** * Called after campaign was dismissed. * * @param campaignInfo The dismissed campaign info. */@optional- (void)campaignDidDismiss:(WMCampaignInfo *)campaignInfo;/** * Called right before the campaign is about to be shown (will not be called on Power Mode preview) * * @param campaignInfo The shown campaign info. */@optional- (void)campaignWillShow:(WMCampaignInfo *)campaignInfo;/** * Return a value for SWT Action step of type "Callback" * * @param type the action type (ex. scroll). * @param campaign The shown campaign info. * @param args array of values from the Value field on the console (comma separated values). */@optional- (void)campaign:(WMCampaignInfo *)campaign didPerformAction:(NSString *)actionType withArgs:(NSArray<NSString *> *)args andCompletion:(void (^)(__nullable id result))completion;@end |
public interface WMCampaignInfoListener { /** * Called right before the campaign is about to be shown (will not be called on Power Mode preview) * * @param campaignInfo The shown campaign info. */ void onCampaignPresented(WMCampaignInfo campaignInfo); /** * Called after campaign was dismissed. * * @param campaignInfo The dismissed campaign info. */ void onCampaignDismissed(WMCampaignInfo campaignInfo); /** * Called on action step * * @param campaignInfo The campaign info. * @param actionType The action type. * @param args String array of arguments, * @param completionStepListener The listener to receive the result. */ void onCampaignAction(WMCampaignInfo campaignInfo, String actionType, String[] args, WMCampaignActionListener completionStepListener);} |
Después de implementar el protocolo, regístrate en los eventos de callback de la campaña:
/** * Register a delegate to campaign events * *@param delegate The delegate * */+ (void)setCampaignInfoDelegate:(id<WMCampaignInfoDelegate>)delegate; |
/*** Register a listener to campaign events**@param campaignInfoListener The listener**/public static void setCampaignInfoListener(WMCampaignInfoListener campaignInfoListener) |
Por último, implementa el método de acción de la campaña para devolver el valor deseado para la acción:
- (void)campaign:(WMCampaignInfo *)campaign didPerformAction:(NSString *)actionType withArgs:(NSArray<NSString *> *)args andCompletion:(void (^)(id _Nullable))completion { if (args.firstObject) { NSLog(@"Value for action type: %@ with args: %@", type, args.firstObject); // Value for action type: scroll with args: ProductCardTypeClass } NSIndexPath *indexPath = [NSIndexPath indexPathForRow:4 inSection:1]; if (completion) { completion(indexPath);} |
@Overridepublic void onCampaignAction(WMCampaignInfo campaignInfo, String actionType, String[] args, ABBI.WMCampaignActionListener completionStepListener) { if (args != null && args.length > 0) { Integer index = null; // Calculate the index based on the provided args index = myCardIndexCalculator(); if (completionStepListener != null) { completionStepListener.onActionCompleted(index); } } else { if (completionStepListener != null) { completionStepListener.onActionCompleted(null); } }} |