Re: [asterisk-dev] How to diagnose early media on a PRI

2014-08-04 Thread Pavel Troller
> >>I'm not an expert on PRI, but maybe your telco is not passing on the early 
> >>media to the caller.
> 
> Yes, I believe that to be the case as well.  My Telco has been...less than 
> helpful.  They are blaming the PBX, so I'm looking for a way to prove that 
> asterisk is doing things correctly and shift the blame back on them.
> 
Hi!
  It's very probable that the PSTN switch is not passing audio, even you are 
sending the Progress IE in the Alerting message telling that the audio is 
available.
  It is the default setting of most "mature" PSTN switches. For example, on 
EWSD, you would need to have the parameter PTHRUCON in your category to allow 
passing audio from the PBX without answer. Without it, the switch starts 
sending its own Ringback tone and totally ignores your media. With other 
switches, it's very similar.
  However, I'm very surprised, why Asterisk sends Alerting at all ? There 
should be DISCONNECT with Clear Cause 17 (User Busy) and it can also contain 
the Progress IE with Inband Info now Available. 
  With regards,
Pavel


> -Justin
> 
> 
> From: asterisk-dev-boun...@lists.digium.com 
> [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
> Sent: Monday, August 04, 2014 9:27 AM
> To: Asterisk Developers Mailing List
> Subject: Re: [asterisk-dev] How to diagnose early media on a PRI
> 
> Why do you want to use early media instead of using OOB signaling by using 
> Hangup(17)?
> 
> I'm not an expert on PRI, but maybe your telco is not passing on the early 
> media to the caller.
> 
> From: asterisk-dev-boun...@lists.digium.com 
> [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
> Sent: Monday, August 04, 2014 12:23 PM
> To: Asterisk Developers Mailing List
> Subject: Re: [asterisk-dev] How to diagnose early media on a PRI
> 
> I have tried it, yes - the results are the same.  When Busy() is called, the 
> channel driver gets a message and opens the early media stream if it hasn't 
> been opened already.  I have the Q.931 entry for the alerting message for 
> "Progress Description: Inband information or appropriate pattern now 
> available. (8)":
> 
> PRI Span: 8 > DL-DATA request
> PRI Span: 8 > Protocol Discriminator: Q.931 (8)  len=9
> PRI Span: 8 > TEI=0 Call Ref: len= 2 (reference 1885/0x75D) (Sent to 
> originator)
> PRI Span: 8 > Message Type: ALERTING (1)
> PRI Span: 8 TEI=0 Transmitting N(S)=11, window is open V(A)=10 K=7
> PRI Span: 8
> PRI Span: 8 > Protocol Discriminator: Q.931 (8)  len=9
> PRI Span: 8 > TEI=0 Call Ref: len= 2 (reference 1885/0x75D) (Sent to 
> originator)
> PRI Span: 8 > Message Type: ALERTING (1)
> PRI Span: 8 > [1e 02 81 88]
> PRI Span: 8 > Progress Indicator (len= 4) [ Ext: 1  Coding: CCITT (ITU) 
> standard (0)  0: 0  Location: Private network serving the local user (1)
> PRI Span: 8 >   Ext: 1  Progress Description: 
> Inband information or appropriate pattern now available. (8) ]
> 
> 
> And it seems the Telco has received it on the other side:
> 
> Q931-Q931 message-
> 
> 001 1000 Protocol Discriminator : 8 - Q.931/I.145 user-ntwk call control 
> msg
> 
> CRV--Call Reference Value-
> 
> 002 0010 Length of CRV  : 2 -
> 
> --
> 
> 003 .0111000 Reference value: 56 -
> 
>   | 1... Reference Flag : 1 - To call ref originator
> 
> 004 1100 Reference value: 222
> 
> --
> 
> 005 x001 Message Type   : 1 - Alert message
> 
> QPARMS---Q931 Parameters--
> 
> -Q931 Parameter---
> 
> 006 x000 Parameter Name : 30 - Progress Indicator
> 
> 007 0010 Parameter Length   : 2
> 
> PRGIND---Progress Indicator---
> 
> 008 ...x0001 Location   : 1 - Private network serving the local 
> user
> 
>   | .00. Coding Std.: 0 - CCITT Standardized Coding
> 
>   | 1... Extension Bit  : 1 - Last Octet
> 
> 009 .0001000 Progress Description   : 8 - In-band info/an appr. pattern is 
> now avlbl
> 
>   | 1... Extension Bit  : 1 - Last Octet
> 
> --
> 
> This is (I assume) the opening of the early media stream.  I'm just not sure 
> where to go from there.
> 
> -Justin
> 
> From: 
> asterisk-dev-boun...@lists.digium.com
>  [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
> Sent: Monday, August 04, 2014 8:59 AM
> To: Asterisk Developers Mailing List
> Subject:

Re: [asterisk-dev] [Code Review] 3890: chan_iax2: Several media format fixes.

2014-08-04 Thread rmudgett

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3890/#review12976
---



/trunk/channels/iax2/include/codec_pref.h


Fixed comment to read:
Array is ordered by preference.  Contains the iax2_supported_formats[] 
index + 1.


- rmudgett


On Aug. 4, 2014, 7:41 p.m., rmudgett wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3890/
> ---
> 
> (Updated Aug. 4, 2014, 7:41 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-24150
> https://issues.asterisk.org/jira/browse/ASTERISK-24150
> 
> 
> Repository: Asterisk
> 
> 
> Description
> ---
> 
> * Fixed the iax.conf bandwidth option.  This is the root cause of
> ASTERISK-24150.
> 
> * Added checks in iax2_request() to ensure that there are actual formats
> requested for the new channel to prevent any more fracks from issues like
> ASTERISK-24150.  This is a consequence of the iax.conf bandwidth option
> not working.
> 
> * Fixed struct iax2_codec_pref.order member size mismatch issue when
> converting to and from the codec preference order list passed over the
> wire.  In addition the values sent over the wire are now compatible with
> previous Asterisk versions.
> 
> * Fixed several issues dealing with the struct iax2_codec_pref members.
> Off-by-one, array limit errors, and the order/framing members always need
> to be updated together.
> 
> * Made iax2_request() setup the channel's native format preference order
> according to the user's wishes.  The new media format strategy needs the
> order specified earler.
> 
> * Fixed usage of ast_format_compatibility_bitfield2format().  The function
> can return NULL if the bitfield was not associated with a function.
> 
> * Deleted dead code iax2_codec_pref_getsize() and
> iax2_codec_pref_setsize().
> 
> * Made iax2_parse_allow_disallow() and iax2_codec_pref_string() call
> iax2_codec_pref_to_cap() instead of inlining it.
> 
> * Made IAX_CAPABILITY_MEDBANDWIDTH, IAX_CAPABILITY_LOWBANDWIDTH, and
> IAX_CAPABILITY_LOWFREE constants again as they were in Asterisk v1.8.
> 
> * Renamed prefs to prefs_global so it won't get confused with the local
> pref versions.
> 
> * Fixed too small buffer in handle_cli_iax2_show_peer().
> 
> * Fixed ast_cli() calls in handle_cli_iax2_show_peer() to output complete
> lines.
> 
> * Changed struct create_addr_info.prefs to be struct iax2_codec_pref as an
> optimization so iax2_request() and iax2_call() do less work.
> 
> * Fixed a potential deadlock in ast_iax2_new() on an off-nominal path when
> the pbx could not get started.
> 
> * Made set_config() setup a local prefs list along side the local
> capability format bitfield.  Once the config is loaded, then the local
> copies are put into the global versions.
> 
> * Fix unininialized codec_buf in function_iaxpeer().
> 
> This review includes the changes in
> https://reviewboard.asterisk.org/r/3889/ when merged to trunk and the
> conflicts fixed for this patch.
> 
> 
> Diffs
> -
> 
>   /trunk/main/format_compatibility.c 420026 
>   /trunk/include/asterisk/format_compatibility.h 420026 
>   /trunk/channels/iax2/include/format_compatibility.h 420026 
>   /trunk/channels/iax2/include/codec_pref.h 420026 
>   /trunk/channels/iax2/format_compatibility.c 420026 
>   /trunk/channels/iax2/codec_pref.c 420026 
>   /trunk/channels/chan_iax2.c 420026 
> 
> Diff: https://reviewboard.asterisk.org/r/3890/diff/
> 
> 
> Testing
> ---
> 
> * The iax.conf bandwidth option is now functional and no longer causes a 
> frack when a call is made.
> 
> * The CLI "iax2 show peer" has enough buffer space to generate a longer codec 
> list for the configured codecs header.
> 
> 
> Thanks,
> 
> rmudgett
> 
>

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

[asterisk-dev] [Code Review] 3890: chan_iax2: Several media format fixes.

2014-08-04 Thread rmudgett

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3890/
---

Review request for Asterisk Developers.


Bugs: ASTERISK-24150
https://issues.asterisk.org/jira/browse/ASTERISK-24150


Repository: Asterisk


Description
---

* Fixed the iax.conf bandwidth option.  This is the root cause of
ASTERISK-24150.

* Added checks in iax2_request() to ensure that there are actual formats
requested for the new channel to prevent any more fracks from issues like
ASTERISK-24150.  This is a consequence of the iax.conf bandwidth option
not working.

* Fixed struct iax2_codec_pref.order member size mismatch issue when
converting to and from the codec preference order list passed over the
wire.  In addition the values sent over the wire are now compatible with
previous Asterisk versions.

* Fixed several issues dealing with the struct iax2_codec_pref members.
Off-by-one, array limit errors, and the order/framing members always need
to be updated together.

* Made iax2_request() setup the channel's native format preference order
according to the user's wishes.  The new media format strategy needs the
order specified earler.

* Fixed usage of ast_format_compatibility_bitfield2format().  The function
can return NULL if the bitfield was not associated with a function.

* Deleted dead code iax2_codec_pref_getsize() and
iax2_codec_pref_setsize().

* Made iax2_parse_allow_disallow() and iax2_codec_pref_string() call
iax2_codec_pref_to_cap() instead of inlining it.

* Made IAX_CAPABILITY_MEDBANDWIDTH, IAX_CAPABILITY_LOWBANDWIDTH, and
IAX_CAPABILITY_LOWFREE constants again as they were in Asterisk v1.8.

* Renamed prefs to prefs_global so it won't get confused with the local
pref versions.

* Fixed too small buffer in handle_cli_iax2_show_peer().

* Fixed ast_cli() calls in handle_cli_iax2_show_peer() to output complete
lines.

* Changed struct create_addr_info.prefs to be struct iax2_codec_pref as an
optimization so iax2_request() and iax2_call() do less work.

* Fixed a potential deadlock in ast_iax2_new() on an off-nominal path when
the pbx could not get started.

* Made set_config() setup a local prefs list along side the local
capability format bitfield.  Once the config is loaded, then the local
copies are put into the global versions.

* Fix unininialized codec_buf in function_iaxpeer().

This review includes the changes in
https://reviewboard.asterisk.org/r/3889/ when merged to trunk and the
conflicts fixed for this patch.


Diffs
-

  /trunk/main/format_compatibility.c 420026 
  /trunk/include/asterisk/format_compatibility.h 420026 
  /trunk/channels/iax2/include/format_compatibility.h 420026 
  /trunk/channels/iax2/include/codec_pref.h 420026 
  /trunk/channels/iax2/format_compatibility.c 420026 
  /trunk/channels/iax2/codec_pref.c 420026 
  /trunk/channels/chan_iax2.c 420026 

Diff: https://reviewboard.asterisk.org/r/3890/diff/


Testing
---

* The iax.conf bandwidth option is now functional and no longer causes a frack 
when a call is made.

* The CLI "iax2 show peer" has enough buffer space to generate a longer codec 
list for the configured codecs header.


Thanks,

rmudgett

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

[asterisk-dev] [Code Review] 3889: format: Remove incorrectly assigned format compatibility bits for Opus and VP8.

2014-08-04 Thread rmudgett

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3889/
---

Review request for Asterisk Developers.


Repository: Asterisk


Description
---

The format compatibility bits need to remain frozen to new codecs.  Otherwise, 
older channel drivers like chan_iax2 could attempt to negotiate them when they 
have no support for negotiating any of the format's other potential parameters. 
 In addition, the chan_iax2 format preference order values sent over the wire 
have no defined fixed value to represent Opus and VP8.


Diffs
-

  /branches/12/main/format.c 420025 

Diff: https://reviewboard.asterisk.org/r/3889/diff/


Testing
---

Compiles and code inspeciton.

See format.c:format_list_init() and format_pref.c:ast_codec_pref_convert().
The format_list container is used to generate the format_list_array which is 
then is used by chan_iax2 to determine the format index sent over the wire in 
IAX_IE_CODEC_PREFS.


Thanks,

rmudgett

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 3870: alembic: Adjust sippeers, queue_members, and voicemail_messages tables.

2014-08-04 Thread rmudgett

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3870/
---

(Updated Aug. 4, 2014, 4:39 p.m.)


Review request for Asterisk Developers.


Changes
---

Addressed feedback.


Bugs: ASTERISK-23825, ASTERISK-23847 and ASTERISK-23909
https://issues.asterisk.org/jira/browse/ASTERISK-23825
https://issues.asterisk.org/jira/browse/ASTERISK-23847
https://issues.asterisk.org/jira/browse/ASTERISK-23909


Repository: Asterisk


Description
---

* Increased the sippeers useragent max string size to 255.

* Changed the queue_members uniqueid to an auto incremented integer instead of 
a string.

* Increased the voicemail_messages BLOB size to LONGBLOB on mysql.

* Fixed the add_tables_for_pjsip config change version downgrade actions to 
drop a table it created.

* Adjusted the sample alembic.ini files cdr.ini.sample, config.ini.sample, and 
voicemail.ini.sample to give a mysql and postgres sqlalchemy.url lines.


Diffs (updated)
-

  
/branches/12/contrib/ast-db-manage/voicemail/versions/39428242f7f5_increase_recording_column_size.py
 PRE-CREATION 
  /branches/12/contrib/ast-db-manage/voicemail.ini.sample 420024 
  
/branches/12/contrib/ast-db-manage/config/versions/5139253c0423_make_q_member_uniqueid_autoinc.py
 PRE-CREATION 
  
/branches/12/contrib/ast-db-manage/config/versions/43956d550a44_add_tables_for_pjsip.py
 420024 
  
/branches/12/contrib/ast-db-manage/config/versions/1758e8bbf6b_increase_useragent_column_size.py
 PRE-CREATION 
  /branches/12/contrib/ast-db-manage/config.ini.sample 420024 
  /branches/12/contrib/ast-db-manage/cdr.ini.sample 420024 

Diff: https://reviewboard.asterisk.org/r/3870/diff/


Testing
---

The alembic table adjustments work in the upgrade and downgrade modes for mysql 
and postgres.

The queue_members change does give a postgres warning message from the postgres 
alembic backend about a mysql only kind of change.  The warning is benign and 
can be ignored as it is an alembic only warning.


Thanks,

rmudgett

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 3870: alembic: Adjust sippeers, queue_members, and voicemail_messages tables.

2014-08-04 Thread rmudgett


> On Aug. 4, 2014, 4:10 p.m., Mark Michelson wrote:
> > /branches/12/contrib/ast-db-manage/voicemail/versions/39428242f7f5_increase_recording_column_size.py,
> >  lines 36-37
> > 
> >
> > There is something just absolutely frightening about this. Can you add 
> > to your comment:
> > 
> > 1) why this is necessary
> > 2) a reference indicating that this is the correct way of doing this 
> > for MySQL
> > 3) some reassurance that this will not do something awful for other 
> > DBMSs.
> > 
> > As it looks, every voicemail message is going to have 4GB set aside for 
> > it.

This is necessary because mysql will truncate recordings to about 4 seconds 
worth of audio as mysql limits a BLOB to only 64k.
For postgres, the backend did not output anything different.

This is the only parameter that LargeBinary is documented as accepting.
See LargeBinary http://docs.sqlalchemy.org/en/rel_0_9/core/types.html

I'll augment the comment.


- rmudgett


---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3870/#review12974
---


On July 30, 2014, 9:52 a.m., rmudgett wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3870/
> ---
> 
> (Updated July 30, 2014, 9:52 a.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-23825, ASTERISK-23847 and ASTERISK-23909
> https://issues.asterisk.org/jira/browse/ASTERISK-23825
> https://issues.asterisk.org/jira/browse/ASTERISK-23847
> https://issues.asterisk.org/jira/browse/ASTERISK-23909
> 
> 
> Repository: Asterisk
> 
> 
> Description
> ---
> 
> * Increased the sippeers useragent max string size to 255.
> 
> * Changed the queue_members uniqueid to an auto incremented integer instead 
> of a string.
> 
> * Increased the voicemail_messages BLOB size to LONGBLOB on mysql.
> 
> * Fixed the add_tables_for_pjsip config change version downgrade actions to 
> drop a table it created.
> 
> * Adjusted the sample alembic.ini files cdr.ini.sample, config.ini.sample, 
> and voicemail.ini.sample to give a mysql and postgres sqlalchemy.url lines.
> 
> 
> Diffs
> -
> 
>   
> /branches/12/contrib/ast-db-manage/voicemail/versions/39428242f7f5_increase_recording_column_size.py
>  PRE-CREATION 
>   /branches/12/contrib/ast-db-manage/voicemail.ini.sample 419804 
>   
> /branches/12/contrib/ast-db-manage/config/versions/5139253c0423_make_q_member_uniqueid_autoinc.py
>  PRE-CREATION 
>   
> /branches/12/contrib/ast-db-manage/config/versions/43956d550a44_add_tables_for_pjsip.py
>  419804 
>   
> /branches/12/contrib/ast-db-manage/config/versions/1758e8bbf6b_increase_useragent_column_size.py
>  PRE-CREATION 
>   /branches/12/contrib/ast-db-manage/config.ini.sample 419804 
>   /branches/12/contrib/ast-db-manage/cdr.ini.sample 419804 
> 
> Diff: https://reviewboard.asterisk.org/r/3870/diff/
> 
> 
> Testing
> ---
> 
> The alembic table adjustments work in the upgrade and downgrade modes for 
> mysql and postgres.
> 
> The queue_members change does give a postgres warning message from the 
> postgres alembic backend about a mysql only kind of change.  The warning is 
> benign and can be ignored as it is an alembic only warning.
> 
> 
> Thanks,
> 
> rmudgett
> 
>

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 3870: alembic: Adjust sippeers, queue_members, and voicemail_messages tables.

2014-08-04 Thread Mark Michelson

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3870/#review12974
---



/branches/12/contrib/ast-db-manage/voicemail/versions/39428242f7f5_increase_recording_column_size.py


There is something just absolutely frightening about this. Can you add to 
your comment:

1) why this is necessary
2) a reference indicating that this is the correct way of doing this for 
MySQL
3) some reassurance that this will not do something awful for other DBMSs.

