diff options
author | Neels Hofmeyr <neels@hofmeyr.de> | 2020-03-05 00:05:45 +0100 |
---|---|---|
committer | Harald Welte <laforge@osmocom.org> | 2020-03-07 21:48:08 +0100 |
commit | a765716b8c60ea0e7e2f31759f01f5e9715fdaa2 (patch) | |
tree | 29c2571095b1ec43f773d74af33654b25a765857 /gsm_call_fsm.py | |
parent | cf8e58e5fb9e65accf4a07dae91d247b75977da9 (diff) |
mncc_{test,mg_loadgen}.py: Add a manual call-release function
Change-Id: I30265b765f03bd0485bdaa7d6be6d95ad678b0ee
Diffstat (limited to 'gsm_call_fsm.py')
-rw-r--r-- | gsm_call_fsm.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gsm_call_fsm.py b/gsm_call_fsm.py index a9ad8c0..c8bcf39 100644 --- a/gsm_call_fsm.py +++ b/gsm_call_fsm.py @@ -90,6 +90,10 @@ class GsmCallFsm(pykka.ThreadingActor): bearer_cap = mncc_bearer_cap(self.codecs_permitted)) self.mncc_ref.tell({'type': 'send', 'msg': msg}) + def _onmncc_disc_req(self, e): + msg = mncc_msg(msg_type = mncc.MNCC_DISC_REQ, callref = self.callref) + self.mncc_ref.tell({'type': 'send', 'msg': msg}) + def find_matching_codec(self, ms_codecs): # find common denominator of permitted codecs and MS codecs for i in self.codecs_permitted: @@ -182,6 +186,7 @@ class GsmCallFsm(pykka.ThreadingActor): ('onmncc_call_conf_ind', self._onmncc_call_conf_ind), ('onmncc_setup_cnf', self._onmncc_setup_cnf), ('onmncc_disc_ind', self._onmncc_disc_ind), + ('onmncc_disc_req', self._onmncc_disc_req), ('onenterNULL', self._onenter_NULL), ], ) @@ -302,6 +307,8 @@ class GsmCallFsm(pykka.ThreadingActor): self.connect_rtp(message['rtp']) elif message['type'] == 'get_callref': return self.callref + elif message['type'] == 'release': + self.fsm.mncc_disc_req(None) else: raise Exception('mncc', '%s: Unknown message %s' % (self, message)) @@ -366,3 +373,6 @@ class GsmCallConnector(pykka.ThreadingActor): self.rtp_created(message['called'], message['rtp']) #else: # raise Exception('mncc', 'GsmCallConnector Rx Unknown message %s' % message) + + def release(self): + self.call_a.tell({'type':'release'}) |