Ticket #288 (closed enhancement: fixed)
retry after registration denied?
| Reported by: | lindi | Owned by: | mickey |
|---|---|---|---|
| Priority: | major | Milestone: | |
| Component: | framework/ogsmd | Version: | |
| Keywords: | Cc: |
Description
Today I noticed that the phone had dropped from GSM network. registration status was "denied" and debug output of frameworkd reveals that +CREG=0,3 was returned and after that trying to call out fails.
2008.12.03 18:01:29 ogsmd DEBUG <MiscChannel via /dev/pts/5>: sending 44 bytes: 'AT+CREG?;+COPS=3,0;+COPS?;+COPS=3,2;+COPS?\r\n'
2008.12.03 18:01:29 ogsmd DEBUG <MiscChannel via /dev/pts/5>: got 14 bytes from: '\r\n+CREG: 0,3\r\n'
2008.12.03 18:01:29 ogsmd DEBUG <MiscChannel via /dev/pts/5>: got 30 bytes from: '\r\n+COPS: 0\r\n\r\n+COPS: 0\r\n\r\nOK\r\n'
2008.12.03 18:01:29 ogsmd DEBUG <MiscChannel via /dev/pts/5>: COMPLETED 'AT+CREG?;+COPS=3,0;+COPS?;+COPS=3,2;+COPS?' => ['+CREG: 0,3', '+COPS: 0', '+COPS: 0', 'OK']
2008.12.03 18:01:29 ogsmd DEBUG |...|...|...|...|...|...|...|...|...|...|...> NetworkGetStatus.genResponseFromChannel: ENTER ('AT+CREG?;+COPS=3,0;+COPS?;+COPS=3,2;+COPS?', ['+CREG: 0,3', '+COPS: 0', '+COPS: 0', 'OK']),{}
2008.12.03 18:01:29 ogsmd.objects INFO org.freesmartphone.GSM.Network.Status: {'cid': '9FBF', 'strength': 84, 'mode': 'automatic', 'lac': '23A0', 'registration': 'denied'}
2008.12.03 18:01:29 ogsmd DEBUG |...|...|...|...|...|...|...|...|...|...|...> NetworkGetStatus.genResponseFromChannel: LEAVE
2008.12.03 18:01:29 ogsmd DEBUG |...|...|...|...|...|...|...|...|...> NetworkGetStatus.__del__: ENTER (),{}
2008.12.03 18:01:29 ogsmd DEBUG |...|...|...|...|...|...|...|...|...> NetworkGetStatus.__del__: LEAVE
2008.12.03 18:01:29 ogsmd DEBUG <MiscChannel via /dev/pts/5> queue is: deque([])
2008.12.03 18:01:29 ogsmd DEBUG <MiscChannel via /dev/pts/5>: nothing in request queue
2008.12.03 18:03:05 ogsmd DEBUG <UnsolicitedResponseChannel via /dev/pts/6>: got 20 bytes from: '\r\n%CSQ: 15, 99, 1\r\n'
2008.12.03 18:03:05 ogsmd.objects INFO org.freesmartphone.GSM.Network.SignalStrength: 79
2008.12.03 18:03:16 ogsmd DEBUG <UnsolicitedResponseChannel via /dev/pts/6>: got 20 bytes from: '\r\n%CSQ: 19, 99, 2\r\n'
2008.12.03 18:03:16 ogsmd.objects INFO org.freesmartphone.GSM.Network.SignalStrength: 86
2008.12.03 18:06:20 ogsmd DEBUG <UnsolicitedResponseChannel via /dev/pts/6>: got 20 bytes from: '\r\n%CSQ: 16, 99, 1\r\n'
2008.12.03 18:06:20 ogsmd.objects INFO org.freesmartphone.GSM.Network.SignalStrength: 81
2008.12.03 18:06:32 ogsmd DEBUG <UnsolicitedResponseChannel via /dev/pts/6>: got 20 bytes from: '\r\n%CSQ: 19, 99, 2\r\n'
2008.12.03 18:06:32 ogsmd.objects INFO org.freesmartphone.GSM.Network.SignalStrength: 86
2008.12.03 18:06:39 ogsmd DEBUG <UnsolicitedResponseChannel via /dev/pts/6>: got 20 bytes from: '\r\n%CSQ: 16, 99, 1\r\n'
2008.12.03 18:06:39 ogsmd.objects INFO org.freesmartphone.GSM.Network.SignalStrength: 81
2008.12.03 18:06:43 ogsmd DEBUG <UnsolicitedResponseChannel via /dev/pts/6>: got 20 bytes from: '\r\n%CSQ: 19, 99, 2\r\n'
2008.12.03 18:06:43 ogsmd.objects INFO org.freesmartphone.GSM.Network.SignalStrength: 86
2008.12.03 18:16:27 ogsmd DEBUG <UnsolicitedResponseChannel via /dev/pts/6>: got 20 bytes from: '\r\n%CSQ: 16, 99, 1\r\n'
2008.12.03 18:16:27 ogsmd.objects INFO org.freesmartphone.GSM.Network.SignalStrength: 81
2008.12.03 18:16:30 ogsmd DEBUG |...|...|...|...|...|...|...|...|...> CallInitiate.__init__: ENTER (<framework.subsystems.ogsmd.objects.Device at /org/freesmartphone/GSM/Device at 0x2531f0>, <function <lambda> at 0x888e70>, <function <lambda> at 0x888bb0>),{'calltype': dbus.String(u'voice'), 'number': dbus.String(u'0800770215')}
2008.12.03 18:16:30 ogsmd DEBUG |...|...|...|...|...|...|...|...|...> CallInitiate.__init__: LEAVE
2008.12.03 18:16:30 ogsmd WARNING <CallChannel via /dev/pts/7>: Got unicode input. Trying to convert to plain string...
2008.12.03 18:16:31 ogsmd DEBUG |...|...|...|...|...|...|...|...> CallInitiate.__del__: ENTER (),{}
2008.12.03 18:16:31 ogsmd DEBUG |...|...|...|...|...|...|...|...> CallInitiate.__del__: LEAVE
2008.12.03 18:16:31 ogsmd DEBUG <CallChannel via /dev/pts/7> queue is: deque([('ATD0800770215;\r\n', <bound method CallHandler.responseFromChannel of <framework.subsystems.ogsmd.modems.ti_calypso.mediator.CallHandler object at 0x846070>>, <bound method CallHandler.errorFromChannel of <framework.subsystems.ogsmd.modems.ti_calypso.mediator.CallHandler object at 0x846070>>, 3600)])
2008.12.03 18:16:31 ogsmd DEBUG <CallChannel via /dev/pts/7>: sending 16 bytes: 'ATD0800770215;\r\n'
2008.12.03 18:16:31 ogsmd DEBUG <CallChannel via /dev/pts/7>: got 6 bytes from: '\r\nOK\r\n'
2008.12.03 18:16:31 ogsmd DEBUG <CallChannel via /dev/pts/7>: COMPLETED 'ATD0800770215;' => ['OK']
AT RESPONSE FROM CHANNEL= ['OK']
2008.12.03 18:16:31 ogsmd DEBUG <UnsolicitedResponseChannel via /dev/pts/6>: got 110 bytes from: '\r\n%CPI: 1,9,0,0,0,0,"0800770215",129,"0074006500730074",,0\r\n\r\n%CPI: 1,8,0,0,,,,,,,0\r\n\r\n%CPI: 1,7,0,0,,,,,,,0\r\n'
2008.12.03 18:16:31 ogsmd.objects INFO org.freesmartphone.GSM.Call.CallStatus: 1 outgoing {'status': 'outgoing', 'peer': '0800770215', 'line': 0, 'direction': 'outgoing'}
2008.12.03 18:16:31 ogsmd.objects INFO org.freesmartphone.GSM.Call.CallStatus: 1 release {'status': 'release'}
2008.12.03 18:16:31 ogsmd DEBUG <CallChannel via /dev/pts/7>: got 14 bytes from: '\r\nNO CARRIER\r\n'
2008.12.03 18:16:31 ogsmd WARNING CALLCHANNEL: UNHANDLED INTERMEDIATE: NO CARRIER
2008.12.03 18:16:31 ogsmd DEBUG <CallChannel via /dev/pts/7> queue is: deque([])
2008.12.03 18:16:31 ogsmd DEBUG <CallChannel via /dev/pts/7>: nothing in request queue
2008.12.03 18:16:31 oeventsd INFO Receive CallStatus, status = outgoing
2008.12.03 18:16:31 oeventsd INFO Receive CallStatus, status = outgoing
2008.12.03 18:16:31 oeventsd INFO Set Audio Scenario gsmhandset
2008.12.03 18:16:31 oeventsd INFO call dbus signal /org/freesmartphone/Device/Audio SetScenario(('gsmhandset',))
2008.12.03 18:16:31 oeventsd INFO Receive CallStatus, status = release
2008.12.03 18:16:31 oeventsd INFO Receive CallStatus, status = release
2008.12.03 18:16:31 oeventsd INFO Revert Audio Scenario to stereoout
2008.12.03 18:16:31 oeventsd INFO call dbus signal /org/freesmartphone/Device/Audio SetScenario(('stereoout',))
2008.12.03 18:16:32 odeviced.audio INFO sound scenario gsmhandset user
2008.12.03 18:16:33 odeviced.audio INFO sound scenario stereoout user
2008.12.03 18:16:33 oeventsd INFO signal SetScenario responded : ()
2008.12.03 18:16:33 oeventsd INFO signal SetScenario responded : ()
2008.12.03 18:16:38 ogsmd DEBUG <UnsolicitedResponseChannel via /dev/pts/6>: got 20 bytes from: '\r\n%CSQ: 18, 99, 2\r\n'
The question here is: Who should try to re-register to network? The user? The phone UI automatically? Or fso-frameworkd automatically?
I am using fso-frameworkd 0.8.4.3-20081130-1 on debian.
Change History
comment:2 Changed 3 years ago by lindi
Thanks, I'll implement this in my minimalistic UI then (although it feels bit odd to do it there too).
comment:3 Changed 3 years ago by mickey
Please test [8909b59fda7d868d23036e689a61f259f1c6884f], I would think it's a step towards what you want. If so, please close this bug.
Note: See
TracTickets for help on using
tickets.

/org/framework/GSM/Device will not implement policy. It's the phone UIs task to react properly to a deregistration event. At max I could imagine /org/framework/GSM/Server to contain something highlevel such as "SetRegistrationPolicy?(always,automatic". I need to get more input on that though.