9
0
Fork 0
Commit Graph

24 Commits

Author SHA1 Message Date
Holger Hans Peter Freyther 4b750fb119 dtmf: Make the on/off time and transmit power configurable
Make it possible to configure the transmit power. These settings
will be in effect immediately (there is no lock between the two
threads but it is a read only).
2013-06-04 13:43:37 +02:00
Holger Hans Peter Freyther 2df07d549d mgw: Implement the specific RSIP handling
The RSIP has morphed from a global reset, to a per trunk reset and now
it is possible to reset specific ranges on a trunk. This will be used by
the ISUP filter code in the STP.

For legacy range == -1 will be used. This will reset all endpoints
on the trunk. Use OSMO_MAX on endpoint and number of endpoints in case
number_endpoints is 0.

This code will now free everything from the endpoint to endpoint + range
including endpoint+range.
2012-12-16 12:10:26 +01:00
Holger Hans Peter Freyther 2d115d4bbb mgcp: Merge the current MGCP code from OpenBSC
There were several changes in the upstream code. These include
statistics, DTMF/RQNT, changes in the parsing code and re-transmission
handling. The last item is the main reason to do the merge now.
2012-12-16 11:33:27 +01:00
Holger Hans Peter Freyther d74ac33574 dtmf: Schedule DTMF tones for the MTN hardware
Create a simple queue for pending DTMF tones, play them using the
MTN API, and then send the next tones once the playback is complete.
The callback and scheduling is done from the same context so no locking
needs to be done.
2012-12-16 11:33:27 +01:00
Holger Hans Peter Freyther 9b2474490a mgcp: Begin handling of the RQNT message as needed for DTMF
Introduce a callback for the request and forward the signalrequest
to the callback. This is not a full implementation of MGCP RQNT.

Manual merge and backport from OpenBSC.
2012-12-16 11:33:27 +01:00
Holger Hans Peter Freyther c96c57b8d5 mgcp: Implement to loop timeslots when not used for audio
Deal with broken ISUP switches and allow to loop endpoints
when they are not connected. Introduce an option to do it.
2012-01-22 11:44:33 +01:00
Holger Hans Peter Freyther 77ffc93742 mgcp: Rename from snmp to hw in variables and function name. 2012-01-22 11:41:54 +01:00
Holger Hans Peter Freyther 040c6bcb25 mgcp: Reset endpoints via the trunk config instead of all of them
This change is coming from OpenBSC and was adjusted to mgcp_ss7
2011-09-14 22:32:59 +02:00
Holger Hans Peter Freyther f574cec745 mgcp: Introduce multiple virtual trunks
A virtual trunk is identified by a virtual domain name.
2011-09-14 22:29:14 +02:00
Holger Hans Peter Freyther 96cc57af80 mgcp: Generate the ConnId per trunk base
MGCP RFC 3435 does not specify that the Connection Id must be
generated with any kind of random. It must uniquely identify
the connection of an endpoint. So we can make it per trunk group
or could even have it per endpoint.

The code does not support multiple connections on the same endpoint
right now but the spec allows it.
2011-09-14 22:28:13 +02:00
Holger Hans Peter Freyther c2bb077a48 mgcp: Split creation of endpoints and static port allocation
Create the endpoints as soon as possible, configure static ports
after we are through with the parsing of the VTY config.
2011-09-14 00:23:22 +02:00
Holger Hans Peter Freyther e72139a6f3 mgcp: Remove the endp_offset that was introduced due coding stupidity
The endpoint offset is needed for two reasons, first the API is 0
based here while we are normally 1 based, second because of the trunks
the first usable endpoint would be '2' (0 is CRC, 1 is signalling), but
this endpoint offset falls apart when we would block timeslots inside
this range.

Remove the endpoint offset, in each endpoint we will store the HW DSP
Port (1 based API) and then subtract one to get to the 0 based API for
the Simple API. Print a warning when someone is using the endpoint offset.
2011-09-13 22:53:13 +02:00
Harald Welte ff397edf38 Adopt to recent libosmocore namespace changes and libosmogsm 2011-05-08 10:29:23 +02:00
Holger Hans Peter Freyther 0d20e0d12f mgcp: Mark certain endpoints as blocked.
Right now for the virtual trunk 0x0 and 0x1F is blocked, for the
E1 like interface we have 0x0 and 0x1 blocked. This should start
to be configurable in the future.
2011-03-02 21:44:01 +01:00
Holger Hans Peter Freyther 672f321eea mgcp: Calculate the right Audio Processor resource for high endpoints
With this commit we can have more than 30 endpoints that will work. We
ignore the blocked endpoints 0x1 and 0x1f for each trunk and calculate
everything from the right start point.
2011-03-01 13:52:57 +01:00
Holger Hans Peter Freyther dcc3312792 mgcp: Merge OpenBSC MGCP code and update the structure to match it
* Upstream has a separation of BTS and NET side for RTP ports and
  can allocate them dynamically.
* Upstream has gained the concept of trunks. We will now have various
  trunks to connect audio things.

* We will now be able to utilize multiple trunks and have the endpoints
  used properly.
2011-03-01 13:02:29 +01:00
Holger Hans Peter Freyther de56c22702 license: Switch to the GNU AGPLv3 for this network service 2011-01-16 20:35:13 +01:00
Holger Hans Peter Freyther 7e0936ee52 mgcp: Merge new mgcp_protocol to parse digital trunks. 2011-01-06 19:50:32 +01:00
Holger Hans Peter Freyther e40bc38c42 mgcp: Merge the realloc_cb from OpenBSC here. 2010-09-18 03:11:00 +08:00
Holger Hans Peter Freyther 5b08401701 mgcp: Use uint32_t for the CI in every place. 2010-08-08 07:51:51 +08:00
Holger Hans Peter Freyther e807376257 mgcp_ss7: Move the vty code/params over to mgcp_vty.c
Share more code with the OpenBSC version of the VTY code
minus the changes to allow to parse a generic hostname
instead of an ip address.
2010-08-04 07:34:21 +08:00
Holger Hans Peter Freyther d86208d1ed mgcp: Update to the latest code drop. 2010-08-04 06:11:27 +08:00
Holger Hans Peter Freyther cbf7d18bb9 Use libosmocore instead of the old temporary laF0rge1 lib.. 2010-08-04 06:08:40 +08:00
Holger Hans Peter Freyther 97f66e2b53 Public release of the cellmgr_ng code to convert E1 to IPA SCCP 2010-07-28 03:36:32 +08:00