title: Calling a promise multiple times with delay Bluebird.js
body: <p>Right now I have</p>
  
  <pre><code>getUserInfo = (data) =&gt; {
      console.log('Getting user info')
      return new Promise((resolve, reject) =&gt; {
          if (data === 1)
          return resolve('Hello World')
          resolve(getUserInfo(1))
      })
  }
  
  getUserInfo().then(data =&gt; console.log(data))
  </code></pre>
  
  <p>This will console.log
  <code>
  Getting user info
  Getting user info
  Hello World
  </code></p>
  
  <p>That's exactly what I want, calling a promise multiple times and then resolve. </p>
  
  <p>However I want to add a delay between promises so I would like to have:
  <code>
  Getting user Info
  Wait 1 second
  Getting user Info
  Hello World
  </code></p>
  
  <p>I want to use Promise.delay from bluebird. Any tip on how to go? </p>
  
  <p>I've tried</p>
  
  <pre><code>getUserInfo = (data) =&gt; {
      console.log('Getting user info')
      return new Promise.delay(500,(resolve, reject) =&gt; {
          if (data === 1)
          return resolve('Hello World')
          resolve(getUserInfo(1))
      })
  }
  </code></pre>
  
  <p>But as resolve data of the promise this returns Function:
  <code>
  Getting user info
  [Function]
  </code></p>
  
  <p>Thank you in advance!</p>