We have a lot of questions about mod_openzap & PRI. 1. If to see directory libs/openzap/src/isdn it is possible to see, there are defined such dialects : Q931, national, EvroISDN, DMS, 5ESS. $ ls *.c 5ESSmes.c DMSStateNT.c mfifo.c Q921.c Q931mes.c 5ESSStateNT.c DMSStateTE.c nationalmes.c Q931api.c Q931StateNT.c 5ESSStateTE.c EuroISDNStateNT.c nationalStateNT.c Q931.c Q931StateTE.c DMSmes.c EuroISDNStateTE.c nationalStateTE.c Q931ie.c Q932mes.c Into the file libs/openzap/src/isdn/include/Q931.h (line ~500) are defined only 4 dialects typedef enum // Dialect enum { Q931_Dialect_Q931 = 0, Q931_Dialect_National = 2, Q931_Dialect_DMS = 4, Q931_Dialect_5ESS = 6, // Coming soon to a PRI stack near you! Q931_Dialect_Count } Q931Dialect_t; #define DIALECT_STRINGS "q931", "", "national", "", "dms", "", "5ess", "" Is it possible to add our own dialect PRI (for another submission of SUBBADDRESS, for example), if we'll add new files *mess.c, *StateNT.c, *StateTE and definition * into the Q931Dialect_t ? ================================================================================ 2. We start zaptel : # ls /dev/zap 1 12 15 18 20 23 26 29 31 34 37 4 42 45 48 50 53 56 59 61 8 ctl 10 13 16 19 21 24 27 3 32 35 38 40 43 46 49 51 54 57 6 62 9 pseudo 11 14 17 2 22 25 28 30 33 36 39 41 44 47 5 52 55 58 60 7 channel timer - zaptel is started and configured normally. Next load FreeSWITCH... We use such configuration file for mod_openzap : <configuration name="openzap.conf" description="OpenZAP Configuration"> <settings> <param name="debug" value="1"/> </settings> <pri_spans> <span id="1"> <param name="mode" value="user" /> <param name="dialect" value="dms" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> <span id="2"> <param name="mode" value="user" /> <param name="dialect" value="q931" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> </pri_spans> </configuration> Next we start (from FreeSWITCH console): freeswitch@opos8.altron.lan> console loglevel 9 freeswitch@opos8.altron.lan> load mod_openzap ... freeswitch@opos8.altron.lan> oz dump 1 16 API CALL [oz(dump 1 16)] output: span_id: 1 chan_id: 16 physical_span_id: 1 physical_chan_id: 16 type: DQ921 state: UP last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE freeswitch@opos8.altron.lan> oz dump 2 16 API CALL [oz(dump 2 16)] output: span_id: 2 chan_id: 16 physical_span_id: 2 physical_chan_id: 47 type: DQ921 state: UP%! last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE In what manner ( using console or debugging messages ) we can see in run-time mode under what type of a dialect every "span" is configured ? If we'll specify for nonexistent dialects: <pri_spans> <span id="1"> <param name="dialect" value="ABC" /> </span> <span id="2"> <param name="dialect" value="XYZ" /> </span> </pri_spans> - then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before. What dialect is used by "span" in this case? How it can be looked?
Evgeniy, I'm not sure why EuroISDN isn't listed in the enum or string below because I know that Stefan (stkn on IRC) has been working on it for some time. I'll follow up with him and Mike Jerris to see what's going on there. As for seeing the dialect at run-time, right now you can't, although I don't see what that functionality can't be added. Most likely you'll need to use the "oz list" CLI command which gives output like this: +OK span: 1 type: isdn chan_count: 24 dialplan: XML context: default dial_regex: fail_dial_regex: hold_music: analog_options none +OK span: 2 type: isdn chan_count: 24 dialplan: XML context: default dial_regex: fail_dial_regex: hold_music: analog_options none Again, I'll confer with the big boys and see what other information can be added, or possibly we can create a PRI-specific CLI command like "oz list pri" that shows only PRI spans. Stay tuned for more information... -MC On Thu, Sep 18, 2008 at 6:48 AM, Evgeniy Zolotov <zolotov@altron.ua> wrote:
We have a lot of questions about mod_openzap & PRI.
1. If to see directory libs/openzap/src/isdn it is possible to see, there are defined such dialects : Q931, national, EvroISDN, DMS, 5ESS.
$ ls *.c 5ESSmes.c DMSStateNT.c mfifo.c Q921.c Q931mes.c 5ESSStateNT.c DMSStateTE.c nationalmes.c Q931api.c Q931StateNT.c 5ESSStateTE.c EuroISDNStateNT.c nationalStateNT.c Q931.c Q931StateTE.c DMSmes.c EuroISDNStateTE.c nationalStateTE.c Q931ie.c Q932mes.c
Into the file libs/openzap/src/isdn/include/Q931.h (line ~500) are defined only 4 dialects
typedef enum // Dialect enum { Q931_Dialect_Q931 = 0, Q931_Dialect_National = 2, Q931_Dialect_DMS = 4, Q931_Dialect_5ESS = 6, // Coming soon to a PRI stack near you!
Q931_Dialect_Count } Q931Dialect_t; #define DIALECT_STRINGS "q931", "", "national", "", "dms", "", "5ess", ""
Is it possible to add our own dialect PRI (for another submission of SUBBADDRESS, for example), if we'll add new files *mess.c, *StateNT.c, *StateTE and definition * into the Q931Dialect_t ?
================================================================================
2. We start zaptel :
# ls /dev/zap 1 12 15 18 20 23 26 29 31 34 37 4 42 45 48 50 53 56 59 61 8 ctl 10 13 16 19 21 24 27 3 32 35 38 40 43 46 49 51 54 57 6 62 9 pseudo 11 14 17 2 22 25 28 30 33 36 39 41 44 47 5 52 55 58 60 7 channel timer
- zaptel is started and configured normally.
Next load FreeSWITCH...
We use such configuration file for mod_openzap :
<configuration name="openzap.conf" description="OpenZAP Configuration"> <settings> <param name="debug" value="1"/> </settings> <pri_spans> <span id="1"> <param name="mode" value="user" /> <param name="dialect" value="dms" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> <span id="2"> <param name="mode" value="user" /> <param name="dialect" value="q931" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> </pri_spans> </configuration>
Next we start (from FreeSWITCH console):
freeswitch@opos8.altron.lan> console loglevel 9 freeswitch@opos8.altron.lan> load mod_openzap ... freeswitch@opos8.altron.lan> oz dump 1 16 API CALL [oz(dump 1 16)] output: span_id: 1 chan_id: 16 physical_span_id: 1 physical_chan_id: 16 type: DQ921 state: UP last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE
freeswitch@opos8.altron.lan> oz dump 2 16 API CALL [oz(dump 2 16)] output: span_id: 2 chan_id: 16 physical_span_id: 2 physical_chan_id: 47 type: DQ921 state: UP%! last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE
In what manner ( using console or debugging messages ) we can see in run-time mode under what type of a dialect every "span" is configured ?
If we'll specify for nonexistent dialects:
<pri_spans> <span id="1"> <param name="dialect" value="ABC" /> </span> <span id="2"> <param name="dialect" value="XYZ" /> </span> </pri_spans>
- then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before.
What dialect is used by "span" in this case? How it can be looked?
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Thanks for all. But I am in perplexity now - how we can khow, what any certain dialect is carried out? Look for this example:
If we'll specify for nonexistent dialects:
<pri_spans> <span id="1"> <param name="dialect" value="ABC" /> </span> <span id="2"> <param name="dialect" value="XYZ" /> </span> </pri_spans>
- then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before.
What dialect is carried out here? ----- Original Message ----- From: Michael Collins To: freeswitch-users@lists.freeswitch.org Sent: Thursday, September 18, 2008 5:39 PM Subject: Re: [Freeswitch-users] mod_openzap & PRI Evgeniy, I'm not sure why EuroISDN isn't listed in the enum or string below because I know that Stefan (stkn on IRC) has been working on it for some time. I'll follow up with him and Mike Jerris to see what's going on there. As for seeing the dialect at run-time, right now you can't, although I don't see what that functionality can't be added. Most likely you'll need to use the "oz list" CLI command which gives output like this: +OKspan: 1type: isdnchan_count: 24dialplan: XMLcontext: defaultdial_regex: fail_dial_regex: hold_music: analog_options none+OKspan: 2type: isdnchan_count: 24dialplan: XML context: defaultdial_regex: fail_dial_regex: hold_music: analog_options noneAgain, I'll confer with the big boys and see what other information can be added, or possibly we can create a PRI-specific CLI command like "oz list pri" that shows only PRI spans. Stay tuned for more information... -MC On Thu, Sep 18, 2008 at 6:48 AM, Evgeniy Zolotov <zolotov@altron.ua> wrote: We have a lot of questions about mod_openzap & PRI. 1. If to see directory libs/openzap/src/isdn it is possible to see, there are defined such dialects : Q931, national, EvroISDN, DMS, 5ESS. $ ls *.c 5ESSmes.c DMSStateNT.c mfifo.c Q921.c Q931mes.c 5ESSStateNT.c DMSStateTE.c nationalmes.c Q931api.c Q931StateNT.c 5ESSStateTE.c EuroISDNStateNT.c nationalStateNT.c Q931.c Q931StateTE.c DMSmes.c EuroISDNStateTE.c nationalStateTE.c Q931ie.c Q932mes.c Into the file libs/openzap/src/isdn/include/Q931.h (line ~500) are defined only 4 dialects typedef enum // Dialect enum { Q931_Dialect_Q931 = 0, Q931_Dialect_National = 2, Q931_Dialect_DMS = 4, Q931_Dialect_5ESS = 6, // Coming soon to a PRI stack near you! Q931_Dialect_Count } Q931Dialect_t; #define DIALECT_STRINGS "q931", "", "national", "", "dms", "", "5ess", "" Is it possible to add our own dialect PRI (for another submission of SUBBADDRESS, for example), if we'll add new files *mess.c, *StateNT.c, *StateTE and definition * into the Q931Dialect_t ? ================================================================================ 2. We start zaptel : # ls /dev/zap 1 12 15 18 20 23 26 29 31 34 37 4 42 45 48 50 53 56 59 61 8 ctl 10 13 16 19 21 24 27 3 32 35 38 40 43 46 49 51 54 57 6 62 9 pseudo 11 14 17 2 22 25 28 30 33 36 39 41 44 47 5 52 55 58 60 7 channel timer - zaptel is started and configured normally. Next load FreeSWITCH... We use such configuration file for mod_openzap : <configuration name="openzap.conf" description="OpenZAP Configuration"> <settings> <param name="debug" value="1"/> </settings> <pri_spans> <span id="1"> <param name="mode" value="user" /> <param name="dialect" value="dms" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> <span id="2"> <param name="mode" value="user" /> <param name="dialect" value="q931" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> </pri_spans> </configuration> Next we start (from FreeSWITCH console): freeswitch@opos8.altron.lan> console loglevel 9 freeswitch@opos8.altron.lan> load mod_openzap ... freeswitch@opos8.altron.lan> oz dump 1 16 API CALL [oz(dump 1 16)] output: span_id: 1 chan_id: 16 physical_span_id: 1 physical_chan_id: 16 type: DQ921 state: UP last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE freeswitch@opos8.altron.lan> oz dump 2 16 API CALL [oz(dump 2 16)] output: span_id: 2 chan_id: 16 physical_span_id: 2 physical_chan_id: 47 type: DQ921 state: UP%! last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE In what manner ( using console or debugging messages ) we can see in run-time mode under what type of a dialect every "span" is configured ? If we'll specify for nonexistent dialects: <pri_spans> <span id="1"> <param name="dialect" value="ABC" /> </span> <span id="2"> <param name="dialect" value="XYZ" /> </span> </pri_spans> - then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before. What dialect is used by "span" in this case? How it can be looked? _______________________________________________ Freeswitch-users mailing list Freeswitch-users@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@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
euro should work fine with the q931 dialect. Miike On Sep 18, 2008, at 12:04 PM, Evgeniy Zolotov wrote:
Thanks for all. But I am in perplexity now - how we can khow, what any certain dialect is carried out?
Look for this example:
If we'll specify for nonexistent dialects:
<pri_spans> <span id="1"> <param name="dialect" value="ABC" /> </span> <span id="2"> <param name="dialect" value="XYZ" /> </span> </pri_spans>
- then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before.
What dialect is carried out here? ----- Original Message ----- From: Michael Collins To: freeswitch-users@lists.freeswitch.org Sent: Thursday, September 18, 2008 5:39 PM Subject: Re: [Freeswitch-users] mod_openzap & PRI
Evgeniy,
I'm not sure why EuroISDN isn't listed in the enum or string below because I know that Stefan (stkn on IRC) has been working on it for some time. I'll follow up with him and Mike Jerris to see what's going on there.
As for seeing the dialect at run-time, right now you can't, although I don't see what that functionality can't be added. Most likely you'll need to use the "oz list" CLI command which gives output like this: +OK span: 1 type: isdn chan_count: 24 dialplan: XML context: default dial_regex: fail_dial_regex: hold_music: analog_options none +OK span: 2 type: isdn chan_count: 24 dialplan: XML
context: default dial_regex: fail_dial_regex: hold_music: analog_options none Again, I'll confer with the big boys and see what other information can be added, or possibly we can create a PRI-specific CLI command like "oz list pri" that shows only PRI spans. Stay tuned for more information...
-MC
On Thu, Sep 18, 2008 at 6:48 AM, Evgeniy Zolotov <zolotov@altron.ua> wrote: We have a lot of questions about mod_openzap & PRI.
1. If to see directory libs/openzap/src/isdn it is possible to see, there are defined such dialects : Q931, national, EvroISDN, DMS, 5ESS.
$ ls *.c 5ESSmes.c DMSStateNT.c mfifo.c Q921.c Q931mes.c 5ESSStateNT.c DMSStateTE.c nationalmes.c Q931api.c Q931StateNT.c 5ESSStateTE.c EuroISDNStateNT.c nationalStateNT.c Q931.c Q931StateTE.c DMSmes.c EuroISDNStateTE.c nationalStateTE.c Q931ie.c Q932mes.c
Into the file libs/openzap/src/isdn/include/Q931.h (line ~500) are defined only 4 dialects
typedef enum // Dialect enum { Q931_Dialect_Q931 = 0, Q931_Dialect_National = 2, Q931_Dialect_DMS = 4, Q931_Dialect_5ESS = 6, // Coming soon to a PRI stack near you!
Q931_Dialect_Count } Q931Dialect_t; #define DIALECT_STRINGS "q931", "", "national", "", "dms", "", "5ess", ""
Is it possible to add our own dialect PRI (for another submission of SUBBADDRESS, for example), if we'll add new files *mess.c, *StateNT.c, *StateTE and definition * into the Q931Dialect_t ?
= = = = = = = = = = ======================================================================
2. We start zaptel :
# ls /dev/zap 1 12 15 18 20 23 26 29 31 34 37 4 42 45 48 50 53 56 59 61 8 ctl 10 13 16 19 21 24 27 3 32 35 38 40 43 46 49 51 54 57 6 62 9 pseudo 11 14 17 2 22 25 28 30 33 36 39 41 44 47 5 52 55 58 60 7 channel timer
- zaptel is started and configured normally.
Next load FreeSWITCH...
We use such configuration file for mod_openzap :
<configuration name="openzap.conf" description="OpenZAP Configuration"> <settings> <param name="debug" value="1"/> </settings> <pri_spans> <span id="1"> <param name="mode" value="user" /> <param name="dialect" value="dms" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> <span id="2"> <param name="mode" value="user" /> <param name="dialect" value="q931" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> </pri_spans> </configuration>
Next we start (from FreeSWITCH console):
freeswitch@opos8.altron.lan> console loglevel 9 freeswitch@opos8.altron.lan> load mod_openzap ... freeswitch@opos8.altron.lan> oz dump 1 16 API CALL [oz(dump 1 16)] output: span_id: 1 chan_id: 16 physical_span_id: 1 physical_chan_id: 16 type: DQ921 state: UP last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE
freeswitch@opos8.altron.lan> oz dump 2 16 API CALL [oz(dump 2 16)] output: span_id: 2 chan_id: 16 physical_span_id: 2 physical_chan_id: 47 type: DQ921 state: UP%! last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE
In what manner ( using console or debugging messages ) we can see in run-time mode under what type of a dialect every "span" is configured ?
If we'll specify for nonexistent dialects:
<pri_spans> <span id="1"> <param name="dialect" value="ABC" /> </span> <span id="2"> <param name="dialect" value="XYZ" /> </span> </pri_spans>
- then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before.
What dialect is used by "span" in this case? How it can be looked?
Thanks, Mike. But what dialect works when we make <param name="dialect" value="ABC" /> or <param name="dialect" value="XYZ" /> How we can define it ???????????????????????? (See example below) ----- Original Message ----- From: Michael Jerris To: freeswitch-users@lists.freeswitch.org Sent: Thursday, September 18, 2008 7:43 PM Subject: Re: [Freeswitch-users] mod_openzap & PRI euro should work fine with the q931 dialect. Miike On Sep 18, 2008, at 12:04 PM, Evgeniy Zolotov wrote: Thanks for all. But I am in perplexity now - how we can khow, what any certain dialect is carried out? Look for this example: > If we'll specify for nonexistent dialects: > > <pri_spans> > <span id="1"> > <param name="dialect" value="ABC" /> > </span> > <span id="2"> > <param name="dialect" value="XYZ" /> > </span> > </pri_spans> > > - then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before. What dialect is carried out here? ----- Original Message ----- From: Michael Collins To: freeswitch-users@lists.freeswitch.org Sent: Thursday, September 18, 2008 5:39 PM Subject: Re: [Freeswitch-users] mod_openzap & PRI Evgeniy, I'm not sure why EuroISDN isn't listed in the enum or string below because I know that Stefan (stkn on IRC) has been working on it for some time. I'll follow up with him and Mike Jerris to see what's going on there. As for seeing the dialect at run-time, right now you can't, although I don't see what that functionality can't be added. Most likely you'll need to use the "oz list" CLI command which gives output like this: +OKspan: 1type: isdnchan_count: 24dialplan: XMLcontext: defaultdial_regex: fail_dial_regex: hold_music: analog_options none+OKspan: 2type: isdnchan_count: 24dialplan: XML context: defaultdial_regex: fail_dial_regex: hold_music: analog_options noneAgain, I'll confer with the big boys and see what other information can be added, or possibly we can create a PRI-specific CLI command like "oz list pri" that shows only PRI spans. Stay tuned for more information... -MC On Thu, Sep 18, 2008 at 6:48 AM, Evgeniy Zolotov <zolotov@altron.ua> wrote: We have a lot of questions about mod_openzap & PRI. 1. If to see directory libs/openzap/src/isdn it is possible to see, there are defined such dialects : Q931, national, EvroISDN, DMS, 5ESS. $ ls *.c 5ESSmes.c DMSStateNT.c mfifo.c Q921.c Q931mes.c 5ESSStateNT.c DMSStateTE.c nationalmes.c Q931api.c Q931StateNT.c 5ESSStateTE.c EuroISDNStateNT.c nationalStateNT.c Q931.c Q931StateTE.c DMSmes.c EuroISDNStateTE.c nationalStateTE.c Q931ie.c Q932mes.c Into the file libs/openzap/src/isdn/include/Q931.h (line ~500) are defined only 4 dialects typedef enum // Dialect enum { Q931_Dialect_Q931 = 0, Q931_Dialect_National = 2, Q931_Dialect_DMS = 4, Q931_Dialect_5ESS = 6, // Coming soon to a PRI stack near you! Q931_Dialect_Count } Q931Dialect_t; #define DIALECT_STRINGS "q931", "", "national", "", "dms", "", "5ess", "" Is it possible to add our own dialect PRI (for another submission of SUBBADDRESS, for example), if we'll add new files *mess.c, *StateNT.c, *StateTE and definition * into the Q931Dialect_t ? ================================================================================ 2. We start zaptel : # ls /dev/zap 1 12 15 18 20 23 26 29 31 34 37 4 42 45 48 50 53 56 59 61 8 ctl 10 13 16 19 21 24 27 3 32 35 38 40 43 46 49 51 54 57 6 62 9 pseudo 11 14 17 2 22 25 28 30 33 36 39 41 44 47 5 52 55 58 60 7 channel timer - zaptel is started and configured normally. Next load FreeSWITCH... We use such configuration file for mod_openzap : <configuration name="openzap.conf" description="OpenZAP Configuration"> <settings> <param name="debug" value="1"/> </settings> <pri_spans> <span id="1"> <param name="mode" value="user" /> <param name="dialect" value="dms" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> <span id="2"> <param name="mode" value="user" /> <param name="dialect" value="q931" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> </pri_spans> </configuration> Next we start (from FreeSWITCH console): freeswitch@opos8.altron.lan> console loglevel 9 freeswitch@opos8.altron.lan> load mod_openzap ... freeswitch@opos8.altron.lan> oz dump 1 16 API CALL [oz(dump 1 16)] output: span_id: 1 chan_id: 16 physical_span_id: 1 physical_chan_id: 16 type: DQ921 state: UP last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE freeswitch@opos8.altron.lan> oz dump 2 16 API CALL [oz(dump 2 16)] output: span_id: 2 chan_id: 16 physical_span_id: 2 physical_chan_id: 47 type: DQ921 state: UP%! last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE In what manner ( using console or debugging messages ) we can see in run-time mode under what type of a dialect every "span" is configured ? If we'll specify for nonexistent dialects: <pri_spans> <span id="1"> <param name="dialect" value="ABC" /> </span> <span id="2"> <param name="dialect" value="XYZ" /> </span> </pri_spans> - then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before. What dialect is used by "span" in this case? How it can be looked? ------------------------------------------------------------------------------ _______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
my guess would be that it just fails to load. what does the debug say? Mike On Sep 18, 2008, at 1:19 PM, Evgeniy Zolotov wrote:
Thanks, Mike. But what dialect works when we make
<param name="dialect" value="ABC" />
or
<param name="dialect" value="XYZ" />
How we can define it ???????????????????????? (See example below)
the dialects are not all done. we so far can do DMS100 and euro please join #openzap on irc.freenode.net and join the effort. On Thu, Sep 18, 2008 at 8:48 AM, Evgeniy Zolotov <zolotov@altron.ua> wrote:
We have a lot of questions about mod_openzap & PRI.
1. If to see directory libs/openzap/src/isdn it is possible to see, there are defined such dialects : Q931, national, EvroISDN, DMS, 5ESS.
$ ls *.c 5ESSmes.c DMSStateNT.c mfifo.c Q921.c Q931mes.c 5ESSStateNT.c DMSStateTE.c nationalmes.c Q931api.c Q931StateNT.c 5ESSStateTE.c EuroISDNStateNT.c nationalStateNT.c Q931.c Q931StateTE.c DMSmes.c EuroISDNStateTE.c nationalStateTE.c Q931ie.c Q932mes.c
Into the file libs/openzap/src/isdn/include/Q931.h (line ~500) are defined only 4 dialects
typedef enum // Dialect enum { Q931_Dialect_Q931 = 0, Q931_Dialect_National = 2, Q931_Dialect_DMS = 4, Q931_Dialect_5ESS = 6, // Coming soon to a PRI stack near you!
Q931_Dialect_Count } Q931Dialect_t; #define DIALECT_STRINGS "q931", "", "national", "", "dms", "", "5ess", ""
Is it possible to add our own dialect PRI (for another submission of SUBBADDRESS, for example), if we'll add new files *mess.c, *StateNT.c, *StateTE and definition * into the Q931Dialect_t ?
================================================================================
2. We start zaptel :
# ls /dev/zap 1 12 15 18 20 23 26 29 31 34 37 4 42 45 48 50 53 56 59 61 8 ctl 10 13 16 19 21 24 27 3 32 35 38 40 43 46 49 51 54 57 6 62 9 pseudo 11 14 17 2 22 25 28 30 33 36 39 41 44 47 5 52 55 58 60 7 channel timer
- zaptel is started and configured normally.
Next load FreeSWITCH...
We use such configuration file for mod_openzap :
<configuration name="openzap.conf" description="OpenZAP Configuration"> <settings> <param name="debug" value="1"/> </settings> <pri_spans> <span id="1"> <param name="mode" value="user" /> <param name="dialect" value="dms" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> <span id="2"> <param name="mode" value="user" /> <param name="dialect" value="q931" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> </pri_spans> </configuration>
Next we start (from FreeSWITCH console):
freeswitch@opos8.altron.lan> console loglevel 9 freeswitch@opos8.altron.lan> load mod_openzap ... freeswitch@opos8.altron.lan> oz dump 1 16 API CALL [oz(dump 1 16)] output: span_id: 1 chan_id: 16 physical_span_id: 1 physical_chan_id: 16 type: DQ921 state: UP last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE
freeswitch@opos8.altron.lan> oz dump 2 16 API CALL [oz(dump 2 16)] output: span_id: 2 chan_id: 16 physical_span_id: 2 physical_chan_id: 47 type: DQ921 state: UP%! last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE
In what manner ( using console or debugging messages ) we can see in run-time mode under what type of a dialect every "span" is configured ?
If we'll specify for nonexistent dialects:
<pri_spans> <span id="1"> <param name="dialect" value="ABC" /> </span> <span id="2"> <param name="dialect" value="XYZ" /> </span> </pri_spans>
- then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before.
What dialect is used by "span" in this case? How it can be looked?
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ AIM: anthm MSN:anthony_minessale@hotmail.com <MSN%3Aanthony_minessale@hotmail.com> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com<PAYPAL%3Aanthony.minessale@gmail.com> IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org <sip%3A888@conference.freeswitch.org> iax:guest@conference.freeswitch.org/888 googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:213-799-1400
Is it possible to add our own dialect PRI (for another submission of SUBBADDRESS, for example), if we'll add new files *mess.c, *StateNT.c, *StateTE and definition * into the Q931Dialect_t ?
We have added new dialect ( li_ewsd, similar to Q.931, but different that bytes of data SUBADDRES do not mask with & 0x7F - - so the specifications of telephone stations EWSD & Surpass demands, which place into SUBADDRES special user info ( different for EWSD & Surpass stations) ). We have made some changes in libs/openzap/src/isdn/include/Q931.h: typedef enum // Dialect enum { Q931_Dialect_Q931 = 0, Q931_Dialect_National = 2, Q931_Dialect_DMS = 4, Q931_Dialect_5ESS = 6, // Coming soon to a PRI stack near you! Q931_Dialect_li_ewsd = 8, // Coming soon to a PRI stack near you! Q931_Dialect_Count } Q931Dialect_t; #define DIALECT_STRINGS "q931", "", "national", "", "dms", "", "5ess", "", "li_ewsd", "" After recompilation mod_openzap we connect 2 FreeSWITCH on different hosts with PRI channel through 2xE1. Then we manage to receive. [host 1, X-Lite] -SIP-> [host 2, FS] -PRI-> [host 3, FS] -> record_session() Written *.wav the file is identical to that was told from X-Lite softphone Записанный *.wav файл идентичен тому, что говорилось из X-Lite softphone... But periodically ( > than minute ) such messages are output on FreeSWITCH console: 2008-09-18 18:53:47 [WARNING] zap_zt.c:668 zt_next_event() Unhandled event 8 2008-09-18 18:53:47 [DEBUG] zap_isdn.c:790 process_event() EVENT [INVALID][1:16] STATE [UP] We can suppose, that it because of both sides of PRI channel are configured in such manner <pri_spans> <span id="1"> <param name="mode" value="user" /> <param name="dialect" value="li_ewsd" /> .... </span> - because of "user". Are we right? ----- Original Message ----- From: Anthony Minessale To: freeswitch-users@lists.freeswitch.org Sent: Thursday, September 18, 2008 5:39 PM Subject: Re: [Freeswitch-users] mod_openzap & PRI the dialects are not all done. we so far can do DMS100 and euro please join #openzap on irc.freenode.net and join the effort. On Thu, Sep 18, 2008 at 8:48 AM, Evgeniy Zolotov <zolotov@altron.ua> wrote: We have a lot of questions about mod_openzap & PRI. 1. If to see directory libs/openzap/src/isdn it is possible to see, there are defined such dialects : Q931, national, EvroISDN, DMS, 5ESS. $ ls *.c 5ESSmes.c DMSStateNT.c mfifo.c Q921.c Q931mes.c 5ESSStateNT.c DMSStateTE.c nationalmes.c Q931api.c Q931StateNT.c 5ESSStateTE.c EuroISDNStateNT.c nationalStateNT.c Q931.c Q931StateTE.c DMSmes.c EuroISDNStateTE.c nationalStateTE.c Q931ie.c Q932mes.c Into the file libs/openzap/src/isdn/include/Q931.h (line ~500) are defined only 4 dialects typedef enum // Dialect enum { Q931_Dialect_Q931 = 0, Q931_Dialect_National = 2, Q931_Dialect_DMS = 4, Q931_Dialect_5ESS = 6, // Coming soon to a PRI stack near you! Q931_Dialect_Count } Q931Dialect_t; #define DIALECT_STRINGS "q931", "", "national", "", "dms", "", "5ess", "" Is it possible to add our own dialect PRI (for another submission of SUBBADDRESS, for example), if we'll add new files *mess.c, *StateNT.c, *StateTE and definition * into the Q931Dialect_t ? ================================================================================ 2. We start zaptel : # ls /dev/zap 1 12 15 18 20 23 26 29 31 34 37 4 42 45 48 50 53 56 59 61 8 ctl 10 13 16 19 21 24 27 3 32 35 38 40 43 46 49 51 54 57 6 62 9 pseudo 11 14 17 2 22 25 28 30 33 36 39 41 44 47 5 52 55 58 60 7 channel timer - zaptel is started and configured normally. Next load FreeSWITCH... We use such configuration file for mod_openzap : <configuration name="openzap.conf" description="OpenZAP Configuration"> <settings> <param name="debug" value="1"/> </settings> <pri_spans> <span id="1"> <param name="mode" value="user" /> <param name="dialect" value="dms" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> <span id="2"> <param name="mode" value="user" /> <param name="dialect" value="q931" /> <param name="dialplan" value="XML"/> <param name="context" value="public" /> </span> </pri_spans> </configuration> Next we start (from FreeSWITCH console): freeswitch@opos8.altron.lan> console loglevel 9 freeswitch@opos8.altron.lan> load mod_openzap ... freeswitch@opos8.altron.lan> oz dump 1 16 API CALL [oz(dump 1 16)] output: span_id: 1 chan_id: 16 physical_span_id: 1 physical_chan_id: 16 type: DQ921 state: UP last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE freeswitch@opos8.altron.lan> oz dump 2 16 API CALL [oz(dump 2 16)] output: span_id: 2 chan_id: 16 physical_span_id: 2 physical_chan_id: 47 type: DQ921 state: UP%! last_state: DOWN cid_date: cid_name: cid_num: ani: aniII: dnis: rdnis: cause: NONE In what manner ( using console or debugging messages ) we can see in run-time mode under what type of a dialect every "span" is configured ? If we'll specify for nonexistent dialects: <pri_spans> <span id="1"> <param name="dialect" value="ABC" /> </span> <span id="2"> <param name="dialect" value="XYZ" /> </span> </pri_spans> - then >load mod_openzap is carried out successfully and >oz dump <i> <j> gives us same result like before. What dialect is used by "span" in this case? How it can be looked? _______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org iax:guest@conference.freeswitch.org/888 googletalk:conf+888@conference.freeswitch.org pstn:213-799-1400 ------------------------------------------------------------------------------ _______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
On Sep 18, 2008, at 1:13 PM, Evgeniy Zolotov wrote:
Is it possible to add our own dialect PRI (for another submission of SUBBADDRESS, for example), if we'll add new files *mess.c, *StateNT.c, *StateTE and definition * into the Q931Dialect_t ?
We have added new dialect ( li_ewsd, similar to Q.931, but different that bytes of data SUBADDRES do not mask with & 0x7F - - so the specifications of telephone stations EWSD & Surpass demands, which place into SUBADDRES special user info ( different for EWSD & Surpass stations) ).
We have made some changes in libs/openzap/src/isdn/include/Q931.h:
typedef enum // Dialect enum { Q931_Dialect_Q931 = 0, Q931_Dialect_National = 2, Q931_Dialect_DMS = 4, Q931_Dialect_5ESS = 6, // Coming soon to a PRI stack near you! Q931_Dialect_li_ewsd = 8, // Coming soon to a PRI stack near you!
Q931_Dialect_Count } Q931Dialect_t; #define DIALECT_STRINGS "q931", "", "national", "", "dms", "", "5ess", "", "li_ewsd", ""
After recompilation mod_openzap we connect 2 FreeSWITCH on different hosts with PRI channel through 2xE1. Then we manage to receive.
[host 1, X-Lite] -SIP-> [host 2, FS] -PRI-> [host 3, FS] -> record_session()
Written *.wav the file is identical to that was told from X-Lite softphone
Записанный *.wav файл идентичен тому, что говорилось из X-Lite softphone...
But periodically ( > than minute ) such messages are output on FreeSWITCH console:
2008-09-18 18:53:47 [WARNING] zap_zt.c:668 zt_next_event() Unhandled event 8 2008-09-18 18:53:47 [DEBUG] zap_isdn.c:790 process_event() EVENT [INVALID][1:16] STATE [UP]
We can suppose, that it because of both sides of PRI channel are configured in such manner
<pri_spans> <span id="1"> <param name="mode" value="user" /> <param name="dialect" value="li_ewsd" /> .... </span> - because of "user".
Are we right?
You can't do 2 hosts back to back both set to user, one end must be the net. FreeSWITCH won't be able to do that until we complete the q931 timer support. Let's move this conversation to the -dev mailing list or hop on irc.freenode.net #openzap and we can discuss in real time. Mike
participants (4)
-
Anthony Minessale
-
Evgeniy Zolotov
-
Michael Collins
-
Michael Jerris