Asterisk Hold event via IAX2 and SIP - asterisk

I have two phones one using IAX2 second SIP. When I press Hold button on IAX2 phone I get Asterisk event "Hold", When I press Hold button on SIP Phone I get Unlink then Bridge event. Can I change this behavior for SIP phone to get "Hold" event from Asterisk? Why SIP phone not send one "Hold" event?
Thank you!

What version of Asterisk are you using?
A re-INVITE coming from a SIP UA notifying Asterisk to put the channel on hold should not unlink a bridge with another channel, unless the hold from the re-INVITE is asking it to do something other the just simply restrict the flow of the RTP.
You may want to post this on issues.asterisk.org/jira. If you do so, please include a DEBUG log, with sip set debug on, illustrating the problem.

Related

Sip call with esp8266 and asterisk

I want to program an esp8266 doorbell to call me when someone presses the bell. I have a STARFACE telephone system (Asterisk) and would like to tell STARFACE to make a broadcast call. I have searched the Internet but I find only FritzBox examples.
I do not want to do this with a call file.
Sorry for my English. I am not a native Englishman.
Call file is simplest way do that.
Some other ways
asterisk AMI protocol Originate command
asterisk ARI
perl,sipp(testing tool) or other script which send sip invite with auth.
https://gist.github.com/maximevalette/802764
http://sipp.sourceforge.net/
click2call script on asterisk (using call file or other)+ curl request on your device.

How let two ESP8266's listen to the same Telegram bot

How do I let two ESP8266's in my home network listen to the same Telegram bot (the same chat_id) at the same time? I am using bot.getUpdates on both ESP's to check for new messages now, but then only the ESP which happens to perform a getUpdates before the other ESP does, receives the new messages. The second ESP receives none. So I think I need to use something besides, or in stead of, getUpdates but I don't know what.
What I would like to achieve is that one ESP (device 1) must only receive and respond to messages which are addressed to him, based on the message text: "1" on the first position of the message text means it's meant for device 1. Messages which don't start with "1" (they'll start with "2") are not meant for him must stay available on the Telegram server for the other ESP (device 2).
More details about the project:
I have a simple ESP8266 project running fine. When the frontdoor of my house opens, a reedcontact opens and a message is sent from the ESP in my home network to my Telegram bot and then I receive a notification in the Telegram app on my phone saying that door 1 has opened. The other way around, when I type "1" in the app, the bot returns the current state of the door. But when I add a second ESP8266 to control the backdoor (door 2), the problem starts: there is one random ESP which receives the messages. which may not be the ESP/door I am asking for.
I am using:
Arduino IDE
clone nodemcu ESP8266 (ESP-12E)
clone wemos d1 r1
Use the offset parameter of getUpdates method. As the documentation states:
By default, updates starting with the earliest unconfirmed update are returned. An update is considered confirmed as soon as getUpdates is called with an offset higher than its update_id. The negative offset can be specified to retrieve updates starting from -offset update from the end of the updates queue. All previous updates will forgotten.
You need to pass the last update_id through your ESP8266s, but this is kind of tricky.
I advise you to build a central system (or a master-slave system) that reads and processes the updates from Telegram and sends to the two ESP8266s the relative commands (like "open the door 1", etc...). In my opinion this is the easiest way to do what you want to do.
Would it be easier to have one bot for the frontdoor and one for the backdoor?
They can both send messages and you can send a command to the respective bot to get the state of the door.

Ask a phone to do one outgoing call

I am trying to get a solution to ask one my connected phone (SIP) to call an another one.
I can easily do this with an originate via one AMI request, but I have one problem :
The display on my sip phone always show "incomming call".
There is one solution to get the display "outgoing call" on my sip phone ? Either with asterisk or in SIP protocol.
"Incoming call" is writed by your phone's firmware.
So you can only change to "outgoing call"(actualy it IS incoming) by rewriting call firmware or use phone which have that feature in firmware.
SIP standart have no any info about such feature.

auto answer when catching the phone with asterisk

I am working with an asterisk software pbx.
I have an IP phone which is configured with asterisk.
What i want to do is make call to a special number when the user hangs the phone. I do not want him to have to compose a number.
Do you know if it possible ?
Thanks
You have call, part A(caller) call to party B(called).
So.
You can setup your dialplan if B hangup, asterisk connect A with next number.
You can't setup your dialplan if A hangup, B connected to other number, except variant when you do connect A&B via conference(not via Dial command).
If you want phone call B when A get it, that called HOTLINE and it is feature of phone, not asterisk.

Is it possible to receive eCall by Asterisk (PSAP)?

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

Resources