The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Corrected".
The following errata were submitted by our customers and approved as valid errors by the author or editor.
| Version |
Location |
Description |
Submitted By |
Corrected |
| Printed |
Page 18
end of page 17's text box |
The word 'extrememly' should be 'extremely'.
Note from the Author or Editor: The reporter is correct that the word needs to be fixed.
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 29
Third paragraph |
The word "algorythems" should be "algorithms".
Note from the Author or Editor: The reporter is correct that the word needs to be corrected.
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 40
First paragraph of "Release Versus Trunk" text box |
The word "communty" should be "community".
Note from the Author or Editor: The reporter is correct that the word needs to be corrected.
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 51
End of first paragraph of "Other Useful Add-ons" text box |
The word "considred" should be "considered".
Note from the Author or Editor: The reporter is correct that the word needs to be corrected.
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 55
Between the first and second paragraph |
The first paragraph in page 55 says that to see the usage of the asterisk and zaptel service you
should run:
# service zaptel start
# service asterisk start
But, that is to actually start the services, not to see their usage. To see their usage you
should do:
# service zaptel
# service asterisk
Otherwise, the reader is going to inadvertently start their asterisk server, possibly before they
are ready to do so.
Note from the Author or Editor: The reporter is correct. Usage should be changed to:
service zaptel
service asterisk
Confirmed
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 71
Near the top |
In the (first?) paragraph, it states:
"if you want to build an IP-only configuration, you can skip to the section on configuring SIP."
when it should say:
"if you want to build an IP-only configuration, you can skip to the section on configuring SIP
after reading the section on creating configuration files."
That is, if you take that literally (as I did) and skip ahead from that point, you miss out on
some critical configuration steps.
Note from the Author or Editor: The reporter is correct, and has provided an adequate documentation update. Thanks!
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 73
example extensions.conf listing |
Page 73, under the heading "Setting Up the Dialplan for Some Test Calls" is this snippet:
[internal]
exten => 500,1,Verbose(1|Echo test application)
exten => 500,n,Echo()
exten => 500,n,Hangup()
which should read:
[internal]
exten => 500,1,Verbose(1|Echo test application)
exten => 500,n,Answer()
exten => 500,n,Echo()
exten => 500,n,Hangup()
note the additional line with Answer() in it. Without this line asterisk never picks up the line
and the following Echo() doesn't work (at least for me). Very confusing for a new user like me.
version tested is Asterisk 1.4.19
Note from the Author or Editor: The addition by the reporter is correct.
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 78
1st paragraph (example) |
There is syntax error is in the given example for zapata.conf on page 78. One of the lines is
signaling=fxs_ks
It should be signalling (with double "l"), otherwise asterisk doesnt understand it, and thus it does not load the zaptel (or dahdi) module.
I havent searched for this definition on other pages. I have confirmed this with asterisk-1.4.24.1.
Note from the Author or Editor: Yes, the word 'signaling' should be updated to say, 'signalling'
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Georgi Iovchev |
|
| Printed |
Page 99
Near the top |
The first sentence contains:
"providers may insteadSession Initiation Protocol"
and from the context, it's not clear what the sentence actually meant to say (compounded by the
fact that I'm a newbie to the subject).
Note from the Author or Editor: Simply remove the words "Session Initiation Protocol". It appears to be a copy-paste error. Sentence should read:
"Some service providers may instead be sending their calls to you via multiple IP addresses, ..."
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 104
SIP Phone Configuration |
I'm new to Asterisks, but on page 104 under SIP Phone Configuration it looks like if SIP phone
1001 registered in Osaka tries to dial 1000 in Toronto, the Osaka extensions.conf displayed on
the bottom of page 105 and top of 106 is going to try and route the call internally since the
internal context has matches for extensions beginning with _1XXX. The number will also never
match the remote context since it is looking for a _2XXX. Am I mistaken?
Note from the Author or Editor: This is correct. The following corrections should be made. I'm using the page numbers from the PDF (http://downloads.oreilly.com/books/9780596510480.pdf):
Page 104 correct statements:
Toronto sip.conf:
[2000]
type=friend
host=dynamic
context=phones
Osaka sip.conf:
[1000]
type=friend
host=dynamic
context=phones
You should now have extension 2000 registered to Toronto, and extension 1000 registered to Osaka.
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 110
5th line |
The example dialplan shows a line "include => phones" in the [phones] context. This should be
"include => internal", as it is in previous iterations of the dialplan in this chapter.
Note from the Author or Editor: Reporter is correct.
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 112
middle of page 112 |
The Toronto iax.conf file has a context=incoming_osaka, but the Toronto
extensions.conf file on page 114 has a context of toronto_incoming. Also, the Osaka iax.conf file
has a context=incoming_toronto, but the Osaka extensions.conf file has a context of
osaka_incoming. Looks like the contexts are switched along with the city/direction.
Note from the Author or Editor: The dialplan on pages 114-115 has the dialplan flipped under the headings of:
The extensions.conf file on Toronto
and
The extensions.conf file on Osaka
Correction: The dialplan under the Toronto header should be moved to under the Osaka header, and the dialplan under the Osaka header should be moved to under the Toronto header.
Thanks!
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 153
|
exten => s,1,GotoIfTime(*,*,4,jul?open,s,1)
should be
exten => s,1,GotoIfTime(*,*,4,jul?closed,s,1)
Note from the Author or Editor:
Confirmed
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| PDF |
Page 159
2nd paragraph |
[macro-voicemail]
exten => s,1,Dial(${ARG1},10)
exten => s,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?busy:unavail)
exten => s,n(unavail),Voicemail(${MCARO_EXTEN}@default,u)
;MCARO_EXTEN is a Syntax Mistake,I think the correct word is:${MCARO_EXTEN}
exten => s,n,Hangup()
exten => s,n(busy),VoiceMail(${MCARO_EXTEN}@default,b)
;MCARO_EXTEN is a Syntax Mistake, I think the correct word is ${MACRO_EXTEN}
exten => s,n,Hangup()
Note from the Author or Editor: Both references to ${MCARO_EXTEN} should really be ${MACRO_EXTEN}
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
GERMAFEL |
|
| PDF |
Page 162
bottom of page |
In the last example, this line:
exten => 124,1,GotoIf($[${BLACKLIST()]?blocked,1)
should be:
exten => 124,1,GotoIf($[${BLACKLIST()}]?blocked,1)
or
exten => 124,1,GotoIf(${BLACKLIST()}?blocked,1)
Page 403 mentions the latter syntax:
LookupBlacklist() - This application has been deprecated in favor of GotoIf(${BLACKLIST()}?context|extension|priority)
Note from the Author or Editor: As the description points out, the line should actually read as:
exten => 124,1,GotoIf($[${BLACKLIST()}]?blocked,1)
This is on page 162 of the PDF version.
|
Tim Banks |
|
| Printed |
Page 194
First footnote |
Page 194 in the book, first footnote, one of the words with the inner letters garbled has a
misspelling. It says "iprmoetnt," but it should say "iprmoatnt"
Note from the Author or Editor:
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 250
|
On page 250, Chapter 11: The Asterisk GUI Framework, the heading that says "Setting up httpd.conf and manager.conf", should say "Setting up http.conf and manager.conf".
Note from the Author or Editor:
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 295
3rd paragraph |
The Example script for logrotate specifies the postrotate command to use
asterisk -rx "logger rotate" > /dev/null 2> /dev/null
which will do the same task as logrotate, the correct command should be
asterisk -rx "logger reload" > /dev/null 2> /dev/null
to cause asterisk to reopen the empty logfile.
Note from the Author or Editor: Please replace the phrase "logger rotate" with "logger reload" as specified by the person who submitted the errata. He is indeed correct.
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 298
1st sentence of last paragraph |
"..sounds that come with Asterisk are delivered in [??what format??] format. We would not
normally recommend storing them in this format..."
Note from the Author or Editor: "...sounds that come with Asterisk are delivered in GSM format."
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|
| Printed |
Page 352
Second definition (domain) |
The definition of domain is wrong. What this actually provides is an entry in a list of *local* domain names. INVITE and REFER will always be *accepted* for these. There is also a second parameter that is missing in the book, which gives a context to be used for calls addressed to that domain.
There are/were two comments in sip.conf relating to this. One of them was wrong and this is the one that was used for the book.
This is the bad comment (from http://svn.digium.com/view/asterisk/tags/1.4.21/configs/sip.conf.sample?revision=122049&view=markup):
47 ;domain=mydomain.tld ; Set default domain for this host
48 ; If configured, Asterisk will only allow
49 ; INVITE and REFER to non-local domains
50 ; Use "sip show domains" to list local domains
This is the correct description:
371 ;----------------------------------------- SIP DOMAIN SUPPORT ------------------------
372 ; Incoming INVITE and REFER messages can be matched against a list of 'allowed'
373 ; domains, each of which can direct the call to a specific context if desired.
374 ; By default, all domains are accepted and sent to the default context or the
375 ; context associated with the user/peer placing the call.
376 ; Domains can be specified using:
377 ; domain=<domain>[,<context>]
378 ; Examples:
379 ; domain=myasterisk.dom
380 ; domain=customer.com,customer-context
See also: http://bugs.digium.com/view.php?id=12413
|
Anonymous |
|
| PDF |
Page 420
PrivacyManager() |
The result returned in PRIVACYMGRSTATUS on failure should be FAILED not FAILURE. This needs to change in the first para of the description and also in the third line of the example extension from:
exten => 123,n,GotoIf($["${PRIVACYMGRSTATUS}" = "FAILURE"]?bad)
to
exten => 123,n,GotoIf($["${PRIVACYMGRSTATUS}" = "FAILED"]?bad)
Note from the Author or Editor: Change the word "FAILURE" to "FAILED" in the mentioned code snippet.
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Geoff Lane |
|
| Printed |
Page 462
End of "modules.conf" |
The end of "modules.conf" section states "Let's take a look at each of them." but they are all
omitted in the 2nd Edition & OK in the First Edition. I need to know if there are changes in
Asterisk 1.4.
Note from the Author or Editor: Remove the line, "Let's take a look at each of them."
NOTE:
This errata is fixed in the digital versions and will be fixed in the next printed version.
|
Anonymous |
|