AgeCommit message (Collapse)AuthorFilesLines
2019-03-12Add git-review configHEADmasterMax1-0/+3
Change-Id: I80c69ce43b6c0ad36f709340c8184620caf1cbf0
2018-09-30*.py: use generic logging framework instead of print()Vadim Yanitskiy5-24/+28
Change-Id: I025ddae64e41319abac8e2cd2e266db83aea4a7b
2018-09-30manual_test_server.py: drop redundant print() callsVadim Yanitskiy1-2/+0
Change-Id: Id9c8fa9e65837822002b68d10af9c2eacb818aac
2018-09-30*.py: cosmetic: tweak the global logging formatVadim Yanitskiy3-2/+9
Printing log level, file name, and line number together with a log message is the common practice in Osmocom projects that facilitates debugging and development. Change-Id: I80cd7cdfa41ae7e70a1890d88c8b2f7357a500af
2018-09-30mncc_sock.py: throw / raise exceptions from MnccSocketVadim Yanitskiy1-12/+4
Calling sys.exit() from MnccSocket's constructor could lead to a situation when the main thread becomes "dead", while its child threads are still working. Let's throw the exceptions towards the caller, so it would be possible to handle them there. Change-Id: I485eb86c69e74693eeae89723de27e376585f1da
2018-09-29mncc_sock.py: distinguish traffic framesVadim Yanitskiy2-0/+33
Change-Id: I996513e433bb57f12a4030391697f4e87e6ff938
2018-09-29mncc_sock.py: simplify msg_type matchingVadim Yanitskiy1-1/+6
Change-Id: I0d7d988e7d1bcfd9cf5cd319fd9da0f4f65a8e5d
2018-09-29mncc_sock.py: share common send() / receive() callsVadim Yanitskiy1-19/+6
Change-Id: I871c72c8e3392a1be76e0126a24b3bc9a787113d
2018-09-29mncc_sock.py: parse and match MNCC_SOCKET_HELLO messageVadim Yanitskiy1-1/+44
Change-Id: If6c3ca37a83db1d4ae75796f7be687601b159136
2018-09-29*.py: use proper '#!/usr/bin/env' shebangVadim Yanitskiy4-4/+5
Using hard-coded paths in shebang is a bad idea, because on different systems Python interpreter can be installed in different places. See: https://mail.python.org/pipermail/tutor/2007-June/054816.html Change-Id: Ib729ece0c95254dc2b235f90eb731681df955bd1
2018-08-09recommend stock Debian/Ubuntu package for fysomStefan Sperling1-3/+1
fysom is now available as a regular Debian/Ubuntu package so there is no need anymore to install it via pip: https://packages.debian.org/stretch/python-fysom https://packages.ubuntu.com/bionic/python-fysom Change-Id: I59e3b93c1d3f849f14dcb2344f6f033312331884
2017-06-04Bearer capability not provided during MO call using mncc-python, which ↵Gerard Pinto2-3/+16
results in GSM IE error (96) invalid mandatory information sent by Network -> MS (mncc-python) Verified this error by GSMTAP using mncc-python interface OsmocomBB to network Proposed Changes: In case of MO call (_onmncc_setup_req) caller needs to provide bearer_cap speech version Added mncc.bearer_cap in mncc_sock.py based on codecs = GSM48.AllCodecs Added new field mncc.MNCC_F_BEARER_CAP in mncc.MNCC_SETUP_REQ, when call is initiated (MO) from MS -> network Change-Id: If77851b86111d62d82221a886ed2391179080cca
2017-04-29test: Add a manual test to simulate DTMF handling in osmo-sip-connectorHolger Hans Peter Freyther1-0/+126
Add a manul test to the contrib folder that helped and can help during the development of osmo-sip-connector or similar software. This avoids having to create a separate mncc module. It can be started like: $ PYTHONPATH=$PWD/../ python manual_test_server.py Change-Id: I7f62efbc62455e6fcb1f091afb5fa120099834f0
2017-04-29mncc: Make it possible to build a MNCC server for testingHolger Hans Peter Freyther1-13/+32
For manual testing the osmo-sip-connector it is nice to run a custom MNCC server to mock certain behavior. Refactor the socket class to share code between client/server. Change-Id: I8387fe1687557c6a1a26ff1e0cc9dbff3087aa82
2017-03-05mncc_sock.py: Fix typo and say connectingHolger Hans Peter Freyther1-1/+1
We don't have a connection yet, so let's say this meant connecting. Change-Id: Iba0423add3ae4d6920fed74800b0c2b298dda501
2015-12-12some README clarifications, including required python modulesHarald Welte1-2/+20
2015-12-05add smpp_test to generate SMS load via SMPP interfaceHarald Welte1-0/+52
It's not really related to MNCC, but in lack of a better suitable repository, I'll commit it here for the time being.
2015-12-05gsm_call_fsm: Less debug printf'sHarald Welte1-7/+0
2015-12-05Terminate CallConnector when both GsmCallFsm enter NULL state againHarald Welte1-0/+3
2015-12-05GsmCallFsm: Print current state in __str__Harald Welte1-1/+1
2015-12-05GsmCallFsm: Initialize calling/called during constructorHarald Welte1-0/+1
2015-12-05GsmCallFsm: Handle DTMF and HOLD requests from phonesHarald Welte1-0/+22
we don't want the FSM to terminate in case such requests are received.
2015-12-05GsmCallFsm: Implement __str__() and use itHarald Welte1-5/+8
2015-12-05gcm_call_fsm: Allow user to specify which codec(s) are to be usedHarald Welte2-10/+68
The user can submit a list of permitted codecs for a GsmCallFsm or GsmCallConnector. This list is ordered by priority (highest first), and the first matching codec is chosen. TODO: Proper error handling in case no matching codec is found
2015-12-05gsm_call_fsm: Implement classic MNCC_BRIDGE modeHarald Welte1-3/+20
In the classic MNCC_BRIDGE mode we ask the MSC to bridge the two traffic channels itself. This works for E1 as well as for RTP BTSs', and even accross mixed E1 and RTP environments.
2015-12-05mncc.{h,py}: Add a gsm_mncc_bridge structHarald Welte4-726/+763
this struct doesn't yet exist in upstream, but it should.
2015-12-03gsm_call_fsm: Add get_callref method to GsmCallFsmHarald Welte1-0/+4
... and obtain the call references into the GsmCallConnector
2015-12-02typo fixHarald Welte1-1/+1
2015-12-02add READMEHarald Welte1-0/+38
2015-12-02add license headersHarald Welte3-4/+26
2015-12-02rename mncc_test2.py to mncc_test.pyHarald Welte1-0/+0
2015-12-02mncc_test2.py: Start 14 call legs (1TRX TCH/H config)Harald Welte1-1/+7
2015-12-01gsm_call_fsm: Connect the RTP streams of the two call legsHarald Welte1-12/+76
2015-12-01mncc_test2: more useful debug outputHarald Welte1-3/+6
2015-12-01add mncc_rtp_msg() class for RTP messages on MNCC interfaceHarald Welte2-1/+16
2015-12-01gsm_call_fsm: transition from CONNECT_REQUEST state into ACTIVEHarald Welte1-0/+1
2015-12-01gsm_call_fsm: Gracefully handle MNCC_DISC_IND and send MNCC_REL_REQHarald Welte1-0/+6
2015-12-01gsm_call_fsm: print string representation of mncc_msgHarald Welte1-1/+1
2015-12-01gsm_call_fsm: Fix typo in handling of MNCC_ALERT_INDHarald Welte1-1/+1
2015-12-01gsm_call_fsm: accept MNCC_REL_IND in every state, contrary to specHarald Welte1-1/+1
2015-12-01gsm_call_fsm: fix transmission of MNCC_SETUP_COMPL_REQHarald Welte1-2/+2
2015-12-01mncc_msg(): Add more meaningful string representationHarald Welte1-0/+4
2015-12-01provide connect_call() convenience wrapperHarald Welte1-3/+10
2015-12-01add a description on where the content of mncc.h originates fromHarald Welte1-0/+6
2015-12-01rename regen.sh to regen-mncc-py.shHarald Welte1-0/+0
2015-12-01add interactive shell to stat more calls from mncc_test2.pyHarald Welte1-8/+25
2015-12-01Introduce GsmCallConnector() to connect two call legsHarald Welte2-6/+41
2015-12-01logging cleanupHarald Welte2-3/+1
2015-12-01gsm_call_fsm: stop() the actor when re-entering NULL stateHarald Welte1-0/+5
2015-12-01add .gitignore fileHarald Welte1-0/+2