- let first_hops = channel_manager.list_usable_channels();
- let payer_pubkey = channel_manager.get_our_node_id();
-
- let mut payee = Payee::from_node_id(payee_pubkey).with_route_hints(route_hints);
- if let Some(features) = payee_features {
- payee = payee.with_features(features);
- }
- let params =
- RouteParameters { payee, final_value_msat: amt_msat, final_cltv_expiry_delta: final_cltv };
-
- let route = router::find_route(
- &payer_pubkey,
- ¶ms,
- &network_graph,
- Some(&first_hops.iter().collect::<Vec<_>>()),
- logger,
- &Scorer::default(),
- );
- if let Err(e) = route {
- println!("ERROR: failed to find route: {}", e.err);
- return;
- }
- let status = match channel_manager.send_payment(&route.unwrap(), payment_hash, &payment_secret)
- {