I have a plugin wich implementing new task
So plugin code look like:
public void InstallScheduleTask()
{
ScheduleTask data = new ScheduleTask { Enabled = true,
Name = _localizationService.GetResource("Plugins.Integration.PaymentImport.Taskname"),
Seconds = 3600,
StopOnError = false,
Type = "Nop.Plugin.Integration.PaymentImport.PaymentImportTask, Nop.Plugin.Integration.PaymentImport"
};
_scheduleTaskService.Insert(data);
}
public override void Install()
{
var corePlugin = _pluginFinder.GetPluginDescriptorBySystemName("Integration.ODBC");
if (corePlugin != null && corePlugin.Installed)
{
//locales
this.AddOrUpdatePluginLocaleResource("Plugins.Integration.PaymentImport.Taskname", "Импорт статусов заказов");
this.AddOrUpdatePluginLocaleResource("Plugins.Integration.PaymentImport.Taskname.Hint", "Загрузка статусов оплат по заказам из ERP.");
InstallScheduleTask();
base.Install();
}
}
And class with task looks like
class PaymentImportTask : ITask
{
public void execute()
{
}
}
So it works on my local machine fine even in a batch. But on production, after I install its plugins nothing happens. Its work only if u push button but not in a batch.