dect
/
asterisk
Archived
13
0
Fork 0
Commit Graph

1428 Commits

Author SHA1 Message Date
tilghman a17700ba80 Change cdr_manager to use a "CDR" level, rather than the (overcrowded) "call" level.
(Closes issue #11015)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@91173 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-05 16:46:47 +00:00
russell 2e316c898e Merged revisions 91070 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91070 | russell | 2007-12-04 18:35:31 -0600 (Tue, 04 Dec 2007) | 11 lines

Fix some crashes in chan_iax2 that were reported as happening on Mac systems.
It turns out that the problem was the Mac version of the ast_atomic_fetchadd_int()
function.  The Mac atomic add function returns the _new_ value, while this function
is supposed to return the old value.  So, the crashes happened on unreferencing
objects.  If the reference count was decreased to 1, ao2_ref() thought that it
had been decreased to zero, and called the destructor.  However, there was still
an outstanding reference around.

(closes issue #11176)
(closes issue #11289)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@91114 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-05 01:59:32 +00:00
russell bdd896e7be Add support for monitoring MWI on FXO lines.
This introduces two new options for zapata.conf: mwimonitor and mwimonitornotify.
The mwimonitor option enables MWI monitoring.  When the MWI state on a line changes,
then the script specified by mwimonitornotify will be executed for custom handling
of the state change, similar to the externnotify option of voicemail.conf.

Also, when the MWI state on an FXO line changes, an internal Asterisk event is
generated to indicate the new state of the associated mailbox.  That may, any
module that cares about MWI information will get notified and can handle it
just as if app_voicemail had sent this notification.

(BE-253, original patch from markster, with some minor modifications by me to
 add comments, documentation, and internal event support)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90949 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-04 19:08:30 +00:00
mmichelson 4128bac7a9 Merged revisions 90735 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90735 | mmichelson | 2007-12-03 17:12:17 -0600 (Mon, 03 Dec 2007) | 22 lines

A big one...

This is the merge of the forward-loop branch. The main change here is that call-forwards can no longer loop.
This is accomplished by creating a datastore on the calling channel which has a linked list of all devices
dialed. If a forward happens, then the local channel which is created inherits the datastore. If, through this
progression of forwards and datastore inheritance, a device is attempted to be dialed a second time, it will simply
be skipped and a warning message will be printed to the CLI. After the dialing has been completed, the datastore
is detached from the channel and destroyed.

This change also introduces some side effects to the code which I shall enumerate here:

1. Datastore inheritance has been backported from trunk into 1.4
2. A large chunk of code has been removed from app_dial. This chunk is the section of code
   which handles the call forward case after the channel has been requested but before it has
   been called. This was removed because call-forwarding still works fine without it, it makes the
   code less error-prone should it need changing, and it made this set of changes much less painful
   to just have the forwarding handled in one place in each module.
3. Two new files, global_datastores.h and .c have been added. These are necessary since the datastore
   which is attached to the channel may be created and attached in either app_dial or app_queue, so they
   need a common place to find the datastore info. This approach was taken in case similar datastores are
   needed in the future, there will be a common place to add them.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90873 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-04 17:08:36 +00:00
tilghman 56b0d2b610 Merged revisions 90753 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90753 | tilghman | 2007-12-03 17:50:51 -0600 (Mon, 03 Dec 2007) | 5 lines

Solaris requires the inclusion of sys/loadavg.h for getloadavg().
Reported by: snuffy
Patch by: snuffy,tilghman
(Closes issue #11430)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90760 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-03 23:52:23 +00:00
file 7c209702a8 Add AGI commands for speech recognition. These mirror the dialplan applications mostly but present the information in a nicer fashion. The SPEECH RECOGNIZE command for example will return the results instead of having to query the dialplan functions.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90656 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-03 21:03:05 +00:00
file 0382b41448 Merged revisions 90548 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90548 | file | 2007-12-03 14:40:56 -0400 (Mon, 03 Dec 2007) | 2 lines

Preserve the indication currently playing on a channel when a masquerade operation happens. (issue #BE-88)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90550 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-03 18:44:16 +00:00
mmichelson a7c0447e63 Adding support for the "automixmonitor" dial and queue options.
This works in much the same way as the automonitor, except that instead of using the monitor
app, it uses the mixmonitor app. By providing an 'x' or 'X' as a dial or queue option, a DTMF
sequence may be entered (as defined in features.conf) to start the one-touch mixmonitor.

This patch also introduces some new API calls to the audiohooks code for searching for an audiohook
by type and for searching for a running audiohook by type.

Big thanks to joetester for writing the initial patch, testing it and patiently waiting for it to 
be committed.

(closes issue #10185, reported and patched by xmarksthespot)



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90388 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-30 21:19:57 +00:00
russell 7cfa10f05b Merged revisions 90348 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90348 | russell | 2007-11-30 13:26:04 -0600 (Fri, 30 Nov 2007) | 8 lines

Change the behavior of ao2_link().  Previously, in inherited a reference.
Now, it automatically increases the reference count to reflect the reference
that is now held by the container.

This was done to be more consistent with ao2_unlink(), which automatically
releases the reference held by the container.  It also makes it so it is
no longer possible for a pointer to be invalid after ao2_link() returns.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90351 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-30 19:34:47 +00:00
russell 2393a4999d Merged revisions 90310 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90310 | russell | 2007-11-30 12:46:46 -0600 (Fri, 30 Nov 2007) | 2 lines

Add some notes on the behavior of ao2_unlink() after a discussion with Tilghman

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90311 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-30 18:47:14 +00:00
tilghman 178cee50cf Merged revisions 90155 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90155 | tilghman | 2007-11-29 11:29:59 -0600 (Thu, 29 Nov 2007) | 5 lines

Use of "private" as a field name in a header file messes with C++ projects
Reported by: chewbacca
Patch by: casper
(Closes issue #11401)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90158 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-29 17:50:44 +00:00
tilghman d593529831 Fix build of trunk
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90157 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-29 17:42:21 +00:00
russell 4efbdfc704 Merged revisions 90145 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90145 | russell | 2007-11-28 18:20:34 -0600 (Wed, 28 Nov 2007) | 5 lines

This set of changes is to make some callerID handling thread-safe.
The ast_set_callerid() function needed to lock the channel.  Also, the handlers
for the CALLERID() dialplan function needed to lock the channel when reading
or writing callerid values directly on the channel structure.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90146 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-29 00:28:10 +00:00
russell 633b7b4f97 Merged revisions 90142 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90142 | russell | 2007-11-28 18:06:08 -0600 (Wed, 28 Nov 2007) | 4 lines

Merge a change from team/russell/chan_refcount ...

This makes ast_stopstream() thread-safe.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90143 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-29 00:07:32 +00:00
russell bf1706909c Merge another small doxygen change from team/russell/chan_refcount to indicate
that a channel doesn't need to be locked before calling a certain function.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90141 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-28 23:57:30 +00:00
russell 7d8b10cc2f Merge some channel.h doxygen updates from team/russell/chan_refcount
This was mostly to note whether a channel needed to be locked or not before
calling these functions.  However, I added some other things, too.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90139 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-28 23:47:26 +00:00
qwell 8cce4fbf02 Remove "old"-style CLI handler, since nothing uses it anymore.
Closes issue #11403, patch by eliel.  This also completes the janitor project.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90038 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-28 20:27:40 +00:00
russell 78bd1dcd5f Merged revisions 89893 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89893 | russell | 2007-11-27 18:20:13 -0600 (Tue, 27 Nov 2007) | 4 lines

 - update documentation for some of the goto functions to note that they
   handle locking the channel as needed
 - update ast_explicit_goto() to lock the channel as needed

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89915 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-28 00:24:19 +00:00
russell 25a29b29a6 Document that the channel is not locked when the send_digit_begin and end
callbacks get called.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89891 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-27 23:56:45 +00:00
oej fecacc7468 More "moremanager" fixes. Manager commands to check module status.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89771 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-27 21:04:29 +00:00
oej dfd2efe50a More "moremanager" changes - doxygen docs and changing manager version (finally)
before making more dramatic changes.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89770 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-27 20:50:48 +00:00
oej bb9210c7a9 The following patch with updates for trunk. Works much better in trunk.
Also by accident fixed a bad typo by a previous committer, which actually made video calls
not work fully...

Merged revisions 89630 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89630 | oej | 2007-11-27 16:23:17 +0100 (Tis, 27 Nov 2007) | 12 lines

If we get a codec offer using a well-known payload type, but using it for another
codec that we don't know, Asterisk did not remove that codec from the list.

With this patch, we remove the codec from audio and video rtp objects and
deny it ever existed. Thanks to lasse for testing.

(closes issue #11376)
Reported by: lasse
Patches: 
      bug11376.txt uploaded by oej (license 306)
Tested by: lasse

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89698 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-27 19:24:17 +00:00
qwell 3db53911ba Add an S_COR macro, which is similar to the existing S_OR macro,
except with an additional boolean arg.

A hack such as:
foo ? S_OR(bar, "baz") : "baz"
becomes:
S_COR(foo, bar, "baz")


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89683 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-27 19:12:33 +00:00
murf 5aff21b945 Merged revisions 89622 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89622 | murf | 2007-11-26 23:24:02 -0700 (Mon, 26 Nov 2007) | 1 line

closes issue #11379; OK, this is an attempt to make both sides happy. To the cdr.conf file, I added the option 'unanswered', which defaults to 'no'. In this mode, you will see a cdr for a call, whether it was answered or not. The disposition will be NO ANSWER or ANSWERED, as appropriate. The src is as you'd expect, the destination channel will be one of the channels from the Dial() call, usually the last in the list if more than one chan was specified. With unanswered set to 'yes', you will still see this cdr entry in both cases. But in the case where the dial timed out, you will also see a cdr for each line attempted, marked NO ANSWER, with no destination channel name. The new option defaults to 'no', so you don't see the pesky extra cdr's by default, and you will not see the irritating 'not posted' messages.
........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89623 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-27 06:47:08 +00:00
oej a6d5c8a789 Start using Doxygen groupings to group variables and defines.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89607 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-26 20:19:50 +00:00
oej bc21278887 Try to get channel.h and channel.c aligned in regards to ast_set_callerid as well
as change name of variables to follow the rest of the naming.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89564 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-25 19:33:33 +00:00
tilghman 6ab028735f Merged revisions 89559 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89559 | tilghman | 2007-11-25 11:17:10 -0600 (Sun, 25 Nov 2007) | 14 lines

We previously attempted to use the ESCAPE clause to set the escape delimiter to
a backslash.  Unfortunately, this does not universally work on all databases,
since on databases which natively use the backslash as a delimiter, the
backslash itself needs to be delimited, but on other databases that have no
delimiter, backslashing the backslash causes an error.

So the only solution that I can come up with is to create an option in res_odbc
that explicitly specifies whether or not backslash is a native delimiter.  If
it is, we use it natively; if not, we use the ESCAPE clause to make it one.

Reported by: elguero
Patch by: tilghman
(Closes issue #11364)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89561 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-25 17:50:07 +00:00
oej 14c325e930 Housekeeping...
- Fix typo in chan_sip
- Remove changes to caller ID structure, moving it to branch (russellb)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89551 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-25 11:10:52 +00:00
murf 2a36d53ce3 closes issue #11363; where the pattern _20x. buried in an included context, didn't match 2012; There were a small set of problems to fix: 1. I needed NOT to score patterns unless you are at the end of the data string. 2. Capital N,X,Z and small n,x,z are OK in patterns. I canonicalize the patterns in the trie to caps. 3. When a pattern ends with dot or exclamation, CANMATCH/MATCHMORE should always report this pattern, no matter the length. With this commit, I also supplied the wish of Luigi, where the user can select which pattern matching algorithm to use, the old (legacy) pattern matcher, or the new, trie based matcher. The OLD matcher is the default. A new [general] section variable, extenpatternmatchnew, is added to the extensions.conf, and the example config has it set to false. If true, the new matcher is used. In all other respects, the context/exten structs are the same; the tries and hashtabs are formed, but in the new mode the tries are not used. A new CLI command 'dialplan set extenpatternmatch true/false' is provided to allow switching at run time. I beg users that are forced to return to the old matcher to please report the reason in the bug tracker. Measured the speed benefit of the new matcher against an impossibly large context with 10,000 extensions: the new matcher is 374 times faster.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89547 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-24 21:00:26 +00:00
oej ea9304c01b Let's start with implementing the base architecture for UTF8 caller ID's
so we can handle multiple formats properly. This is not carved in stone,
but a proposal to start with.

We need to add support for transliterations as well as UTF8 handling,
propably with libiconv. Murf is looking into that for the dialplan.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89531 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-23 09:40:02 +00:00
rizzo f73d606067 formatting cleanup on the header,
normalization of the assignment of descriptor fields.



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89530 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-23 09:03:33 +00:00
rizzo 37da700299 formatting cleanup
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89523 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-22 04:19:04 +00:00
rizzo e8a5f98fe8 shuffle a little bit the content of header files to reduce dependencies.
In this commit:
- move the ast_register/unregister_app functions to module.h
  to avoid the need to include pbx.h for the simpler apps;
- move the ast_group structure to channel.h to remove the
  dependency of app.h on linkedlists.h

Note, this is a long process that I am doing in small steps.

The main difficulty is that now for each subsystem we
have a single header (e.g. channel.h) included by the subsystem
provider (usually one file, e.g. channel.c) and by its clients
(dozens of them, e.g. we have some 70+ apps and 30+ functions).

This requires the clients to include all the extra headers
required by the provider (eg. lock.h, linkedlists.h, definitions
of substructures...) even though many of the clients would be
just happy with opaque struct declarations and function prototypes.

The long term plan is to eventually rectify this structure
so that the compilation can become faster, and also APIs
are more stable.



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89522 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-22 03:50:04 +00:00
rizzo 737b408d52 more removal of redundant headers
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89519 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-22 02:07:33 +00:00
rizzo 9a04121e36 implement the split of file.h and mod_format.h
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89515 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-22 00:53:49 +00:00
rizzo 3f6e17e2cd Add a specific header for providers of file and format handling routines,
moving here structs and function declarations formerly in file.h



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89514 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-22 00:53:13 +00:00
kpfleming 6d30ebbac7 move these forward declarations back to asterisk.h where they belong... even though asterisk.h includes compat.h, these declarations have nothing to do with the being platform-compatible and are directly related to being part of Asterisk
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89482 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-21 16:07:11 +00:00
rizzo 076f1b61c3 add check for video4linux
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89475 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-21 01:29:45 +00:00
rizzo 4f4d5cb3bf X11 checks (at least some - for other platforms with
unusual X11 locations you might need to add more directories)



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89472 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-21 00:22:41 +00:00
rizzo 89d8d78652 move asterisk/paths.h outside asterisk.h and into those files
who really need it.



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89466 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-20 23:16:15 +00:00
rizzo 8d3385f534 move internal function declarations to include/asterisk/_private.h
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89465 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-20 22:18:21 +00:00
kpfleming 7c35bb6a7f switch compile-time option checking to string storage mode in this branch too
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89463 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-20 19:28:10 +00:00
russell 7bdba4b8b1 Be a bit more pedantic about the type for holding the md5 sum for the build options.
Also, doxygenify the comment.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89440 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-19 23:03:37 +00:00
rizzo f89608896c move the declaration of struct ast_channel ast_frame and ast_module
to compat.h so it is always available - hopefully this will let
us reduce the number of inclusions of channel.h and frame.h



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89426 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-19 19:36:32 +00:00
rizzo 9cf442d7f7 include "logger.h" and errno.h from asterisk.h - usage shows that they
were included almost everywhere.
Remove some of the instances.



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89424 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-19 18:52:04 +00:00
rizzo 520bf42a50 revert inclusion of options.h
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89412 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-19 14:36:12 +00:00
file c47a1d44ba Use the easy way that rizzo mentioned, only include malloc.h on the Windows platform.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89398 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-18 17:49:40 +00:00
file 9aacf0a023 Revert last commit, apparently buildbot lied to me.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89397 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-18 17:03:38 +00:00
file 1c0212aaba Change how we handle alloca to conform with how it is suggested in the autoconf manual for AC_FUNC_ALLOCA. FreeBSD 6 now builds again and no other platforms should be broken by this.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89396 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-18 17:01:41 +00:00
file 6f925e459e Use autoconf logic to determine the presence of PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP and PTHREAD_MUTEX_RECURSIVE_NP. Enclose error message from network.h in "
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89394 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-17 23:03:16 +00:00