I want to send all extensions and conference bridge participants of asterisk voice to a analog telephone cable which is connected to a voicelogger ( recorder system) . How can it be done ?. I think this is possible by connecting Analog phone cable to ATA device ( linsys pap2) and sending stream to that ATA extension . But the challange is voicelogger is not an automatic answer machain .
First i have say you that idea is really strange. Asterisk can record all calls and record storage will cost much less then any analog device storage.
If you still insist you need it send to analog, you need multiple line analog device(every call record will require different wire).
Also you need FXS dahdi card and/or sip fxs adapter to connect your recorder.
You can orginize recording by using ChanSpy and/Or Confbridge as "ghost" call to all your calls with other dialling your fxs recording bank.
Complexity of such dialplan will be above average and require significant efforts and asterisk knowledge. You can read this links to get idea.
http://www.voip-info.org/wiki/view/Asterisk+n-way+call+HOWTO
http://www.voip-info.org/wiki/view/Asterisk+cmd+ChanSpy
http://www.voip-info.org/wiki/view/Asterisk+auto-dial+out
Other options you can have is record by asterisk and play recorded files one-by-one to your analog recorder or just use usual computer to playback files to recorder.
Related
I am using an arduino Uno with SIM800L, I am trying to send voice at anyway while a voice call is active, and how do I receive voice too?
I have searched a lot, but found nothing. Even though, I have reference which contains most of the AT commands that are applicable on my SIM800L. For example, when I make a voice call with my phone and the SIM800L, how do I receive the voice data from the GSM when I talk through my phone?
The GSM I have is SIM800L version 2, note that version 2 is different from version 1. However, it turned out that there are no at commands to send voice while a voice call is active, you must use another pin, not directly from the at commands. SIM800L has only 7 pins which is low, this is a picture of it : https://i.imgur.com/yxS3Apy.jpg .
It does not have any pins for receiving and sending voice specialized for a voice call. So, you can answer a call and dial a number, but you can't hear or speak. So, all I can do is use another GSM that has the capability of receiving and sending voice.
However, if you would like to know if a GSM has the voice capability or not, you should find these couple of these pins or similar to them:
MCN (Microphone Negative)
MCP (Microphone Positive)
SPKN (Speaker Negative)
SPKP (Speaker Positive)
Search for SIM800C, which has these pins. You can also connect a basic speaker with an amplifier directly with the SPKN and SPKP, the amplifier is optional, but the sound will be too weak.
I'm doing a security analysis project on an IoT device that uses an unencrypted BLE connection (with ATT protocol) and I want to spoof an individual BLE packet with the source address of an already connected device. Is there some tool or API that would allow me to do this easily? I've already tried gatttool and spooftooph but they seem to be connection based and don't allow you to send out single packets with modified fields (as far as I could tell).
You will need some hardware where you can access the radio peripheral directly. What you basically need to do is to find or write a ble sniffer firmware, with the modification that it at a given moment sends a packet on the connection it is currently listening to. But note that the signal strength must be stronger than the original device's signal so it doesn't interfere.
The only open source project I'm aware of is Ubertooth. You will also be able to do this with an nRF52 but then you need to write your own sniffer firmware since Nordic Semiconductor's is closed source.
I can't comment on Emils reply yet, < 50 rep:
Nordic Semis nRF Sniffer v2 needs only the nRF52DK and wireshark to work as a general BLE sniffer. At 40$ it's not that expensive. I know for a fact they will release a new dongle soon that will sell for ~10-15 bucks if you can wait a a month or two.
I found an interesting documeent about realisation of eCall (Emergency Call) in EU: http://www.heero-pilot.eu/ressource/static/files/heero_wp3_d3-3_final-operational-results_v2.3_final.pdf
Germany somehow did it on Asterisk. Whatever, I don't understand how they process MSD (minimal set of data) using Asterisk. In the call session for the first step caller sends DTMF signals to send MSD packet. As I understood, Asterisk must redirect this call to In-band modem on COM port or to another machine with such modem. After PSAP successfully received MSD for the second step caller switches to voice channel that must be redirected to some sip-client of PSAP operator. How they do it? Is there a way to receive DTMF signals w/o modem by using internal capabilities of Asterisk? How the same call to redirect to another SIP on the same time?
I suspect that you are referring to emergency services, rendered by emergency dialers - eg. for senior citizens. These are fairly common where I live, and I've created in the past a solution to handle the calls from these, based on Asterisk. The solution involved a way to intercept the various DTMF signals that the device generates, then making Asterisk do stuff with it. Back then, I used Asterisk 1.6 and it is pain staking, because I had to do everything from within a MeetMe bridge, and interact with Manager alot. Today, doing the same with Asterisk 12/13 and ARI is a breeze. Just remember one thing, most of these dialers will utilize the A,B,C,D DTMF signals, which are somewhat unknown to most people - they exist and Asterisk is very much capable of handling those.
The only snag is - make sure you are connected via a PRI, as most SIP carriers aren't aware of these signals, and their SIP trunks won't support this type of signalling.
Asterisk can send dtmf(natively,via command SendDTMF in dialplan or D option in Dial command) or any other sound(custom c/c++ app needed)
No, you not need special modem.
However there are no realisation acordinly to that document, you need do that yourself or hire someone
We have a bunch of analog telephones and a few softphones and IP-phones in our office. Analog telephones run by a telephone exchange Samsung OfficeServ 7200 connected to a FreePBX. FreePBX has extensions for each analog telephone for call recording. When I try to call manually from analog telephone call is being recorded, all is fine. But when I use "channel originate" command from Asterisk CLI FreePBX does not record this call.
Command I use in Asterisk CLI looks like this:
channel originate DAHDI/i2/134 extension 8903XXXXXXX#from-internal
Where 134 is local analog telephone and 8903XXXXXXX is my mobile phone. What can I do to record originated calls as well?
You have 2 choices
1) Use Freepbx. If you use freepbx, you have generate calls via call Local/XXX#from-internal/n and set CALLERID acordinly. Recording will work just ok
2) Use custom code. If so, YOU are responsible for any logic like macro-record-enable or custom monitoring, so you have do additional dialplan to handle that.
I'm new to serial communication. For a project I have to develop software for a vending machine. The vending machine basically consists of a host computer (a windows xp machine) and various peripherals. One of those peripherals is a coin acceptor. According to the documentation of the vending machine, the host computer communicates with the coin acceptor using the serial port. The only documentation I have is this document called "Multi-Drop Bus / Internal Communication Protocol" (the version I have can be found here: http://www.coin-acceptor.com.cn/Upload/EditorFiles/technicalfile/Mdb_version_4-2.pdf).
According to the docs it seems I have to create a serial port connection using a baud rate of 9600, 1 start bit, 1 stop bit, 1 mode bit and 8 data bits (page 29 in the linked document). The vending machine docs state that the coin acceptor is on COM port 6. I tried to create a connection like this using HyperTerminal and Putty. My first question is:
How do I properly create a connection to a device that supports this MDB 'protocol'? Putty and HyperTerminal don't allow me to set a "mode bit". I didn't find anything about the flow control and parity bit in the document. Can this be done using Putty or HyperTerminal? Or do I need some other tool to communicate over MDB?
My second question is about how to send a command to the device. I looked through the commands and saw a RESET command. According to the document, upon receiving the RESET command the device should reset itself and respond with an ACK. According to pages 33 and 63 of the document, if I want to send the RESET command to the coin acceptor, I can send the HEX value 08H over the serial line. Page 33 states that the coin changer listens to commands sent to addresses 08H until 10H (if I'm interpreting the document correctly, that is). Page 63 states that the RESET command is 08H with no data bytes. So can I just type "08H" into Putty and hit "enter" to send this command to the device? Or how can I send this command to the device over the serial line? Is this even the right approach or am I looking in the completely wrong place? The vending machine docs only contain this document for the coin acceptor. Thank you for the help!
Kind regards
Chris