Hi Radhika,

In the server code of telephony, in tcore_server_type
GSList *hook_list_request;
GSList *hook_list_notification;

And the user requests and notifications are added to the list using the
below functions.
tcore_server_add_request_hook()
tcore_server_add_notification_hook()

Am able to see the notifications are added by using the above said
function, but no where the tcore_server_add_request_hook() function is used.
But still the server refers to the list of hook_request during its dispatch
function.

*So its not clear how the user requests get added to the hook_request_list.*
*Can anyone explain this hook_request_list concept please?*
Yes, right said presently no Module is using
tcore_server_add_request_hook() function.

Please find below a a brief idea about the hooking concept (and an example
for the same) -
Hooking concept is mainly used to derive some information across various
Modules in Telephony Server which otherwise cannot known about such
occurrences.

For example,
https://review.tizen.org/git/?p=framework/telephony/tel-plugin-imc.git;a=blob;f=src/s_network.c;h=ac279c421573a3ccebd6ec98238a5a8c753e995f;hb=refs/heads/master
2100         *tcore_server_add_notification_hook*(tcore_plugin_ref_server(p),
TNOTI_SIM_STATUS, *on_hook_sim_init*, o);

A hook is added for *TNOTI_SIM_STATUS *notification in *network* Module
which wants to track the SIM Status to manage its State.

Whenever there is a *TNOTI_SIM_STATUS* notification
*on_hook_sim_status*would be invoked -
1623 static enum tcore_hook_return *on_hook_sim_init*(Server *s, CoreObject
*source, enum tcore_notification_command command, unsigned int data_len,
void *data, void *user_data)

We can see here that *network* Module is tracking a notification of
*SIM*module by hooking into its notifications.

Similarly other Modules can even track the Requests sent by a different
Module by hooking to the Requests, which is presently not used.

Warm Regards,
Suresh
On Thu, Jan 3, 2013 at 12:06 PM, Radhika Praveen <[email protected]>wrote:

