code: async def put(self, data, *, pri=None, ttl=None, ttr=None, delay=None):
          
          opts = {}
          if pri is not None:
              opts['pri'] = pri
  
          if ttl is not None:
              opts['ttl'] = ttl
  
          if ttr is not None:
              opts['ttr'] = ttr
  
          if delay is not None:
              opts['delay'] = delay
  
          args = (data, opts)
          res = await self.conn.call(self.__funcs['put'], args)
          return self._create_task(res.body)
docs: Puts data to the queue and returns a newly created Task
  
              :param data: Arbitrary task payload
              :param pri: Task priority (0 by default)
              :param ttl: Task time-to-live
              :param ttr: Task time-to-run
              :param delay: Task delay
              :return: Task instance