The following code will attempt to execute loadFromHttp() up to 5 times (maxAttempts), with each attempt delayed by as many seconds. If maxAttempts is surpassed, the Observable gives up.
// assume loadFromHttp() returns a Promise, which might fail.
Rx.Observable.from(loadFromHttp())
....