[Freeswitch-users] How to filter Skypopen chat message in ESL mode?

xuyan yang xyangni at gmail.com
Thu Dec 2 14:09:03 MSK 2010


OK. I will try to make it clear.
In general, my test case is to forward skype call to a extention such as
5655. And then in the dialplan for 5655, continuously play some sound.
During playing, you can send skype chat messages from the caller and check
what esl events has been generated from it. According to my test, the raw
type event is not generated for most of chat messages.

In details,

this is my skypeopen.conf.xml:
<configuration name="skypopen.conf" description="Skypopen Configuration">
  <global_settings>
    <param name="debug" value="8"/>
    <param name="dialplan" value="XML"/>
    <param name="context" value="default"/>
    <param name="destination" value="1000"/>
    <param name="skype_user" value="user1"/>
    <param name="report_incoming_chatmessages" value="true"/>
    <param name="silent_mode" value="false"/>
    <param name="write_silence_when_idle" value="true"/>
  </global_settings>
  <!-- one entry here per each skypopen interface -->
  <per_interface_settings>
    <interface id="1" name="interface1">
        <param name="X11-display" value=":0.0"/>
        <param name="skype_user" value="xxxxxxxxx"/>
        <param name="destination" value="5655"/>
    </interface>

  </per_interface_settings>
</configuration>



in dialplan for default context, add the following to describe extention
5655:

<extension name="skype"  break="on-false">
<condition field="destination_number" expression="^5655$">
        <action application="answer"/>
        <action application="sleep" data="1000"/>
<action application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/> <action
application="playback" data="ivr/ivr-sample_submenu.wav"/>
   </condition>
</extension>

ivr-sample_submenu.wav is a sound file in en/us/callie/ivr/8000, but it can
be replaced by any other wav files.

after setup, make a call to your skype user xxxxxxxxx.
in the mean time use fs_cli to connect FS and execute /event plain MESSAGE
to listen esl events.
sent any chat messages from caller, then you are very likely to find only
the short version events.



On Thu, Dec 2, 2010 at 8:50 AM, Giovanni Maruzzelli <gmaruzz at celliax.org>wrote:

