Custom Quartz.Net trigger - quartz.net

I would like to implement my own custom trigger. the main purpose of the trigger twice: on start date and end date (think of it as on/off switch, "on" state and start date and "off" state on end date).
What is best way to achieve that?
AbstractTrigger or implement ITrigger?
Implementing IScheduleBuilder is required?

When you start to wonder whether to implement your own trigger there's possibly something going to the wrong direction. Quartz has a rich set of triggers that should cater for various scheduling needs which are based on interval/reoccurrence rules.
Not fully understanding your use case, I'd just schedule two triggers for start and stop actions. You could parametrize the triggers to supply the operation mode via job data map (TurnOn, TurnOff). You easily have start action to run on times like 8:35 am, every Monday, Wednesday and Saturday and corresponding stop trigger say the given dates on 10 pm.

I created the custom trigger by extending AbstactTrigger and implementing ISchedulerBuilder specified to this trigger type.

Related

Integromat Scenario: One-shot module after iterating through a loop

I have created a scenario where I iterate through multiple modules with an array of data. This works fine.
After this completes, I want to run a module once before the scenario completes.
How do I add a module that won't get called in the loop?
There are few ways to achieve this,
Use Router to Create a new Route that will be triggered after the
first route is complete
Trigger new Scenario via Webhooks after you are done with the
scenario
If you are working with array, then using Array Aggregator or other
Aggregators will allow you to first complete the iteration and then
trigger the module you want to use
I am not sure exactly what you want to do after the iteration is complete, but setting the scenarios as displayed in the screenshot below should help you get started on this,
Using Router
For this you can create a router, the upper hand of the router is always executed first, so the iterator and other operations will be done there. After which, the next hand/route will be executed which will be the module you want to trigger at last.
However, If you want to pass some values from the first hand/route to the last one then you will need to set a variable and fetch it on the second route. See details here : https://www.integromat.com/en/help/converger
Using Aggregator Module
You can either use Array, Text or Numeric Aggregator to aggregate all the iteration operations and then trigger the module that you want to use at last.
As far as my knowledge goes, there is no Integromat default modules that can be configured before the scenario ends. We can leverage the Integromat API in future that is currently in development to do so.
I found a filter to be the most easy way of doing this. Essentially chekcing if this bundle position is equal to the total number of bundles!
If you're interested in doing something on the last iteration only, you can use a filter to check if the current bundle is equal to the total number of bundles
last bundle filter
They won't let me paste pics sigh

how to create Event which repeats every specific day

I do have a function like , On every thursday there is a show coming in my application and I want to provide add event functionality which will set event for every thursday for example next 5 years.
I know how to add Event but do not have idea how to add event for every thursday or a specific day.
Thanks your for your help.
Plenty of examples at https://www.rfc-editor.org/rfc/rfc5545#section-3.8.5.3
If unsure, you can always create such an event in your calendar client of choice and then export this event. Or you can go to http://jkbr.github.io/rrule/ and build it. For example http://jkbr.github.io/rrule/#/text/every%20week%20on%20Thursday%20until%20April%2017,%202019

Realtime timer that counts down time for ruby on rails app

Im in the need on some advise for a realtime serverside timer that would countdown from say 100 seconds. Reason for serverside timer is no tampering.
currently use delayed job but problem its not realtime i could mimic a timer by creatind job every second, but dirty solution
need to display time in view by getting timer value with ajax call to method that returns servertime on page. Know how to do this just to give idea. reload timer would still countdown correctly even on reload page.
Anyone could advise to get a realtime counter in rails app serverside? I would want to create one or more independant timers i can get a value from in railsapp.
Why don't you just create the record you need, but add a "don't open before" DateTime field you can check to see if it's okay to show it?
This sort of thing is trivial to do, and you can set a timer on the client to count-down in JavaScript, then reload the page with the final data at the appropriate time. If someone is impatient and reloads early, you can compute the number of seconds remaining before it can be shown using simple math:
time_left_in_seconds = record.show_at.to_i - Time.now.to_i
Then all you have to do is show a JavaScript timer for that number of seconds, then trigger a page refresh.

time compare in windows servuce

I had written one windows service in C#.NET which fires on every miniutes... I want to execute certain code(some logic) on every month on say xyz date.... this task shld repeted on every month on same date... So can any one tell me how to do this..? I mean to say the block of code which i will write shld get executed on same date of every month...
Deploy this as a scheduled task rather than a service.

RxSwift: Receive events immediately, unless the last event was processed within a certain interval

New to RxSwift / Reactivex. Basically what I'm trying to do is to make a server call whenever something happens, but make sure it's not done more often than every 10 seconds. Less often if possible.
For instance, whenever an event ("needs update") is generated I'd like to call the server immediately if more than 10 seconds have passed since my last call. If less time has passed I'd like to make the call on the 10 second mark from the last one. It doesn't matter how many events have been generated within these 10 seconds.
I looked at the description of throttle but it appears to starve if events happen very quickly, which isn't desirable.
How can I achieve this?
There's a proposed new operator for RxSwiftExt that would give you something you're looking for, I think. However, it doesn't exist yet. You might want to keep an eye on it, though.
https://github.com/RxSwiftCommunity/RxSwiftExt/issues/10

Resources