> Hi Suresh,
>
> I was of notion that the telephony server runs as a service and it will
> have its own way of starting, stopping service.
>
> Now it is clear that it just runs in the GMainLoop context.
>
> Also, do you have any idea of my previous question regarding the request
> hook?
>
> Thanks a lot for your answers.They are very helpful.
>
> Regards
> Radhika
>
>
> On Thu, Jan 3, 2013 at 11:57 AM, Suresh Kumar N. <[email protected]>wrote:
>
>> Hi Radhika,
>>
>>
>> *Is the telephony service a single process?*
>> Yes, Telephony Server runs as a single Process (uses glib, hence runs as
>> a g-main loop).
>>
>>
>> *And if so, and it runs as service, then where is the code/config for
>> defining that service?*
>> Please refer to the below link:
>>
>> https://review.tizen.org/git/?p=framework/telephony/telephony-daemon.git;a=blob;f=src/main.c;h=f26894e58006a7ef384ba88b9fcb31e319225dac;hb=HEAD
>>
>>  139 int *main*(int argc, char *argv[])
>> is the starting point of Telephony Server, which continues as g-main loop
>> when Server starts running,
>>  216         if (*tcore_server_run*(s) == FALSE) {
>>
>> Please let us know what exactly you mean by *config for defining
>> Telephony Server/Service*.
>>
>> Warm Regards,
>> Suresh
>>
>> On Thu, Jan 3, 2013 at 11:31 AM, Radhika Praveen 
>> <[email protected]>wrote:
>>
>>> Hi All,
>>>
>>> Is the telephony service a single process?
>>> We have various libs in telephony such as libtcore and plug-ins, all
>>> will run under a single process?
>>>
>>> And if so, and it runs as service, then where is the code/config for
>>> defining that service?
>>>
>>> Am so confused :( Hope you can give some light upon this.
>>>
>>> Thank you.
>>>
>>> Regards
>>> Radhika
>>>
>>>
>>> On Thu, Jan 3, 2013 at 10:45 AM, Radhika Praveen 
>>> <[email protected]>wrote:
>>>
>>>> Hi All,
>>>>
>>>> In the server code of telephony, in tcore_server_type
>>>> GSList *hook_list_request;
>>>> GSList *hook_list_notification;
>>>>
>>>> And the user requests and notifications are added to the list using the
>>>> below functions.
>>>> tcore_server_add_request_hook()
>>>> tcore_server_add_notification_hook()
>>>>
>>>> Am able to see the notifications are added by using th eabove said
>>>> function, but no where the tcore_server_add_request_hook() function is 
>>>> used.
>>>> But still the server refers to the list of hook_request during its
>>>> dispatch function.
>>>>
>>>> So its not clear how the user requests get added to the
>>>> hook_request_list.
>>>> Can anyone explain this hook_request_list concept please?
>>>>
>>>> Regards
>>>> Radhika
>>>>
>>>>
>>>>
>>>> On Mon, Dec 31, 2012 at 12:12 PM, Radhika Praveen <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi All,
>>>>>
>>>>> I have some doubts regarding the RPM files.
>>>>> While creating TIZEN image, the image will still consist of a set of
>>>>> all RPM files for different packages and these RPM files will be installed
>>>>> during first boot?
>>>>>
>>>>> Or the RPM files will be installed during image creation?
>>>>> If so in what format will the RPM packages will be installed? (Like
>>>>> apk in case of Android)
>>>>>
>>>>> Regards
>>>>> Radhika
>>>>>
>>>>>
>>>>>
>>>>> On Fri, Dec 28, 2012 at 2:37 PM, Radhika Praveen <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Yeah Suresh for the first question I meant giving any additional
>>>>>> functionality only.
>>>>>>
>>>>>>
>>>>>> On Fri, Dec 28, 2012 at 2:20 PM, Suresh Kumar N. <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi Radhika,
>>>>>>>
>>>>>>>
>>>>>>> *For applications to use my plugin I will also have to make changes
>>>>>>> in the libslp-tapi and tel-plugin-dbus_tapi to expose my functionality.
>>>>>>> *
>>>>>>> It isn't clear what is actually meant here when you say "For
>>>>>>> applications to use my plugin".
>>>>>>> If your Plug-in provides the functionalities relevant to Telephony
>>>>>>> then there is NO change required to *libslp-tapi* OR *
>>>>>>> tel-plugin-dbus_tapi*.
>>>>>>> Yes, you may need some changes if your Plug-in provides additional
>>>>>>> Telephony functionalities apart from for those for which interfaces are
>>>>>>> already provided.
>>>>>>>
>>>>>>>
>>>>>>> *And also i was unable to find how the telephony daemon is started.*
>>>>>>> *Is it in some init file?*
>>>>>>> As per the *telephony-daemon *file in *resource/etc/rc.d/init.d*folder 
>>>>>>> in
>>>>>>> *telephony-daemon* Plug-in,
>>>>>>> *if [ ! -e /opt/etc/.hib_capturing ]; then
>>>>>>> /usr/bin/telephony-daemon &
>>>>>>> fi*
>>>>>>> (
>>>>>>> https://review.tizen.org/git/?p=framework/telephony/telephony-daemon.git;a=blob_plain;f=resource/etc/rc.d/init.d/telephony-daemon;hb=HEAD
>>>>>>> )
>>>>>>>
>>>>>>> Which means it must be started during Tizen boot-up sequence.
>>>>>>>
>>>>>>> Warm Regards,
>>>>>>> Suresh
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Dec 28, 2012 at 1:15 PM, Radhika Praveen <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Thank you Suresh. That was a great answer.
>>>>>>>>
>>>>>>>> I see the telephony daemon is loading all the plugins that is
>>>>>>>> available in the path:"/usr/lib/telephony/plugins/".
>>>>>>>>
>>>>>>>> So my understanding is all the plugins will be loaded at the start
>>>>>>>> of the telephony service.
>>>>>>>> And if i want to write my own plugin, i have to make sure it is
>>>>>>>> loaded by telephony daemon.
>>>>>>>> For applications to use my plugin I will also have to make changes
>>>>>>>> in the libslp-tapi and tel-plugin-dbus_tapi to expose my functionality.
>>>>>>>> Is this correct?
>>>>>>>>
>>>>>>>> And also i was unable to find how the telephony daemon is started.
>>>>>>>> Is it in some init file?
>>>>>>>>
>>>>>>>> Regards
>>>>>>>> Radhika
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Fri, Dec 28, 2012 at 12:46 PM, Suresh Kumar N. <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi Radhika,
>>>>>>>>>
>>>>>>>>> Good to know build is successful!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *So is this the final output of the telephony module?*
>>>>>>>>> YES, successful build would result in 3-4 RPMs as mentioned by
>>>>>>>>> you. Every folder/Plug-in would generate it's own RPM.
>>>>>>>>> In most of the cases it is just 3 RPMs -
>>>>>>>>> *libslp-tapi-0.6.14-1.armv7l.**rpm                      - A*ctual
>>>>>>>>> RPM that needs to be installed
>>>>>>>>> *libslp-tapi-debuginfo-0.6.14-**1.armv7l.rpm     - *RPM that
>>>>>>>>> contains information for debugging
>>>>>>>>> *libslp-tapi-debugsource-0.6.**14-1.armv7l.rpm - *RPM that
>>>>>>>>> contains references to Source files useful while debugging
>>>>>>>>>
>>>>>>>>> *libslp-tapi-devel-0.6.14-1.armv7l.rpm*
>>>>>>>>> The other RPM generated depends on whether there is different
>>>>>>>>> branch present (development) and is included in mainstream build.
>>>>>>>>>
>>>>>>>>> Installation of *libslp-tapi-0.6.14-1.armv7l.**rpm *is sufficient
>>>>>>>>> to get *libslp-tapi* functionality.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *If so every folder/plugin is considered as separate library?
>>>>>>>>> *
>>>>>>>>> Not necessarily as a library, but each folder/Plug-in would
>>>>>>>>> generate it's corresponding RPM (shared object).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *Is the plugins loaded dynamically or all the plugins are loaded
>>>>>>>>> when the telephony service is started?*
>>>>>>>>>  All these RPMs ( each Plug-in's) when installed, installs it's
>>>>>>>>> corresponding '*.so*' in "*/usr/lib/telephony/plugins/*" folder.
>>>>>>>>> These .so's are loaded by Telephony Server during it's
>>>>>>>>> initialization.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *My confusion is whether all these rpm files belonging to the
>>>>>>>>> telephony folder constitute the telephony service or a separate 
>>>>>>>>> single .so
>>>>>>>>> or .dll is created for telephony service?*
>>>>>>>>> NO, there is NO separate .so OR .dll created for Telephony Service
>>>>>>>>> apart from these RPMs. As mentioned earlier, we need to install these 
>>>>>>>>> RPMs
>>>>>>>>> individually.
>>>>>>>>> There is a possibility of these RPMs getting clubbed with the
>>>>>>>>> mainstream Tizen Platform binary such that these RPMs would become 
>>>>>>>>> part of
>>>>>>>>> Platform binary and installation of Platform would in turn install 
>>>>>>>>> these
>>>>>>>>> RPMs (manual installation is not needed).
>>>>>>>>>
>>>>>>>>> Warm Regards,
>>>>>>>>> Suresh
>>>>>>>>>
>>>>>>>>> On Fri, Dec 28, 2012 at 12:22 PM, Radhika Praveen <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> Hi All,
>>>>>>>>>>
>>>>>>>>>> I built the telephony module alone.
>>>>>>>>>> It built successfully.
>>>>>>>>>> I was checking the output.
>>>>>>>>>> It is available in the form of rpm files.
>>>>>>>>>> For every folder in the telephony module 3 or 4 rpm files have
>>>>>>>>>> been built. Below is one example:
>>>>>>>>>>
>>>>>>>>>> Inside folder GBS-ROOT\local\repos\tizen\armv7l\RPMS
>>>>>>>>>> libslp-tapi-0.6.14-1.armv7l.rpm
>>>>>>>>>> libslp-tapi-debuginfo-0.6.14-1.armv7l.rpm
>>>>>>>>>> libslp-tapi-debugsource-0.6.14-1.armv7l.rpm
>>>>>>>>>> libslp-tapi-devel-0.6.14-1.armv7l.rpm
>>>>>>>>>>
>>>>>>>>>> So is this the final output of the telephony module?
>>>>>>>>>> If so every folder/plugin is considered as separate library?
>>>>>>>>>> Is the plugins loaded dynamically or all the plugins are loaded
>>>>>>>>>> when the telephony service is started?
>>>>>>>>>>
>>>>>>>>>> My confusion is whether all these rpm files belonging to the
>>>>>>>>>> telephony folder constitute the telephony service or a separate 
>>>>>>>>>> single .so
>>>>>>>>>> or .dll is created for telephony service?
>>>>>>>>>>
>>>>>>>>>> Regards
>>>>>>>>>> Radhika
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> General mailing list
>>>>>>>>>> [email protected]
>>>>>>>>>> https://lists.tizen.org/listinfo/general
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
_______________________________________________
General mailing list
[email protected]
https://lists.tizen.org/listinfo/general

Reply via email to