title: Saga scheduling without specifying scheduler address in MassTransit
body: <p>I am trying to use scheduler in MassTransit state machine saga without specifying the scheduler service address directly. </p>
  
  <p>I use <code>UseMessageScheduler</code> in the bus configuration and it works fine since I can do <code>context.Schedule</code> from inside my consumers.</p>
  
  <p>However, it does not work in sagas. When I try to do <code>.Schedule</code>, I get this error:</p>
  
  <blockquote>
    <p>A request timeout was specified but no message scheduler was specified or available</p>
  </blockquote>
  
  <p>I checked the MT code and I see this:</p>
  
  <pre><code>MessageSchedulerContext schedulerContext;
  if (_request.Settings.SchedulingServiceAddress != null)
  {
      ISendEndpoint scheduleEndpoint = await consumeContext.GetSendEndpoint(_request.Settings.SchedulingServiceAddress).ConfigureAwait(false);
  
      await scheduleEndpoint.ScheduleSend(consumeContext.ReceiveContext.InputAddress, expirationTime, message).ConfigureAwait(false);
  }
  else if (consumeContext.TryGetPayload(out schedulerContext))
      await schedulerContext.ScheduleSend(message, expirationTime, Pipe.Empty&lt;SendContext&gt;()).ConfigureAwait(false);
  else
      throw new ConfigurationException("A request timeout was specified but no message scheduler was specified or available");
  </code></pre>
  
  <p>So, there is actually a branch that should normally get the scheduler address from the configuration, but why doesn't it work?</p>