Am 24.02.2012 um 19:52 schrieb Lonnie Abelbeck: > Hi Chris, > > Thanks for sharing! > > But to be clear, you are not doing this on AstLinux, correct? > > While almost everything in your system would work in AstLinux, the missing > piece is setting "option tftp-server-name" special for Aastra MAC addresses. > We use dnsmasq and I'm not sure if our "/mnt/kd/dnsmasq.static" could be > edited in such a way to support the same kind of MAC conditional logic. > > Or, maybe I'm missing something. > > Thanks again... > > Lonnie
Yes, it can, example: dhcp-mac=snom,00:04:13:*:*:* dhcp-option=snom,option:tftp-server,"http://192.168.1.2:8088/phoneprov/snom-{mac}.xml" dhcp-mac=yealink,00:15:65:*:*:* dhcp-option=yealink,option:tftp-server,"http://192.168.1.2:8088/phoneprov/" > On Feb 24, 2012, at 11:20 AM, Chris Abnett wrote: > >> I do exactly this.. I wrote a script that when a new phone enters the >> system.. The static aastra.cfg file tells the phone to go grab a default >> PHP script that basically makes the phone say "enter you extension"... You >> type the extension and hit OK.. This calls my phone register script >> sending the extension number as an argument.. By using the HTTP headers I >> grab the phone type and the MAC address of the phone.. Generate a config >> file and push back a reboot request to the phone... >> The phone then reboots and grabs the config from the server.. The server >> parameters are given to the phone by DHCP.. In my dhcpd.conf I have set >> up where I send different options to different types of devices based on >> their macs... >> >> The trick is you place an aastra.cfg file on the server and make DHCP give >> out the server location for the phone to go.. This way it is zero-config >> out of the box for a new phone... >> >> I wrote my own set of auto-config scripts mainly because I found the >> provided ones to be convoluted and didn¹t work in the way I wanted... >> >> >> >> I use lighttpd for the web server and all works great. >> >> Here is an example of how I grab the phone's type and MAC address... By >> grabbing the type I can generate the correct type of key buttons >> dependant on the type of set they have.. Ie softkey vs prgkey >> >> >> >> # get extension from URL if sent >> if (array_key_exists('user',$_GET)) { >> $extension =$_GET['user']; >> } else { >> $extension = NULL; >> } >> >> >> ## get user agent info from web server >> $user_agent_raw = $_SERVER["HTTP_USER_AGENT"]; >> #decode our HTTP header >> $ffr = decode_header($user_agent_raw); >> >> >> >> >> ##################################################################### >> # decode_header() >> # >> # Returns an array >> # 0 Phone Type >> # 1 Phone MAC Address >> # 2 Phone firmware version >> ##################################################################### >> function decode_header($user_agent) >> { >> testlog($user_agent); >> # $user_agent="Aastra6731i MAC:00-08-5D-26-17-78 V:2.6.0.66-SIP"; >> if(stristr($user_agent,"Aastra")) { >> $value=preg_split("/ MAC:/",$user_agent); >> $fin=preg_split("/ /",$value[1]); >> $value[1]=preg_replace("/\-/","",$fin[0]); >> $value[2]=preg_replace("/V:/","",$fin[1]); >> } else { >> $value[0]="MSIE"; >> $value[1]="NA"; >> $value[2]="NA"; >> } >> $value[3]=$_SERVER["REMOTE_ADDR"]; >> return $value; >> } >> >> >> ****** >> Here is a snippet from my dhcpd.conf on how I tell DHCP to send options >> based on MAC >> >> # tftp for Aastra sets is special, otherwise use GUI value >> if substring(hardware,1,3) = 00:08:5D { >> option tftp-server-name "tftp://192.168.10.5/aastra/"; >> >> } >> >> ****** >> >> And finally my aastra.cfg file.. This file is checked by every phone on >> bootup, however data in a MAC.cfg takes precedence over data in this >> file.. So you can leave it on the server all the time and put a different >> action uri startup in your MAC.cfg or blank it out.. So then the phones >> will only go to your newphone script once when they are default or are >> missing a config on the server >> >> # Setup DHCP mode >> dhcp: 1 >> lldp: 0 >> download protocol: TFTP >> time server disabled: 1 >> time server1: >> time server2: >> time server3: >> contact rcs: 0 >> action uri startup: http://10.11.12.13/aastra/newphone.php?user=none >> >> >> >> >> -Christopher > > ------------------------------------------------------------------------------ > Virtualization & Cloud Management Using Capacity Planning > Cloud computing makes use of virtualization - but cloud computing > also focuses on allowing computing to be delivered as a service. > http://www.accelacomm.com/jaw/sfnl/114/51521223/ > _______________________________________________ > Astlinux-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/astlinux-users > > Donations to support AstLinux are graciously accepted via PayPal to > [email protected]. Michael http://www.mksolutions.info
smime.p7s
Description: S/MIME cryptographic signature
------------------------------------------------------------------------------ Virtualization & Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________ Astlinux-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/astlinux-users Donations to support AstLinux are graciously accepted via PayPal to [email protected].
