|
|
@ -19,6 +19,7 @@
|
|
|
|
#include <asterisk/app.h>
|
|
|
|
#include <asterisk/app.h>
|
|
|
|
#include <asterisk/utils.h>
|
|
|
|
#include <asterisk/utils.h>
|
|
|
|
#include <asterisk/say.h>
|
|
|
|
#include <asterisk/say.h>
|
|
|
|
|
|
|
|
#include <asterisk/channel_pvt.h>
|
|
|
|
#include <asterisk/pbx.h>
|
|
|
|
#include <asterisk/pbx.h>
|
|
|
|
#include <asterisk/translate.h>
|
|
|
|
#include <asterisk/translate.h>
|
|
|
|
#include <asterisk/module.h>
|
|
|
|
#include <asterisk/module.h>
|
|
|
@ -184,7 +185,6 @@ static int spy_generate(struct ast_channel *chan, void *data, int len, int sampl
|
|
|
|
f1 = spy_queue_shift(csth->spy, 1);
|
|
|
|
f1 = spy_queue_shift(csth->spy, 1);
|
|
|
|
ast_mutex_unlock(&csth->spy->lock);
|
|
|
|
ast_mutex_unlock(&csth->spy->lock);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (f0 && f1) {
|
|
|
|
if (f0 && f1) {
|
|
|
|
if (!csth->trans0) {
|
|
|
|
if (!csth->trans0) {
|
|
|
|
if (f0->subclass != AST_FORMAT_SLINEAR && (csth->trans0 = ast_translator_build_path(AST_FORMAT_SLINEAR, f0->subclass)) == NULL) {
|
|
|
|
if (f0->subclass != AST_FORMAT_SLINEAR && (csth->trans0 = ast_translator_build_path(AST_FORMAT_SLINEAR, f0->subclass)) == NULL) {
|
|
|
@ -507,11 +507,18 @@ static int chanspy_exec(struct ast_channel *chan, void *data)
|
|
|
|
|
|
|
|
|
|
|
|
if (peer && (!bronly || ast_bridged_channel(peer)) &&
|
|
|
|
if (peer && (!bronly || ast_bridged_channel(peer)) &&
|
|
|
|
!ast_check_hangup(peer) && !ast_test_flag(peer, AST_FLAG_SPYING)) {
|
|
|
|
!ast_check_hangup(peer) && !ast_test_flag(peer, AST_FLAG_SPYING)) {
|
|
|
|
|
|
|
|
int x = 0;
|
|
|
|
|
|
|
|
|
|
|
|
strncpy(peer_name, peer->name, AST_NAME_STRLEN);
|
|
|
|
strncpy(peer_name, peer->name, AST_NAME_STRLEN);
|
|
|
|
ptr = strchr(peer_name, '/');
|
|
|
|
ptr = strchr(peer_name, '/');
|
|
|
|
*ptr = '\0';
|
|
|
|
*ptr = '\0';
|
|
|
|
ptr++;
|
|
|
|
ptr++;
|
|
|
|
peer_name[0] = tolower(peer_name[0]);
|
|
|
|
for (x = 0 ; x < strlen(peer_name) ; x++) {
|
|
|
|
|
|
|
|
if(peer_name[x] == '/') {
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
peer_name[x] = tolower(peer_name[x]);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (!silent) {
|
|
|
|
if (!silent) {
|
|
|
|
if (ast_fileexists(peer_name, NULL, NULL) != -1) {
|
|
|
|
if (ast_fileexists(peer_name, NULL, NULL) != -1) {
|
|
|
|