Code to implement personal voicemail in Skype - skype

I have a project where I will be receiving Skype calls from certain set of Skype users.
The user needs to be responded by a pre-defined message and then based on response will be directed to next stop (agent or call or another pre-recorded message).
I did found lot of DTMF and IVR implementation of Skype and tried implementing them, Everything works but the problem comes in playing the recorded message as Skype call response.
Can somebody please help me how to write a C# code to change the audio source of skype to play a wav or mp3 file?
I have checked:
http://devforum.skype.com/t5/Desktop-API/Event-for-incoming-call/td-p/9174
http://community.skype.com/t5/Desktop-API-former-Public-API/Sending-Audio-in-Skype/td-p/422
Send audio over skype call
to name some.
Can implement everything except playing the audio as skype response.
Please help.

I have done this thing using C#. if your call varrialbe is CurrentCall:
TCallIoDeviceType DeviceType = TCallIoDeviceType.callIoDeviceTypeFile;
CurrentCall.set_InputDevice(DeviceType, audio_file_directory);
Audio files must be mono WAV-s files.

Related

How to send audio in fastes way Telegram Bot

I'm coding a telegram bot with Python using the module called python-telegram-bot.
It seems working suucesfull, but I want to improve it:
It sends to user an mp3 file, in order to do it I use the following command:
context.bot.send_video(chat_id=update.message.chat_id, video=open(path+tit+'.mp4', 'rb'), timeout=360)
But when I try to execute the command, it requires about 2/3 minutes in order to send it correctly. Do you have some tips can improve this time? Or is there a more efficient way than this? Thank you in advice.
You snippet shows how to send a video instead of an audio file, but I guess that doesn't matter much here :D
If you send a file by uploading it, you will just have to wait until it's uploaded completely - how fast that works depends on your internet connection.
Sending files is faster, if you send them by URL or file id. The former may not be an option for you. The latter can be an option, if you need to send the same file multiple times. In that case, you can send it just once, save the resulting file_id and use that in the next calls.
In case you're stuck with uploading the file, you can still speed up your bot using multi threading, i.e. don't wait with uploading the file before processing the next update. See this wiki page.
Disclaimer: I'm currently the maintainer of python-telegram-bot

Automated system testing for chromecast receiver application

I am wondering if there is a good way of making automated system testing for a Chromecast receiver application?
If you open the application URL in a Chrome browser, the cast_receiver library cannot find the websocket connection on:
ws://localhost:8008/v2/ipc
Since this handles the communication between the app and the Chromecast hardware, I am thinking of something like a Node.js websocket server that can talk to the chromecast receiver app. Is there such a system, or do anyone know if there are plans of google releasing something for this kind of testing?
Also, would there be other problems related to the difference between the chromecast browser and chrome browser? As I understand, the chromecast browser is just a subset of chrome, which makes me think it should work.
No, there is no easy way to do this.
DISCLAIMER: I haven't tried any of what I'm about to suggest. It's also probably a terribly idea as Google could change the protocol any time and in any fashion they desire since it isn't a public thing.
BIG DISCLAIMER: You may be in violation of the ToS by doing this as Section 3.2 (Developer Policies) states that you "may not ... develop a standalone technology ... any functionality of any Google Cast Receiver". Possibly, you'd be making a standalone piece of technology that replicated the IPC functionality. But I don't know. I'm not a lawyer.
If you want to go and do this, I'd suggest making a copy of the Google Cast Receiver SDK (www.gstatic.com/cast/sdk/libs/receiver/2.0.0/cast_receiver.js as of April 28, 2015) and altering it so that it logs out the messages that are being sent and received.
Luckily, it appears that we have logging messages to help us find the relevant code.
The receiving method has the string "Received message". I would guess that "a.message" is what is being received.
The sending method has the string "IPC message sent". I would guess that "a" is what is being sent.
Once you've instrumented your copy of the code, you need to publish it somewhere that your receiver app can see it and then you need to edit your receiver app to point to your new and improved SDK. Please please please make sure that you do this on a non-published app for testing purposes only.
Once that is done, you need to find some way to get your messages out of the code and into something that you can access. You have a few options.
Fiddle around with the code more and figure out how to get the Chromecast to log out the data you want;
Store the information in an array and read it using the debugger;
Open your own socket (or websocket) and send that data to a server that you control.
From here, you can run your app, interact with it, and then have a complete record of the IPC messages that were sent and received. Armed with this, you can create your own Fake-IPC server that listens for specific messages and spits out the stuff that is in your log.