As it looks, every voicemail message is going to have 4GB set aside for it.


- Mark Michelson


On July 30, 2014, 2:52 p.m., rmudgett wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3870/
> ---
> 
> (Updated July 30, 2014, 2:52 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-23825, ASTERISK-23847 and ASTERISK-23909
> https://issues.asterisk.org/jira/browse/ASTERISK-23825
> https://issues.asterisk.org/jira/browse/ASTERISK-23847
> https://issues.asterisk.org/jira/browse/ASTERISK-23909
> 
> 
> Repository: Asterisk
> 
> 
> Description
> ---
> 
> * Increased the sippeers useragent max string size to 255.
> 
> * Changed the queue_members uniqueid to an auto incremented integer instead 
> of a string.
> 
> * Increased the voicemail_messages BLOB size to LONGBLOB on mysql.
> 
> * Fixed the add_tables_for_pjsip config change version downgrade actions to 
> drop a table it created.
> 
> * Adjusted the sample alembic.ini files cdr.ini.sample, config.ini.sample, 
> and voicemail.ini.sample to give a mysql and postgres sqlalchemy.url lines.
> 
> 
> Diffs
> -
> 
>   
> /branches/12/contrib/ast-db-manage/voicemail/versions/39428242f7f5_increase_recording_column_size.py
>  PRE-CREATION 
>   /branches/12/contrib/ast-db-manage/voicemail.ini.sample 419804 
>   
> /branches/12/contrib/ast-db-manage/config/versions/5139253c0423_make_q_member_uniqueid_autoinc.py
>  PRE-CREATION 
>   
> /branches/12/contrib/ast-db-manage/config/versions/43956d550a44_add_tables_for_pjsip.py
>  419804 
>   
> /branches/12/contrib/ast-db-manage/config/versions/1758e8bbf6b_increase_useragent_column_size.py
>  PRE-CREATION 
>   /branches/12/contrib/ast-db-manage/config.ini.sample 419804 
>   /branches/12/contrib/ast-db-manage/cdr.ini.sample 419804 
> 
> Diff: https://reviewboard.asterisk.org/r/3870/diff/
> 
> 
> Testing
> ---
> 
> The alembic table adjustments work in the upgrade and downgrade modes for 
> mysql and postgres.
> 
> The queue_members change does give a postgres warning message from the 
> postgres alembic backend about a mysql only kind of change.  The warning is 
> benign and can be ignored as it is an alembic only warning.
> 
> 
> Thanks,
> 
> rmudgett
> 
>

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 3864: testsuite: Add basic ARI out of call messaging tests

2014-08-04 Thread opticron

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3864/#review12973
---


This is missing a modification to tests/rest_api/tests.yaml.


/asterisk/trunk/tests/rest_api/message/endpoint/send/sipp/message_recv.xml


Use this instead of the strcmp tags and put it just after the :




/asterisk/trunk/tests/rest_api/message/message_modules.py


If you don't like this method of accomplishing a singleton pattern, maybe 
@classmethods would be more to your liking?



/asterisk/trunk/tests/rest_api/message/technology/send/sipp/message_recv.xml


Idem.


- opticron


On July 27, 2014, 9:19 p.m., Matt Jordan wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3864/
> ---
> 
> (Updated July 27, 2014, 9:19 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-23692 and ASTERISK-23969
> https://issues.asterisk.org/jira/browse/ASTERISK-23692
> https://issues.asterisk.org/jira/browse/ASTERISK-23969
> 
> 
> Repository: Asterisk
> 
> 
> Description
> ---
> 
> This patch adds four tests for ARI out of call text messaging support. For 
> the actual patch, see https://reviewboard.asterisk.org/r/3726.
> 
> The tests cover:
>  - message/endpoint/recv - receiving a message while subscribed to an endpoint
>  - message/endpoint/send - sending a message to an endpoint
>  - message/technology/recv - receiving a message while subscribed to a 
> technology
>  - message/technology/send - sending a message through the endpoints/ 
> resource.
> 
> 
> Diffs
> -
> 
>   /asterisk/trunk/tests/rest_api/message/tests.yaml PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/technology/tests.yaml PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/technology/send/test-config.yaml 
> PRE-CREATION 
>   
> /asterisk/trunk/tests/rest_api/message/technology/send/sipp/message_recv.xml 
> PRE-CREATION 
>   
> /asterisk/trunk/tests/rest_api/message/technology/send/configs/ast1/pjsip.conf
>  PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/technology/recv/test-config.yaml 
> PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/technology/recv/sipp/message.xml 
> PRE-CREATION 
>   
> /asterisk/trunk/tests/rest_api/message/technology/recv/configs/ast1/pjsip.conf
>  PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/message_modules.py PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/endpoint/tests.yaml PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/endpoint/send/test-config.yaml 
> PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/endpoint/send/sipp/message_recv.xml 
> PRE-CREATION 
>   
> /asterisk/trunk/tests/rest_api/message/endpoint/send/configs/ast1/pjsip.conf 
> PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/endpoint/recv/test-config.yaml 
> PRE-CREATION 
>   /asterisk/trunk/tests/rest_api/message/endpoint/recv/sipp/message.xml 
> PRE-CREATION 
>   
> /asterisk/trunk/tests/rest_api/message/endpoint/recv/configs/ast1/pjsip.conf 
> PRE-CREATION 
> 
> Diff: https://reviewboard.asterisk.org/r/3864/diff/
> 
> 
> Testing
> ---
> 
> 
> Thanks,
> 
> Matt Jordan
> 
>

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 3781: Retrieve the source port of an incoming (chan_sip) SIP invite

2014-08-04 Thread dtryba

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3781/
---

(Updated Aug. 4, 2014, 3:25 p.m.)


Status
--

This change has been marked as submitted.


Review request for Asterisk Developers.


Changes
---

Committed in revision 419970


Bugs: ASTERISK-24040
https://issues.asterisk.org/jira/browse/ASTERISK-24040


Repository: Asterisk


Description
---

Retrieve the source port of an incoming (chan_sip) SIP invite in the dialplan 
with ${CHANNEL(recvport)}
To complement ${CHANNEL(recvip)} and enable me to make dialplan decisions based 
on source port (in a peerless setup, handle everything as guests using AGI to 
lookup source ip/port for routing/handling).

pjsip appears to have this capability through the CHANNEL function 
(pjsip,local_addr/remote_addr).

Simple 2 line patch using ast_sockaddr_stringify_fmt(const struct ast_sockaddr 
*sa, int format)
to return the port as a string.


Diffs
-

  /trunk/channels/sip/dialplan_functions.c 418610 

Diff: https://reviewboard.asterisk.org/r/3781/diff/


Testing
---

Tested on 11.10.2 (Debian Jessie) and trunk (418610) using IPv4. Having a few 
SIP endpoints connect from different address/ports combinations 
Logged ${CHANNEL(recvip)}:${CHANNEL(recvport)} corresponds with source ip:port 
in packetdumps on the asterisk machine.


Thanks,

dtryba

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 3854: manager.c - Improve documentation for manager command Getvar, Setvar

2014-08-04 Thread rnewton

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3854/
---

(Updated Aug. 4, 2014, 2:42 p.m.)


Status
--

This change has been marked as submitted.


Review request for Asterisk Developers.


Changes
---

Committed in revision 419942


Bugs: ASTERISK-21178
https://issues.asterisk.org/jira/browse/ASTERISK-21178


Repository: Asterisk


Description
---

The documentation wasn't clear that AMI Getvar and Setvar could accept function 
calls.

This is a slight modification to improve clarity.


Diffs
-

  /branches/1.8/main/manager.c 419821 

Diff: https://reviewboard.asterisk.org/r/3854/diff/


Testing
---

Once finalized I'll build in dev-mode with it to make sure I didn't screw up 
any tags.

7/30/14 @ 5:52PM CDT - Builds with no issues in dev-mode.


Thanks,

rnewton

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 3780: res_pjsip_outbound_publish / res_pjsip_publish_asterisk: Add outbound PUBLISH support with 'asterisk' event type.

2014-08-04 Thread Mark Michelson

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3780/#review12969
---


There appears to be the potential for some refcounting badness with the 
ast_sip_outbound_publish structure. The problem is that the structure is passed 
as the "token" parameter to pjsip_publishc_create() without adjusting its 
refcount. Essentially, PJSIP's publish client and sorcery are sharing the same 
reference to the structure. This means that if someone were to perform a 
reload, and sorcery were to drop its reference to the structure, this could 
result in turr'ble things happening if that reload were to occur in the middle 
of a PUBLISH transaction. Consider the following:

* We send a PUBLISH
* We receive a response to the PUBLISH. sip_outbound_publish_callback() is 
called.
* Before the callback completes, sorcery is reloaded, sorcery drops its ref to 
the ast_sip_outbound_publish.
* Sorcery dropping its ref results in the ast_sip_outbound_publish() being 
destroyed.
* Now the callback continues, and attempts to do something like 
ao2_unlock(publish->state)
* Kablooey

Ideally, a way you could implement things safely would be to employ an 
algorithm like the following:
1. When creating the publish client, bump the refcount of the 
ast_sip_outbound_publish so the client has its own reference.
2. When sorcery removes its reference to the object, set a flag on it, and use 
pjsip_publishc_unpublish() to send a final PUBLISH.
3. When sip_outbound_publish_callback() is called for your final PUBLISH, 
remove the publish client's reference to the object. This will result in the 
object's destruction.

This way, you will only destroy the object after all SIP traffic having to do 
with the object has ceased. The trickiest part of implementing this is step 2. 
When an object is removed from configuration and sorcery is reloaded, a sorcery 
observer's delete() callback is not called. However, sorcery observers do get 
notified whenever an object type gets loaded/reloaded. So you could employ a 
sorcery observer that is called into when objects of type "outbound-publish" 
are reloaded. When the object type is reloaded, you can see if any known 
outbound publications have been removed from sorcery. If so, perform the rest 
of step 2 on the removed objects.


/trunk/include/asterisk/res_pjsip_outbound_publish.h


"using" is repeated.



/trunk/res/res_pjsip_outbound_publish.c


"subtype" is not a documented configOption.



/trunk/res/res_pjsip_outbound_publish.c


s/registrations/publications/



/trunk/res/res_pjsip_outbound_publish.c


s/Request/request/



/trunk/res/res_pjsip_outbound_publish.c


You can eliminate the dynamic memory allocation by using 
ast_uuid_generate_str()



/trunk/res/res_pjsip_outbound_publish.c


You'll need to add a call to pjsip_tx_data_dec_ref(tdata) on this failure 
path.



/trunk/res/res_pjsip_outbound_publish.c


There are other areas in the code that follow a pattern like this one. And 
in those, we typically don't care too much if the far end continues to reply 
with a 401/407 to our repeated requests. However, in this case, if a PUBLISH 
repeatedly is answered with a 401/407, this results in the queue not getting 
serviced. There should probably be something in place here to ensure that we 
bail on a publication if we aren't able to authenticate.



/trunk/res/res_pjsip_outbound_publish.c


After destroying publish->state->client, set it to NULL and call 
sip_outbound_publish_alloc() here. The current approach results in the 
outbound_proxy setting being "lost" when the new pjsip_publishc is 
created/initialized.



/trunk/res/res_pjsip_outbound_publish.c


This return path leaves publish->state->client in an unknown state and will 
likely cause a crash the next time the queue is serviced. A better solution 
here is to kill off the client completely here.

Note that "killing the client completely" is something that currently can't 
really be done since sorcery is the arbiter of the lifetime of the publication 
object. However, you could potentially destroy publish->state and set it NULL. 
This could be used as an indication of a "dead" publication that can't have 
messages added to its queue due to some unrecoverable error.



/trunk/res/res_pjsip_outbound_publish.c


Re: [asterisk-dev] [Code Review] 3882: Replace sip_tls_read() and resolve the large SDP poll issue

2014-08-04 Thread rmudgett

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3882/#review12971
---



trunk/channels/chan_sip.c


Should also test for EINTR and do the same thing as for EAGAIN.


- rmudgett


On July 31, 2014, 1:14 p.m., ebroad wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3882/
> ---
> 
> (Updated July 31, 2014, 1:14 p.m.)
> 
> 
> Review request for Asterisk Developers and Alexander Traud.
> 
> 
> Bugs: ASTERISK-18345
> https://issues.asterisk.org/jira/browse/ASTERISK-18345
> 
> 
> Repository: Asterisk
> 
> 
> Description
> ---
> 
> Replace sip_tls_read() and sip_tcp_read() with a single function and resolve 
> the poll/wait issue with large SDP payloads. See 
> https://reviewboard.asterisk.org/r/3653/ for the discussion on this.
> 
> 
> Diffs
> -
> 
>   trunk/channels/chan_sip.c 419821 
> 
> Diff: https://reviewboard.asterisk.org/r/3882/diff/
> 
> 
> Testing
> ---
> 
> Made and received calls successfully with CSipSimple with full SIP headers 
> over TLS, SRTP and multiple codecs enabled ensuring a large SDP payload.
> 
> 
> Thanks,
> 
> ebroad
> 
>

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] How to diagnose early media on a PRI

2014-08-04 Thread Justin Killen
>>I'm not an expert on PRI, but maybe your telco is not passing on the early 
>>media to the caller.

Yes, I believe that to be the case as well.  My Telco has been...less than 
helpful.  They are blaming the PBX, so I'm looking for a way to prove that 
asterisk is doing things correctly and shift the blame back on them.

-Justin


From: asterisk-dev-boun...@lists.digium.com 
[mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
Sent: Monday, August 04, 2014 9:27 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Why do you want to use early media instead of using OOB signaling by using 
Hangup(17)?

I'm not an expert on PRI, but maybe your telco is not passing on the early 
media to the caller.

From: asterisk-dev-boun...@lists.digium.com 
[mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
Sent: Monday, August 04, 2014 12:23 PM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

I have tried it, yes - the results are the same.  When Busy() is called, the 
channel driver gets a message and opens the early media stream if it hasn't 
been opened already.  I have the Q.931 entry for the alerting message for 
"Progress Description: Inband information or appropriate pattern now available. 
(8)":

PRI Span: 8 > DL-DATA request
PRI Span: 8 > Protocol Discriminator: Q.931 (8)  len=9
PRI Span: 8 > TEI=0 Call Ref: len= 2 (reference 1885/0x75D) (Sent to originator)
PRI Span: 8 > Message Type: ALERTING (1)
PRI Span: 8 TEI=0 Transmitting N(S)=11, window is open V(A)=10 K=7
PRI Span: 8
PRI Span: 8 > Protocol Discriminator: Q.931 (8)  len=9
PRI Span: 8 > TEI=0 Call Ref: len= 2 (reference 1885/0x75D) (Sent to originator)
PRI Span: 8 > Message Type: ALERTING (1)
PRI Span: 8 > [1e 02 81 88]
PRI Span: 8 > Progress Indicator (len= 4) [ Ext: 1  Coding: CCITT (ITU) 
standard (0)  0: 0  Location: Private network serving the local user (1)
PRI Span: 8 >   Ext: 1  Progress Description: 
Inband information or appropriate pattern now available. (8) ]


And it seems the Telco has received it on the other side:

Q931-Q931 message-

001 1000 Protocol Discriminator : 8 - Q.931/I.145 user-ntwk call control msg

CRV--Call Reference Value-

002 0010 Length of CRV  : 2 -

--

003 .0111000 Reference value: 56 -

  | 1... Reference Flag : 1 - To call ref originator

004 1100 Reference value: 222

--

005 x001 Message Type   : 1 - Alert message

QPARMS---Q931 Parameters--

-Q931 Parameter---

006 x000 Parameter Name : 30 - Progress Indicator

007 0010 Parameter Length   : 2

PRGIND---Progress Indicator---

008 ...x0001 Location   : 1 - Private network serving the local user

  | .00. Coding Std.: 0 - CCITT Standardized Coding

  | 1... Extension Bit  : 1 - Last Octet

009 .0001000 Progress Description   : 8 - In-band info/an appr. pattern is now 
avlbl

  | 1... Extension Bit  : 1 - Last Octet

--

This is (I assume) the opening of the early media stream.  I'm just not sure 
where to go from there.

-Justin

From: 
asterisk-dev-boun...@lists.digium.com
 [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
Sent: Monday, August 04, 2014 8:59 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Have you tried using Progress?

From: 
asterisk-dev-boun...@lists.digium.com
 [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
Sent: Monday, August 04, 2014 11:58 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Sorry for confusing the issue, I should have stripped out that line from the 
dialplan as well.  Given just the busy() line:

exten => 1005,n,Busy(20)

The busy tone should(?) be generated from the PRI channel driver.  This is the 
tone that the Telco is saying is being sent incorrectly.  I've looked at the 
dahdi configs, and it is setup correctly to use US tones.

-Justin

From: 
asterisk-dev-boun...@lists.digium.com
 [mailto:asterisk-dev-boun...@lists.digium.com] On Behal

Re: [asterisk-dev] [Code Review] 3882: Replace sip_tls_read() and resolve the large SDP poll issue

2014-08-04 Thread Alexander Traud

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3882/#review12970
---



trunk/channels/chan_sip.c


Thank you for adding me to the list of reviewers. That way, I got E-mail 
notifications.
No no-go from my (limited set of personal) test-cases, because they all 
passed successfully.

Except: Case (res < 0 && errno == EAGAIN) is missing which leads to 
readbuf[-1] = '\0' right now. To prevent this, I went for

if (res < 0) {
if (errno == EAGAIN) {
continue;
} else {
ast_debug(…
return -1;
}

I went for "continue" because that was required to fix an issue with Nokia 
Symbian/S60 connected over UMTS (SIP INVITE = two TCP messages, 1.3 seconds 
latency between those messages); an issue introduced by the new variable 
"exclusive_input" (revision 416071).


- Alexander Traud


On July 31, 2014, 6:14 p.m., ebroad wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3882/
> ---
> 
> (Updated July 31, 2014, 6:14 p.m.)
> 
> 
> Review request for Asterisk Developers and Alexander Traud.
> 
> 
> Bugs: ASTERISK-18345
> https://issues.asterisk.org/jira/browse/ASTERISK-18345
> 
> 
> Repository: Asterisk
> 
> 
> Description
> ---
> 
> Replace sip_tls_read() and sip_tcp_read() with a single function and resolve 
> the poll/wait issue with large SDP payloads. See 
> https://reviewboard.asterisk.org/r/3653/ for the discussion on this.
> 
> 
> Diffs
> -
> 
>   trunk/channels/chan_sip.c 419821 
> 
> Diff: https://reviewboard.asterisk.org/r/3882/diff/
> 
> 
> Testing
> ---
> 
> Made and received calls successfully with CSipSimple with full SIP headers 
> over TLS, SRTP and multiple codecs enabled ensuring a large SDP payload.
> 
> 
> Thanks,
> 
> ebroad
> 
>

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] How to diagnose early media on a PRI

2014-08-04 Thread Eric Wieling
Why do you want to use early media instead of using OOB signaling by using 
Hangup(17)?

I'm not an expert on PRI, but maybe your telco is not passing on the early 
media to the caller.

From: asterisk-dev-boun...@lists.digium.com 
[mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
Sent: Monday, August 04, 2014 12:23 PM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

I have tried it, yes - the results are the same.  When Busy() is called, the 
channel driver gets a message and opens the early media stream if it hasn't 
been opened already.  I have the Q.931 entry for the alerting message for 
"Progress Description: Inband information or appropriate pattern now available. 
(8)":

PRI Span: 8 > DL-DATA request
PRI Span: 8 > Protocol Discriminator: Q.931 (8)  len=9
PRI Span: 8 > TEI=0 Call Ref: len= 2 (reference 1885/0x75D) (Sent to originator)
PRI Span: 8 > Message Type: ALERTING (1)
PRI Span: 8 TEI=0 Transmitting N(S)=11, window is open V(A)=10 K=7
PRI Span: 8
PRI Span: 8 > Protocol Discriminator: Q.931 (8)  len=9
PRI Span: 8 > TEI=0 Call Ref: len= 2 (reference 1885/0x75D) (Sent to originator)
PRI Span: 8 > Message Type: ALERTING (1)
PRI Span: 8 > [1e 02 81 88]
PRI Span: 8 > Progress Indicator (len= 4) [ Ext: 1  Coding: CCITT (ITU) 
standard (0)  0: 0  Location: Private network serving the local user (1)
PRI Span: 8 >   Ext: 1  Progress Description: 
Inband information or appropriate pattern now available. (8) ]


And it seems the Telco has received it on the other side:

Q931-Q931 message-

001 1000 Protocol Discriminator : 8 - Q.931/I.145 user-ntwk call control msg

CRV--Call Reference Value-

002 0010 Length of CRV  : 2 -

--

003 .0111000 Reference value: 56 -

  | 1... Reference Flag : 1 - To call ref originator

004 1100 Reference value: 222

--

005 x001 Message Type   : 1 - Alert message

QPARMS---Q931 Parameters--

-Q931 Parameter---

006 x000 Parameter Name : 30 - Progress Indicator

007 0010 Parameter Length   : 2

PRGIND---Progress Indicator---

008 ...x0001 Location   : 1 - Private network serving the local user

  | .00. Coding Std.: 0 - CCITT Standardized Coding

  | 1... Extension Bit  : 1 - Last Octet

009 .0001000 Progress Description   : 8 - In-band info/an appr. pattern is now 
avlbl

  | 1... Extension Bit  : 1 - Last Octet

--

This is (I assume) the opening of the early media stream.  I'm just not sure 
where to go from there.

-Justin

From: 
asterisk-dev-boun...@lists.digium.com
 [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
Sent: Monday, August 04, 2014 8:59 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Have you tried using Progress?

From: 
asterisk-dev-boun...@lists.digium.com
 [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
Sent: Monday, August 04, 2014 11:58 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Sorry for confusing the issue, I should have stripped out that line from the 
dialplan as well.  Given just the busy() line:

exten => 1005,n,Busy(20)

The busy tone should(?) be generated from the PRI channel driver.  This is the 
tone that the Telco is saying is being sent incorrectly.  I've looked at the 
dahdi configs, and it is setup correctly to use US tones.

-Justin

From: 
asterisk-dev-boun...@lists.digium.com
 [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
Sent: Monday, August 04, 2014 8:33 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Run Progress before the playtones.   This is documented in 
https://wiki.asterisk.org/wiki/display/AST/Early+Media+and+the+Progress+Application

--Eric

---
Frequently Asked Questions

Q1: How do a transfer a call using a Polycom phone?
A1: While on a call press the Transfer button on the phone, wait for dialtone, 
dial the number you want to transfer to, wait for the person answer, tell them 
you are transferring a call, then press the Transfer button the phone

Re: [asterisk-dev] How to diagnose early media on a PRI

2014-08-04 Thread Justin Killen
I have tried it, yes - the results are the same.  When Busy() is called, the 
channel driver gets a message and opens the early media stream if it hasn't 
been opened already.  I have the Q.931 entry for the alerting message for 
"Progress Description: Inband information or appropriate pattern now available. 
(8)":

PRI Span: 8 > DL-DATA request
PRI Span: 8 > Protocol Discriminator: Q.931 (8)  len=9
PRI Span: 8 > TEI=0 Call Ref: len= 2 (reference 1885/0x75D) (Sent to originator)
PRI Span: 8 > Message Type: ALERTING (1)
PRI Span: 8 TEI=0 Transmitting N(S)=11, window is open V(A)=10 K=7
PRI Span: 8
PRI Span: 8 > Protocol Discriminator: Q.931 (8)  len=9
PRI Span: 8 > TEI=0 Call Ref: len= 2 (reference 1885/0x75D) (Sent to originator)
PRI Span: 8 > Message Type: ALERTING (1)
PRI Span: 8 > [1e 02 81 88]
PRI Span: 8 > Progress Indicator (len= 4) [ Ext: 1  Coding: CCITT (ITU) 
standard (0)  0: 0  Location: Private network serving the local user (1)
PRI Span: 8 >   Ext: 1  Progress Description: 
Inband information or appropriate pattern now available. (8) ]


And it seems the Telco has received it on the other side:

Q931-Q931 message-

001 1000 Protocol Discriminator : 8 - Q.931/I.145 user-ntwk call control msg

CRV--Call Reference Value-

002 0010 Length of CRV  : 2 -

--

003 .0111000 Reference value: 56 -

  | 1... Reference Flag : 1 - To call ref originator

004 1100 Reference value: 222

--

005 x001 Message Type   : 1 - Alert message

QPARMS---Q931 Parameters--

-Q931 Parameter---

006 x000 Parameter Name : 30 - Progress Indicator

007 0010 Parameter Length   : 2

PRGIND---Progress Indicator---

008 ...x0001 Location   : 1 - Private network serving the local user

  | .00. Coding Std.: 0 - CCITT Standardized Coding

  | 1... Extension Bit  : 1 - Last Octet

009 .0001000 Progress Description   : 8 - In-band info/an appr. pattern is now 
avlbl

  | 1... Extension Bit  : 1 - Last Octet

--

This is (I assume) the opening of the early media stream.  I'm just not sure 
where to go from there.

-Justin

From: asterisk-dev-boun...@lists.digium.com 
[mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
Sent: Monday, August 04, 2014 8:59 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Have you tried using Progress?

From: asterisk-dev-boun...@lists.digium.com 
[mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
Sent: Monday, August 04, 2014 11:58 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Sorry for confusing the issue, I should have stripped out that line from the 
dialplan as well.  Given just the busy() line:

exten => 1005,n,Busy(20)

The busy tone should(?) be generated from the PRI channel driver.  This is the 
tone that the Telco is saying is being sent incorrectly.  I've looked at the 
dahdi configs, and it is setup correctly to use US tones.

-Justin

From: 
asterisk-dev-boun...@lists.digium.com
 [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
Sent: Monday, August 04, 2014 8:33 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Run Progress before the playtones.   This is documented in 
https://wiki.asterisk.org/wiki/display/AST/Early+Media+and+the+Progress+Application

--Eric

---
Frequently Asked Questions

Q1: How do a transfer a call using a Polycom phone?
A1: While on a call press the Transfer button on the phone, wait for dialtone, 
dial the number you want to transfer to, wait for the person answer, tell them 
you are transferring a call, then press the Transfer button the phone a second 
time.

Q2: I don't want to wait for the person answer when transferring a call.
A2: Press the Transfer buton on the phone, the press the Blind softkey, the 
dial the extension you want to transfer the call to.   The transfer should 
complete automatically.  If it does not, you may need to press the Send softkey

Q3: Where can I find more information on using Polycom phones?
A3: Go to http://help.nyigc.net/ for documentation for Polycom phones.

Q4: What is the best kept secret on the Internet?
A4: That would be the InterGlobe

Re: [asterisk-dev] How to diagnose early media on a PRI

2014-08-04 Thread Eric Wieling
Have you tried using Progress?

From: asterisk-dev-boun...@lists.digium.com 
[mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
Sent: Monday, August 04, 2014 11:58 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Sorry for confusing the issue, I should have stripped out that line from the 
dialplan as well.  Given just the busy() line:

exten => 1005,n,Busy(20)

The busy tone should(?) be generated from the PRI channel driver.  This is the 
tone that the Telco is saying is being sent incorrectly.  I've looked at the 
dahdi configs, and it is setup correctly to use US tones.

-Justin

From: 
asterisk-dev-boun...@lists.digium.com
 [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
Sent: Monday, August 04, 2014 8:33 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Run Progress before the playtones.   This is documented in 
https://wiki.asterisk.org/wiki/display/AST/Early+Media+and+the+Progress+Application

--Eric

---
Frequently Asked Questions

Q1: How do a transfer a call using a Polycom phone?
A1: While on a call press the Transfer button on the phone, wait for dialtone, 
dial the number you want to transfer to, wait for the person answer, tell them 
you are transferring a call, then press the Transfer button the phone a second 
time.

Q2: I don't want to wait for the person answer when transferring a call.
A2: Press the Transfer buton on the phone, the press the Blind softkey, the 
dial the extension you want to transfer the call to.   The transfer should 
complete automatically.  If it does not, you may need to press the Send softkey

Q3: Where can I find more information on using Polycom phones?
A3: Go to http://help.nyigc.net/ for documentation for Polycom phones.

Q4: What is the best kept secret on the Internet?
A4: That would be the InterGlobe Help Site, at  http://help.nyigc.net/

Q5: When calling my VMAX fax line I always get a busy signal.
A5: You must call VMAX fax lines either from another VMAX fax line or from a 
non-VMAX voice line.  If you call a VMAX fax line from a VMAX voice line you 
will always receive a busy signal.


From: 
asterisk-dev-boun...@lists.digium.com
 [mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
Sent: Monday, August 04, 2014 11:25 AM
To: Asterisk Developers Mailing List
Subject: [asterisk-dev] How to diagnose early media on a PRI

I asked this on the users list a week and a half ago but haven't gotten any 
response.  I'm hoping someone here with PRI/ISDN experience can help guide me 
in the right direction.

I have a dialplan (freepbx) that plays a busy signal in-band when an extension 
is busy (before an Answer).  Stripped down, it looks like this:
exten => 1005,n,PlayTones(busy)
exten => 1005,n,Busy(20)
Note that there is no Answer() prior to this.  Our trunk is a PRI.
When I call into this extension from outside, I get about 25 seconds of 
ringing, followed by a hangup.  Looking at the asterisk logs, 20 seconds of 
that delay is AFTER the PlayTones() function is invoked.  I talked with our 
Telco about this, and they want to refer to in-band tones prior to answer as a 
media cut-through.  The tech said that it is enabled on their end, and he did 
some test calls and got some ISDN trap logs.  He is saying that the PBX is 
playing the ring-back tone instead of the busy tone, but I don't think that's 
the case (If I add an Answer() to the dialplan, I do in fact hear the busy 
tone).
Is there anybody out there who has experience with reading/analyzing IDSN trap 
logs (Q931) that can help me narrow down where the issue is and how to fix it?

Thanks,
-Justin

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] How to diagnose early media on a PRI

2014-08-04 Thread Justin Killen
Sorry for confusing the issue, I should have stripped out that line from the 
dialplan as well.  Given just the busy() line:

exten => 1005,n,Busy(20)

The busy tone should(?) be generated from the PRI channel driver.  This is the 
tone that the Telco is saying is being sent incorrectly.  I've looked at the 
dahdi configs, and it is setup correctly to use US tones.

-Justin

From: asterisk-dev-boun...@lists.digium.com 
[mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Eric Wieling
Sent: Monday, August 04, 2014 8:33 AM
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] How to diagnose early media on a PRI

Run Progress before the playtones.   This is documented in 
https://wiki.asterisk.org/wiki/display/AST/Early+Media+and+the+Progress+Application

--Eric

---
Frequently Asked Questions

Q1: How do a transfer a call using a Polycom phone?
A1: While on a call press the Transfer button on the phone, wait for dialtone, 
dial the number you want to transfer to, wait for the person answer, tell them 
you are transferring a call, then press the Transfer button the phone a second 
time.

Q2: I don't want to wait for the person answer when transferring a call.
A2: Press the Transfer buton on the phone, the press the Blind softkey, the 
dial the extension you want to transfer the call to.   The transfer should 
complete automatically.  If it does not, you may need to press the Send softkey

Q3: Where can I find more information on using Polycom phones?
A3: Go to http://help.nyigc.net/ for documentation for Polycom phones.

Q4: What is the best kept secret on the Internet?
A4: That would be the InterGlobe Help Site, at  http://help.nyigc.net/

Q5: When calling my VMAX fax line I always get a busy signal.
A5: You must call VMAX fax lines either from another VMAX fax line or from a 
non-VMAX voice line.  If you call a VMAX fax line from a VMAX voice line you 
will always receive a busy signal.


From: asterisk-dev-boun...@lists.digium.com 
[mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
Sent: Monday, August 04, 2014 11:25 AM
To: Asterisk Developers Mailing List
Subject: [asterisk-dev] How to diagnose early media on a PRI

I asked this on the users list a week and a half ago but haven't gotten any 
response.  I'm hoping someone here with PRI/ISDN experience can help guide me 
in the right direction.

I have a dialplan (freepbx) that plays a busy signal in-band when an extension 
is busy (before an Answer).  Stripped down, it looks like this:
exten => 1005,n,PlayTones(busy)
exten => 1005,n,Busy(20)
Note that there is no Answer() prior to this.  Our trunk is a PRI.
When I call into this extension from outside, I get about 25 seconds of 
ringing, followed by a hangup.  Looking at the asterisk logs, 20 seconds of 
that delay is AFTER the PlayTones() function is invoked.  I talked with our 
Telco about this, and they want to refer to in-band tones prior to answer as a 
media cut-through.  The tech said that it is enabled on their end, and he did 
some test calls and got some ISDN trap logs.  He is saying that the PBX is 
playing the ring-back tone instead of the busy tone, but I don't think that's 
the case (If I add an Answer() to the dialplan, I do in fact hear the busy 
tone).
Is there anybody out there who has experience with reading/analyzing IDSN trap 
logs (Q931) that can help me narrow down where the issue is and how to fix it?

Thanks,
-Justin

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] How to diagnose early media on a PRI

2014-08-04 Thread Eric Wieling
Run Progress before the playtones.   This is documented in 
https://wiki.asterisk.org/wiki/display/AST/Early+Media+and+the+Progress+Application

--Eric

---
Frequently Asked Questions

Q1: How do a transfer a call using a Polycom phone?
A1: While on a call press the Transfer button on the phone, wait for dialtone, 
dial the number you want to transfer to, wait for the person answer, tell them 
you are transferring a call, then press the Transfer button the phone a second 
time.

Q2: I don't want to wait for the person answer when transferring a call.
A2: Press the Transfer buton on the phone, the press the Blind softkey, the 
dial the extension you want to transfer the call to.   The transfer should 
complete automatically.  If it does not, you may need to press the Send softkey

Q3: Where can I find more information on using Polycom phones?
A3: Go to http://help.nyigc.net/ for documentation for Polycom phones.

Q4: What is the best kept secret on the Internet?
A4: That would be the InterGlobe Help Site, at  http://help.nyigc.net/

Q5: When calling my VMAX fax line I always get a busy signal.
A5: You must call VMAX fax lines either from another VMAX fax line or from a 
non-VMAX voice line.  If you call a VMAX fax line from a VMAX voice line you 
will always receive a busy signal.


From: asterisk-dev-boun...@lists.digium.com 
[mailto:asterisk-dev-boun...@lists.digium.com] On Behalf Of Justin Killen
Sent: Monday, August 04, 2014 11:25 AM
To: Asterisk Developers Mailing List
Subject: [asterisk-dev] How to diagnose early media on a PRI

I asked this on the users list a week and a half ago but haven't gotten any 
response.  I'm hoping someone here with PRI/ISDN experience can help guide me 
in the right direction.

I have a dialplan (freepbx) that plays a busy signal in-band when an extension 
is busy (before an Answer).  Stripped down, it looks like this:
exten => 1005,n,PlayTones(busy)
exten => 1005,n,Busy(20)
Note that there is no Answer() prior to this.  Our trunk is a PRI.
When I call into this extension from outside, I get about 25 seconds of 
ringing, followed by a hangup.  Looking at the asterisk logs, 20 seconds of 
that delay is AFTER the PlayTones() function is invoked.  I talked with our 
Telco about this, and they want to refer to in-band tones prior to answer as a 
media cut-through.  The tech said that it is enabled on their end, and he did 
some test calls and got some ISDN trap logs.  He is saying that the PBX is 
playing the ring-back tone instead of the busy tone, but I don't think that's 
the case (If I add an Answer() to the dialplan, I do in fact hear the busy 
tone).
Is there anybody out there who has experience with reading/analyzing IDSN trap 
logs (Q931) that can help me narrow down where the issue is and how to fix it?

Thanks,
-Justin

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

[asterisk-dev] How to diagnose early media on a PRI

2014-08-04 Thread Justin Killen
I asked this on the users list a week and a half ago but haven't gotten any 
response.  I'm hoping someone here with PRI/ISDN experience can help guide me 
in the right direction.

I have a dialplan (freepbx) that plays a busy signal in-band when an extension 
is busy (before an Answer).  Stripped down, it looks like this:
exten => 1005,n,PlayTones(busy)
exten => 1005,n,Busy(20)
Note that there is no Answer() prior to this.  Our trunk is a PRI.
When I call into this extension from outside, I get about 25 seconds of 
ringing, followed by a hangup.  Looking at the asterisk logs, 20 seconds of 
that delay is AFTER the PlayTones() function is invoked.  I talked with our 
Telco about this, and they want to refer to in-band tones prior to answer as a 
media cut-through.  The tech said that it is enabled on their end, and he did 
some test calls and got some ISDN trap logs.  He is saying that the PBX is 
playing the ring-back tone instead of the busy tone, but I don't think that's 
the case (If I add an Answer() to the dialplan, I do in fact hear the busy 
tone).
Is there anybody out there who has experience with reading/analyzing IDSN trap 
logs (Q931) that can help me narrow down where the issue is and how to fix it?

Thanks,
-Justin

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] Read dtmf after ast_bridge_call

2014-08-04 Thread vassilux .
ok Joshua thank again


2014-08-04 12:28 GMT+02:00 Joshua Colp :

> vassilux . wrote:
>
>> Thank for the information about the frame hook.
>> I understand that both functions can be called by different threads
>> because lock/unlock used internally.
>>
>
> If you are referring to ast_waitfor and ast_read those functions are NOT
> safe to be called form separate threads simultaneously, even with locking
> internally. It won't work as you expect/want as only a single thread can
> service a channel. You would essentially end up with two threads fighting
> over the frames, with some going to one thread and some going to the other.
>
>
> --
> Joshua Colp
> Digium, Inc. | Senior Software Developer
> 445 Jan Davis Drive NW - Huntsville, AL 35806 - US
> Check us out at: www.digium.com & www.asterisk.org
>
> --
> _
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-dev
>



-- 
Vassili Gontcharov
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] Read dtmf after ast_bridge_call

2014-08-04 Thread Joshua Colp

vassilux . wrote:

Thank for the information about the frame hook.
I understand that both functions can be called by different threads
because lock/unlock used internally.


If you are referring to ast_waitfor and ast_read those functions are NOT 
safe to be called form separate threads simultaneously, even with 
locking internally. It won't work as you expect/want as only a single 
thread can service a channel. You would essentially end up with two 
threads fighting over the frames, with some going to one thread and some 
going to the other.


--
Joshua Colp
Digium, Inc. | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: www.digium.com & www.asterisk.org

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-dev


Re: [asterisk-dev] Read dtmf after ast_bridge_call

2014-08-04 Thread vassilux .
Thank for the information about the frame hook.
I understand that both functions can be called by different threads because
lock/unlock used internally.


2014-08-04 11:44 GMT+02:00 Joshua Colp :

> vassilux . wrote:
>
>> Yes I use ast_waitfor with 2nd parameter -1 into a detached
>> background thread. The function ast_waitfor used into my application
>> function called from the dialplan and also into the dtmf read thread.
>> This behavior is observed after bridging the incoming channel(the
>> channel where  I try to read dtmf) to an other channel created with
>> dial API.
>>
>> I modified channel.c (line 3924) to disable  the logging this error
>> (just for an experience ). I can get the DTMF from the incoming.
>>
>
> Er - are the two threads both calling ast_waitfor/ast_read at the same
> time? If so this is not supported. You effectively have two threads
> thinking they both need to service the channel at the same time. Only one
> thread can. You can either use a frame hook so you receive a callback on
> each frame where you can examine it and if DTMF do something OR use
> ast_channel_bridge and configure it so it will unbridge/return when it
> receives DTMF on the respective channel you want.
>
> --
> Joshua Colp
> Digium, Inc. | Senior Software Developer
> 445 Jan Davis Drive NW - Huntsville, AL 35806 - US
> Check us out at: www.digium.com & www.asterisk.org
>
> --
> _
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-dev
>



-- 
Vassili Gontcharov
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] Read dtmf after ast_bridge_call

2014-08-04 Thread Joshua Colp

vassilux . wrote:

Yes I use ast_waitfor with 2nd parameter -1 into a detached
background thread. The function ast_waitfor used into my application
function called from the dialplan and also into the dtmf read thread.
This behavior is observed after bridging the incoming channel(the
channel where  I try to read dtmf) to an other channel created with
dial API.

I modified channel.c (line 3924) to disable  the logging this error
(just for an experience ). I can get the DTMF from the incoming.


Er - are the two threads both calling ast_waitfor/ast_read at the same 
time? If so this is not supported. You effectively have two threads 
thinking they both need to service the channel at the same time. Only 
one thread can. You can either use a frame hook so you receive a 
callback on each frame where you can examine it and if DTMF do something 
OR use ast_channel_bridge and configure it so it will unbridge/return 
when it receives DTMF on the respective channel you want.


--
Joshua Colp
Digium, Inc. | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: www.digium.com & www.asterisk.org

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-dev


Re: [asterisk-dev] [Code Review] 3867: [chan_sip] Default DTLS settings to use if peer misses own settings

2014-08-04 Thread Michael K.


> On July 30, 2014, 3:34 p.m., Mark Michelson wrote:
> > trunk/channels/chan_sip.c, lines 30871-30893
> > 
> >
> > If you use ast_rtp_dtls_cfg_copy() above as I recommend, then this 
> > entire block can be removed.
> > 
> > All default values will already be copied onto the peer. Any 
> > peer-specific value encountered in the configuration will be copied onto 
> > the peer by ast_rtp_dtls_cfg_parse().

While with TLS if i set encyption to yes and turn on TLS in general, it would 
load those settings only for those who are using protocol TLS and it would not 
disturb those who are UDP for example.
With DTLS it's little bit different, if i turn it on in general it would be 
used by default for all peers, including those who has no dtlsenable settings, 
which breaks all of them and makes dtlsenable=no setting mandatory for all 
those who do not want/support DTLS. At least for second version of patch. While 
in first version it actually did not break those and if peer has no dtlsenable 
setting turned to on it would not load default dtls settings to peer. And only 
load default if set to "yes" and miss that specific setting.

I think my first version with part before loop and part after loop is the 
better solution as it's more backward compatiable and default settings for DTLS 
in [general] means the default settings if the dtls is enabled on peer only.


- Michael


---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3867/#review12924
---


On Aug. 3, 2014, 8:57 a.m., Michael K. wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3867/
> ---
> 
> (Updated Aug. 3, 2014, 8:57 a.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-24128
> https://issues.asterisk.org/jira/browse/ASTERISK-24128
> 
> 
> Repository: Asterisk
> 
> 
> Description
> ---
> 
> Load default dtls settings from [general settings]
> If peer has dtls enabled but misses some of the settings and they are set in 
> default settings it would load them from there.
> It would be logical as most of sip settings work like that and as well as 
> there is no way to use template in realtime and it would lead to copy paste 
> same settings for every peer.
> 
> 
> Diffs
> -
> 
>   trunk/channels/chan_sip.c 419849 
> 
> Diff: https://reviewboard.asterisk.org/r/3867/diff/
> 
> 
> Testing
> ---
> 
> Test on development server (ast 11.11.0)
> 
> 
> Thanks,
> 
> Michael K.
> 
>

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

[asterisk-dev] Read dtmf after ast_bridge_call

2014-08-04 Thread vassilux .
Yes I use ast_waitfor with 2nd parameter -1 into a detached background
thread. The function ast_waitfor used into my application function
called from the dialplan and also into the dtmf read thread. This
behavior is observed after bridging the incoming channel(the channel
where  I try to read dtmf) to an other channel created with dial API.

 I modified channel.c (line 3924) to disable  the logging this error
(just for an experience ). I can get the DTMF from the incoming.
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev