Paging refers to a BTS. To page a mobile phone, the current location is required. If paging succeeds or expires, the BTS structure is also given to the callback function (cbfn).
Because paging refers to a BTS, the cbfn (callback function) must include a pointer to bts.
There is no implementation yet for the paging of the actual BTS where the subscriber is located. gsm_04_08.c always uses BTS 0 (in later patches) The database requires improvement to store the current BTS number.
Hi Andreas,
On Thu, May 21, 2009 at 02:27:36PM +0200, Andreas.Eversberg wrote:
Paging refers to a BTS. To page a mobile phone, the current location is required. If paging succeeds or expires, the BTS structure is also given to the callback function (cbfn).
Because paging refers to a BTS, the cbfn (callback function) must include a pointer to bts.
The paging response includes a lchan pointer, which can be resolved to the physical channel / timeslot and to the trx and finally to the BTS. Is this not sufficient?
Hi again,
On Sat, May 23, 2009 at 02:23:11PM +0800, Harald Welte wrote:
On Thu, May 21, 2009 at 02:27:36PM +0200, Andreas.Eversberg wrote:
Paging refers to a BTS. To page a mobile phone, the current location is required. If paging succeeds or expires, the BTS structure is also given to the callback function (cbfn).
Because paging refers to a BTS, the cbfn (callback function) must include a pointer to bts.
The paging response includes a lchan pointer, which can be resolved to the physical channel / timeslot and to the trx and finally to the BTS. Is this not sufficient?
Ah, ok, in the case we do not successfully allocate a lchan, then that's obviously NULL.
Still, when you call paging_request() you actually pass on a number of parameters, including:
1) the BTS on which you want to page (whcih, indeed, is currently the BTS of the calling party rather than the called party). So this parameter is likely to get removed soon.
2) The subscriber that was called. This should be used by paging_request() to resolve the BTS that this subscriber was last seen/registered to.
3) a reference to the call, which is treated as an opaque pointer that is passed back as a reference when calling the call-back function. So if the bts of the calling or called party needs to be known, it should probably be referenced from that data structure.
Or am I missing something?