diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2012-08-11 17:12:01 +0200 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2012-08-11 17:12:01 +0200 |
commit | 41fcc5d89938a1b2f246c8ff67f3d8482bcd1529 (patch) | |
tree | 275e04b53746c2b2a2be95ec34cfe30af7504deb | |
parent | 3b8202953151d6320b353937ce4ea00e7e706b36 (diff) |
CC: Some call control fixes
-rw-r--r-- | GSMDriver.st | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/GSMDriver.st b/GSMDriver.st index 631b238..cf5b2cc 100644 --- a/GSMDriver.st +++ b/GSMDriver.st @@ -307,15 +307,25 @@ ProcedureBase subclass: CallProcedure [ 'Accepted' printNl. resp := GSM48CCSetup new. + resp seq: 1. resp bearer1OrDefault data: #(16r60 16r02 0 1 4 16r85) asByteArray. resp calledOrDefault data: nr. conn nextPutData: (BSSAPDTAP initWith: resp linkIdentifier: 0). ] handleData: aMsg sapi: aSapi [ + aMsg class messageType = GSM48CCMessage msgProceeding ifTrue: [ + | resp | + resp := GSM48CCDisconnect new. + resp seq: 1. + resp cause data: #(16rE1 16r90). + conn nextPutData: (BSSAPDTAP initWith: resp linkIdentifier: 0). + ]. + aMsg class messageType = GSM48CCMessage msgConnect ifTrue: [ | resp | resp := GSM48CCConnectAck new. + resp seq: 1. conn nextPutData: (BSSAPDTAP initWith: resp linkIdentifier: 0). self success: true. @@ -324,9 +334,17 @@ ProcedureBase subclass: CallProcedure [ aMsg class messageType = GSM48CCMessage msgDisconnect ifTrue: [ | resp | resp := GSM48CCRelease new. + resp seq: 1. resp causeOrDefault data: #(16rE1 16r90) asByteArray. conn nextPutData: (BSSAPDTAP initWith: resp linkIdentifier: 0) ]. + + aMsg class messageType = GSM48CCMessage msgRelease ifTrue: [ + | resp | + resp := GSM48CCReleaseCompl new. + resp seq: 1. + conn nextPutData: (BSSAPDTAP initWith: resp linkIdentifier: 0) + ]. ] ] |