Acessando Stream do Servidor

13 respostas
VinnyJ

Olá pessoal…estou com um probleminha e não estou vendo muitas alternativas…Gostaria de contar com a ajuda de vocês pra quem saber ter uma luz aki!!

Resumindo, eu estou desenvolvendo uma apliacação que vai ter que copiar o conteúdo do servidor (stream de dados) e armazená-los em disco.
Primeiramente eu tentei usar sockets pra ouvir o IP/Porta correspondente pra tentar copiar esses dados…Mas não consigo criar um server que se conecte a porta que eu quero (pois ela já está sendo usada)…

Então é isso eu não sei como eu posso fazer agora pra conseguir obter esses dados…Será que com sockets eu consigo algo??Tem outras formas de copiar esses dados??

Por favor, deixe suas sugestões…

Obrigado!!!

13 Respostas

kaique

Se eu entendi bem a situação, você pode sim usar Sockets. Acho que uma solução seria criar um Proxy “antes” do seu servidor. Assim o proxy poderia interceptar todas as requests/responses e você teria acesso aos conteúdos das streams utilizadas.

[]'s.

VinnyJ

Criar um proxy???

Desculpe-me minha ignorância, mas não sei como isso poderia me ajudar. Vc poderia me explicar melhor???

Será que assim eu consigo criar um cliente-servidor que acessaria a mesma porta que está sendo utilizada como servidor de streaming??

Obrigado

T

Proxy (cuja tradução literal é "procurador" e que poderia ser traduzido por "atravessador") é um programa que você põe no meio do caminho para poder fazer alguma coisa, por exemplo, capturar os dados de um socket.

Em vez de você fazer:

cliente -> servidor

Você poderia fazer:

cliente -> proxy -> servidor

E o proxy é que se encarregaria de receber a conexão e redirecioná-la para o servidor, e nesse processo ele pode capturar os dados desejados.

VinnyJ

Beleza…estou começando a entender…rs

Então eu no meu cliente e servidor eu referenciaria meu proxy ao invés de ser diretamente.

Então tá…Eu instalei um servidor proxy aki (AlanogX Proxy) mas não entendi muito bem como eu faria essa mudança para que o proxy tomasse conta dessas requisições…

Teria algum exemplo pra me ajudar a ver isso???

Obrigado…

T

Imagino que seja possível encontrar um proxy desses pronto na Internet para o protocolo que você deseja analisar. É questão de procurar.

Escrever um proxy é meio chatinho, já que às vezes é necessário simular certas coisas que uma simples interceptação dos sockets não é suficiente (ou porque o cliente detecta que ele não está se conectando diretamente com o servidor, ou porque o servidor detecta que ele não está se conectando diretamente ao cliente). Por isso é melhor você achar algo pronto.

VinnyJ

É o que eu estou tentando fazer…
Mas até agora não encontrei nada que pudesse me ajudar!!!

Caso alguém possa me ajudar, por favor…preciso com uma certa urgência…

Abraçosss

T

Qual o protocolo usado pelo servidor? Que servidor é esse?

VinnyJ

Deixa eu te explicar mais ou menos…
Criei uma rádio on-line através de um Shout Cast (assim tenho a informação sobre o IP e a porta - Uso TCP/IP) e necessito copiar e salvar a streaming que está sendo gerada em disco para um outro processamento posterior.

Eu sei, existe programas prontos que fazem isso, mas eu preciso de implementar um para acoplar no projeto que desenvolvemos aki na empresa…

Entendeu???

Obrigado

T

Entendi, e o mais barato para vocês é realmente comprar uma licença de um programa pronto. No seu caso, vai ser bem chato fazer um proxy, já que o protocolo para streaming de áudio é bem enjoado.

VinnyJ

O Problema vai ser esse…Convencer para que possamos utilizar um software…A licença é até barata, mas eu precisaria de algo que justificasse a impossibilidade de fazer isso…

Obrigado…

T

Arranje uma versão trial, faça o troço funcionar, e depois explique que você vai gastar 10 x mais tempo que o custo da licença e não sabe se vai conseguir fazer o tal programa funcionar.

VinnyJ

Desculpe minha ignorância mas como farei pra anexar esse programinha ao meu código já existente…

O meu código tá funcionando em C e o programinha que eu utilizei pra fazer alguns testes é um .exe da vida que não é opensource…

Vc poderia me dar uma dica de como eu faria para anexar esse executável ao meu código, ou como através do código consigo chamar esse executável (abrir, passar os parâmetros, url por exemplo, mandar gravar e parar) para realizar todos os procedimentos sem que seja necessário intervenção do usuário???

Pra mim isso é tão complexo quanto mexer com streaming de áudio…rsrsrs

Valewsss

T

Hum… é sempre uma boa pergunta. Procure por “CreateProcess”, se for fazer seu programa em Windows, ou por “exec”, se for em Linux.

Criado 29 de junho de 2009
Ultima resposta 30 de jun. de 2009
Respostas 13
Participantes 3