Programmatically read Adobe game variables / interact with the game / game bot

Basicly, I'm trying to read a game's chat and catch actions from the user.
Here is the image which I will explain the situation with :
1: I took a message in the chat
2: I tryed to find it in the game's memory with Cheat-Engine
3: By examining every addresses where it was found, I ended up to this one, which contains the chat formated with what seems to be html..
That part is only the bottom part of the chat. (I see the rest of it if I scroll up)
So, I asked myself how could I read game variable to interact with the game.
Another thing I'm trying to achieve is to catch the user's actions so I can display some information in a winform.
I've just read about packet sniffing, it seems interesting for what I'm trying to do.
I tryed to read packets going in and out of this app with WireShark. Every action in game was sending a few packets, but I couldn't read them as they were just a bunch of weird characters. I tryed to decrypt them using a few methods I got on WireShark's forum without success. I was asking myself, even if I could see them in Wireshark, how am I gonna do that programmatically..
There is certainly a good way to do this, as we often see bots in this game.
Considering the number of bots playing "in team", I'm pretty sure they do not use clicks, but they run something in background that sends requests.
How do you make such a bot that fight, talk, interact with players automatically?
This game is Dofus, powered by Adobe Air.
I usually program with c++ and c#, but I was wondering what's the best way to do this.
I need a kick in the right direction!
Maybe trying a tcp/ip listner control (or use tcplistner class in c#) in your c# project with the appropriate port to catch requests (& responses). Information sended could be compressed so you may want to try some standard algo.
Did you try reverse engineer the AIR app ?

how to capture GTalk data with Asterisk?

im working in a IVTR via Asterisk and gtalk chat (using the chat box in gmail ) , the configuration of gtalk account and jabber are working almost perfectly except when i want capture data from the chat.
Using JABBER_RECEIVE method i'm able to capture chat text but if nothing was received and the timeout is over, Asterisk crash.
i've no idea of what's going on , is there another way (method or agi) to capture gtalk chat in Asterisk without crashing?
i'm using Asterisk 1.8.3 in CentOS 6.2.
I'm not sure what you mean by "capture gtalk chat".
If you want to display - for debugging purposes only - the XMPP messages that are sent to/from GTalk, you can use "jabber set debug on". This will dump as DEBUG messages to the Asterisk logs/CLI all XMPP messages.
Crashes are a "bad thing". While res_jabber in Asterisk 1.8 is a community support module, you may still want to report any crashes to the public issue tracker. Since this is a crash, you'll be asked to provide a properly generated backtrace - instructions for doing so can be found on this wiki page here.

How can I record audio in a web app client side and save it in a web server?

I have a requirement to do a flash program or something like that (not necessarily flash, it can be javascript or something in aspnet) that allow me to save audio in the client side of a web app, and save it on a file in the server side of the web app.
I've been searching a lot in google, and all I've found are just old questions, but no answers that fulfill my question
Please I need help!
Ive found this but the only thing that it does its to recognize the microphone, I need the hability of saving the audio file, by the way the server is implemented in aspnet
Possible Duplicate (when tagged with Flash)
How can I record audio using Action script then upload it to server?
The static function
Microphone.getMicrophone() returns a
reference to a Microphone object for
capturing audio. To begin capturing
the audio, you must attach the
Microphone object to a NetStream
object (see NetStream.attachAudio()).
There's at least one example in the
LiveDocs. Start at
flash.media.Microphone.
via #aaaidan
This is like asking everybody to do your entire homework for you.
You need to break the problem down into smaller achievable pieces/goals.
Example:
Record audio
Send to web server
Now you'll most likely get better results when you google it up.

Resources