diff --git a/did_router/src/httapi.rs b/did_router/src/httapi.rs index f8f277f..3663185 100644 --- a/did_router/src/httapi.rs +++ b/did_router/src/httapi.rs @@ -10,7 +10,7 @@ pub fn url(did: Did) -> XMLElement { let target = did.target.unwrap(); bridge.add_attribute("application", "bridge"); - bridge.add_attribute("data", format!("sofia/internal/{}", target).as_str()); + bridge.add_attribute("data", format!("sofia/external/{}", target).as_str()); work.add_child(bridge).unwrap(); @@ -68,10 +68,6 @@ pub fn add_playback(work: &mut XMLElement ,file_path: &str) { let mut playback = XMLElement::new("playback"); playback.add_attribute("file", &file_path); work.add_child(playback).unwrap(); - - let mut hangup = XMLElement::new("execute"); - hangup.add_attribute("application", "hangup"); - work.add_child(hangup).unwrap(); } pub fn route_call(did: String) -> Vec { @@ -85,7 +81,7 @@ pub fn route_call(did: String) -> Vec { doc.add_attribute("type", "xml/freeswitch-httapi"); let params = XMLElement::new("params"); - let work = match d.target_type { + let mut work = match d.target_type { DidTargetType::Url => { url(d) }, @@ -106,6 +102,10 @@ pub fn route_call(did: String) -> Vec { } }; + let mut hangup = XMLElement::new("execute"); + hangup.add_attribute("application", "hangup"); + work.add_child(hangup).unwrap(); + doc.add_child(params).unwrap(); doc.add_child(work).unwrap();