ymlam
9cf5ee355e
DailyClock thread given name. Add try to catch unexpected thread death.
1 jaar geleden
ymlam
dd51a14ea8
Remove obsolete comment.
1 jaar geleden
ymlam
bb665f8e67
Allow communication engines to deny resume by clock
1 jaar geleden
ymlam
45dafcbd73
Reset jobStatus to null on rescheduling a job.
This fixes bug of not decrementing activityAcount to 0
whenb encountering 'daily_limit_reachede'.
1 jaar geleden
ymlam
93d7d53439
Easier understandable algorithm for determining within operating hours.
1 jaar geleden
ymlam
c480c88ba9
Close window of missing clock action on a heavily loaded system.
The clock thread may not wake up during the daily pause
and daily resume minute, and when it does not, the corresponding
wall clock action will be missed.
The fix is in checkout the time of operations every time the
clock thread wakes up.
There is no longer need for the clock to wake up in the middle of
a wall clock minute. So we improved the user experience by waking
up this thread at the beginning of every minute.
1 jaar geleden
ymlam
5577211a22
report remaining job count, instead of 0, as ready when posting canceled broadcast status
2 jaren geleden
ymlam
fc6784f93a
No longer reqires data returned from posting to portal.
2 jaren geleden
ymlam
2b3295588b
Count active jobs only over dispatched jobs whose status is not final.
2 jaren geleden
ymlam
1952dce39c
Allow derived class to add resume conditions.
2 jaren geleden
ymlam
30e69b4aba
Fix bug of not terminating broadcast -- affects EmailEngine only
2 jaren geleden
ymlam
efc7f23d2b
Resume by clock only resumes if pause is by clock
2 jaren geleden
ymlam
940e276ab2
Updates to support Live Call 2, i.e. agent first
2 jaren geleden
ymlam
244f78b435
Fix bug of generating bad XML when launch_record_id is not supplied in request.
2 jaren geleden
ymlam
952d8acb7e
Relax requirement of launch_record_id in broaddast request.
There is no meaningful processing of launch_record_id, which
is really just a pass through back to portal.
2 jaren geleden
ymlam
fba1269d2d
Fix bug of missing trailing VoiceCall status updates to portal.
Reason is due to premature terminating postback threads because
the serviceActivityCount is decremented erreously when updating
intermediate job statuses with portal.
Fix is in classifying job status as final or non-final.
As it is, all JobStatus in CommEngine are final; however,
derived classes may have non-final JobStatus.
2 jaren geleden
ymlam
4ab8cd54d1
Fix bug of not terminating all service and postback threads at end of broadcast.
2 jaren geleden
ymlam
9055d74fc3
Fix bug of not updating activity count on exception
2 jaren geleden
ymlam
be2dea5835
Remove broadcast expire feature.
2 jaren geleden
ymlam
e5c0187f3c
Transmit ABORT reason when setting BroadcastState to ABORT
2 jaren geleden
ymlam
e4da5bf0c7
Fix bug of not posting the correct debit for voice calls.
Fixed by decrementing serviceActivityCount only by postJobStatus method.
Also jobs being scheduled are taken into considering when deciding
to advance broadcast state COMPLETED to ALLDONE.
2 jaren geleden
ymlam
f285c75523
Added CSV logging function to Broadcast.
CSV logger name as it appears in log4j.properties is "csv".
2 jaren geleden
ymlam
44e771a8f6
Allow a job to cause broadcast to abort at time posting
Achieved by adding the isBroadcastFatal method to Job class.
2 jaren geleden
ymlam
0364609e68
Re-declare enum JobStatus as an interface so it can be virtually extended by derived Engines
Thie allows for removal of entries from the original enum JobStatus that more
appropriately belong to derivation of CommEngine. Such data complicates
the management of the original JobStateus when adding new CommEngines.
These entries can be declared in a new enums implementing
the JobStatus interface, for each derived CommEngine.
2 jaren geleden
ymlam
f8ee1ad599
Complete backward compatibility which has a bug in commit 6bd4ca1af3
2 jaren geleden
ymlam
6bd4ca1af3
Backward compatible with portal not having daily_start/daily_stop times
2 jaren geleden
ymlam
2a802c659e
Fix bug of at times getting stuck at PAUSING state on reaching daily limit
3 jaren geleden
ymlam
2555d5e4e0
Sleep between postback IO exceptions
3 jaren geleden
ymlam
d2f9b87a34
Improved interaction between pause by operator and by clock
3 jaren geleden
ymlam
b26988bc59
Replace daily pause/resume with daily operating hours
3 jaren geleden
ymlam
128aba88ba
Allow BroadcastState transition from PAUSING to CANCELED
3 jaren geleden
ymlam
53bc932e97
Added ability for derived Broadcast class to add to configuration output.
3 jaren geleden
ymlam
f85acef9b3
Separated reschedule function out of postJobStatus() into its own rescheduleJob()
3 jaren geleden
ymlam
c29495bf26
Receive daily_pause and daily_resume in broadcast request
3 jaren geleden
ymlam
abf7b6700e
Better use of 'new JSONObject()'
3 jaren geleden
ymlam
9c8d6cab4d
API to configure daily clock
3 jaren geleden
ymlam
7c5e990de6
Fix bug of not sleeping according to calcaulated sleep time.
3 jaren geleden
ymlam
b4ed4d2f80
Add MSG_TOO_LONG JobStatus
3 jaren geleden
ymlam
1234de3189
Time of day clock based pause and resume.
Use reason field in Broadcast to record reason for pause, cancel etc.
3 jaren geleden
ymlam
b8d29b99d3
Added daily pause and resume feature.
Improved reponse text to pause and resume commands.
3 jaren geleden
ymlam
2b6ef161c1
User friendly response to PAUSE command.
3 jaren geleden
ymlam
053483a919
Fix bug of not stopping immediately on CANCEL while PAUSED.
The service threads do not terminate immediately, but, instead
each service thread picks up one more job before terminating,
causing servicing more jobs which are not reported back to portal.
3 jaren geleden
ymlam
7b4d88b9f8
Fix bug of sometimes not terminating broadcast when paused with large number of service threads.
This happens when all remaining jobs are being serviced by
service threads when PAUSE is initiated. Similarly fixed
for CANCEL.
3 jaren geleden
ymlam
81940e001e
Added more JObStatus to support SMS provider Bandwidth
3 jaren geleden
ymlam
4d95efe3e9
Add Auto Pause feature
3 jaren geleden
Yuk-Ming Lam
f8beed06e9
Convert successCount from int to AtomicInteger
3 jaren geleden
ymlam
28756a94d6
Better exception handling
4 jaren geleden
ymlam
580bed601f
Place readyQueue, scheduledJobs, serviceActivityCount under one single semaphore readyQueue.
4 jaren geleden
ymlam
253c78ab71
Add stateSemaphore to ensure modifications to state value is synchronized.
4 jaren geleden
ymlam
8fd8813afa
Add BroadcastState.ABORTING to fix bug of losing postbacks on abort.
4 jaren geleden