[Freeswitch-users] Subscribing to events in managed C# / .NET

Phillip Jones pjintheusa at gmail.com
Tue Sep 8 11:12:05 PDT 2009


What is:

freeswitch.msleep(100);

Why aren't you using Thread.Sleep?

On Tue, Sep 8, 2009 at 2:21 AM, Josh Rivers <josh at radianttiger.com> wrote:

> Thanks for the response!
> I have tried putting a long-running loop here, but then it blocks anything
> else managed from happening:
>
>    public class TestLoop : ILoadNotificationPlugin
>     {
>         public bool Load()
>         {
>             EventConsumer con = new EventConsumer("all", "");
>             while (true)
>             {
>                 Event ev = con.pop(0);
>                 Log.WriteLine(LogLevel.Notice, "Event: " +
> ev.serialized_string);
>                 freeswitch.msleep(100);
>             }
>         }
>     }
>
> However, if I fork off a thread here, freeswitch crashes:
>     public class TestLoop : ILoadNotificationPlugin
>     {
>         public bool Load()
>         {
>             ThreadPool.QueueUserWorkItem((o) =>
>             {
>                 Log.WriteLine(LogLevel.Notice, "Thread Starting. ");
>                 EventConsumer con = new EventConsumer("all", "");
>                 while (true)
>                 {
>                     Event ev = con.pop(0);
>                     Log.WriteLine(LogLevel.Notice, "Event: " +
> ev.serialized_string);
>                     freeswitch.msleep(100);
>                 }
>             });
>             return true;
>         }
>     }
>
> It doesn't look like this is a good place to start a long-running process?
>
> Thanks!
> Josh
>
> On Mon, Sep 7, 2009 at 11:05 PM, Raffaele P. Guidi <
> raffaele.p.guidi at gmail.com> wrote:
>
>> Yes!
>> public class LoadDemo : ILoadNotificationPlugin {
>>     public bool Load() {
>>         Log.WriteLine(LogLevel.Notice, "LoadDemo running.");
>>         return true;
>>     }
>> }
>>
>> this example is from Michael Giagnocavo's Demo.csx which you can find into
>> the mod_managed svn.
>>
>> And let me add that works like a charm :)
>>
>> Ciao,
>>    Raffaele
>>
>> On Sun, Sep 6, 2009 at 22:50, Josh Rivers <josh at radianttiger.com> wrote:
>>
>>> Is there a way to start this when FreeSWITCH starts? The lua and perl
>>> modules have a 'startup-script' configuration preference. Is there something
>>> similar in mod_managed? Or is there a way to have an api command executed at
>>> a startup?
>>>
>>> <quote author="Phillip Jones">
>>> Exactly what I was after - thank you!
>>>
>>> On Thu, Sep 3, 2009 at 1:54 PM, Jeff Lenk <jlenk at frontiernet.net> wrote:
>>>
>>> >
>>> > try something like this
>>> >
>>> > EventConsumer con = new EventConsumer("all", "");
>>> > Event ev = con.pop(0);
>>> >
>>> > see lua sample -
>>> > http://wiki.freeswitch.org/wiki/Lua#freeswitch.EventConsumer
>>> >
>>> >
>>> > Phillip Jones-2 wrote:
>>> > >
>>> > > Hi there,
>>> > >
>>> > > mod_managed exposes EventReceivedFunction such that:
>>> > >
>>> > >  Session.EventReceivedFunction = (e) =>
>>> > >  {
>>> > >        Log.WriteLine(LogLevel.Alert, "Received Event {0}",
>>> e.ToString());
>>> > >        return "";
>>> > >  };
>>> > >
>>> > > should trap all events to which i subscribe.
>>> > >
>>> > >
>>> > > But how do I subscribe to events? What is the .NET / managed
>>> equivalent
>>> > > of:
>>> > >
>>> > > switch_event_bind(const char *id, switch_event_types_t event, const
>>> char
>>> > > *subclass_name, switch_event_callback_t callback, void *user_data);
>>> > >
>>> > >
>>> > >
>>> > > Thank you!
>>> > >
>>> > >
>>> > >
>>>
>>> _______________________________________________
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>>>
>>>
>>
>> _______________________________________________
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>>
>
> _______________________________________________
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20090908/148a01e1/attachment-0002.html 


More information about the FreeSWITCH-users mailing list