inputAst
Publicado por Perfil removido 25/07/2007
[ Hits: 4.012 ]
Esta é uma função que pode ser usada num Asterisk Gateway Interface (AGI) para ler as variáveis passadas pelo asterisk por stdin, do ponto de vista do AGI, para o AGI em questão.
#include <string.h>
#include <include/agi3.h>
#include <stdio.h>
void inputAst(char callerid[128],char channel[128],char exten[128],char context[128],char dnid[128], char unique[128]) {
char linha[128],*p;
while(1) {
fgets(linha,128,stdin);
if((p=strstr(linha,"agi_channel: "))) {
p=strchr(linha,':');
strcpy(channel,p+2);
continue;
}
if((p=strstr(linha,"agi_context: "))) {
p=strchr(linha,':');
strcpy(context,p+2);
continue;
}
if((p=strstr(linha,"agi_callerid: "))) {
p=strchr(linha,':');
strcpy(callerid,p+2);
continue;
}
if((p=strstr(linha,"agi_extension: "))) {
p=strchr(linha,':');
strcpy(exten,p+2);
continue;
}
if((p=strstr(linha,"agi_dnid: "))) {
p=strchr(linha,':');
strcpy(dnid,p+2);
continue;
}
if((p=strstr(linha,"agi_uniqueid: "))) {
p=strchr(linha,':');
strcpy(unique,p+2);
continue;
}
if(strlen(linha)<=1) break;
}
}
Algorítmo para Calcular Raiz Quadrada
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Podem me chamar de 1mbecil :) (3)
diferença entre o Tor baixado pelo Gerenciador de Aplicativos e o Tor ... (3)
Servidor de DNS BIND Ubuntu server (0)
Debian Stable travado em atualizações: dist-upgrade não resolve [RESOL... (11)









