[00:09.180 --> 00:11.040] I love you too, Stank. [00:11.460 --> 00:14.200] I hope you enjoyed our little time by there. [00:15.140 --> 00:18.960] I'm Strom Carlson, and this is Black Ratchet, [00:18.960 --> 00:23.240] and welcome to Be Your Own Telephone Company with Asterisk. [00:24.680 --> 00:29.180] Apparently Alex thought that rated this a bullshit presentation, so... [00:30.040 --> 00:31.660] Yes, we're very proud of that fact. [00:36.780 --> 00:39.900] See, if Alex thought that we're actually here, we'd give him the payphone, [00:39.900 --> 00:43.900] but I guess he's not, so you lose, Alex. Sorry. [00:47.280 --> 00:48.800] So, let's get started. [00:48.820 --> 00:51.780] Actually, before we get started, I just want to test the phone [00:51.780 --> 00:53.860] to make sure that our dial tone's the right volume. [01:54.760 --> 01:56.560] Alright, so let's get started. [01:57.900 --> 02:00.340] Seems like I've got these cords in the right places. [02:01.060 --> 02:04.640] So, first off, what is Asterisk? What is this damn thing? [02:05.960 --> 02:08.560] How many of you have no clue what Asterisk actually is? [02:11.080 --> 02:15.040] Sweet. You're in for fun. Lots of fun. [02:15.680 --> 02:17.020] What is Asterisk? [02:17.160 --> 02:21.020] Asterisk is a free, open-source PBX that runs on Linux. [02:21.400 --> 02:22.960] It is the best thing since sliced bread. [02:22.960 --> 02:25.000] How many of you don't know what a PBX is? [02:26.720 --> 02:28.500] All my phones have their friends in the front. [02:29.080 --> 02:32.040] PBX is a private brand exchange. It's a telephone system. [02:32.040 --> 02:34.620] In case you hadn't guessed, it's a talk about telephones. [02:35.180 --> 02:38.780] It was originally written by Mark Spencer of Digium back in 1999. [02:38.780 --> 02:41.120] It's been upgraded significantly since then. [02:41.120 --> 02:43.920] It's now version 1.0.8. It's a stable 1.0. [02:45.380 --> 02:47.620] 1.0.9 is a stable 1.0? [02:47.780 --> 02:48.840] Yeah. Okay. [02:53.700 --> 02:56.700] We just ran the latest bleeding edge version. [02:56.720 --> 02:59.540] So, why Asterisk? Well, first off, it's free! [03:01.600 --> 03:03.040] And that's the cool part. [03:03.040 --> 03:09.380] A typical PBX for a business will cost you in the 5-digit range just for the hardware. [03:09.620 --> 03:11.580] And when you set it up, it will cost you even more. [03:11.660 --> 03:15.040] So if you can do this yourself, and this is very easy to do yourself, [03:15.040 --> 03:17.020] it will save you a lot of money if you're running a company. [03:17.020 --> 03:20.620] And if you're a hobbyist, it's really cool because you can set up your own phone network [03:20.620 --> 03:23.060] and call each other for free, and we'll get into that. [03:23.580 --> 03:25.720] It runs on commodity PC hardware. [03:25.720 --> 03:30.820] In fact, this little tiny laptop that Ratchet is typing on right now [03:30.820 --> 03:33.460] is our Asterisk PBX for the presentation. [03:34.380 --> 03:37.740] There's broad support for VoIP protocols and hardware. [03:38.040 --> 03:41.760] It's easy to interconnect with other Asterisk boxes and form your own network. [03:41.760 --> 03:44.300] It's configurable to do almost whatever you want it to do. [03:44.300 --> 03:48.820] So you can tweak it to your needs, you can write your own code to interface with things if you need to. [03:49.360 --> 03:54.020] Unfortunately, it won't do your dishes, but it comes close. [03:54.020 --> 03:57.420] We're working on the dish dial tone module. [04:04.980 --> 04:07.780] So let's get into the hardware of Asterisk. [04:08.500 --> 04:11.880] Asterisk will run on surprisingly out-of-date stuff. [04:12.120 --> 04:18.160] If you go to VoIPinfo.org, there's a wiki there with all sorts of information on VoIP and especially Asterisk. [04:18.160 --> 04:22.720] And one of the pages is this page where people post what they've gotten Asterisk to do. [04:22.720 --> 04:24.780] And they stress test Asterisk on various hardware. [04:25.260 --> 04:32.220] Someone running a 133 MHz Pentium 1 with 16 MB of RAM got 3 concurrent SIP calls going at the same time. [04:32.960 --> 04:35.460] And any PC you have lying around will work. [04:35.540 --> 04:42.060] Someone posted that they got a 2.4 GHz P4 with 512 MB of RAM to do 790 simultaneous calls. [04:43.860 --> 04:49.600] So you'll hit your bandwidth limit far more quickly than you'll hit the limit of your hardware. [04:52.200 --> 04:56.640] Here's a sample Asterisk installation. This is actually my rack behind my desk at home. [04:56.800 --> 04:59.620] So here's my Asterisk box in the corner. [05:00.780 --> 05:03.940] Thanks, thanks. I get told that a lot. [05:06.180 --> 05:07.460] I beg your pardon? [05:09.180 --> 05:11.540] Yeah, I did get the rack at Costco, actually. [05:12.600 --> 05:17.280] So there's the Asterisk box chilling into my mail server, my web server, my NAS box, and everything. [05:17.860 --> 05:24.560] There are Sun machines here. Asterisk is running on the PC, but people have gotten it to work on Sun machines running Linux. [05:24.560 --> 05:28.420] And I think someone got it to run on Solaris running on Sun hardware as well. [05:30.360 --> 05:32.640] So, yes. [05:34.820 --> 05:40.180] They all work. We'll have a Q&A session at the end, so we'll do that. [05:41.000 --> 05:46.860] There are many methods for connecting your telephones to Asterisk. [05:46.860 --> 05:53.120] You can get either an IP telephone, or you can connect regular analog telephones to Asterisk. [05:53.920 --> 05:58.140] There are IP telephones you can buy second-hand on the market. They're not all that expensive. [05:58.260 --> 06:01.300] This is the Cisco 7960. This is an IP phone. [06:01.840 --> 06:08.300] You can get those for about $250 online. In fact, I looked on eBay. I think I saw them going used for $150. [06:09.520 --> 06:14.860] If you look for deals, I've gotten one for $120. That's as low as they go right now in current market conditions. [06:18.160 --> 06:19.860] There's the... go ahead. [06:20.060 --> 06:22.100] You don't want to know what I had to do for that. [06:24.980 --> 06:28.640] There's the Polycom IP600, which is considered the other really good phone. [06:28.640 --> 06:31.660] These two are considered probably the premium-deployed telephones. [06:31.660 --> 06:34.120] And that's $250 online on eBay. [06:34.520 --> 06:39.840] There are crappy telephones you can get. You can get the Grandstream Budget Home 100, used about $40. [06:39.840 --> 06:43.860] It's roughly equivalent to that $9.95 phone you buy at the drugstore [06:44.640 --> 06:46.980] that falls apart before you even get it home. [06:47.040 --> 06:50.260] But it's a VoIP phone, so if you need a cheap VoIP phone, that'll work. [06:50.540 --> 06:55.700] And right in the mid-range, there's the Snom 190, which is about $150, $175. [06:55.940 --> 06:58.500] The prices have come down since we threw these slides together. [06:59.120 --> 07:05.280] And, I mean, there are hundreds of manufacturers making phones for Asterisk and just VoIP in general. [07:05.280 --> 07:07.760] So you can look around and find all sorts of stuff. [07:12.220 --> 07:16.700] Most VoIP phones are built the same. We'll get into that, actually, in the protocol section. [07:16.700 --> 07:20.920] So I'm actually going to ask you to hold your questions until the Q&A session at the end. [07:20.920 --> 07:25.280] And we'll have a queue at the telephone over there for you to ask your questions via telephone. [07:27.440 --> 07:29.100] You know the cool stuff's coming later. [07:29.260 --> 07:33.800] You can also get little terminal adapters if you want to plug your analog telephones in. [07:34.320 --> 07:39.000] You can buy one from Digium that speaks Asterisk's native protocol called EECS. [07:39.080 --> 07:41.240] And that's called the EECS-E. And I think I have one here. [08:01.880 --> 08:09.980] This is the EECS-E. A little tidy thing. You plug in an analog telephone in one end and you plug your Ethernet connection in the other end. [08:09.980 --> 08:13.460] And your analog phone is now a VoIP phone. This is $100. [08:14.760 --> 08:22.040] You can also get the Sephora SPA-2002. We've got those here running. And these are about $70. [08:22.040 --> 08:25.780] You can plug two Vana Ratchet. [08:29.540 --> 08:36.100] These speak SIF instead of EECS. You can plug two analog telephones into these and get two dial tones and that's about $70. [08:36.100 --> 08:44.500] You can get the Grandstream HandyTone 286 for about $65. That only does one, I think, that speaks SIF. [08:44.500 --> 08:51.460] And the old Cisco ATA-186, which is the one that Vonage used to send out, is about $50 online. [08:51.660 --> 09:02.240] You can also... there's tons more of these. There's one... the adapter that Packet 8 used to send out, the DTA-310, you can find those about $30 used online. [09:02.240 --> 09:07.960] And although you can't really get them working as they are, you can reflash the firmware and they become just generic SIF adapters. [09:08.480 --> 09:10.360] There's details for that on the website. [09:11.260 --> 09:21.460] You can also buy something called a Zaptel card. And these are cards you put in your asterisk box and you connect analog telephones and telephone lines to these cards. [09:21.560 --> 09:26.420] The one on the top is the TDM-400P. That has four little modules on it. [09:26.420 --> 09:34.140] You can select either FXS, which are dial tones, or FXO, which are telephone line interfaces, and put them on the card and arrange them any way you like. [09:34.880 --> 09:47.500] The bottom one is a T1 card, and you can... there are two versions of FXO, 405 and 410P, and the 411 and 406 have echo cancellation built into them. [09:48.000 --> 09:57.540] And so you can bring four primary rate ISDN interfaces into that and have 96 channels of voice going out of your asterisk box. [09:57.540 --> 10:05.140] Or, you know, if you've got a whole bunch of analog phones, you can get a channel bank and plug the channel bank into the T1 for your stations. [10:05.140 --> 10:08.960] So you can have 96 stations running off of one asterisk box with four channel banks. [10:10.960 --> 10:13.540] So, what are you talking about? [10:16.180 --> 10:21.480] Let's get into some of the protocols that asterisks use to talk to the network. [10:27.800 --> 10:35.380] Those are really hard to find, in my opinion. I mean, I've looked for them because I thought they were really cool, but I could not find them anywhere. [10:35.380 --> 10:39.000] I searched eBay for about a week, and I finally gave up in frustration. [10:43.760 --> 10:44.920] Oh, that's cool. [10:46.560 --> 10:53.760] Okay, for those of you who didn't hear, apparently the Linksys TAP2 is the same way as the Sapura 2000. [10:53.760 --> 10:57.600] It can or can't, except for it cannot be flashed permanently. [10:57.600 --> 11:01.600] Anyway, getting back to interconnecting asterisks, let's go adjust this. [11:05.300 --> 11:11.860] The main protocol for interconnecting voice over IP calls is called SIP. It stands for Session Initiation Protocol. [11:11.860 --> 11:17.600] It's a signaling protocol only. It only signals and sets up calls. [11:17.600 --> 11:24.460] All it does is contact your box and say, hey, I have a good call for you. You might want to connect to it. It's on this IP address. [11:24.460 --> 11:33.400] At which point, it connects to the IP address with a protocol called RTP, which stands for Real-Time Transport Protocol. [11:34.480 --> 11:40.180] It was developed by the ITF, not ITU. It uses URLs instead of telephone numbers. [11:40.180 --> 11:50.300] For example, you won't connect to 3-1-1-5-5-5-2-3-6-8. You'll enter it into SIP, stromcharleston.com, which doesn't work on Thread. [11:50.560 --> 11:57.160] It's intended to be a peer-to-peer protocol. It's not like a general server. It goes to my box next to Strom's. [11:57.300 --> 12:05.340] It doesn't have to contact anybody for it to work. There are certain caveats to that. We'll get into those later. [12:05.340 --> 12:15.220] The main advantage of SIP is that it's very ubiquitous. It's supported by everybody. If you talk about VoIP, anything post-1998, it uses SIP. [12:16.060 --> 12:25.180] Packet 8, Broad Voice, essentially all the major providers use SIP, with the exception of AT&T called Vantage, which I'll cover later. [12:25.420 --> 12:32.760] It does not play well with NAT. It's very hard to actually set up with NAT. You have to start poking holes in your firewall for the RTP. [12:32.760 --> 12:40.900] And, for example, if you start connecting out to another box, say I'm behind NAT and I try to call Strom, it'll say, oh, connect to my box. [12:40.900 --> 12:49.700] I'm at 192.168.0.252, and Strom's loss of VoIP. So there's a lot of workarounds for it. [12:49.700 --> 12:54.660] What you have to do is you have to tell it to, you know, this is my external IP address. Use this for everything. [12:54.980 --> 13:00.060] Don't care about whatever your IP address is. However, in my opinion, it's a bit of a kludge. [13:00.880 --> 13:07.700] The other protocol, before there was SIP, there was H.323. It was developed in 1996 by the ITU. [13:08.600 --> 13:16.300] It's really far more similar to traditional protocols that are used by telephone networks, as opposed to SIP. [13:16.620 --> 13:20.540] Like, for example, SS7 or something. It's more similar to that. [13:20.560 --> 13:28.180] Again, it uses RTP for media transport, and it's used internally a lot by inter-exchange carriers. [13:28.180 --> 13:33.100] And it's very unpopular in the VoIP world, because it isn't a fair setup. [13:33.600 --> 13:36.420] And it's, like I said, a major pain in the ass to get it working correctly. [13:36.980 --> 13:37.980] Hold on. [13:38.360 --> 13:43.540] Although, by the way, although this is a telephone talk, please turn your ringers off. Thank you. [13:43.960 --> 13:46.880] Come on, I figured let's discriminate her against telephone users. [13:47.640 --> 13:53.720] We actually were hanging, Strom was hanging out in Pound Asterisk one day on IRC.3dome.net, for anyone interested. [13:53.720 --> 13:58.780] And JerJer, who's one of the major contributors in Asterisk, made the following quote. [13:58.780 --> 14:01.840] Just don't use H3.3, and all your problems will be solved. [14:01.840 --> 14:04.120] Which, technically, is correct. [14:05.120 --> 14:09.960] Now, for Asterisk, there's a main protocol, and as you can tell, it's based on Asterisk. [14:09.960 --> 14:11.840] It's called intra-asterisk exchange. [14:11.840 --> 14:15.320] It was developed by Mark Spencer of Digium, the guy who wrote Asterisk. [14:15.320 --> 14:17.740] And it covers both signaling and media transport. [14:17.740 --> 14:20.080] It's a very streamlined, very simple protocol. [14:20.080 --> 14:26.560] What Mark wanted to do is he wanted to, you know, took a look at SIP, took a look at H3.23, and said, [14:26.560 --> 14:29.240] Boy, these are crap. Let's go design a mining protocol. [14:29.640 --> 14:32.780] It does not suffer from NAT traversal issues. [14:32.960 --> 14:38.920] For example, I'm behind a firewall I call Strom, and, you know, it knows that where I'm coming from, you know, [14:39.420 --> 14:40.660] it knows where to connect. [14:40.660 --> 14:44.560] It doesn't actually, you know, say, hey, I have an IP address here, which could be wrong. [14:45.420 --> 14:50.000] Data signaling happened via UDP on port 4569. [14:50.000 --> 14:52.720] That's the only thing you have to open up in your firewall as opposed to RTP, [14:52.720 --> 14:55.240] which I think you have to open about 15,000 ports for. [14:55.760 --> 14:57.980] Very well supported by Asterisk. [14:59.420 --> 15:02.840] However, the support in terminal equipment is very rare. [15:02.840 --> 15:08.020] The only ETA that supports it is the ICSI by Digium that makes it. [15:08.240 --> 15:12.380] I've also noticed that one phone recently started to support it. [15:12.380 --> 15:14.100] It's called a NetWeb302. [15:14.100 --> 15:15.820] It's actually made in China. [15:16.300 --> 15:18.880] And the only place you can get it is someplace in Delaware. [15:19.640 --> 15:20.440] Telephone. [15:20.880 --> 15:22.600] Could you shut off the ringer, please? [15:22.860 --> 15:24.420] I'm testing for later. [15:24.960 --> 15:26.560] The nerve of some people. [15:29.720 --> 15:35.560] It's a protocol for many PSTN termination providers because, you know, a lot of PSTN termination providers, [15:35.560 --> 15:36.800] they use Asterisk. [15:36.800 --> 15:37.840] It all works. [15:37.840 --> 15:38.460] Just set it up. [15:38.460 --> 15:39.500] It's fire and forget. [15:39.660 --> 15:42.800] I think I set it up in one of my accounts about a year ago. [15:42.800 --> 15:44.520] I haven't touched configuration settings. [15:44.520 --> 15:45.700] It just works. [15:46.820 --> 15:50.820] The other protocols are the Media Gateway Control Protocol, MGCP. [15:50.820 --> 15:52.360] That's the other protocol I was talking about. [15:52.360 --> 15:54.140] It's used by AT&T called Vantage. [15:54.340 --> 15:56.380] I'm not sure if they still use it, but they did. [15:56.560 --> 16:03.700] I bought an old ETA firm on eBay, and I had to reflash it and do all kinds of annoying things to actually get it working with Asterisk. [16:03.700 --> 16:05.100] But the support is there. [16:05.400 --> 16:09.300] The other thing is Cisco's Skinny Client Control Protocol. [16:09.800 --> 16:11.320] It's used by Cisco phones. [16:11.320 --> 16:12.340] This actually uses SIP. [16:12.340 --> 16:13.940] This doesn't use SCCP right now. [16:13.940 --> 16:18.860] You can choose with the Cisco phones to use either SIP or SCCP. [16:18.860 --> 16:20.280] They're different firmware images. [16:20.900 --> 16:23.500] Not all Cisco phones support SIP. [16:23.500 --> 16:30.760] For example, I have an older version that was made in the early 2000s, and it only uses SCCP. [16:30.760 --> 16:32.000] There's support for it. [16:32.000 --> 16:34.520] It's not the best in the world, but it works. [16:34.520 --> 16:39.060] I mean, I can only have one line on the phone, and three-way calling is an issue. [16:40.960 --> 16:46.200] There are two different SCCP implementations for Asterisk, and they both kind of suck. [16:47.200 --> 16:50.140] Chan SCCP2 doesn't suck as bad. [16:53.140 --> 16:55.900] But that's kind of like being the tallest midget. [16:55.900 --> 16:56.960] Yeah, exactly. [17:00.200 --> 17:03.960] Since Strom is the Kodak Nazi, we'll just sort of choose this one for him. [17:03.960 --> 17:07.020] I'm a Kodak Nazi now, in addition to being a spelling and grammar Nazi. [17:12.920 --> 17:13.980] It's a compliment. [17:15.220 --> 17:23.680] So anyway, basically, there are many different codecs that you can use to encode voice with Asterisk. [17:23.680 --> 17:27.540] And we're going to go over what they are, what they do, and what they sound like. [17:28.920 --> 17:32.280] In order to understand codecs, you need to understand how digital audio works. [17:32.280 --> 17:34.760] How many of you don't really know how digital audio works? [17:36.480 --> 17:37.360] Okay. [17:37.360 --> 17:41.060] Well, I don't want to see too many hands go up, so I'll kind of go over this quickly then. [17:41.260 --> 17:46.120] Basically, you have an analog waveform, and this is divided up into a number of little slices of time. [17:47.260 --> 17:53.700] So you have an analog bunch of different slices of analog audio. [17:53.820 --> 17:58.080] These are pulses of analog amplitudes called pulse-amplitude modulation. [17:58.140 --> 18:00.300] So you've got time division, but it's still analog. [18:00.780 --> 18:06.640] What happens is these values are then quantized into digital values. [18:06.640 --> 18:08.140] This is called pulse-code modulation. [18:08.280 --> 18:12.400] PCM is what you use when you talk on a telephone, on a regular telephone call. [18:12.400 --> 18:14.700] And it's also what you hear when you play a CD. [18:16.440 --> 18:20.680] So what happens is the values are quantized between 1 and negative 1. [18:20.680 --> 18:26.740] So depending on how much resolution you want to give to the values, you can specify more. [18:26.740 --> 18:35.060] The way mu law works, what mu law is, is the companding scheme that the analog telephone network uses. [18:35.060 --> 18:39.680] Whenever you make a regular long-distance call or a regular local call, you're using mu law. [18:39.800 --> 18:45.900] It's 64 kilobits per second, and what happens is it's a logarithmic scale. [18:45.900 --> 18:51.440] So more resolution is given to the lower amplitudes, where most of the voice frequency is, [18:51.440 --> 18:54.260] in order to give you the impression of 16-bit audio. [18:54.740 --> 19:02.440] What actually happens is it's only 8-bit audio, but it sounds far closer to 16 because of the companding. [19:03.680 --> 19:08.820] But however, for some people, 64 kilobits per second is still way too high for bandwidth. [19:08.920 --> 19:16.080] They're greedy, or they have less bandwidth, and they want to be able to send phone calls over less bandwidth. [19:16.080 --> 19:20.200] So there are many different ways of compressing this already compressed audio. [19:21.860 --> 19:25.720] Adaptive differential pulse code modulation, well first, differential pulse code modulation, [19:25.720 --> 19:28.800] uses 4 bits to describe the change from the last value. [19:28.800 --> 19:33.020] What mu law does, and PCM does, is it actually describes each value individually. [19:33.020 --> 19:36.600] This one it says, you know, go down 4, go up 2, and so on. [19:37.300 --> 19:42.280] Regardless of the original source resolution, regular DPCM just uses 4 bits. [19:42.760 --> 19:48.380] Adaptive differential PCM uses a varying number of bits, depending on the complexity of that sample, [19:48.380 --> 19:52.420] but it's still 32 kilobits per second, so they have to scrim somewhere. [19:52.960 --> 19:56.120] It sounds almost like mu law, but not quite. [19:57.220 --> 20:02.540] There's also LPC, and this is the basis for a lot of what you find in cell phone codecs. [20:02.720 --> 20:06.020] It's linear predictive coding, and it basically, it's pretty complex, [20:06.020 --> 20:09.820] but the basic thing is that it uses vocoders to compress speech. [20:09.920 --> 20:13.840] And it tends to work pretty well for speech, but there's a lot of electronic music nowadays [20:13.840 --> 20:18.140] that has the vocoders that have the singing synthesizer effect in the song. [20:18.240 --> 20:22.820] So, actually if you listen closely to talking on a cell phone, you'll begin to hear that. [20:24.120 --> 20:28.540] And you can actually use all these codecs with Asterisk and VoIP. [20:29.620 --> 20:35.260] So, again, voice on the PSTN is 64 kilobits per second, synchronous bandwidth for wireline telephones. [20:35.580 --> 20:40.800] North American uses mu law companding, most of the rest of the world uses a-law companding, [20:40.800 --> 20:46.420] which is almost identical, but slightly different, but for all intents and purposes, they sound exactly the same. [20:47.000 --> 20:49.960] If you're in 64 kilobits, if you're doing something called bit-probing, [20:49.960 --> 20:56.080] which is basically to give you supervision in band on one of the digital channels, you get 56 kilobits per second. [20:56.080 --> 20:57.900] But for the most part, it sounds the same. [20:58.380 --> 21:03.380] On mobile phones, you only get 4 to 13 kilobits per second for your voice. [21:03.420 --> 21:05.780] Which is why mobile phones sound so horrible. [21:08.160 --> 21:11.460] So, speech compression does have a lot of costs. [21:11.460 --> 21:16.740] First off, if you're running it on your Asterisk box, you have to transcode from mu law to the codec. [21:16.740 --> 21:20.300] And in order to be able to hear it, you have to transcode back from the codec to mu law. [21:20.660 --> 21:23.700] So, there's an increased CPU load that's required. [21:23.700 --> 21:33.580] That box that does 790 simultaneous calls, if you have it do GSM or one of the lower bandwidth codecs, [21:33.580 --> 21:37.160] I think that drops down to maybe 100 simultaneous calls. [21:38.120 --> 21:42.120] There's no guarantee that two pieces of equipment will speak the same codecs. [21:42.120 --> 21:50.920] A lot of times, the Seporas speak mu law and then G.726, I think. [21:50.920 --> 21:52.640] And then some of the other codecs. [21:52.920 --> 21:55.000] But, yes. [21:56.940 --> 22:00.840] But, you know, I think we're going to have to keep track of whether this is on or off. [22:04.800 --> 22:06.240] Thank you. [22:06.540 --> 22:09.580] But I think the EECSY only speaks mu law. [22:10.400 --> 22:13.540] And there are things that just speak certain codecs, and it's a mess. [22:13.540 --> 22:18.180] I mean, there's no guarantee that any pieces of equipment will be able to talk to each other unless you use mu law. [22:18.660 --> 22:21.620] Some codecs require licensing. [22:21.900 --> 22:23.100] Oh, and one thing I forgot to mention. [22:23.100 --> 22:27.080] If you're using non-standard fit rates for some of these codecs, then you're really in trouble. [22:27.340 --> 22:29.860] Some codecs require you to pay licenses to use them. [22:29.860 --> 22:33.360] There's a codec that... actually, we'll get into that in another slide. [22:33.460 --> 22:35.800] And codecs don't handle all kinds of sounds well. [22:36.840 --> 22:39.840] People will generally have trouble understanding certain words. [22:39.840 --> 22:46.660] A friend of mine says that every time he calls up a restaurant to make a reservation, they cannot understand the word north. [22:47.260 --> 22:50.780] It's always interpreted as something else from his mobile phone. [22:50.780 --> 22:52.620] No one ever gets north right. [22:53.440 --> 23:02.020] It's difficult to understand anyone who has poor diction, because these are designed under the assumption that people who are using them tend to enunciate well. [23:02.020 --> 23:06.620] And music on hold in codec land is absolute torture. [23:06.960 --> 23:09.300] You can gouge your eyes out if you really want to. [23:09.300 --> 23:12.440] I mean, I want to do that every time I'm on hold on my mobile phone. [23:16.230 --> 23:18.490] It is that bad sometimes. [23:18.650 --> 23:22.670] There's one we'll demonstrate that is that bad. [23:22.670 --> 23:24.930] There's a documented case in Arkansas. [23:26.430 --> 23:29.130] Apologies to anyone from Arkansas here. [23:32.390 --> 23:34.970] Here's the benefits. Each call uses less bandwidth. [23:34.970 --> 23:36.450] That's it. [23:37.710 --> 23:41.730] I wish there were more, because that slide looks really empty, but that's it. [23:43.730 --> 23:45.630] Here's what Asterisk supports. [23:45.630 --> 23:49.810] G.711, which is 64 kilobit per second ULA or ALAW companding. [23:50.170 --> 23:53.790] G.726, which is 32 kilobit per second ADPCM. [23:54.070 --> 24:02.670] G.729, which is 8 kilobit per second CSACELP, which is Conjugate Structure and Algebraic Code Excited Linear Prediction. [24:02.670 --> 24:05.870] That requires a license from Digium to purchase. [24:06.450 --> 24:08.730] We're going to demonstrate that codec later. [24:08.910 --> 24:14.990] Just in order for me to be able to call Ratchet's box and have one telephone conversation over the codec, [24:14.990 --> 24:16.470] we each had to pay $10. [24:17.950 --> 24:21.650] That's only for one call, so if you want to have more than one call using this codec, [24:21.650 --> 24:24.030] $10 a call for the licenses. [24:25.850 --> 24:27.490] Not per instance. [24:27.490 --> 24:29.950] Yeah, simultaneous calls. [24:29.950 --> 24:35.810] So if you only buy five licenses, you cannot have more than five simultaneous calls running on that codec. [24:36.050 --> 24:40.230] So if it were $10 a call, I think no one would use this thing. [24:40.230 --> 24:44.010] It would be like being back in those days. [24:44.010 --> 24:46.050] Or if it was developed by Microsoft. [24:46.770 --> 24:51.750] Here's the Internet Low Bandwidth Codec, which is a 13.3 kilobit per second linear prediction coding. [24:51.750 --> 24:53.350] This is what Skype uses. [24:53.350 --> 24:57.390] I mean, I've heard people rave about Skype. I hear it. I hear it just like ILBC. [24:58.630 --> 25:04.050] There's also Speaks, which is an open source codec. I think it's based on like the Ogg Vorbis stuff. [25:04.330 --> 25:08.010] And that's also 13.3 kilobit per second codec-sided linear prediction. [25:08.330 --> 25:15.090] And finally, for those of you who are on dial-up, there's LPC10, which is 2.4 kilobit per second. [25:15.230 --> 25:18.350] It sounds more ghastly than you can possibly imagine. [25:20.730 --> 25:22.230] Yes, that's the one. [25:22.990 --> 25:31.790] So in order to do a comparison of all these codecs, we figured we'd play some audio for you using each of the codecs. [25:31.790 --> 25:37.250] And so I decided, you know, I could do just talking, but that would get boring after about 25 seconds. [25:37.250 --> 25:43.570] So as proof that you can find anything on Craigslist, I found this song that this band let us use for free. [25:43.570 --> 25:51.190] So apologies if it's not up to your musical standard or your musical taste, but it's free, so be happy. [25:51.190 --> 25:52.170] I like it. [25:52.170 --> 25:53.250] I like it, too. [25:53.250 --> 25:57.630] It gets stuck in my head every time I hear it, and it's really annoying when he uses this version. [25:57.630 --> 25:58.230] Yes. [26:00.890 --> 26:04.070] Wait, so let me, um, let me cue it up here. [26:13.420 --> 26:14.140] Okay. [28:29.030 --> 28:33.610] If they ever get a recording contract, buy their album. We promise we'll give them a bargain. [28:33.610 --> 28:34.370] Yeah, we promise. [28:34.370 --> 28:40.830] Also, if you really like the song, I think there's a copy on your asterisk, not on your asterisk, on your Defcon CD. [28:40.830 --> 28:48.550] Also on your Defcon CD, there's the full copy of that song in every codec we just demonstrated, so you can listen to them and compare for yourself. [28:48.550 --> 28:51.990] We won't be responsible if you listen to the whole thing in LPC 10. [28:52.370 --> 28:53.030] Yeah. [28:54.650 --> 29:00.090] So let's talk about getting Asterisk to talk to the real phone network, because this is all fun and cool, [29:00.090 --> 29:07.570] but it's going to be kind of limited in use if you can't talk to, you know, your mobile phone or your mother or somebody on the street. [29:09.030 --> 29:17.130] There are various providers that, um, that you can use to terminate the public telephone network, and we're going to go into one of them. [29:17.130 --> 29:22.190] It's called Nuphone. Nuphone, uh, well, you know more about Nuphone than I do. Why don't you tell them? [29:26.770 --> 29:35.010] The plus about Nuphone is that they have cheap rates, not as cheap as some other voice-over ID providers, but pretty decent rates. [29:35.410 --> 29:41.090] They're very geared toward Asterisk. I believe they support this only under a nice public high-pride, [29:41.090 --> 29:45.070] saying, you know, I want to be assisted by, you know, a supporter or some other ADA. [29:45.450 --> 29:51.710] One of the things that I like about them, and at least my experience with my first provider, is that you can set your caller ID outcomes, [29:51.710 --> 29:57.710] which has some interesting, you know, applications to it. I'll cover that later. [29:58.050 --> 30:04.310] Um, and also the really cool thing about Nuphone, and I think it's their best feature, is they have insanely cheap provisioning. [30:04.670 --> 30:10.930] I never thought anywhere in my life I would ever have to find 800 numbers for my name, but I do. [30:11.550 --> 30:15.490] I, seriously, I click them and they send you an email saying, here's your 800 numbers. [30:15.490 --> 30:23.230] You can actually do vanity 800 numbers for them, like if we wanted to buy 800 Asterisks, I don't know how many characters it is. [30:23.530 --> 30:25.510] I've forgotten how many 800 numbers I own. [30:25.510 --> 30:32.950] Anyway, it takes a little longer for that, and they charge you a fee, but, you know, for any old 800 number that you want, it's just, you know, poof, it's yours. [30:33.390 --> 30:39.110] They're very easygoing. When I first set up my account with them, I'm not sure how they do that, but when I first set up my account with them, [30:39.110 --> 30:44.750] I said, oh, you know, we tell you, you know, we send you some money, what happens when that money's out, are you going to shut off my service? [30:44.750 --> 30:49.690] He said, no, we'll just send you a reminder email, you know, we'll just, you know, send it off. [30:49.690 --> 30:52.450] You won't turn off your service or anything, we'll just send you some money. [30:53.610 --> 30:56.510] They also have something called caller ID number for delivery. [30:56.510 --> 31:00.430] How many people are familiar with SS7 and the difference between CPN and CID? [31:01.550 --> 31:02.750] Oh, good amount of people do. [31:02.790 --> 31:06.790] Anyway, CPN is sort of like caller ID on steroids. [31:08.170 --> 31:10.710] It's a little more speedy than caller ID. [31:10.710 --> 31:14.070] You can actually do 9 times out of 10 unless you know what you're doing. [31:14.130 --> 31:17.830] CPN is usually very free-flow and you can't change it. [31:18.150 --> 31:21.110] Of course, you know, you're probably laughing at me. [31:22.210 --> 31:26.730] It's, caller ID on steroids is a little more free-flow and it's harder to mistake it, theoretically. [31:27.430 --> 31:31.990] They also have, quite recently, they have a blocker on deletion projects. [31:31.990 --> 31:34.690] Now, for the longest time, what would happen is, you know, like, [31:34.690 --> 31:37.910] your call would not go through or you'd get an intercept saying, like, [31:37.910 --> 31:41.090] the number you've been calling has been changed, so and so. [31:41.090 --> 31:43.130] It wouldn't actually work like that. [31:43.930 --> 31:47.370] And for someone like me, who's phone-free and enjoys calling intercepts, [31:47.370 --> 31:49.690] it was a bit of a bummer. [31:49.990 --> 31:54.730] But, you know, a couple weeks ago, oh, a couple months ago, by now, [31:54.730 --> 31:56.030] they actually turned it on. [31:56.030 --> 32:04.650] I called with a payphone out in Boston and I got, you know, [32:04.650 --> 32:07.110] I'm sorry, the phone number you've reached is not accepted. [32:07.110 --> 32:10.170] I literally picked up the phone and called him and said, [32:10.170 --> 32:12.090] who funds this proper conversation? [32:12.090 --> 32:13.950] And he was jumping out like a sleight of hand. [32:13.950 --> 32:15.050] He was too gross on the net. [32:17.290 --> 32:19.630] It was very exciting for me. [32:20.710 --> 32:24.710] CONSTED, directed for dial numbers, which are basically numbers you would call on, [32:24.710 --> 32:28.710] you would set up on the PSTN, so mom, dad, you know, your sister, [32:28.710 --> 32:32.850] someone who doesn't have an asterisk can call you and actually reach you on your woodline. [32:32.850 --> 32:36.510] The only numbers they have are in Michigan, which for me, I guess, is okay [32:36.510 --> 32:39.290] because no one really calls me on woodlines besides him. [32:40.150 --> 32:44.030] And they're also not too freak-friendly, despite being very easygoing. [32:44.030 --> 32:51.330] For example, during Strong and Lucky 55's presentation last year on freaking in the age of voice over IP, [32:51.330 --> 32:51.590] was it? [32:51.590 --> 32:53.150] Yeah, I think it was something like that. [32:53.270 --> 32:57.690] They sent them a cease and desist letter saying, no, they didn't send me a cease and desist letter. [32:57.730 --> 32:59.590] Who did they send a cease and desist letter? [32:59.590 --> 33:01.490] Was it not there yet? [33:01.570 --> 33:02.950] It's not there yet. Stand up. [33:03.770 --> 33:05.110] Here's Mr. Cease and Desist. [33:05.110 --> 33:11.670] This is the man who's on Jeremy McNamara's shit list. [33:11.670 --> 33:17.130] He basically said, you know, if you do this, I will terminate your account and ban you for life from New Phone. [33:19.230 --> 33:20.870] I haven't heard a peep out of him. [33:21.670 --> 33:23.270] Okay, we're just going to... [33:24.270 --> 33:26.290] Oh, they stopped carrying CPM this week. [33:27.370 --> 33:28.230] Oh, great. [33:28.230 --> 33:31.750] This is what we did. [33:42.560 --> 33:45.320] We used to like Astrolink until this weekend. [33:49.220 --> 33:57.840] Astrolink, for the most part, for me, has been reliable, although this week has been a whole other bag of forms which we'll get into later. [33:58.380 --> 34:02.700] You can get your inbound termination via toll-free numbers. [34:02.700 --> 34:06.640] And, of course, AMI-II. How many of you do not know what AMI-II is? [34:08.500 --> 34:10.860] AMI-II is the class of service. [34:10.860 --> 34:17.880] So you can tell whether your calls are coming in from an AMI phone or a mobile phone or a pay phone, what type of pay phone. [34:17.880 --> 34:20.340] You can see whether your calls are coming in from a person or two. [34:21.600 --> 34:24.220] And Astrolink does also proper call completion. [34:24.480 --> 34:30.020] So if you get the PPM at the port and your numbers have changed, you can do that. [34:30.020 --> 34:33.860] The con of the AMI-II interface is that it's a little bit clunky. [34:35.280 --> 34:40.560] It's actually gotten better. I was actually able to use it with Firefox for the first time this week. [34:40.740 --> 34:45.060] But I had to try it for a while, so it didn't quite work right with Firefox. [34:46.140 --> 34:52.200] And right now, at least, they're experiencing each two different problems with some customers, namely us. [34:53.360 --> 34:55.160] This is why we don't like them anymore. [34:55.160 --> 35:00.000] But we'll get into our beef with Astrolink later. [35:00.860 --> 35:04.900] There's also Voice Calls Connect, which I use to do my inbound calls. [35:05.120 --> 35:08.120] They give you a local numbering in almost every center you want. [35:08.120 --> 35:11.280] You get unlimited internet minutes on inbound EECS calls. [35:11.620 --> 35:14.340] And you have inbound numbers for a large number of great centers. [35:14.340 --> 35:16.160] And it's also called a proper call program. [35:16.160 --> 35:22.580] The problem is, it's one of the most expensive EECS providers for outbound information. [35:23.800 --> 35:26.220] New Phone is about two cents a minute. [35:26.280 --> 35:28.360] Astrolink is also two cents a minute. [35:28.360 --> 35:32.840] Voice Calls Connect is, I think, it used to be 2.9 cents a minute. [35:32.840 --> 35:37.420] Then they dropped it down to the low, low price of 2.4 cents a minute or something like that. [35:37.420 --> 35:38.500] Wow, that's not ideal. [35:40.820 --> 35:46.180] I guess when you go landline long distance, it's five cents a minute, like my inbound call. [35:46.180 --> 35:47.540] There's something else you can totally keep. [35:47.540 --> 35:51.880] When you've got providers that do 1.3 cents a minute, you're getting better. [35:54.100 --> 35:57.240] And the other thing is that inbound numbers with Voice Calls Connect, [35:59.500 --> 36:02.900] my number that's on my business card is a Voice Calls Connect number. [36:02.900 --> 36:07.860] And for some reason, usually I have to go to a menu. [36:07.860 --> 36:09.280] You know, thank you for calling for strong cards. [36:09.280 --> 36:10.480] My PBX is strong. [36:10.480 --> 36:11.300] I like to be clear. [36:11.300 --> 36:13.180] I like to show you that I appreciate what you're doing. [36:15.220 --> 36:19.360] And I had someone trying to call me, and they kept pressing 2, and it would just hang up on them. [36:19.360 --> 36:21.800] Because my PBX never heard the 2. [36:21.920 --> 36:26.700] So I had to make a move directly to my mobile phone this weekend. [36:27.880 --> 36:29.140] Apparently, this is the first sentence. [36:29.140 --> 36:32.380] This is the first sentence that happened to me, but some people are having major issues with it. [36:32.380 --> 36:35.160] So if you're really unlucky, you're totally screwed. [36:36.740 --> 36:37.560] Here's VoiceJet. [36:37.560 --> 36:38.400] It's really cheap. [36:38.400 --> 36:39.800] It's 1.3 cents a minute. [36:41.840 --> 36:45.020] Actually, I think it's 1.29 now. [36:45.200 --> 36:45.680] Oh, is it? [36:45.680 --> 36:46.240] Wow. [36:46.520 --> 36:48.420] A whole mil when they dropped it. [36:49.020 --> 36:50.200] Hey, it adds up. [36:50.200 --> 36:50.760] Yeah, it does. [36:50.760 --> 36:51.320] It does. [36:51.720 --> 36:54.180] Caller ID delivery is unreliable with VoiceJet. [36:54.180 --> 36:58.700] You oftentimes get the number where I found the call, instead of the number that you set it to. [36:58.840 --> 37:02.880] There's no e-mail service that's appropriate, and there's no proper call completion. [37:02.880 --> 37:08.300] If you call a number that's been disconnected, and the phone company that you're giving it to says, [37:08.300 --> 37:12.360] this number has been disconnected, all you'll hear is the phone ringing and ringing and ringing. [37:12.640 --> 37:18.320] So you'll never know why your mother has changed her phone number in your situation. [37:19.820 --> 37:21.540] She doesn't love me! [37:24.740 --> 37:25.740] Exactly, see? [37:26.500 --> 37:28.860] It's because we all use LPCs now. [37:29.860 --> 37:31.880] There's also a company called Broadvoice. [37:32.200 --> 37:34.600] They have cheap PIDs in most race centers. [37:42.340 --> 37:44.140] They're pretty much run by phone freaks. [37:44.140 --> 37:49.860] In fact, when you sign up, you have them send you the kit with the ATA and everything. [37:49.860 --> 37:53.860] They also send you this little pin, which is this logo, [37:53.860 --> 37:56.500] with the red circle and the slash through it. [37:56.660 --> 38:00.020] I actually found out this weekend they also do T-shirts. [38:00.200 --> 38:04.240] Yes, at least one person here at DEF CON is walking around with a Broadvoice pin, [38:04.240 --> 38:06.960] with the Bell logo and the slash through it. [38:06.980 --> 38:10.400] So if you hear that person, please stand up and get some T-shirts. [38:11.760 --> 38:13.260] He's not here? What the hell? [38:13.260 --> 38:14.180] They lose. [38:14.440 --> 38:15.340] You lose. [38:15.720 --> 38:17.920] We were going to give you just like $100,000. [38:18.700 --> 38:20.600] They were going to get the payphone, too. [38:22.220 --> 38:27.200] Oh, and the other cool thing is that you get a caller ID with name for inbound calls. [38:27.200 --> 38:29.620] Most of these other carriers will just deliver the number, [38:29.620 --> 38:33.400] but these people will actually do a name level and deliver the name for you. [38:33.400 --> 38:38.060] So we'll see not just that 311-555-2368 is calling you, [38:38.060 --> 38:40.860] but that it's from Mabel's fish restaurant or something. [38:41.260 --> 38:43.280] The problem is that it's SIF only. [38:43.320 --> 38:46.940] So if you want to do EECS termination or if you're trying to firewall or something, [38:46.940 --> 38:48.700] you've got to do some sort of EECS proxy [38:48.700 --> 38:50.960] if you want it to be reliable. [38:51.360 --> 38:53.160] They're prone to service outages. [38:53.340 --> 38:57.040] I've got, you know, my dial type is the 1-plus-8-4-7 number. [38:57.040 --> 38:58.340] It just goes over broad voice. [39:02.120 --> 39:03.960] But sometimes those things can work. [39:04.360 --> 39:06.980] Phone support is kind of slow, although it is 24-7. [39:06.980 --> 39:10.520] So I guess if you call at, you know, 3 a.m., they will answer like that. [39:10.760 --> 39:12.000] No, they won't. [39:13.400 --> 39:14.340] Yeah, I try. [39:14.340 --> 39:15.540] They'll have to wake up first. [39:15.540 --> 39:17.600] Then they'll, you know, drink their coffee. [39:18.700 --> 39:21.520] And then the other thing is CNN delivery is also unreliable. [39:21.520 --> 39:25.560] So, you know, caller ID name tends to work, but it doesn't work all the time. [39:26.740 --> 39:30.500] So now let's get into building your asterisk network. [39:31.680 --> 39:33.940] Why don't you explain enum, Ben? [39:34.020 --> 39:41.400] Okay, Brandon. [39:44.510 --> 39:52.470] Enum was the first way to actually translate code numbers over to URLs in SIF. [39:52.470 --> 39:54.270] It's based on DNS. [39:54.550 --> 39:56.330] It allows you to read numbers and query. [39:56.450 --> 40:01.730] And what it does is it basically bypasses the public switch telephone network. [40:02.290 --> 40:06.670] So, you know, I know that 3-1-1-5-5-5-2-3-6-8 is a voice number. [40:06.670 --> 40:07.470] How can I do that? [40:07.470 --> 40:08.090] I don't know. [40:08.990 --> 40:15.390] So the type I can use is supposed to be used by telecom companies. [40:15.390 --> 40:17.450] However, there's a program out there. [40:17.510 --> 40:18.730] I think this is the largest one. [40:18.730 --> 40:19.730] I may be wrong. [40:19.750 --> 40:22.050] It's called 2-1-2-3-4.org. [40:22.050 --> 40:24.010] It's a free do-it-yourself solution. [40:24.010 --> 40:28.810] What you do is you register your number in 2-1-2-3-4-5-5-2-3-6-8, [40:28.810 --> 40:30.610] and you register it to a URL. [40:30.610 --> 40:37.410] And then someone queries their enum server, then, over the Internet. [40:42.720 --> 40:49.950] But then you realize that local exchanges can't access 2-1-1-5 numbers, [40:49.950 --> 40:53.590] and how many exchanges you've got can't access 2-1-2-3-4-5-6-8. [40:53.670 --> 40:56.410] I think in an area code, there's a maximum limit. [40:56.410 --> 40:59.370] We've always reserved 3-1-2-3-4-7-2-2 million numbers. [40:59.370 --> 41:01.710] And Los Angeles has how many area codes now? [41:02.070 --> 41:03.610] So, a lot. [41:03.710 --> 41:08.730] They also have 78 million special PSTN services. [41:08.730 --> 41:10.330] So you're essentially... [41:10.330 --> 41:13.550] you can offer free termination of $800, [41:13.550 --> 41:20.500] which is basically a PSTN termination service. [41:20.500 --> 41:22.700] You can use this, and you can dial in your numbers. [41:25.340 --> 41:27.200] How e-mail works... [41:28.060 --> 41:29.460] I left it in my car. [41:31.720 --> 41:32.580] Everything's in my car. [41:32.580 --> 41:34.400] Okay, if we all pay attention to the top, [41:34.400 --> 41:36.060] basically, I'm at the top of my phone, [41:36.060 --> 41:39.300] and I want to dial 3-1-1-5-5-5-2-3-6-8. [41:40.080 --> 41:40.820] Oh, yeah. [41:42.240 --> 41:44.260] Touchpad, marvels of modern technology. [41:44.260 --> 41:45.640] Yes, latest thing in Virginia. [41:46.460 --> 41:47.440] I'm at this telephone. [41:47.440 --> 41:50.100] I basically want to dial 3-1-1-5-5-5-2-3-6-8. [41:50.100 --> 41:51.840] So I pick up my handset, dial it, [41:51.840 --> 41:53.040] and talk to my DVX. [41:53.040 --> 41:56.320] It says, okay, I want to dial 3-1-1-5-5-5-2-3-6-8. [41:56.320 --> 41:57.460] Connect me there somehow. [41:57.460 --> 41:59.120] So what I set up my DVX to do [41:59.120 --> 42:00.500] is talk to a medium circle. [42:00.960 --> 42:02.540] And it says, hey, do you know [42:02.540 --> 42:05.100] what 3-1-1-5-5-5-2-3-6-8 is? [42:05.320 --> 42:07.440] And it says, yes or no. [42:07.440 --> 42:08.540] And essentially, in this example, [42:08.540 --> 42:10.660] it says, yes, it's a bell at telephone.com. [42:10.660 --> 42:12.280] So it registers that to my DVX, [42:12.280 --> 42:14.740] at which point my DVX goes, [42:14.740 --> 42:17.340] ooh, I guess I'll go over to the internet.com [42:17.340 --> 42:19.020] rather than picking up a local line. [42:19.020 --> 42:19.980] And it goes over the internet, [42:19.980 --> 42:22.140] and I dial 3-1-1-5-5-5-2-3-6-8 [42:22.140 --> 42:23.100] down here, which they also [42:23.100 --> 42:24.980] don't do at 3-1-1-5-5-5-2-3-6-8. [42:24.980 --> 42:27.480] They're also completely bypassing the BSDN. [42:28.780 --> 42:30.260] Email is a very... [42:30.260 --> 42:32.300] has a lot of problems in my opinion. [42:32.300 --> 42:33.620] It's a very top-down way [42:33.620 --> 42:34.900] of looking at things. [42:34.900 --> 42:36.900] It's centrally managed, centrally served, [42:36.900 --> 42:37.920] and centrally centralized. [42:37.920 --> 42:40.720] Basically, they wanted developers [42:40.720 --> 42:42.560] exactly like DNS and have, you know, [42:42.560 --> 42:44.680] 15 root servers all over the world, [42:44.680 --> 42:46.260] which is great, but no one actually [42:46.260 --> 42:47.420] has done it yet. [42:49.960 --> 42:52.040] And it's not being used [42:52.040 --> 42:54.440] by any BSDN developers. [42:54.520 --> 42:55.680] As far as we know. [42:56.300 --> 42:58.420] Does someone want to tell me otherwise? [43:00.800 --> 43:02.140] My idea is how [43:02.140 --> 43:03.940] logically they save you money, you know. [43:03.940 --> 43:05.220] I can charge you 5 cents a minute [43:05.220 --> 43:06.740] for, you know, [43:08.400 --> 43:09.900] and it's nowhere near [43:09.900 --> 43:10.940] where it would last. [43:11.300 --> 43:13.420] We're working towards a really nice solution [43:13.420 --> 43:16.140] that's starting to get there, but at the same point, [43:16.140 --> 43:17.820] you know... [43:28.880 --> 43:30.240] Something like that, yeah. [43:30.240 --> 43:31.080] So last April, [43:31.080 --> 43:32.160] what someone set out with [43:45.290 --> 43:46.630] is a fully peer-to-peer [43:46.630 --> 43:48.110] E164 solution. [43:48.110 --> 43:48.270] It's a fully peer-to-peer [43:48.270 --> 43:48.330] E164 solution. [43:48.330 --> 43:48.850] Basically, you know, [43:48.850 --> 43:57.740] it sets up your own [43:57.740 --> 43:58.900] telephone network for fresh [43:58.900 --> 44:05.410] for your telephone company. [44:05.410 --> 44:07.670] You know, [44:22.380 --> 44:24.200] 5, 5, 5, 1, 2, 3, 4. [44:26.640 --> 44:27.240] So, [44:27.240 --> 44:28.380] we've got this DBS here, [44:28.380 --> 44:30.080] and it talks to this node over here, [44:30.080 --> 44:31.220] and what this node does, [44:31.220 --> 44:32.040] it only has one node, [44:33.060 --> 44:37.320] and what it does is [44:37.320 --> 44:38.200] it reaches that node, [44:38.200 --> 44:39.720] and that node talks to only this one, [44:41.800 --> 44:43.360] and it reaches the DBS node, [44:43.360 --> 44:43.960] it's got a dial, [44:43.960 --> 44:47.480] 3, 5, 5, 2, 5, 6, [44:47.480 --> 44:48.340] at which point, [44:48.340 --> 44:50.100] it scrolls back and says, [44:50.100 --> 44:54.510] hey, 411 service, [44:57.270 --> 44:58.710] this is all it. [45:03.480 --> 45:04.120] Basically, [45:04.120 --> 45:04.860] it's a very good [45:04.860 --> 45:06.260] peer-to-peer setup, [45:06.260 --> 45:11.320] which has some problems with [45:11.320 --> 45:12.800] Dundee, in my opinion, also. [45:13.040 --> 45:15.100] To be honest, I mean, [45:15.100 --> 45:16.360] essentially, what I could start doing [45:16.360 --> 45:17.880] is I could start advertising, hey, [45:17.880 --> 45:19.040] all the numbers to the White House, [45:19.040 --> 45:20.100] send them to me, [45:20.100 --> 45:21.280] so I can, you know, [45:21.280 --> 45:22.900] start World War III, [45:25.340 --> 45:26.140] scalability, [45:28.520 --> 45:30.140] we're not sure how it's going to be [45:30.140 --> 45:33.120] still relatively small, [45:33.120 --> 45:34.500] but I've never seen a product [45:34.500 --> 45:36.600] like Nutella. [45:36.600 --> 45:38.340] Look how many problems we had with that. [45:38.820 --> 45:40.520] It's not officially a standard yet, [45:40.520 --> 45:42.460] we just submitted it to IETF, [45:42.460 --> 45:44.780] but as we all know, standards cost money, [45:44.780 --> 45:46.960] and these people don't have it. [45:48.080 --> 45:49.540] Right now, it's only officially [45:49.540 --> 45:50.520] in DBS, [45:50.520 --> 45:53.640] and we can submit it, [45:59.810 --> 46:01.350] and run it against 109, [46:01.350 --> 46:02.750] or 107, or whatever, [46:02.750 --> 46:04.610] and get some support in it, [46:04.610 --> 46:05.450] and in my opinion, [46:05.450 --> 46:06.630] it works fine, [46:06.630 --> 46:07.650] and also in my opinion, [46:07.650 --> 46:08.450] I think the eye of the beholder [46:08.450 --> 46:10.850] should be nice. [46:14.600 --> 46:15.700] Quality assurance, [46:15.700 --> 46:23.500] what quality assurance [46:23.500 --> 46:24.120] do you charge [46:24.120 --> 46:26.140] for your [46:26.140 --> 46:28.240] for your phone call [46:28.240 --> 46:29.840] going out over your WAN, [46:29.840 --> 46:31.320] for example, [46:31.320 --> 46:32.380] I don't have quality assurance [46:32.380 --> 46:33.660] for my WAN, [46:33.660 --> 46:39.020] or for example, [46:39.020 --> 46:39.660] for my WAN. [46:41.620 --> 46:42.900] There's two ways of doing it. [46:42.900 --> 46:43.720] Can we do this? [46:45.340 --> 46:47.160] No, no. [46:47.500 --> 46:48.760] Okay, we'll do it that way. [46:51.670 --> 46:52.770] Sorry, I forgot to dial [46:52.770 --> 46:54.370] something in my PBX earlier. [46:55.730 --> 46:56.870] Basically, there are two ways [46:56.870 --> 46:58.050] you can use QoS here. [46:58.050 --> 46:58.830] There's priority QoS, [46:58.830 --> 46:59.750] which can give you a way back [46:59.750 --> 47:00.890] to priority over any other [47:00.890 --> 47:01.470] factor, [47:02.150 --> 47:06.610] where you can basically [47:07.110 --> 47:08.290] reserve your WAN [47:08.290 --> 47:09.270] and turn it away [47:09.270 --> 47:12.090] and get the rest of it for it. [47:12.090 --> 47:13.890] But for everything that's not QoS, [47:13.890 --> 47:15.730] you get the rest of the WAN. [47:16.750 --> 47:18.630] I'm sure there's more [47:18.630 --> 47:20.170] about that, but I'm a phone person, [47:20.170 --> 47:21.210] not a router person. [47:21.570 --> 47:23.770] Many residential routers are now voice aware [47:23.770 --> 47:25.970] and will do the sort of thing right out of the box. [47:26.490 --> 47:27.730] And you can also [47:27.730 --> 47:30.190] if you're a control freak, [47:30.190 --> 47:31.610] or if you want to do it on a larger scale, [47:31.610 --> 47:34.610] then you can connect your router [47:36.560 --> 47:37.900] and say, hey, I've got a super router phone [47:37.900 --> 47:39.640] and I've sort of gotten working [47:39.640 --> 47:42.040] and I'm definitely not a super router person. [47:42.920 --> 47:44.560] So now let's get into the [47:44.560 --> 47:46.860] cool part of what you can do [47:46.860 --> 47:47.620] with Asterisk. [47:47.660 --> 47:50.200] And by the way, if you're watching on TV [47:50.200 --> 47:51.340] in the hotel, [47:52.080 --> 47:54.260] we've got a special thing coming up for you. [47:56.580 --> 47:58.040] Asterisk Gateway Interface. [47:58.080 --> 47:59.300] Do you want to talk about that? [48:03.360 --> 48:04.900] Experts on certain subjects? [48:06.640 --> 48:08.040] Yes, Tag Team, exactly. [48:09.820 --> 48:15.660] So, [48:15.660 --> 48:16.540] Asterisk Gateway Interface. [48:16.540 --> 48:18.380] What it is, is an interface for adding [48:19.460 --> 48:20.680] functionality to Asterisk. [48:20.680 --> 48:23.000] It basically uses standard in and standard out. [48:23.000 --> 48:24.280] And it's very cross-language. [48:24.280 --> 48:26.920] You infer, you see, you PHP, [48:27.240 --> 48:28.620] Lisp, PCL, [48:28.620 --> 48:30.640] anything that uses standard in and standard out, [48:30.640 --> 48:32.180] you can use it. [48:32.600 --> 48:34.800] And basically, since Asterisk is the best thing [48:34.800 --> 48:37.040] since sliced bread, I find AGI to be the best thing [48:37.040 --> 48:37.980] since sliced bread. [48:38.500 --> 48:40.780] Because you can basically do anything you want with it [48:40.780 --> 48:41.960] given enough time. [48:42.440 --> 48:44.420] Here's a simple AGI for a minute. [48:44.420 --> 48:45.140] Wow! [48:46.100 --> 48:47.540] What it is, is basically, [48:47.540 --> 48:50.580] I don't know if you can actually see it [48:50.580 --> 48:52.180] up on the screen, I apologize. [48:52.960 --> 48:54.340] What it does, is basically... [48:54.340 --> 48:55.780] It's not in your Dendy notebook? [48:57.840 --> 48:58.960] Oh, great. [49:00.020 --> 49:00.560] This is what [49:00.560 --> 49:01.720] apparently electricity parts [49:01.720 --> 49:02.720] don't work. [49:04.240 --> 49:06.240] So, basically, [49:06.360 --> 49:07.760] a lot of my presentation of this part [49:07.760 --> 49:08.760] hasn't been done. [49:11.260 --> 49:12.120] Starting from here, [49:12.120 --> 49:13.080] basically, what it is, is [49:15.300 --> 49:16.680] start on a standard in point, [49:16.680 --> 49:17.900] standard in and standard out. [49:17.900 --> 49:18.980] Basically, what Asterisk does is [49:18.980 --> 49:23.340] it reads all the variables in [49:23.340 --> 49:25.100] and checks all of it. [49:25.100 --> 49:27.320] It checks to make sure, 200 times per day, [49:27.320 --> 49:28.300] 5 times per day, [49:28.300 --> 49:30.720] that we're not sure about the quality [49:30.720 --> 49:32.700] and it means that [49:32.700 --> 49:36.780] you just keep on going. [49:38.400 --> 49:39.620] Basically, what happens is [49:39.620 --> 49:40.920] after you read all the variables in [49:40.920 --> 49:42.620] and make sure they're OK, [49:42.620 --> 49:44.820] what it does is, it streams a file [49:44.820 --> 49:47.600] that says, your caller ID is... [49:47.600 --> 49:49.700] and it says, [49:49.700 --> 49:51.220] you recheck your caller ID. [49:51.560 --> 49:53.400] So, here's how it works. [49:53.680 --> 49:54.900] I've backed up here, [49:54.900 --> 50:03.630] but the one we're really interested in [50:03.630 --> 50:07.270] is AGI caller ID, which says 311-555-2368. [50:07.470 --> 50:08.450] And then it says, [50:08.450 --> 50:09.810] after it's done feeding all the variables, [50:09.810 --> 50:10.950] it says 200 results here, [50:10.950 --> 50:12.830] it means I'm done in 41 minutes. [50:12.830 --> 50:14.470] It says, OK, stream file, [50:14.470 --> 50:16.470] you know, AGI caller ID. [50:19.790 --> 50:20.790] Then it says, [50:20.790 --> 50:22.250] OK, I'm done, what do you want me to do? [50:22.410 --> 50:23.770] OK, stream pages, [50:23.770 --> 50:25.830] 311-555-2368, [50:26.950 --> 50:28.890] AGI command that asterisk understands, [50:29.390 --> 50:30.810] and it goes, [50:30.810 --> 50:32.530] you know, says 3, 1, 1, [50:35.720 --> 50:36.780] 200 results here, [50:36.780 --> 50:38.760] OK, I'm done. And at which point it says, [50:38.760 --> 50:40.400] hang up, I'm done. [50:41.500 --> 50:42.760] It takes it back to me, [50:42.760 --> 50:44.700] sends back, you know, 200 results here, [50:44.700 --> 50:46.240] I'm done now, it hangs up. [50:50.060 --> 50:50.880] Yes, exactly, [50:50.880 --> 50:53.180] AGI caller ID readback, ENAC. [50:56.620 --> 50:57.420] Now, [50:57.420 --> 50:59.120] that's a lot of work to do [50:59.120 --> 51:04.210] in what's called asterisk AGI, [51:04.210 --> 51:06.370] which is a Perl module for asterisk [51:06.370 --> 51:07.950] in writing AGI scripts. [51:08.270 --> 51:10.590] It simplifies a lot of AGI programming. [51:10.590 --> 51:12.090] Essentially, it takes out a lot of the dirty work [51:12.090 --> 51:14.270] and takes away everyone's doing the work [51:14.270 --> 51:15.450] that you don't have to. [51:15.450 --> 51:17.590] It allows the AGI to control [51:17.590 --> 51:19.950] the simple object interface in Perl. [51:20.210 --> 51:23.530] The problem is, [51:23.530 --> 51:25.830] I subscribed to the mailing list [51:26.050 --> 51:27.630] a few months ago, [51:27.630 --> 51:28.890] and it's been dead silent [51:28.890 --> 51:30.170] for the last few months ago, [51:30.170 --> 51:30.910] and someone said, [51:30.910 --> 51:32.430] is this mailing list still active? [51:32.550 --> 51:33.410] At which point I'm going to be [51:33.410 --> 51:34.650] not able to work anymore. [51:34.870 --> 51:38.010] Maybe I should set up another thing, [51:38.010 --> 51:38.710] or maybe a few people [51:38.710 --> 51:39.610] should sign up to it [51:39.610 --> 51:41.870] and start using it yourselves. [51:42.410 --> 51:43.490] What it is, is it allows [51:43.490 --> 51:45.630] the AGI to easily integrate with Perl, [51:45.630 --> 51:47.730] which easily integrates [51:47.730 --> 51:50.150] with almost anything in the known universe. [51:50.230 --> 51:51.130] And it's available at [51:51.130 --> 51:52.730] asterisk.uniter.net [51:53.290 --> 51:55.910] which is a very strange German word [51:55.910 --> 51:59.910] for like the longest time. [52:00.230 --> 52:01.610] Here's the same program. [52:01.650 --> 52:03.770] As you can tell, it gets a lot easier. [52:03.770 --> 52:05.470] I think we can test this out at least 100% [52:05.470 --> 52:07.490] to about 10 lines or so. [52:07.590 --> 52:10.230] So this is, you know, [52:10.230 --> 52:11.370] it reads in, you know, [52:11.370 --> 52:14.030] starts up a new object [52:14.030 --> 52:15.070] called AGI. [52:15.270 --> 52:17.370] You know that entire, you know, [52:18.090 --> 52:20.070] 10 line thing, check the variables, [52:20.070 --> 52:21.050] make sure they're okay. [52:21.070 --> 52:22.210] It does it all automatically. [52:23.710 --> 52:25.670] And the other feature that the other [52:25.670 --> 52:28.050] one didn't have is you did not check [52:28.050 --> 52:29.590] whether or not the person had a caller ID [52:29.590 --> 52:30.690] in the first place. [52:31.250 --> 52:33.170] So you basically, if you didn't have a caller ID, [52:33.170 --> 52:34.350] you did a file file saying, [52:34.350 --> 52:36.410] the caller ID is, and then it would hang up. [52:36.410 --> 52:38.090] Or what this one does is it checks [52:38.090 --> 52:42.290] to see if your caller ID is, you know, [52:42.290 --> 52:43.970] what this would do if you didn't have a caller ID, [52:43.970 --> 52:45.790] it would just hang up on you. [52:46.010 --> 52:48.310] And as I say, wow, it's easier to do. [52:48.750 --> 52:53.280] It checks to see if your caller ID [52:54.000 --> 52:55.380] is on touch-tone. [52:55.900 --> 52:58.600] Basically, everyone knows how to use it, [52:58.600 --> 52:59.700] including your mom. [53:00.360 --> 53:01.920] However, you know, it's very limited [53:01.920 --> 53:02.900] on what you can do with it. [53:02.900 --> 53:04.760] For example, you have to use the sign-up function [53:05.160 --> 53:07.280] to use it, or, you know, [53:07.280 --> 53:09.200] you can only use it if you have five members. [53:09.200 --> 53:17.970] The XML, it's extensible. [53:18.570 --> 53:19.690] WebPXML is extensible. [53:19.690 --> 53:21.810] VoiceXML is basically an XML [53:21.810 --> 53:24.090] that allows for scripting [53:24.090 --> 53:25.650] with a voice interface. [53:25.650 --> 53:26.450] It's extensible. [53:26.450 --> 53:28.230] The problem with Asterisk is that it has no [53:28.230 --> 53:35.900] relatively new open-source program [53:35.900 --> 53:37.660] called Asterisk PDF, which says [53:37.660 --> 53:42.240] it has Asterisk CIFS. [53:43.040 --> 53:45.040] So I spent about two weeks [53:45.040 --> 53:46.220] trying to get this compiled. [53:46.220 --> 53:47.800] It's a high-resolution [53:47.800 --> 53:48.800] demonstration. [53:48.800 --> 53:49.800] There's also [53:49.800 --> 53:52.240] commercial offerings. For example, Microsoft [53:52.240 --> 53:53.740] has a new VXML program [53:54.420 --> 53:59.850] where there's, like, at least two or three [53:59.850 --> 54:01.890] commercial ones that I know of that [54:01.890 --> 54:04.150] are also free [54:04.150 --> 54:05.150] open-source. [54:05.650 --> 54:07.170] VXML is still, you know, [54:07.170 --> 54:13.460] you need to use. [54:31.420 --> 54:32.420] Think back [54:32.420 --> 54:34.000] to that Texas speech program you played with [54:34.000 --> 54:35.640] in, like, 1987. [54:37.020 --> 54:41.120] That program is called [54:41.120 --> 54:41.900] Cepstral. [54:41.900 --> 54:47.520] Cepstral is a free [54:47.520 --> 54:48.380] free-for-download [54:49.540 --> 54:51.000] free-for-download program [54:51.000 --> 54:52.620] that they've also announced [55:09.530 --> 55:11.450] however it's not free. [55:24.260 --> 55:25.580] Something like that. [55:25.740 --> 55:27.840] You can play with a [55:27.840 --> 55:29.660] free version of Cepstral, but [55:30.180 --> 55:31.580] it's also a sound file [55:31.580 --> 55:34.620] and every fifth or tenth word or something goes [55:34.620 --> 55:36.900] please register me. [55:36.900 --> 55:38.020] Yeah, and it is free [55:38.020 --> 55:39.880] for download, like you said, and you can make sure [55:39.880 --> 55:41.340] if you ever have, like, you know, one of the programs [55:41.340 --> 55:42.740] and you want to make sure that it works with your program [55:42.740 --> 55:44.940] you can set it up and, you know, you just have to do [55:44.940 --> 55:46.660] that please register me every time it works [55:46.660 --> 55:47.860] or something. [55:49.360 --> 55:50.600] The other thing for output is [55:50.600 --> 55:53.440] reports. You can get your stuff for free. [55:54.040 --> 55:55.140] The other person is Allison [55:55.140 --> 55:56.980] and she has huge support [55:56.980 --> 55:58.400] for Asterisk. [55:58.820 --> 56:01.020] It's for pay and she has lots of [56:01.020 --> 56:02.740] fan sayings available on the internet. [56:02.960 --> 56:05.340] Asterisk also comes with a whole ton of sayings [56:05.340 --> 56:07.420] and she says all sorts of crazy stuff [56:07.420 --> 56:08.240] in the LA area. [56:17.760 --> 56:19.520] A friend of mine actually [56:19.520 --> 56:21.440] just wanted to test her [56:21.440 --> 56:22.640] and so he sent her [56:22.640 --> 56:24.820] increasingly offensive scripts [56:24.820 --> 56:27.140] and I think he finally found her [56:27.260 --> 56:28.920] a little bit after... [56:28.920 --> 56:31.060] yeah, a long time. [56:33.100 --> 56:34.040] Well, maybe she'll read [56:34.040 --> 56:35.400] Richard Nixon's Social Security number, [56:35.400 --> 56:36.180] I don't know. [56:37.440 --> 56:44.860] Basically, [56:44.860 --> 56:45.740] we have a... [56:57.110 --> 56:58.050] I'm not a weather [56:58.050 --> 56:59.810] fan, my name is Ron. [57:01.870 --> 57:02.790] Phone! [57:03.630 --> 57:04.410] I'll show you [57:04.410 --> 57:05.990] my phone voice in a second. [57:37.730 --> 57:38.010] And now [57:38.130 --> 57:39.490] a demonstration by Scott Carlson [57:39.490 --> 57:40.410] that we actually do. [57:40.670 --> 57:43.830] Good afternoon. [57:43.830 --> 57:46.110] Thank you for calling DEF CON My Phone. [57:46.110 --> 57:47.270] Script getting tested, [57:47.270 --> 57:48.550] Blamer approved. [57:49.650 --> 57:51.630] To hear what's coming up in the next hour, [57:51.630 --> 57:53.630] press 1. To search for an event, [57:53.630 --> 57:55.570] press 2. To need feedback from [57:55.570 --> 57:57.970] DEF CON My Phone team, press 0. [57:59.010 --> 58:00.230] And so on. [58:04.530 --> 58:05.750] If any of you [58:05.750 --> 58:07.650] want to write down silly things on slips of [58:07.650 --> 58:08.350] paper and [58:09.430 --> 58:10.710] leave them up here, [58:10.710 --> 58:11.770] I'll do them for you. [58:11.770 --> 58:17.350] Here's a slightly more complex [58:17.350 --> 58:18.310] thing, this actually uses [58:18.310 --> 58:19.690] input and output. [58:20.150 --> 58:21.150] Basically, what it does is [58:21.150 --> 58:23.330] I've got three ways of doing it. [58:23.330 --> 58:24.310] One of those is [58:24.310 --> 58:27.250] using CGI, and basically [58:27.250 --> 58:28.210] it lets you forever [58:29.450 --> 58:31.910] wait for you to enter a file. [58:32.530 --> 58:34.570] Wait for you to enter a digit. [58:34.590 --> 58:35.390] Wait for it to say [58:36.070 --> 58:37.450] who's entered a digit. [58:37.450 --> 58:41.190] And what it says is [58:41.190 --> 58:42.130] after you enter a digit, [58:42.130 --> 58:43.850] wait for five seconds, [58:43.850 --> 58:44.990] and if you look at one, it says [58:44.990 --> 58:46.870] it has five words on it. [58:48.470 --> 58:49.430] If you enter two, [58:49.430 --> 58:50.630] it has seven words on it. [58:50.630 --> 58:52.130] If you enter three, it has a thousand words on it. [58:52.130 --> 58:53.190] This is really cool. [58:54.990 --> 58:55.790] Intermission! [58:59.650 --> 59:00.570] Okay, so we have [59:00.570 --> 59:02.750] some cool swag to give away. [59:10.350 --> 59:12.010] GGM has seen fit to give us [59:12.010 --> 59:14.230] props. Apparently, Charles has [59:14.230 --> 59:16.090] become very friendly with Mark Spencer, [59:16.090 --> 59:16.930] and he sent us [59:17.910 --> 59:18.790] very friendly [59:21.310 --> 59:23.110] So GGM sent us this whole box [59:23.110 --> 59:24.890] of really cool stuff. There's these little [59:24.890 --> 59:27.070] CDs with asterisks on them, and they're in the [59:27.070 --> 59:28.310] shape of an asterisk. [59:43.370 --> 59:45.170] There's asterisk stickers. [59:51.180 --> 59:52.940] Yes, if you put [59:52.940 --> 59:54.860] the sticker on your car, more people [59:54.860 --> 59:55.820] will want it. [59:58.080 --> 59:58.900] I also have [59:58.900 --> 01:00:00.000] bin racks here, because an old-school [01:00:00.000 --> 01:00:02.140] freak.com sticker isn't good. [01:00:02.280 --> 01:00:03.680] I have two very [01:00:03.680 --> 01:00:05.880] kick-ass sites. You see some of this [01:00:05.880 --> 01:00:07.680] in forums almost every day. [01:00:10.300 --> 01:00:12.120] Asterisk T-shirts. [01:00:15.100 --> 01:00:17.680] So I need four volunteers who want to [01:00:17.680 --> 01:00:19.700] come up here and dial phones. [01:00:22.480 --> 01:00:23.980] Actually, no. Let's have them answer [01:00:23.980 --> 01:00:25.100] questions. [01:00:25.560 --> 01:00:29.620] Name a pre-divestiture Bell [01:00:29.620 --> 01:00:31.440] operating company. [01:00:32.100 --> 01:00:35.060] Pre-divestiture, not 9X. [01:00:35.140 --> 01:00:36.460] Pre-divestiture? [01:00:37.060 --> 01:00:39.160] Pre-divestiture. [01:00:40.020 --> 01:00:42.060] Operating company. [01:00:45.080 --> 01:00:47.280] GTE was not a Bell company. [01:00:49.540 --> 01:00:52.260] I'm taking over now. Name a post-divestiture [01:00:52.260 --> 01:00:54.340] 9X regional Bell operating company. [01:00:54.720 --> 01:00:56.720] For example, someone already said it. [01:00:57.760 --> 01:00:59.320] Raise your hands, people. [01:00:59.720 --> 01:01:02.360] Come up. [01:01:14.270 --> 01:01:16.390] So, let me wind this thing out of the way. [01:01:26.570 --> 01:01:28.510] Each of you sit in front of a telephone. [01:01:31.610 --> 01:01:34.230] So, let me prop up this list in front of you here. [01:01:35.470 --> 01:01:38.170] This is a touch-tone speed dialing contest, [01:01:38.170 --> 01:01:39.910] and for some of you who were in the [01:01:41.110 --> 01:01:42.950] game area earlier, we kind of did this [01:01:42.950 --> 01:01:44.210] just to work the bugs out. [01:01:44.270 --> 01:01:47.070] So, basically, I have a list of numbers here [01:01:47.070 --> 01:01:48.650] that I've programmed into my PBX, [01:01:48.650 --> 01:01:50.830] and the person who dials these numbers [01:01:50.830 --> 01:01:52.790] the fastest and most accurately [01:01:52.790 --> 01:01:54.790] will bring my desk phone here [01:01:54.790 --> 01:01:56.050] and get a prize. [01:01:56.110 --> 01:01:57.950] So, let me set this list up here. [01:01:59.030 --> 01:02:00.750] Yeah, I'll explain the rules in just a second. [01:02:05.590 --> 01:02:07.390] Unfortunately, these don't do pulse dialing, [01:02:07.390 --> 01:02:08.750] otherwise we would do a switch-hook [01:02:08.750 --> 01:02:10.850] Can you all read that? [01:02:15.210 --> 01:02:17.090] Pardon? Sir, can you read that? [01:02:17.650 --> 01:02:19.330] Okay, so what you're going to do is [01:02:19.330 --> 01:02:21.030] you're going to pick a phone. Each phone is dialed [01:02:21.030 --> 01:02:23.170] one plus the area code plus the number. [01:02:23.350 --> 01:02:25.030] After one second, if you dial correctly, [01:02:25.030 --> 01:02:27.270] you'll hear another dial tone, dial the next number, [01:02:27.270 --> 01:02:28.190] and so on and so on. [01:02:28.190 --> 01:02:30.710] If you miss-dial a digit, say you dial [01:02:30.710 --> 01:02:33.650] two instead of one, you'll get a reorder tone [01:02:33.650 --> 01:02:35.190] after one second, at which point [01:02:35.190 --> 01:02:37.890] you will want to dial the number again. [01:02:38.230 --> 01:02:40.250] If you skip a digit, [01:02:40.250 --> 01:02:41.870] you'll hear nothing after one second. [01:02:41.870 --> 01:02:44.070] You may want to press a couple digits [01:02:44.070 --> 01:02:45.310] until you get a reorder. [01:02:45.310 --> 01:02:47.010] If you get a reorder that [01:02:47.950 --> 01:02:50.210] you can't break by dialing, [01:02:50.210 --> 01:02:54.430] if you get the reorder where you can't redial the number, [01:02:56.390 --> 01:02:57.950] there's rules, there's rules. [01:02:57.950 --> 01:02:59.790] If you get the reorder that does not go away [01:02:59.790 --> 01:03:01.210] when you start dialing digits, [01:03:01.210 --> 01:03:03.730] you screwed up and you have to hang up and start the beginning again. [01:03:04.270 --> 01:03:05.390] So, [01:03:06.150 --> 01:03:07.030] ready, [01:03:08.670 --> 01:03:09.550] set, [01:03:09.550 --> 01:03:10.270] go. [01:03:55.150 --> 01:03:56.150] Beg pardon? [01:04:04.450 --> 01:04:05.510] He wins. [01:04:06.050 --> 01:04:07.830] The guy in the Quest shirt. [01:04:11.260 --> 01:04:13.060] What size t-shirt do you wear, sir? [01:04:13.520 --> 01:04:14.780] What size t-shirt do you wear? [01:04:15.140 --> 01:04:16.020] Large? Okay. [01:04:42.450 --> 01:04:43.470] He gets to leave. [01:04:43.470 --> 01:04:44.790] We need one more contestant. [01:04:45.330 --> 01:04:46.990] The guy in the Bell shirt. [01:04:53.420 --> 01:04:54.800] You want to switch phones, Natas? [01:04:55.140 --> 01:04:55.900] Okay. [01:04:59.160 --> 01:05:01.860] We like preferential treatment. [01:05:05.340 --> 01:05:06.140] So, [01:05:06.140 --> 01:05:07.680] do you understand the rules, sir? [01:05:08.840 --> 01:05:09.640] Okay. [01:05:09.720 --> 01:05:11.220] On your mark, [01:05:11.640 --> 01:05:12.880] go touch the handset. [01:05:12.880 --> 01:05:14.380] Don't pick up the handset until I say go. [01:05:14.380 --> 01:05:15.660] You can touch the handset. [01:05:16.560 --> 01:05:18.880] One plus the area code plus the number, yes. [01:05:20.480 --> 01:05:21.960] On your mark, get set, [01:05:21.960 --> 01:05:22.620] dial. [01:05:27.370 --> 01:05:28.350] Good news, everyone, [01:05:28.350 --> 01:05:29.470] I found the numbers. [01:05:30.230 --> 01:05:30.750] You can get them in the [01:05:31.610 --> 01:05:32.630] capstoneextensions.com. [01:05:43.180 --> 01:05:43.780] You know, [01:05:43.780 --> 01:05:45.540] Natas, you're really starting to make these sounds [01:05:45.540 --> 01:05:48.060] that I know you're... [01:05:55.180 --> 01:05:56.220] You flash the hook [01:05:56.220 --> 01:05:57.100] and get a call, all right? [01:05:58.120 --> 01:05:59.980] He put his own call on hold. [01:06:00.780 --> 01:06:02.160] That's what we're... [01:06:18.840 --> 01:06:19.600] Yeah, let's do some [01:06:19.600 --> 01:06:20.220] bid revenue. [01:06:20.220 --> 01:06:21.200] Let's get some free stickers, too. [01:06:22.880 --> 01:06:24.620] One of you still got a call on hold. [01:06:26.500 --> 01:06:28.080] Call, please. [01:06:30.080 --> 01:06:31.780] Natas, would you like an old-school free sticker? [01:06:32.300 --> 01:06:33.640] Would you like an old-school free sticker? [01:06:35.720 --> 01:06:36.780] He runs the site [01:06:36.780 --> 01:06:38.100] for those who don't know. [01:06:40.080 --> 01:06:41.520] And what size T-shirt do you wear? [01:06:43.140 --> 01:06:43.780] Excellent. [01:06:55.600 --> 01:06:57.360] Let's do this. Let me plug the [01:06:57.360 --> 01:07:00.140] telephone in so we can hear the winner. [01:07:03.460 --> 01:07:05.080] I think we'll do one more, [01:07:05.080 --> 01:07:06.640] and then we have to get on with the presentation. [01:07:08.660 --> 01:07:09.780] Let's make this fair. [01:07:10.080 --> 01:07:11.180] Let's clear this out [01:07:11.180 --> 01:07:13.140] and have four all-new people. [01:07:15.600 --> 01:07:17.360] If you guys do compete, [01:07:17.360 --> 01:07:19.600] come up to me after the show. You'll get swag. [01:07:19.600 --> 01:07:20.860] You'll get swag. [01:07:20.860 --> 01:07:22.600] You'll get swag. You're welcome. [01:07:23.000 --> 01:07:25.420] Okay, new rule. Don't flash so fast [01:07:25.420 --> 01:07:27.040] that you put a call on hold. [01:07:27.040 --> 01:07:27.720] Yes. [01:07:32.220 --> 01:07:43.960] Okay, so, [01:07:50.170 --> 01:07:53.110] let's get some volunteers. How about this guy? [01:07:59.450 --> 01:08:01.530] You made some funny comments. [01:08:04.490 --> 01:08:04.590] Okay. [01:08:06.670 --> 01:08:11.160] I heard a patch. [01:08:15.300 --> 01:08:16.900] Yes. [01:08:22.480 --> 01:08:26.400] Okay, we have one more. [01:08:30.760 --> 01:08:33.900] I thought that was my line, Ratchet. [01:08:36.600 --> 01:08:37.080] Okay. [01:08:40.210 --> 01:08:41.730] Okay, do you guys understand [01:08:41.730 --> 01:08:43.950] the rules from last time, or do I need to repeat them? [01:08:45.950 --> 01:08:47.230] Okay, yes. [01:08:47.290 --> 01:08:49.270] Okay, and now you're able to [01:08:49.270 --> 01:08:51.810] listen to your caller. [01:08:51.810 --> 01:08:53.650] So, on your mark, [01:08:53.650 --> 01:08:55.470] get set, [01:08:55.470 --> 01:08:56.290] dial. [01:08:56.290 --> 01:08:56.630] Okay. [01:09:16.920 --> 01:09:18.140] Don't leave now. [01:09:18.140 --> 01:09:19.920] If you want free stuff, don't leave now. [01:09:19.920 --> 01:09:22.020] We have various telephonic pieces of equipment [01:09:22.020 --> 01:09:24.200] from Star Collection and more asterisks [01:09:24.200 --> 01:09:25.800] after the show. [01:09:40.860 --> 01:09:42.160] Good afternoon. [01:09:42.160 --> 01:09:42.920] Cheers. [01:09:51.260 --> 01:09:53.230] Oh, a princess phone. [01:09:54.420 --> 01:09:55.940] A princess rotary? [01:09:59.260 --> 01:10:01.180] It's little, it's lovely, [01:10:01.180 --> 01:10:02.420] but, however, it does not like [01:10:02.420 --> 01:10:04.340] what it's a consumer sale model [01:10:04.340 --> 01:10:05.560] made out of. [01:10:06.320 --> 01:10:09.160] Digium Zap-Tel cards do support rotary phones. [01:10:09.160 --> 01:10:10.540] In fact, you can navigate [01:10:10.540 --> 01:10:13.700] IPR menus of rotary phones with a Zap-Tel card. [01:10:15.240 --> 01:10:17.000] However, the only thing that does [01:10:17.000 --> 01:10:19.320] support rotary dial are the card [01:10:19.320 --> 01:10:20.600] and the EC. [01:10:20.820 --> 01:10:23.540] I think the EC supports rotary dialing. [01:10:23.540 --> 01:10:24.300] I'm not sure. [01:10:24.300 --> 01:10:25.740] It does? Okay, cool. [01:10:25.740 --> 01:10:29.180] So, yeah, this thing does support it. [01:10:31.300 --> 01:10:32.360] Unfortunately, no. [01:10:32.360 --> 01:10:34.180] This one actually belongs to Mark Spencer [01:10:34.180 --> 01:10:35.680] and I had to give it back to him. [01:10:39.520 --> 01:10:40.840] Anyway, I found my two [01:10:41.300 --> 01:10:42.720] complex, my slightly more complex [01:10:42.720 --> 01:10:44.280] and my caller ID. [01:10:44.280 --> 01:10:46.120] So, here we go. [01:10:46.320 --> 01:10:47.660] Caller ID 1. [01:10:57.640 --> 01:10:59.360] This is slightly more complicated. [01:11:01.260 --> 01:11:03.260] It sounds like it's going to your AIS script. [01:11:12.600 --> 01:11:13.680] I actually replaced [01:11:13.680 --> 01:11:15.640] all of the default sounds with JMR [01:11:15.640 --> 01:11:16.800] because we used a lot of the [01:11:17.540 --> 01:11:19.760] Dell System and Output back in the 1960s [01:11:19.760 --> 01:11:21.100] but I really like it more. [01:11:24.370 --> 01:11:26.090] You can hear some [01:11:26.090 --> 01:11:27.290] slightly more complex script [01:11:27.290 --> 01:11:29.050] but I'm going to avoid it for now. [01:11:47.650 --> 01:11:50.450] No, baby, give it to me. [01:11:50.450 --> 01:11:52.570] Yes, yes, that's it. [01:11:54.150 --> 01:11:55.530] And option 3. [01:11:58.390 --> 01:11:59.870] This says... [01:12:01.230 --> 01:12:03.880] Enter your object now. [01:12:04.710 --> 01:12:05.510] Enter your... [01:12:05.510 --> 01:12:07.670] This says... [01:12:10.370 --> 01:12:11.110] Enter... [01:12:11.110 --> 01:12:12.130] This is what's from the [01:12:12.130 --> 01:12:14.630] sound file. [01:12:15.070 --> 01:12:16.470] I ripped it off from the [01:12:16.470 --> 01:12:17.830] information course. [01:12:17.830 --> 01:12:19.910] Thank you for making it here. [01:12:20.470 --> 01:12:32.580] Send your caller ID to whatever [01:12:32.580 --> 01:12:34.000] you want. [01:12:34.000 --> 01:12:36.400] After you send your caller ID... [01:12:51.510 --> 01:12:53.570] Initial address message. [01:13:03.550 --> 01:13:26.510] It was made by [01:13:26.510 --> 01:13:27.850] Automatic Electric, which was [01:13:27.850 --> 01:13:29.870] GT's manufacturing company. [01:13:29.950 --> 01:13:32.990] But it's now discontinued as far as I know. [01:13:34.470 --> 01:13:36.350] And ironically, Automatic Electric [01:13:36.350 --> 01:13:37.390] is now part of this. [01:13:37.390 --> 01:13:39.430] But anyway, you only find the GT5s [01:13:39.430 --> 01:13:41.830] typically in former GT territory [01:13:41.830 --> 01:13:42.890] and some independent [01:13:45.350 --> 01:13:46.550] companies' territories. [01:13:47.410 --> 01:13:49.250] However, in the GT5, [01:13:49.250 --> 01:13:49.910] Automatic Electric [01:13:49.910 --> 01:13:50.690] is an all-around unique [01:13:50.690 --> 01:13:51.530] network. [01:13:51.750 --> 01:13:54.930] So they decided to test out [01:13:54.930 --> 01:13:56.090] each other's networking one day [01:13:56.090 --> 01:13:57.230] through this home phone and [01:13:57.230 --> 01:14:31.530] decided to list your friends. [01:14:31.530 --> 01:14:32.390] I mean, how many times did you [01:14:32.390 --> 01:14:33.450] have to call? [01:14:35.190 --> 01:14:36.230] You need to create [01:14:36.230 --> 01:14:38.230] your neighbor's credit card. [01:14:39.010 --> 01:14:40.490] You find your neighbor's credit card [01:14:40.490 --> 01:14:41.230] and pay him back. [01:14:41.230 --> 01:14:44.390] You don't know where you're calling from, right? [01:15:05.770 --> 01:15:06.950] You're obviously [01:15:07.930 --> 01:15:09.070] using the same [01:15:09.070 --> 01:15:11.470] phone you found your neighbor's card. [01:15:11.470 --> 01:15:13.170] I'm not going to take your number. [01:15:28.020 --> 01:15:29.720] You just send any caller ID [01:15:29.720 --> 01:15:31.360] you can find, any CPM [01:15:31.360 --> 01:15:32.200] number. [01:15:33.320 --> 01:15:35.340] Oh, you must be selling something to connect [01:16:24.500 --> 01:16:26.580] Let's get into the technical details of this later. [01:16:44.820 --> 01:16:53.600] You can also, however, do color-ID spoofing most of the time with two lines in your extensions.com file and ask for a CPS. [01:16:53.600 --> 01:16:55.660] So, I'm just going to grab some data for you. [01:16:56.400 --> 01:16:58.420] We have a lot of theories about color-ID spoofing. [01:16:58.420 --> 01:17:15.720] So, I have some. [01:17:15.720 --> 01:17:29.690] It's based on the cost of your own number, of some number you want to talk more about. [01:17:29.690 --> 01:17:35.550] And then you'll telephone the company, and they'll send you whatever name is associated with that number. [01:17:40.310 --> 01:17:45.130] Yeah, it depends on what database you're using, but for the most part, it's fairly easy. [01:17:45.130 --> 01:17:47.450] I think I've got a photograph of me doing that. [01:17:47.450 --> 01:17:51.850] So, you can see how it works for yourself, your local exchange, your local website. [01:17:51.850 --> 01:17:54.070] It's called Remembering a Missing Database. [01:17:54.070 --> 01:17:56.190] And then they send that name to you. [01:18:01.770 --> 01:18:07.030] It allows you to, if you're doing scanning, you can prioritize the more missing phone numbers. [01:18:07.370 --> 01:18:09.570] Here are some real color-ID names. [01:18:09.570 --> 01:18:13.730] We've got a company called C.I.A. [01:18:15.070 --> 01:18:18.270] It's a really, really cheap reverse lookup. [01:18:18.270 --> 01:18:20.370] And you can figure out stuff for yourself. [01:18:23.570 --> 01:18:25.330] I'm straight. [01:18:28.110 --> 01:18:32.070] I love you strong. [01:18:32.330 --> 01:18:33.320] I love you too. [01:18:34.790 --> 01:18:37.590] Here's an example of me backspoofing. [01:18:42.530 --> 01:18:44.270] You need your credit card, personally. [01:18:44.270 --> 01:18:45.670] This time, if it didn't work, you go to Google. [01:18:49.150 --> 01:18:51.730] SuperColorID is something that I hacked up in a matter of about five minutes. [01:18:51.810 --> 01:18:55.290] It extrapolates tons of useless info from a telephone number. [01:18:55.570 --> 01:18:57.850] It gives the name and address from YPH.com. [01:18:57.850 --> 01:19:01.850] And it does get you information from the Telecordia location that you've got. [01:19:01.970 --> 01:19:05.010] In my office, it works on the telemedicine device, telemedicine terminal. [01:19:05.010 --> 01:19:08.290] But if you've got some screen or some window you want to look at, you can do that too. [01:19:09.190 --> 01:19:13.210] This is a version of it that has a site, oldschooltrees.com, that doesn't use the word. [01:19:13.210 --> 01:19:14.950] That just grabs the address from the web. [01:19:15.090 --> 01:19:17.150] Here's a photo of me using SuperColorID, [01:19:17.150 --> 01:19:21.190] and looking from Gladstone's Corned Fish restaurant at Pacific Palisades, [01:19:21.190 --> 01:19:22.950] to my own phone number. [01:19:23.530 --> 01:19:24.410] Yes. [01:19:29.430 --> 01:19:31.930] Wow, people are making their own versions for their own country. [01:19:31.930 --> 01:19:35.170] Someone's got an Amazon copy from Australia, that works in Australia. [01:19:35.170 --> 01:19:37.390] So, sweet stuff. [01:19:37.390 --> 01:19:38.710] So you can see here, [01:19:38.710 --> 01:19:40.610] it does the number, [01:19:42.310 --> 01:19:43.450] the address, [01:19:43.450 --> 01:19:44.930] so this spins up your webpages, [01:19:44.930 --> 01:19:47.510] this is the calling party name, that tells you who's the phone company, [01:19:47.510 --> 01:19:49.490] and here is all the details, [01:19:49.490 --> 01:19:50.670] how the solution is served out, [01:19:50.670 --> 01:19:52.730] how many information, prefixes, [01:19:52.730 --> 01:19:54.790] where the switch is, what time the switch is, [01:19:55.250 --> 01:19:56.810] and, for example, [01:19:56.810 --> 01:19:58.890] if it's useless for anybody but their own country, [01:19:58.890 --> 01:20:00.550] you can just enter, like, [01:20:00.550 --> 01:20:02.630] Apple, or Google, or anything like this. [01:20:04.970 --> 01:20:05.850] What? [01:20:07.730 --> 01:20:08.170] Um... [01:20:08.170 --> 01:20:09.650] No, it does not. [01:20:15.170 --> 01:20:17.730] You can rig radio podcasts. [01:20:18.770 --> 01:20:20.630] Yeah, why don't you explain this? [01:20:22.330 --> 01:20:23.410] What radio does is, [01:20:23.410 --> 01:20:24.390] they have a hunt group, [01:20:24.390 --> 01:20:25.730] that's what it was, [01:20:25.730 --> 01:20:28.110] you call one number, and it hunts for a free line. [01:20:29.290 --> 01:20:32.190] So, for example, you call 5-8000, [01:20:32.190 --> 01:20:33.190] and the reality is, [01:20:33.190 --> 01:20:33.330] it hunts for a free line, [01:20:33.330 --> 01:20:33.670] which is, you know, [01:20:33.670 --> 01:20:34.810] 8-000-1, 8-000-2, [01:20:34.810 --> 01:20:35.470] 8-000-3, [01:20:35.470 --> 01:20:35.830] 8-000-3, [01:20:35.830 --> 01:20:36.870] 8-000-3, [01:20:37.770 --> 01:20:38.690] 8-000-3, [01:20:38.690 --> 01:20:40.390] 8-000-3, [01:20:40.390 --> 01:20:40.810] 8-000-3, [01:20:40.810 --> 01:20:45.510] 8-000-3, [01:20:45.510 --> 01:20:47.170] 8-000-3, [01:20:47.170 --> 01:20:48.730] 8-000-3, [01:20:51.590 --> 01:20:54.450] 8-000-3, [01:20:54.450 --> 01:20:58.490] 8-000-3, [01:20:58.490 --> 01:20:59.770] and what happens is, [01:20:59.770 --> 01:21:00.950] after the hunt is over, [01:21:00.950 --> 01:21:17.200] I think our provider for [01:21:17.200 --> 01:21:19.080] Defcon by phone claimed that we can have [01:21:19.700 --> 01:21:21.200] probably over 600 calls [01:21:21.200 --> 01:21:22.980] going on at the same time. [01:21:24.960 --> 01:21:27.080] We do have a DS1, [01:21:27.080 --> 01:21:28.240] otherwise known as a T1, [01:21:28.240 --> 01:21:31.630] and a DS3, [01:21:31.630 --> 01:21:31.730] and a DS4, [01:21:32.310 --> 01:21:33.590] and a DS5, [01:21:33.590 --> 01:21:34.650] and a DS6, [01:21:53.880 --> 01:21:55.260] and what it basically does, [01:21:55.260 --> 01:21:58.460] you tell Asterisk, [01:21:58.460 --> 01:22:02.780] generate a bunch of [01:22:02.780 --> 01:22:04.580] different radio stations, [01:22:04.580 --> 01:22:06.860] to connect to a certain radio station. [01:22:06.860 --> 01:22:08.340] So, what happens, [01:22:08.340 --> 01:22:09.000] call file one, [01:22:09.000 --> 01:22:09.880] sorry I'm call number two, [01:22:09.880 --> 01:22:11.340] call file three, [01:22:12.300 --> 01:22:13.780] sorry I'm call ID number three, [01:22:13.780 --> 01:22:15.120] now I've got it set up to work, [01:22:15.120 --> 01:22:17.220] and it leads out bound calls, [01:22:17.220 --> 01:22:18.960] and you can do more, [01:22:19.560 --> 01:22:20.940] generate call file number four, [01:22:20.940 --> 01:22:22.100] and actually stuff gets done, [01:22:22.100 --> 01:22:24.280] call number five, call number six, call number seven, [01:22:24.280 --> 01:22:25.960] and you're looking at call number nine, [01:22:25.960 --> 01:22:27.280] and all of a sudden, [01:22:27.280 --> 01:22:38.190] the calls that are currently in the queue [01:22:38.190 --> 01:22:39.930] after the call is over, [01:22:39.930 --> 01:22:43.130] you say, hey, oh my god, I won, [01:22:43.130 --> 01:22:44.590] and I say yes, [01:22:44.590 --> 01:22:45.390] and all of a sudden, [01:22:45.390 --> 01:22:51.700] I'm sure radio station guy number one [01:22:51.700 --> 01:22:54.600] is going to be highly confused, [01:22:54.600 --> 01:22:55.540] and he says, well, they don't know [01:22:55.540 --> 01:22:56.800] what's going to fix this, [01:22:56.800 --> 01:22:59.000] that's why I actually found something out this week, [01:22:59.000 --> 01:23:00.300] and they solved the problem, [01:23:00.300 --> 01:23:01.840] and I'm not going to tell you what's going to happen. [01:23:08.300 --> 01:23:09.760] Yeah, American Idol, [01:23:09.760 --> 01:23:11.400] or some, if you watch TV, [01:23:11.400 --> 01:23:12.680] I don't watch TV anymore, [01:23:14.040 --> 01:23:21.070] and I said, well, [01:23:21.070 --> 01:23:22.570] gee, this is important for the voting [01:23:22.570 --> 01:23:24.270] mind, for the worst guy that was ever [01:23:24.270 --> 01:23:25.610] listed on the list, [01:23:26.130 --> 01:23:26.970] and I said, well, [01:23:26.970 --> 01:23:32.620] if you do that, and they get a record contract, [01:23:32.620 --> 01:23:35.780] radio will get about 1.1% worse. [01:24:38.020 --> 01:24:38.660] What's your [01:24:38.660 --> 01:24:40.840] NMAT5 voting number? Let's just do this. [01:24:41.960 --> 01:24:42.940] On your [01:24:42.940 --> 01:24:44.120] exchange, right? [01:24:56.030 --> 01:24:57.570] Enter the IP address [01:24:57.570 --> 01:24:59.170] you wish to scan. [01:25:08.600 --> 01:25:09.600] Oh, that's it. [01:25:09.600 --> 01:25:11.820] You know how to push my button. [01:25:12.000 --> 01:25:13.260] Please wait. [01:25:14.900 --> 01:25:16.060] Host found with [01:25:16.060 --> 01:25:18.020] 17 ports open. [01:25:18.220 --> 01:25:19.860] Echo on port 7. [01:25:20.040 --> 01:25:21.920] Disguise on port 9. [01:25:22.100 --> 01:25:24.260] Date time on port 13. [01:25:24.420 --> 01:25:26.580] Threat on port 17. [01:25:27.100 --> 01:25:29.240] Curtain on port 19. [01:25:29.600 --> 01:25:30.520] SMTP on [01:25:30.520 --> 01:25:32.120] port 25. [01:25:32.120 --> 01:25:34.500] Name server on port 14. [01:25:34.500 --> 01:25:36.390] Domain on port 15. [01:25:37.240 --> 01:25:38.400] HTTP on [01:25:38.400 --> 01:25:39.560] port 80. [01:25:39.660 --> 01:25:40.580] And that's it. [01:27:09.870 --> 01:27:10.510] On Friday, [01:27:10.510 --> 01:27:11.470] just fixing bugs and [01:27:11.470 --> 01:27:12.630] dealing with things. [01:28:21.900 --> 01:28:22.740] You don't have to. [01:28:27.930 --> 01:28:28.770] All of him, [01:28:28.770 --> 01:28:29.870] he thought of all the phrases [01:28:29.870 --> 01:28:31.210] except the recording. [01:28:32.310 --> 01:28:34.190] After recording everything, [01:28:34.190 --> 01:28:35.510] I got really crazy and recorded [01:28:35.610 --> 01:28:37.490] a whole bunch of crazy introductory phrases. [01:28:38.130 --> 01:28:40.010] Okay, so, [01:28:40.010 --> 01:28:42.390] you're basically ignoring how weird it is [01:28:42.390 --> 01:28:43.470] to see phone calls [01:28:43.470 --> 01:28:45.370] and recordings of yourself. [01:28:46.110 --> 01:28:47.990] It still freaks me out. [01:28:48.810 --> 01:28:49.810] So, there's a search [01:28:49.810 --> 01:28:51.050] to be able to ignore calls, [01:28:51.050 --> 01:28:52.970] there's a reminder, and again, [01:28:52.970 --> 01:28:54.290] you need to register. [01:28:56.790 --> 01:28:58.510] How does it work? [01:28:58.510 --> 01:28:59.670] There's a MySQL database, [01:28:59.670 --> 01:29:03.650] and there's a whole bunch of audio clips. [01:29:03.650 --> 01:29:04.710] And pretty much, [01:29:04.710 --> 01:29:07.190] I spent a week in front of my computer [01:29:07.190 --> 01:29:09.150] dictating the entire text [01:29:09.150 --> 01:29:10.550] of the schedule. [01:29:24.370 --> 01:29:26.090] There's registration, [01:29:26.090 --> 01:29:27.710] reminders, [01:29:33.700 --> 01:29:35.380] and there's a web interface [01:29:35.380 --> 01:29:36.520] internally. [01:29:53.750 --> 01:29:55.750] To hear a listing of shows [01:29:55.750 --> 01:29:57.470] that are coming up in the next hour, [01:29:57.470 --> 01:29:58.310] press 1. [01:30:05.250 --> 01:30:07.770] Please enter the first 5 letters [01:30:07.770 --> 01:30:09.770] of the title of the show you'd like to see, [01:30:09.770 --> 01:30:11.490] followed by the talent sign. [01:30:13.110 --> 01:30:15.070] Presentation ID 56. [01:30:15.070 --> 01:30:16.850] Be your own telephone company. [01:30:16.850 --> 01:30:17.830] With Asterix. [01:30:17.830 --> 01:30:20.590] Presented by Strom Carlson and Black Ratchett. [01:30:20.590 --> 01:30:22.490] In Parthenon 3 and 4. [01:30:22.490 --> 01:30:23.310] Starting at [01:30:23.310 --> 01:30:26.630] Saturday, July 30, 2005 [01:30:28.590 --> 01:30:31.290] at 7 o'clock p.m. [01:30:31.290 --> 01:30:31.930] Running for [01:30:31.930 --> 01:30:33.750] 110 minutes. [01:30:33.750 --> 01:30:35.010] To hear more about this event, [01:30:35.010 --> 01:30:35.770] press 1. [01:30:35.770 --> 01:30:37.190] To skip to the next event, [01:30:37.190 --> 01:30:38.170] press 2. [01:30:38.310 --> 01:30:39.590] If you hear more about the event, [01:30:39.590 --> 01:30:41.750] it brings you back to the entire description of the talk [01:30:41.750 --> 01:30:43.170] as printed in the schedule. [01:30:47.720 --> 01:30:49.340] Shouts to Strom! [01:30:50.940 --> 01:30:52.880] If any of you want to hire me [01:30:52.880 --> 01:30:54.480] for your voiceovers, please come see me. [01:30:54.480 --> 01:30:55.780] I'll give you my contact information. [01:30:55.780 --> 01:30:58.540] But don't give me 48 pages of show descriptions, please. [01:30:58.540 --> 01:30:59.540] Prefer sanity. [01:30:59.820 --> 01:31:01.060] No, I think I can handle that. [01:31:02.500 --> 01:31:04.740] It's cheaper than buying that damn stuff for us. [01:31:05.880 --> 01:31:06.900] The problem? [01:31:06.960 --> 01:31:08.740] Dictating the whole schedule is a pain in the ass. [01:31:08.740 --> 01:31:10.200] I didn't realize how long it would take [01:31:10.200 --> 01:31:11.620] to dictate the whole thing in. [01:31:11.620 --> 01:31:13.720] We were rushing. [01:31:14.040 --> 01:31:16.920] It was supposed to be less than a week ago. [01:31:16.920 --> 01:31:18.640] I'm not used to it. [01:31:18.640 --> 01:31:19.960] I'm not used to it. [01:31:19.980 --> 01:31:22.520] We had some jitter issues last week. [01:31:23.560 --> 01:31:25.260] There were so many problems. [01:31:25.260 --> 01:31:27.720] We couldn't nail all calls at the same time. [01:31:28.060 --> 01:31:29.340] And we had jitter problems. [01:31:29.340 --> 01:31:30.600] We had to switch to SIP. [01:31:30.760 --> 01:31:32.820] And it's really difficult to keep our schedule in sync [01:31:32.820 --> 01:31:33.640] with DEF CON's schedule. [01:31:33.640 --> 01:31:36.040] We went and asked them to please [01:31:36.040 --> 01:31:38.940] give us all your scheduled updates [01:31:38.940 --> 01:31:40.360] to inform our users [01:31:40.790 --> 01:31:43.680] and everyone who calls in about changes. [01:31:43.720 --> 01:31:44.640] I don't remember [01:31:44.640 --> 01:31:45.760] getting my email address [01:31:45.760 --> 01:31:48.160] out of the entire agenda. [01:31:48.300 --> 01:31:50.080] So thank you, everyone. [01:31:50.280 --> 01:31:51.820] And also this. [01:31:51.820 --> 01:31:52.580] We came up to them and said, [01:31:52.580 --> 01:31:54.140] hey, our schedule really sucks. [01:31:54.140 --> 01:31:57.180] Is there someplace we can go to get updates? [01:31:57.240 --> 01:31:59.440] Oh, go to updates.defcon.org. [01:31:59.440 --> 01:32:02.640] So I was like, okay, I'll sit down, fix everything. [01:32:02.640 --> 01:32:04.940] Not a single schedule change on there. [01:32:05.060 --> 01:32:06.680] I was... [01:32:07.320 --> 01:32:08.660] It's causing nightmares. [01:32:08.660 --> 01:32:09.800] I don't have nightmares for you. [01:32:09.820 --> 01:32:12.640] We spent all of Monday, or all of Friday [01:32:12.640 --> 01:32:14.280] trying to deal with the fact that they pushed [01:32:14.280 --> 01:32:16.440] the entire track date back an hour. [01:32:17.380 --> 01:32:19.720] But we hadn't anticipated that. [01:32:20.060 --> 01:32:21.100] I'm sorry? [01:32:23.660 --> 01:32:25.200] What we should do next year [01:32:25.200 --> 01:32:26.640] is we're probably going to set up something [01:32:26.640 --> 01:32:28.700] where the schedule is actually [01:32:28.700 --> 01:32:30.560] thrown together in our system. [01:32:31.520 --> 01:32:33.020] And that's the idea I had. [01:32:33.020 --> 01:32:34.260] The schedule is thrown together in our system [01:32:34.260 --> 01:32:35.680] so we automatically know about it [01:32:35.680 --> 01:32:37.560] and have everything synchronized. [01:32:37.560 --> 01:32:39.580] And as a disclaimer, we all love DEF CON. [01:32:39.580 --> 01:32:40.980] We're not trying to piss anyone off, [01:32:40.980 --> 01:32:42.840] but this is what happens. [01:32:42.840 --> 01:32:44.140] When we're at DEF CON reminders, [01:32:44.140 --> 01:32:45.520] there's no way to detect whether users [01:32:45.520 --> 01:32:48.920] are rejected by scale. [01:32:48.980 --> 01:32:51.320] So they don't get thrown into the reminder. [01:32:51.660 --> 01:32:53.040] Some users are brain-deficient [01:32:53.040 --> 01:32:54.360] and forget their thing. [01:32:55.220 --> 01:32:57.540] And you've got to call from somebody. [01:32:58.780 --> 01:33:01.040] You know who you are. [01:33:07.590 --> 01:33:08.710] Rejector.net. [01:33:08.710 --> 01:33:10.910] We'll be back next year. [01:33:10.910 --> 01:33:12.750] We'll be back next year. [01:33:13.270 --> 01:33:15.650] The problem with Crack 2 is that [01:33:15.650 --> 01:33:17.330] they said, we'll move everything up and down, [01:33:17.330 --> 01:33:19.690] OK, that's fine. I update the schedule. [01:33:19.690 --> 01:33:21.290] And they said, OK, let's make that time [01:33:21.290 --> 01:33:23.930] so everything is on schedule by the end. [01:33:23.930 --> 01:33:25.890] I cried when I finally found out. [01:33:26.310 --> 01:33:28.070] There was no way to do that. [01:33:28.070 --> 01:33:29.170] I want to get to the Q&A [01:33:29.170 --> 01:33:30.270] because I'm sure there are a lot of you [01:33:30.270 --> 01:33:31.050] who wrote the Q&A. [01:33:31.350 --> 01:33:33.930] The CDF cards kind of flake out. [01:33:34.390 --> 01:33:37.630] They're problems because asterisk is TTL [01:33:37.630 --> 01:33:39.330] but all folks know how to do the asterisk [01:33:56.030 --> 01:34:01.130] So, if you want to ask a question, there is a telephone there. [01:34:01.170 --> 01:34:02.990] Queue up in front of the telephone. [01:34:03.910 --> 01:34:06.630] And for those of you watching on TV, [01:34:06.630 --> 01:34:14.150] call the following number, area code 213-415-1047, [01:34:14.150 --> 01:34:16.210] and you will be in the Q&A queue. [01:34:16.210 --> 01:34:20.430] Do not call this number if you are sitting here in the room. [01:34:20.690 --> 01:34:24.570] If you see someone who is on their phone and calling the number [01:34:24.570 --> 01:34:28.570] and holding and asking a question, grab their phone and throw it to me, [01:34:28.570 --> 01:34:30.490] and we won't give it back to them. [01:34:35.810 --> 01:34:39.630] Will you please pick up and dial 8-1-1-0? [01:34:39.730 --> 01:34:42.570] Oh, shoot. Sorry about that. [01:34:44.190 --> 01:34:45.750] Please pick up that phone. [01:34:55.790 --> 01:34:56.790] Hello? [01:34:57.550 --> 01:34:59.090] I have a question. [01:34:59.670 --> 01:35:00.670] Really? [01:35:06.050 --> 01:35:08.910] Okay, please, everyone calm down. We are trying to get to make questions. [01:35:08.910 --> 01:35:12.970] The codec that was demonstrated earlier, you can do rock and roll, funk, [01:35:12.970 --> 01:35:16.130] with a lot of bass, and a yelling guy, [01:35:16.130 --> 01:35:18.610] and a very quiet dude with his band going. [01:35:19.030 --> 01:35:23.170] The band was really good to get that music, like, [01:35:23.170 --> 01:35:28.940] I don't know if codecs are nice for speech, but the way I see it, [01:35:28.940 --> 01:35:32.760] if you portrait test a codec, you see what they really sound like [01:35:32.760 --> 01:35:34.280] under all circumstances. [01:35:34.420 --> 01:35:37.460] Because not all speech is perfect. [01:35:37.460 --> 01:35:38.900] So if you portrait test a codec, [01:35:38.900 --> 01:35:43.240] you get a clearer picture of what it really sounds like. [01:35:47.080 --> 01:35:49.620] Yeah, it's a good test. I know it's not designed for music, [01:35:49.620 --> 01:35:51.140] but there is music on hold. [01:35:51.340 --> 01:35:53.340] What happens when you're driving in your car, [01:35:53.340 --> 01:35:55.860] and you have tons of background noise, and you're trying to use one of these? [01:35:55.920 --> 01:35:56.880] Same thing. [01:35:56.880 --> 01:35:57.520] Okay. [01:36:00.080 --> 01:36:01.040] Thank you very much. [01:36:01.040 --> 01:36:01.780] Thank you. [01:36:03.940 --> 01:36:06.520] Let's see if anyone's calling in from the TV. [01:36:10.160 --> 01:36:13.260] Agent logged in. [01:36:13.860 --> 01:36:15.300] Hello? [01:36:18.320 --> 01:36:19.760] Hello? [01:36:20.140 --> 01:36:21.680] Black call! [01:36:21.680 --> 01:36:24.200] Let's hang up and get the next person in line. [01:36:25.860 --> 01:36:28.240] Agent logged in. [01:36:36.330 --> 01:36:37.730] Calling in? Wow! [01:36:37.730 --> 01:36:39.510] More people at home! [01:36:40.810 --> 01:36:44.870] If you're watching on TV call, okay, let's get you in. [01:36:53.140 --> 01:36:55.040] Okay, two questions, actually. [01:36:55.040 --> 01:36:58.480] One, for all the color-ID speech and stuff you guys were talking about, [01:36:58.480 --> 01:37:01.360] do you need a DS1, an MP3, or a PN? [01:37:01.360 --> 01:37:04.000] No, I've got it running on my DSL connection. [01:37:04.160 --> 01:37:07.520] Okay, so just with the VoIP provider... [01:37:07.520 --> 01:37:09.920] Yeah, your standard VoIP call, even with MULA, [01:37:09.920 --> 01:37:13.280] only requires 80 kilobits per second of bandwidth plus overhead. [01:37:13.280 --> 01:37:18.240] So if you've got more than 80 kilobits per second connection in both directions, you're fine. [01:37:18.240 --> 01:37:19.040] Okay. [01:37:21.360 --> 01:37:22.220] Okay, never mind. [01:37:22.220 --> 01:37:26.140] The other question I had is, what is the difference between a phone company and a telephone company? [01:37:28.950 --> 01:37:30.690] How many phones do you want to use? [01:37:30.690 --> 01:37:34.610] You can get generally about the same as a phone company, between three and five telephone sets. [01:37:40.260 --> 01:37:41.920] Run, Forrest, run! [01:37:42.580 --> 01:37:44.780] Isn't this scavenger hunt over yet? [01:37:44.800 --> 01:37:45.460] No. [01:37:45.740 --> 01:37:47.920] There's a giant bee problem with DEF CONNORS here. [01:37:47.920 --> 01:37:48.640] Thank you. [01:37:58.760 --> 01:38:01.480] Hello, you're with Asterisk. [01:38:02.500 --> 01:38:03.280] Hey, how you doing? [01:38:03.280 --> 01:38:04.360] Hey, how you doing? [01:38:04.640 --> 01:38:05.420] Hey! [01:38:05.420 --> 01:38:06.800] There's a little delay. [01:38:09.560 --> 01:38:11.060] What's your question, sir? [01:38:11.760 --> 01:38:13.660] My question on DEF CONNORS. [01:38:13.660 --> 01:38:15.580] Are those the only ones that are supported? [01:38:16.240 --> 01:38:18.840] For interfacing your phones with Asterisk? [01:38:19.180 --> 01:38:20.140] Yeah. [01:38:20.140 --> 01:38:20.660] No. [01:38:20.660 --> 01:38:22.880] No, they're not the only ones supported. [01:38:22.920 --> 01:38:23.920] I believe you're... [01:38:23.920 --> 01:38:24.820] Yeah. [01:38:25.260 --> 01:38:26.940] No, they're not the only ones supported. [01:38:26.940 --> 01:38:28.040] I don't know which one it is. [01:38:28.040 --> 01:38:31.480] I think it's something called VoiceTel that uses the same hardware. [01:38:31.480 --> 01:38:33.280] It was the same older version of it. [01:38:33.280 --> 01:38:34.160] It's supported. [01:38:34.160 --> 01:38:34.900] It works. [01:38:35.080 --> 01:38:35.480] But... [01:38:35.480 --> 01:38:37.000] Good luck getting it working. [01:38:39.760 --> 01:38:41.540] So, are those PCI cards? [01:38:41.540 --> 01:38:42.740] Yes, they're PCI. [01:38:42.740 --> 01:38:45.940] And I believe there's also one with ISA for you to use with... [01:38:47.540 --> 01:38:48.960] I believe you're running... [01:38:49.560 --> 01:38:50.180] Okay. [01:38:50.180 --> 01:38:51.020] ...DEF CONNORS. [01:38:51.020 --> 01:38:51.760] DEF CONNORS, right? [01:38:51.760 --> 01:38:52.440] Yes. [01:38:53.340 --> 01:38:55.100] This is actually on the DEF CON by VoiceTel. [01:38:55.100 --> 01:38:56.620] But we're going to move on to the next question. [01:38:56.620 --> 01:38:59.380] Okay, let's get the next question from a real person. [01:39:06.850 --> 01:39:07.550] Marty? [01:39:07.590 --> 01:39:09.250] Hey, could you... [01:39:17.150 --> 01:39:21.050] For the most part, Asterisk is about as secure as a regular telephone, [01:39:21.050 --> 01:39:23.870] although the new version of the ETH protocol now does encryption. [01:39:23.870 --> 01:39:24.810] I haven't played with it yet. [01:39:24.810 --> 01:39:26.110] It's only about two weeks old. [01:39:26.110 --> 01:39:29.790] But there is now encryption built into the TVS head version of the ETH protocol. [01:39:30.510 --> 01:39:32.050] Cool. Okay. [01:39:32.110 --> 01:39:33.790] Let's take a call from... [01:39:44.750 --> 01:39:45.790] Hello? [01:39:58.570 --> 01:40:00.110] Oh, this was always right here. [01:40:13.780 --> 01:40:41.930] The reason those payphones take an incredibly long time to call... [01:40:41.930 --> 01:40:48.810] Also, it works from my mobile phone. [01:40:48.970 --> 01:40:50.150] So it's not our... [01:40:50.150 --> 01:40:53.150] The other fun thing about the payphones out in the lobby [01:40:53.150 --> 01:40:56.130] is that they do not transmit a payphone code. [01:40:56.130 --> 01:40:58.950] So therefore, you can actually use DEF CON by phone from them. [01:40:58.950 --> 01:41:01.970] All payphones are banned because we don't feel like being charged a fee. [01:41:01.970 --> 01:41:04.650] However, thanks to Goldetel, whoever supports them, [01:41:04.650 --> 01:41:08.810] they have a very unincorrect standard on their payphones [01:41:08.810 --> 01:41:11.730] and they treat them as being real payphones. [01:41:15.290 --> 01:41:16.470] Hello, caller? [01:41:20.110 --> 01:41:21.230] Grab his phone! [01:41:49.070 --> 01:41:50.430] ...and O'Reilly makes great books. [01:41:50.430 --> 01:41:52.970] This one's apparently like 570 something pages. [01:41:53.350 --> 01:41:55.630] I'm looking for a good book with a starfish on the cover. [01:41:56.030 --> 01:41:56.990] And secondly... [01:41:58.290 --> 01:42:00.350] Sure, I'm broke. I'll accept the money. [01:42:00.810 --> 01:42:02.410] You won't pay me. I've got it down for you. [01:42:02.690 --> 01:42:03.990] Alright, thank you. [01:42:26.150 --> 01:42:27.730] Call in somebody from... [01:42:27.730 --> 01:42:29.050] Hello, party? [01:42:30.930 --> 01:42:31.650] Hello? [01:42:32.150 --> 01:42:34.520] Hello. [01:42:34.880 --> 01:42:37.340] Up to four people can be in the queue at any given time. [01:42:38.760 --> 01:42:44.300] And how did you figure out that you're the inventor? [01:42:44.820 --> 01:42:47.700] Because we're dialing our internal Dundee net number. [01:42:47.700 --> 01:42:49.600] We got skills, yo. [01:42:49.760 --> 01:42:54.260] Yeah. Actually, you can set a password for this, but for convenience, [01:42:54.260 --> 01:42:57.480] since none of you from the outside world can dial on our Dundee plan, [01:42:58.280 --> 01:43:00.500] we figured it would just be easier if we could just answer the question [01:43:00.500 --> 01:43:02.240] instead of getting some password thing. [01:43:02.240 --> 01:43:06.460] Yes, essentially, this allows you to set up your own phone sets. [01:43:06.780 --> 01:43:09.040] Yes. Thank you much. [01:43:23.920 --> 01:43:25.040] I'm wearing... [01:43:35.230 --> 01:43:38.250] I've got this really, really nice butt set. [01:43:39.990 --> 01:43:44.210] Have you played with any of the 802.11c voice phones? [01:43:44.910 --> 01:43:48.370] I haven't played with any of the 802.11c voice phones. [01:43:48.370 --> 01:43:53.010] There are phones that'll act like cordless phones, except they'll talk to your Wi-Fi network. [01:43:53.390 --> 01:43:56.330] I wasn't kidding when I told you I had a really nice butt set. [01:43:58.250 --> 01:44:00.570] 7920? Okay, so 7920. [01:44:00.610 --> 01:44:05.430] If you go to voice-info.org wiki, they have information on all of those. [01:44:05.550 --> 01:44:08.470] I haven't played with the Wi-Fi phone set. [01:44:10.630 --> 01:44:12.890] Yeah, yeah, you can do voice talk on BDSU. [01:44:12.890 --> 01:44:14.630] Yes, I set them up for my own thing. [01:44:14.630 --> 01:44:18.450] I have a nice Bluetooth headset. I have Wi-Fi hotspot. It comes right in hand. [01:44:18.450 --> 01:44:21.330] We've got to go wrap this up. Thank you all for coming. [01:44:21.730 --> 01:44:24.310] I'm going to send out shouts to binrev.com. [01:44:24.310 --> 01:44:27.230] You can find Strom and I there on forums, binrev.com. [01:44:28.190 --> 01:44:30.530] Anything else? Oldschoolfreak.com. [01:44:30.530 --> 01:44:34.010] We have stickers that we can give people. Just follow us out. [01:44:34.010 --> 01:44:36.610] We'll talk to your questions and do whatever. [01:44:37.650 --> 01:44:40.790] Hang on just a second. You can also, before you go, [01:44:40.790 --> 01:44:43.190] if you have any questions and you can't get to us directly, [01:44:43.190 --> 01:44:47.190] my telephone number is on my website, so call me up there. [01:44:47.410 --> 01:44:51.310] Further reading of resources, on to the slideshow on your TV. [01:44:51.310 --> 01:44:53.090] Thank you for coming, everybody.