• Save
Introduksjon til Asterisk
Upcoming SlideShare
Loading in...5
×
 

Introduksjon til Asterisk

on

  • 3,656 views

Foredraget ble holdt for Bergen (BSD og) Linux User Group (BLUG), 3. mars 2006

Foredraget ble holdt for Bergen (BSD og) Linux User Group (BLUG), 3. mars 2006

Statistics

Views

Total Views
3,656
Views on SlideShare
3,652
Embed Views
4

Actions

Likes
0
Downloads
0
Comments
0

3 Embeds 4

http://www.slideshare.net 2
http://jilltxt.net 1
http://www.slideee.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Introduksjon til Asterisk Introduksjon til Asterisk Presentation Transcript

  • Introduksjon Asterisk, Asterisk logoene og dCap logoen er copyright Digium, og er brukt med tillatelse. Foredraget er © 2006, Magnus Espeland, Oyatel AS. Ta kontakt om du vil bruke dette til noe 
    • Innhold
    • Telefoni før og etter VoIP
    • Asterisk
      • Intro
      • Oppbygning
      • Grensesnitt
      • Eksempler
      • Komme i gang
    • Oppsummering
    • Ordliste
  • Magnus Espeland
    • Bachelor of Network Computing Monash University, Melbourne, 2002
    • Utviklet og driftet flere større Asterisk systemer siden høsten 2002
    • Teknisk sjef Oyatel AS
    [email_address]
    • Oyatel AS
    • Etablert juni 2005
    • Erfaring med Asterisk siden 2002
    • Leverer konsulenttjenester, produkter og telefoni
    • Er med i BTV’s kompetanseutviklings prosjekt
    • Eid av ICT Group og de ansatte
  • Telefoni før og etter VoIP
    • Før
    • Dedikert kobber til hvert abonnement
    • Timeslots på linjene mellom sentraler
      • Garantert båndbredde, timing og kvalitet
    A B C A B C A B C A Vår samtale
    • Før
    • Lokal abo til lokal sentral
    • Routing mellom sentraler
      • A -> B -> C
      • A -> X (dersom stor trafikk mellom disse sentralene)
    • Funksjonalitet ute i nettet
    • NRDB (Norsk Referanse Database, nrdb.no)
      • Routing mellom teleoperatører
    • Etter
    • Ikke dedikert medium, går over IP
    • Pakke nettverk
      • Ingen garanti for noe som helst
        • Pakketap (UDP)
        • Latency
        • QoS hjelper
    A B A A B C A Vår samtale B B C
    • Etter
    • Mer sentralisert
      • Må koble til sentral VoIP server
  • Asterisk - Intro
    • Begynnelsen
    • I 1999 trengte Mark Spencer en liten telefonsentral til Linux Support Services. Han synes det var for dyrt å kjøpe en, så han bestemte seg for å lage en selv. Hardware fra Zapata i Mexico. Etter hvert begynte andre å bygge videre på programvaren han la ut på nettet.
    • Astricon, flere steder, flere ganger i året
    • Største stand på VON Spring 2006
    • Jon ’Maddog’ Hall (Linux International) :
    • "I predict that over next three years, VoIP using an open-source solution, such as Asterisk; will generate more business than the entire Linux marketplace today".
  • Er Asterisk klar for oppgavene?
    • Begynner å bli virkelig stabilt
    • Relativt stabile interfacer
    • Forking (openpbx.org)
    • Utviklings kostnader
    • Lisens
    • Dobbel lisensiert
      • GPL
      • Kommersiell (bla pga patenter, G.729a, SS7)
    • For å få kode inn i Asterisk må man enten
      • Si fra seg copyright
      • Gi Digium, fri tilgang til å bruke koden i sin kommersielle versjon av Asterisk, for alltid
      • Legge til i Asterisk-Addons
  • Asterisk - Oppbygning
    • Kjernenen / Moduler
    • Konfigurasjon
    • Kjernen
    • Bygd opp rundt en kjerne (som Linux)
    • Mange forskjellige modul klasser
      • Channels (IAX, SIP, Zap)
      • Codec / Format
      • Resource / PBX
      • Application / Functions
      • CDR (Call Data Record)
      • (litt overlapping)
    • Channels
    • Driver de forskjellige kanalene data kommer inn
    • IAX – Inter Asterisk eXhange
      • En nett, liten og enkel protokoll (men best!)
    • SIP – Session Initiation Protocol
      • Tusenvis av sider med RFC
      • Varierende implementasjoner
      • Dessverre svært utbredt
    • Channels
    • Zap – Zapata / Zaptel
      • Hardware kort
      • Fra 1 linje (FXS/FXO)
      • Til 240 linjer (8 E1)
    • Andre
      • H.323, MGCP, Skinny, ALSA/OSS
    (forts.)
    • Codec / Format
    • Codec er formatet på lyden som kommer fra en Channel
    • Format er formatet på lyden som kommer fra en fil
    • Støtter mange
      • G.711 (aLaw/uLaw), G.723/726, G.729, GSM, iLBC, Speex, LPC10….
    • PBX / Resource
    • PBX (mer om disse seinere)
      • Config og Realtime (ARA) (mer seinere)
      • Asterisk Extension Language (AEL)
    • Resource
      • Music on hold
      • AGI
      • Monitor
    • Applications / Functions
    • Applications
      • MeetMe, Echo kobler til andre moduler
    • Functions
      • MD5
      • CallerID
      • Math
    • MYE overlapping mellom disse
    • CDR
    • Call Data Records
      • Billing osv, det som lagres om samtalen
      • CVS
      • Diverse SQL (ODBC, TDS, SQLite, PG)
      • MySQL er i Asterisk-Addons, pga MySQL lisensen
    • Konfigurasjon
    • Filer
      • iax.conf, sip.conf
      • extensions.conf
        • Hjertet i Asterisk – dialplan
        • Mer etterpå
    • Asterisk Realtime Architecture (ARA)
      • Dialplan, bruker og konfigurasjons database
  • Asterisk - Grensesnitt
    • CLI – Asterisk Console
    • Spool file
    • AGI – Asterisk Gateway Interface
    • AMI – Asterisk Manager Interface
    • Debugging
    • CLI
    • Konsollen til Asterisk
    • Her kan man kontrollere stort sett alt Asterisk gjør, og få mye debug info
    • Startes ved å kjøre ’asterisk –r ’
    • Spool file
    • Den enkleste måten å la eksterne programmer bruke Asterisk
    • Kan bare brukes til å starte samtaler, og man angir begge ender av samtalen. Slik kan man gjøre en god del triks
    • AGI
    • Asterisk Gateway Inteface
    • Likt CGI for web
    • Tenk på det som at STDIN og STDOUT er koblet til CLI (Asterisk konsollet)
    • EAGI – Lar deg få raw lyd i en egen FH
    • FastAGI – Kjør AGI scriptet på ekstern server (via TCP)
    • AMI
    • Asterisk Manager Interface
    • Manageren er en TCP socket (plaintext)
    • Den dumper mange Events
    • Man kjører Actions og får Responses fra den
    • Mange ferdige pakker, både for Java, .NET, PHP og Perl (inkl POE)
    • Debugging
    • For å debugge bruker jeg disse verktøyene
      • CLI: set verbose n, set debug n, iax2 debug, ..
      • Logfiler (feks /var/log/asterisk/messages)
      • AGI: Åpne filehandle til en logfil, og skrive debug info dit (vansklig å debuge AGI script via CLI)
      • AMI: Filtrere events, evt kjøre status kommandoer
  • Asterisk - Eksempler
    • The Dialplan!
    • Konfigurasjons (filer / ARA)
    • Eksempler på bruksområder
    • The Dialplan!
    • Det er her alt skjer (nesten)
    • Denne angir hvordan samtaler skal routes og hvilke applikasjoner som skal kjøres mot dem
    • Ligger i extensions.conf, eller lastes via ARA. Kan manipuleres via AMI.
    • Man kan skrive logikken i AEL, slik at den blir mer oversiktlig. (Asterisk Extension Language)
    • Eksempler…
    • Konfigurasjon
    • iax.conf og sip.conf angir peers, users og friends
      • Peer er en vi kobler oss til
      • User er en som kobler til oss
      • Friend er begge deler
    • Man angir for eksempel hvilke dialplan context samtaler skal routes til
    • Konfigurasjon
    • features.conf
    • manager.conf
    (forts.)
    • Basis eksempler
    • Ringe ut, se på CLI
    • Spool fil mot playback(), se på CLI
    • AMI – nc mot manager porten, se på events
    • AGI –
    • Fax to/from mail gateway
    • Fax to/from whatever gateway
    • Men dessverre:
      • FoIP er ikke bra nok (timing og lydkvalitet)
      • Bruk kommersielle produkter med T.38 support
      • Spandsp + rxfax() / txfax()
      • IAXModem + Hylafax
    Fax
    • IVR
    • Interactive Voice Response (tast 1 for ditt, 2 for datt)
    • Bygge enkle rett i dialplan
    • Bruke AGI til litt mer avanserte systemer
      • Enklere å holde orden på mer avansert kode
      • Enklere å bruke mot andre systemer (DB, mail, etc)
    • Bruke AMI for virkelig avanserte systemer
      • Kan ta tak i samtaler og flytte dem
    • Telefonkonferanser
    • Planlagte
    • Automatisk opprettet av overvåkings systemer
      • Nagios
    • Gode administrasjonsmuligheter
    • Voicemail
    • Bedre enn den du har?
    • Integrasjon mot dine systemer
    • Videresending til mail
    • Store muligheter for tilpassede løsninger
    • Telefonkø
    • Hjelper i peak situasjoner
    • Kombiner med IVR (’Vi har fortiden nedetid på XX, feilen utbedres’)
    • Diverse algoritmer for eksempel:
      • Support personer
      • Junior utviklere
      • Senior utviklere
    • Egen PBX
    • Kan livet ditt bli enklere med en?
    • Ett nummer, routing etter regler
    • Talemeny
    • Telefonsvarer
    • Konferanser
    • Køing
  • Service provider
    • En enkel måte å teste ut Asterisk på med
    • liten risiko
    • Mulige tjenester:
    • IVR, VoIP Gateway, Fax, ...
  • Service provider PSTN IVR VoIP provider VoIP - Gateway
    • CTI (Callcenter greier)
    • Computer Telephony Interface
    • Brukes mellom applikasjon og telefonisystem (for eksempel Asterisk)
    • Trenger det egentlig å være forbeholdt callcenter lenger? NEI!
  • CTI Produkter
    • Computer Telephony Interface (CTI)
      • Asterisk Manager Interface (AMI)
      • AstManProxy
      • Asterisk Java / .NET
      • Asterisk-CTI
      • OrderlyCalls (OrderlySoftware)
  • Filter
    • Øker kapasiteten på gammelt utstyr ved å
    • flytte funksjonalitet ett lag ut
    • Mulige tjenester:
    • IVR, Køer, Fax, ...
  • Filter VoIP provider IVR Kø Overvåke VoIP GW PSTN VoIP - Gateway IVR
    • Brukere av Asterisk
    • Briiz Telecom – Bruker kun Asterisk, og er åpene om det
    • Andre mot privatmarkedet bruker SER + Asterisk (Asterisk til terminering, voicemail etc)
    • Minst en stor callcenter aktør bruker asterisk i stor skala
    • Buskerud fylkeskommune (se egen slide)
  • Asterisk – Komme i gang
    • Hvordan få tak i Asterisk
    • Subversion
      • http://svn.digium.com/svn/asterisk/trunk
      • http://svn.digium.com/svn/asterisk/branches/1.2
    • FTP / HTTP
      • http://ftp.digium.com/pub/
      • ftp://ftp.digium.com/pub/
    • Asterisk@Home ( nå Trixbox )
    • CentOS (Redhat fork) basert
    • Sett inn CD, boot, og den overskriver HD på maskinen
    • Mange features samt administrasjons verktøy
    • ’ Automagisk’ installasjon av hardware
    • Andre produkter
    • Diptel
      • PBX løsning, plassert lokalt hos kunde. Intel basert maskin med USB drive
    • Bjørn og gjengen
      • Utvikler GPL telefonsentral for bruk i det offentlige (og andre)
    • Diverse internasjonale
    • Ordliste
    • AEL – Asterisk Extension Language (C-style extensions)
    • AGI – Asterisk Gateway Interface (Som CGI for web)
    • AMI – Asterisk Manager Interface (TCP socket til Asterisk)
    • ARA – Asterisk Realtime Architecture (dialplan og config i database)
    • CDR – Call Data Record (info lagret om samtaler i ettertid)
    • CLI – Command Line Interface(?)
    • CTI – Computer Telephony Interface (AMI wrapper for andre programmer)
    • G.711 – 64kbits Codec for ISDN i Norge (aLaw / uLaw)
    • G.729a – Kommersiell Codec (lite CPU, lite BW og god lydkvalitet)
    • GSM – 8kbits (?) Codec for GSM nettet
    • IAX – Inter Asterisk eXhange (bedre enn SIP)
    • PBX – Private Branch eXhange (telefonsentral i bedriften)
    • SIP – Session Initiation Protocol
    • VoIP – Voice over IP 
    • Asterisk som hussentral
    • 11 kommuner på Sørlandet og Buskerud fylkeskommune skal sammen med et utvalg av bedrifter utvikle en komplett hussentralløsning basert på bl.a. Asterisk.
    • Løsningen blir fritt tilgjengelig fra www.asterisk.no
    • Info om prosjektet blir også lagt ut på asterisk.no.
    • Ledig stilling!!
    • Vi trenger mer folk!
    • Stort marked, få aktører
    • Ungt, energisk og spennende miljø
    • Mulighet for eierskap i din egen jobb
    • Spennende samarbeidspartnere!
    • Besøk til avdelingen i Oslo
    • Gjett hvem som er meg… han andre kjører bil (fort)
    • Kollega kjører rally
    • Kollega får konkuranse
    • GEEK POWER!
  • Spørsmål og diskusjon
    • Foredraget ligger på
    • http://asterisk.no
    [email_address]
  •