telegram.ext.JobQueue¶
-
class
telegram.ext.
JobQueue
(bot=None)¶ Bases:
object
This class allows you to periodically perform tasks with the bot.
-
_queue
¶ The queue that holds the Jobs.
Type: PriorityQueue
-
bot
¶ The bot instance that should be passed to the jobs. DEPRECATED: Use set_dispatcher instead.
Type: telegram.Bot
-
get_jobs_by_name
(name)¶ Returns a tuple of jobs with the given name that are currently in the
JobQueue
-
jobs
()¶ Returns a tuple of all jobs that are currently in the
JobQueue
.
-
run_daily
(callback, time, days=(0, 1, 2, 3, 4, 5, 6), context=None, name=None)¶ Creates a new
Job
that runs on a daily basis and adds it to the queue.Parameters: - callback (
callable
) – The callback function that should be executed by the new job. It should takebot, job
as parameters, wherejob
is thetelegram.ext.Job
instance. It can be used to access itsJob.context
or change it to a repeating job. - time (
datetime.time
) – Time of day at which the job should run. - days (Tuple[
int
], optional) – Defines on which days of the week the job should run. Defaults toEVERY_DAY
- context (
object
, optional) – Additional data needed for the callback function. Can be accessed throughjob.context
in the callback. Defaults toNone
. - name (
str
, optional) – The name of the new job. Defaults tocallback.__name__
.
Returns: The new
Job
instance that has been added to the job queue.Return type: - callback (
-
run_once
(callback, when, context=None, name=None)¶ Creates a new
Job
that runs once and adds it to the queue.Parameters: - callback (
callable
) – The callback function that should be executed by the new job. It should takebot, job
as parameters, wherejob
is thetelegram.ext.Job
instance. It can be used to access itsjob.context
or change it to a repeating job. - when (
int
|float
|datetime.timedelta
|datetime.datetime
|datetime.time
) –Time in or at which the job should run. This parameter will be interpreted depending on its type.
int
orfloat
will be interpreted as “seconds from now” in which the job should run.datetime.timedelta
will be interpreted as “time from now” in which the job should run.datetime.datetime
will be interpreted as a specific date and time at which the job should run.datetime.time
will be interpreted as a specific time of day at which the job should run. This could be either today or, if the time has already passed, tomorrow.
- context (
object
, optional) – Additional data needed for the callback function. Can be accessed throughjob.context
in the callback. Defaults toNone
. - name (
str
, optional) – The name of the new job. Defaults tocallback.__name__
.
Returns: The new
Job
instance that has been added to the job queue.Return type: - callback (
-
run_repeating
(callback, interval, first=None, context=None, name=None)¶ Creates a new
Job
that runs at specified intervals and adds it to the queue.Parameters: - callback (
callable
) – The callback function that should be executed by the new job. It should takebot, job
as parameters, wherejob
is thetelegram.ext.Job
instance. It can be used to access itsJob.context
or change it to a repeating job. - interval (
int
|float
|datetime.timedelta
) – The interval in which the job will run. If it is anint
or afloat
, it will be interpreted as seconds. - first (
int
|float
|datetime.timedelta
|datetime.datetime
|datetime.time
, optional) –Time in or at which the job should run. This parameter will be interpreted depending on its type.
int
orfloat
will be interpreted as “seconds from now” in which the job should run.datetime.timedelta
will be interpreted as “time from now” in which the job should run.datetime.datetime
will be interpreted as a specific date and time at which the job should run.datetime.time
will be interpreted as a specific time of day at which the job should run. This could be either today or, if the time has already passed, tomorrow.
Defaults to
interval
- context (
object
, optional) – Additional data needed for the callback function. Can be accessed throughjob.context
in the callback. Defaults toNone
. - name (
str
, optional) – The name of the new job. Defaults tocallback.__name__
.
Returns: The new
Job
instance that has been added to the job queue.Return type: - callback (
-
start
()¶ Starts the job_queue thread.
-
stop
()¶ Stops the thread.
-
tick
()¶ Run all jobs that are due and re-enqueue them with their interval.
-