Handle de-actived did correctly
This commit is contained in:
@@ -80,6 +80,7 @@ pub fn add_playback(work: &mut XMLElement ,file_path: &str) {
|
|||||||
|
|
||||||
pub fn route_call(did: String) -> Vec<u8> {
|
pub fn route_call(did: String) -> Vec<u8> {
|
||||||
let d = db::get_did_by(&did).unwrap();
|
let d = db::get_did_by(&did).unwrap();
|
||||||
|
let did_active = d.active;
|
||||||
let mut xml = XMLBuilder::new()
|
let mut xml = XMLBuilder::new()
|
||||||
.version(XMLVersion::XML1_1)
|
.version(XMLVersion::XML1_1)
|
||||||
.encoding("UTF-8".into())
|
.encoding("UTF-8".into())
|
||||||
@@ -89,6 +90,7 @@ pub fn route_call(did: String) -> Vec<u8> {
|
|||||||
doc.add_attribute("type", "xml/freeswitch-httapi");
|
doc.add_attribute("type", "xml/freeswitch-httapi");
|
||||||
|
|
||||||
let params = XMLElement::new("params");
|
let params = XMLElement::new("params");
|
||||||
|
|
||||||
let mut work = match d.target_type {
|
let mut work = match d.target_type {
|
||||||
DidTargetType::Url => {
|
DidTargetType::Url => {
|
||||||
url(d)
|
url(d)
|
||||||
@@ -115,7 +117,9 @@ pub fn route_call(did: String) -> Vec<u8> {
|
|||||||
work.add_child(hangup).unwrap();
|
work.add_child(hangup).unwrap();
|
||||||
|
|
||||||
doc.add_child(params).unwrap();
|
doc.add_child(params).unwrap();
|
||||||
doc.add_child(work).unwrap();
|
if did_active == true {
|
||||||
|
doc.add_child(work).unwrap();
|
||||||
|
}
|
||||||
|
|
||||||
xml.set_root_element(doc);
|
xml.set_root_element(doc);
|
||||||
|
|
||||||
@@ -123,5 +127,4 @@ pub fn route_call(did: String) -> Vec<u8> {
|
|||||||
xml.generate(&mut writer).unwrap();
|
xml.generate(&mut writer).unwrap();
|
||||||
|
|
||||||
writer
|
writer
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user