Asterisk - 中止预定的自动拨号 - 呼叫文件假脱机
Asterisk - abort scheduled auto dial - call file spool
有没有办法刷新pbx_spools的缓存?
pbx_spool.so 也不支持通过 CLI 重新加载。
示例:
#!/bin/bash
cat >/tmp/wakeup.call <<EOF
Channel: SIP/telefon
CallerID: "Weckruf" <9999>
MaxRetries: 3
WaitTime: 60
Context: wecker
Extension: s
Priority: 1
EOF
touch -d "7 hours" /tmp/wakeup.call
# At this point Asterisk learns his task
mv /tmp/wakeup.call /var/spool/asterisk/outgoing/
# for demonstration I decided to not want to be waken later
sleep 10 && rm /var/spool/asterisk/outgoing/wakeup.call
Asterisk 终于在 7 小时后响起...
我希望,如果我在应该拨号之前从 /var/spool/asterisk/outgoing/ 中手动删除 .call 文件,Asterisk 将不再拨打电话。但确实如此。
此行为的解决方案是使用唯一的文件名。
Asterisk 在创建时读取调用文件,并且仅在执行时检查是否仍然存在具有相同名称的文件。不管里面有什么。
Asterisk 都没有提到中间文件的删除。
文件名及其内容仍在堆栈中,甚至新创建的具有相同文件名的文件也会被忽略。只有在执行时存在具有该名称的文件才会使星号触发初始调用文件内容。
有没有办法刷新pbx_spools的缓存? pbx_spool.so 也不支持通过 CLI 重新加载。
示例:
#!/bin/bash
cat >/tmp/wakeup.call <<EOF
Channel: SIP/telefon
CallerID: "Weckruf" <9999>
MaxRetries: 3
WaitTime: 60
Context: wecker
Extension: s
Priority: 1
EOF
touch -d "7 hours" /tmp/wakeup.call
# At this point Asterisk learns his task
mv /tmp/wakeup.call /var/spool/asterisk/outgoing/
# for demonstration I decided to not want to be waken later
sleep 10 && rm /var/spool/asterisk/outgoing/wakeup.call
Asterisk 终于在 7 小时后响起...
我希望,如果我在应该拨号之前从 /var/spool/asterisk/outgoing/ 中手动删除 .call 文件,Asterisk 将不再拨打电话。但确实如此。
此行为的解决方案是使用唯一的文件名。
Asterisk 在创建时读取调用文件,并且仅在执行时检查是否仍然存在具有相同名称的文件。不管里面有什么。
Asterisk 都没有提到中间文件的删除。 文件名及其内容仍在堆栈中,甚至新创建的具有相同文件名的文件也会被忽略。只有在执行时存在具有该名称的文件才会使星号触发初始调用文件内容。