> Xuyan,
>
> please.
>
> Can you give a clear defined procedure to reproduce the problem?
>
> Please, take the time to write it, complete of all relevant info
> (dialplan, script, etc etc) so I can reproduce it from a freshly
> installed FreeSWITCH.
>
> If you don't give this information I cannot fix the problem. And I
> cannot neither read your mind, nor finding the time to try every
> possible combination.
>
> Please, post something someone can cut and paste and a clear step by
> step procedure to replicate.
>
> -giovanni
>
> On Thu, Dec 2, 2010 at 4:45 AM, xuyan yang <xyangni at gmail.com> wrote:
> > I tried it again. When the line is parked and idle. the raw events can
> > always be generated.
> > but if the line is kept busy such as the following case this events is
> trend
> > to have problem
> > <extension name="skype-in"  break="on-false">
> > <condition field="destination_number" expression="^5655$">
> >         <action application="answer"/>
> >         <action application="sleep" data="1000"/>
> > <!--<action application="park"/> -->
> > <action application="playback" data="test.wav"/>
> > <action application="playback" data="test.wav"/>
> > <action application="playback" data="test.wav"/>
> >                                 <action application="playback"
> > data="test.wav"/>
> > <action application="playback" data="test.wav"/>
> > <action application="playback" data="test.wav"/>
> >                                 <action application="playback"
> > data="test.wav"/>
> > <action application="playback" data="test.wav"/>
> > <action application="playback" data="test.wav"/>
> >    </condition>
> > </extension>
> >
> >
> > On Thu, Dec 2, 2010 at 2:01 AM, Giovanni Maruzzelli <gmaruzz at celliax.org
> >
> > wrote:
> >>
> >> I repeat, if you subscribe to "message" events you get only those.
> >> Also, how I can replicate your problem?
> >> I've tested events and I had no problem at all with spurious or
> >> unreliable events in mod-skypopen.
> >> Please, can you indicate a detailed way to reproduce your problem?
> >> -giovanni
> >>
> >> On 12/2/10, xuyan yang <xyangni at gmail.com> wrote:
> >> > I got it. Then the problem should be the unstable behavior of raw
> events
> >> > which has about 25% chances of being missed.
> >> >
> >> > Fortunately, I have found a way to avoid this issue. Ignore all
> message
> >> > events which contains Unique-ID field.
> >> >
> >> > On Wed, Dec 1, 2010 at 11:18 PM, Giovanni Maruzzelli
> >> > <gmaruzz at celliax.org>wrote:
> >> >
> >> >> On Thu, Dec 2, 2010 at 12:15 AM, Giovanni Maruzzelli
> >> >> <gmaruzz at celliax.org> wrote:
> >> >> > If you subscribe only to "MESSAGE" kind of events, you'll get only
> >> >> > those.
> >> >> >
> >> >> > The other events are "raw" events, that other users have requested
> >> >> > for
> >> >> > other purposes.
> >> >>
> >> >> or at  least that is the expected behavior, please let me know if I
> >> >> introduced some regression in integrating that "raw event" thingy.
> >> >>
> >> >> -giovanni
> >> >>
> >> >> >
> >> >> > -giovanni
> >> >> >
> >> >> > On Wed, Dec 1, 2010 at 11:35 PM, xuyan yang <xyangni at gmail.com>
> >> >> > wrote:
> >> >> >> Thanks for your reply. I have read this page before. but the
> random
> >> >> emerging
> >> >> >> of the second verbose esl events is causing trouble. And I guess
> it
> >> >> >> may
> >> >> be a
> >> >> >> bug, or it should be predictable.
> >> >> >> Before reporting to jira, I just want to check whether I have made
> >> >> >> any
> >> >> >> mistake.
> >> >> >>
> >> >> >>
> >> >> >> On Wed, Dec 1, 2010 at 9:35 PM, Giovanni Maruzzelli
> >> >> >> <gmaruzz at gmail.com>
> >> >> >> wrote:
> >> >> >>>
> >> >> >>>
> >> >> >>>
> >> >>
> >> >>
> http://wiki.freeswitch.org/wiki/Mod_skypopen_Skype_Endpoint_and_Trunk#MESSAGE_.28Chat.29
> >> >> >>>
> >> >> >>> On Wed, Dec 1, 2010 at 10:23 PM, xuyan yang <xyangni at gmail.com>
> >> >> >>> wrote:
> >> >> >>> > hi,
> >> >> >>> > I am writing ESL program on FreeSWITCH Version 1.0.head
> >> >> >>> > (git-8825b6e
> >> >> >>> > 2010-11-28 17-15-39 -0500)
> >> >> >>> > I need to handle skype chat message with a inbound ESL
> >> >> >>> > connection.
> >> >> But
> >> >> >>> > there
> >> >> >>> > are 1 or 2 esl events received randomly for each message.
> >> >> >>> > the first short one is alway generated, but the second one is
> >> >> >>> > random.
> >> >> So
> >> >> >>> > when trying to filter according to UUID, nothing is caught in
> >> >> >>> > many
> >> >> >>> > cases.
> >> >> >>> > If I make filter based on skype ID, duplicated messages are
> often
> >> >> heard.
> >> >> >>> > I do not why the behavior of the second event is random.
> >> >> >>> > How should I setup the filter to get 1 and only 1 event for
> each
> >> >> >>> > chat
> >> >> >>> > message? Thanks.
> >> >> >>> >
> >> >> >>> > the first is a short one with the following header:
> >> >> >>> >  [Event-Name] = [MESSAGE]
> >> >> >>> >  [Event-Calling-Function] = [incoming_chatmessage]
> >> >> >>> >  [Event-Date-GMT] = [Wed, 01 Dec 2010 21:02:37 GMT]
> >> >> >>> >  [Core-UUID] = [7d858a18-fcb8-11df-8f82-835ae03a7500]
> >> >> >>> >  [Content-Length] = [1]
> >> >> >>> >  [subject] = [SIMPLE MESSAGE]
> >> >> >>> >  [FreeSWITCH-IPv4] = [192.168.0.3]
> >> >> >>> >  [hint] = [niqizhi]
> >> >> >>> >  [from] = [niqizhi]
> >> >> >>> >  [Event-Date-Local] = [2010-12-01 21:02:37]
> >> >> >>> >  [proto] = [skype]
> >> >> >>> >  [FreeSWITCH-IPv6] = [::1]
> >> >> >>> >  [id] = [5334]
> >> >> >>> >  [Event-Calling-File] = [mod_skypopen.c]
> >> >> >>> >  [Event-Date-Timestamp] = [1291237357051788]
> >> >> >>> >  [FreeSWITCH-Hostname] = [EYSRV]
> >> >> >>> >  [login] = [interface1]
> >> >> >>> >  [during-call] = [true]
> >> >> >>> >  [Event-Calling-Line-Number] = [2915]
> >> >> >>> >  [chatname] = [#niqizhi/$abcdericunion;631dd843d9b3eb1a]
> >> >> >>> > the second is much longer:
> >> >> >>> >  [Caller-Source] = [mod_skypopen]
> >> >> >>> >  [Event-Calling-Function] = [incoming_chatmessage]
> >> >> >>> >  [Event-Date-GMT] = [Wed, 01 Dec 2010 21:02:37 GMT]
> >> >> >>> >  [Answer-State] = [answered]
> >> >> >>> >  [FreeSWITCH-IPv4] = [192.168.0.3]
> >> >> >>> >  [Channel-State] = [CS_EXECUTE]
> >> >> >>> >  [Channel-Read-Codec-Bit-Rate] = [256000]
> >> >> >>> >  [FreeSWITCH-IPv6] = [::1]
> >> >> >>> >  [Unique-ID] = [412764c0-fd8e-11df-9019-835ae03a7500]
> >> >> >>> >  [Channel-Read-Codec-Rate] = [16000]
> >> >> >>> >  [Caller-Destination-Number] = [5655]
> >> >> >>> >  [Caller-Channel-Transfer-Time] = [0]
> >> >> >>> >  [Channel-Call-State] = [ACTIVE]
> >> >> >>> >  [Caller-Channel-Progress-Media-Time] = [0]
> >> >> >>> >  [FreeSWITCH-Hostname] = [EYSRV]
> >> >> >>> >  [Caller-Channel-Answered-Time] = [1291237326697085]
> >> >> >>> >  [login] = [interface1]
> >> >> >>> >  [during-call] = [true]
> >> >> >>> >  [Channel-Name] = [skypopen/interface1]
> >> >> >>> >  [Caller-Unique-ID] = [412764c0-fd8e-11df-9019-835ae03a7500]
> >> >> >>> >  [Core-UUID] = [7d858a18-fcb8-11df-8f82-835ae03a7500]
> >> >> >>> >  [Channel-Read-Codec-Name] = [L16]
> >> >> >>> >  [Caller-Channel-Name] = [skypopen/interface1]
> >> >> >>> >  [Caller-Caller-ID-Number] = [niqizhi]
> >> >> >>> >  [Event-Date-Timestamp] = [1291237357051788]
> >> >> >>> >  [Channel-State-Number] = [4]
> >> >> >>> >  [Event-Calling-Line-Number] = [2888]
> >> >> >>> >  [chatname] = [#niqizhi/$abcdericunion;631dd843d9b3eb1a]
> >> >> >>> >  [Event-Name] = [MESSAGE]
> >> >> >>> >  [Content-Length] = [1]
> >> >> >>> >  [subject] = [SIMPLE MESSAGE]
> >> >> >>> >  [Caller-Caller-ID-Name] = [niqizhi]
> >> >> >>> >  [from] = [niqizhi]
> >> >> >>> >  [Caller-Dialplan] = [XML]
> >> >> >>> >  [Caller-Channel-Hangup-Time] = [0]
> >> >> >>> >  [id] = [5334]
> >> >> >>> >  [Caller-Profile-Index] = [1]
> >> >> >>> >  [Caller-Direction] = [inbound]
> >> >> >>> >  [Caller-Username] = [skypopen]
> >> >> >>> >  [Channel-Write-Codec-Name] = [L16]
> >> >> >>> >  [Call-Direction] = [inbound]
> >> >> >>> >  [Caller-Screen-Bit] = [true]
> >> >> >>> >  [hint] = [niqizhi]
> >> >> >>> >  [Caller-Privacy-Hide-Number] = [false]
> >> >> >>> >  [Event-Date-Local] = [2010-12-01 21:02:37]
> >> >> >>> >  [proto] = [skype]
> >> >> >>> >  [Caller-Channel-Created-Time] = [1291237326468855]
> >> >> >>> >  [Event-Calling-File] = [mod_skypopen.c]
> >> >> >>> >  [Caller-Channel-Progress-Time] = [0]
> >> >> >>> >  [Caller-Privacy-Hide-Name] = [false]
> >> >> >>> >  [Channel-Write-Codec-Rate] = [16000]
> >> >> >>> >  [Caller-Context] = [default]
> >> >> >>> >  [Channel-Write-Codec-Bit-Rate] = [256000]
> >> >> >>> >  [Presence-Call-Direction] = [inbound]
> >> >> >>> >  [Caller-Profile-Created-Time] = [1291237326468855]
> >> >> >>> > _______________________________________________
> >> >> >>> > 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
> >> >> >>> >
> >> >> >>> >
> >> >> >>>
> >> >> >>>
> >> >> >>>
> >> >> >>> --
> >> >> >>> Sincerely,
> >> >> >>>
> >> >> >>> Giovanni Maruzzelli
> >> >> >>> Cell : +39-347-2665618
> >> >> >>>
> >> >> >>> _______________________________________________
> >> >> >>> 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
> >> >> >>
> >> >> >>
> >> >> >
> >> >> >
> >> >> >
> >> >> > --
> >> >> > Sincerely,
> >> >> >
> >> >> > Giovanni Maruzzelli
> >> >> > Cell : +39-347-2665618
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Sincerely,
> >> >>
> >> >> Giovanni Maruzzelli
> >> >> Cell : +39-347-2665618
> >> >>
> >> >> _______________________________________________
> >> >> 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
> >> >>
> >> >
> >>
> >> --
> >> Sent from my mobile device
> >>
> >> Sincerely,
> >>
> >> Giovanni Maruzzelli
> >> Cell : +39-347-2665618
> >>
> >> _______________________________________________
> >> 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
> >
> >
>
>
>
> --
> Sincerely,
>
> Giovanni Maruzzelli
> Cell : +39-347-2665618
>
> _______________________________________________
> 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/20101202/1196d0bd/attachment-0001.html 


More information about the FreeSWITCH-users mailing list