# Copyright (c) 2012 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# This file contains a dictonary describing the wireless access point
# information used in the building 2000 wifi lab.
[
# re-add when trendnet debugging is done
#  {
#    'class_name': 'LinksysAPConfigurator',
#    'short_name': 'WRT54G2',
#    'admin_url': 'http://172.22.12.225',
#    'serial_number': 'CSV01K706755',
#    'mac_address': '98:FC:11:47:21:30',
#    'power_outlet_ip': '172.22.12.201',
#    'power_outlet_number': '3',
#    'power_outlet_admin_name': 'admin',
#    'power_outlet_password': 'password',
#  },
# Not in the lab yet
#  {
#    'class_name': 'DLinkAPConfigurator',
#    'short_name': 'DAP-1522',
#    'admin_url': 'http://172.22.12.107',
#    'serial_number': 'P1RG19B002481',
#    'mac_address': '00:26:5A:78:4E:A6',
#    'power_outlet_ip': '',
#    'power_outlet_number': '',
#    'power_outlet_admin_name': 'admin',
#    'power_outlet_password': 'password',
#  },
  {
    'class_name': 'TrendnetAPConfigurator',
    'short_name': 'TEW-639GR',
    'admin_url': 'http://172.22.12.229',
    'serial_number': '',
    'mac_address': '',
    'power_outlet_ip': '172.22.12.202',
    'power_outlet_number': '3',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
  {
    'class_name': 'DLinkDIR655APConfigurator',
    'short_name': 'DIR-655',
    'admin_url': 'http://172.22.12.223',
    'serial_number': '',
    'mac_address': '84:C9:B2:50:9A:C8',
    'power_outlet_ip': '172.22.12.201',
    'power_outlet_number': '1',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
  {
    'class_name': 'BuffaloAPConfigurator',
    'short_name': 'Buffalo',
    'admin_url': 'http://172.22.12.234',
    'serial_number': '',
    'mac_address': '00:24:A5:B5:A3:17',
    'power_outlet_ip': '172.22.12.201',
    'power_outlet_number': '6',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
  {
    'class_name': 'Netgear3700APConfigurator',
    'short_name': 'Netgear3700',
    'admin_url': 'http://172.22.12.221:8080',
    'serial_number': '',
    'mac_address': '20:4e:7f:47:af:c7',
    'power_outlet_ip': '172.22.12.201',
    'power_outlet_number': '8',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
  {
    'class_name': 'AsusAPConfigurator',
    'short_name': 'RT-N56U',
    'admin_url': 'http://172.22.12.224:8080',
    'serial_number': '',
    'mac_address': 'C8:60:00:93:F5:B0',
    'power_outlet_ip': '172.22.12.201',
    'power_outlet_number': '4',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
  {
    'class_name': 'LinksysE4200APConfigurator',
    'short_name': 'E4200',
    'admin_url': 'http://172.22.12.222:8080',
    'serial_number': '',
    'mac_address': '',
    'power_outlet_ip': '172.22.12.201',
    'power_outlet_number': '5',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
#  {
#    'class_name': 'linksyse2000APConfigurator',
#    'short_name': 'linksyse2000',
#    'admin_url': 'http://172.22.12.227:8080',
#    'serial_number': '',
#    'mac_address': 'C0:C1:C0:42:E5:7D',
#    'power_outlet_ip': '172.22.12.201',
#    'power_outlet_number': '2',
#    'power_outlet_admin_name': 'admin',
#    'power_outlet_password': 'password',
#  },
  {
    'class_name': 'Netgear4500APConfigurator',
    'short_name': 'WNDR4500',
    'admin_url': 'https://172.22.12.226:8080',
    'serial_number': '',
    'mac_address': '',
    'power_outlet_ip': '172.22.12.201',
    'power_outlet_number': '7',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
#  {
#    'class_name': 'belkinAPConfigurator',
#    'short_name': 'belkin',
#    'admin_url': 'http://172.22.12.233',
#    'serial_number': '',
#    'mac_address': '00:22:75:A2:3B:08',
#    'power_outlet_ip': '172.22.12.202',
#    'power_outlet_number': '5',
#    'power_outlet_admin_name': 'admin',
#    'power_outlet_password': 'password',
#  },
  {
    'class_name': 'TrendnetAPConfigurator',
    'short_name': 'TEW-691GR',
    'admin_url': 'http://172.22.12.228',
    'serial_number': '',
    'mac_address': '',
    'power_outlet_ip': '172.22.12.202',
    'power_outlet_number': '1',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
  {
    'class_name': 'Netgear614APConfigurator',
    'short_name': 'wgr614-v9',
    'admin_url': 'http://172.22.12.231:8080',
    'serial_number': '',
    'mac_address': '',
    'power_outlet_ip': '172.22.12.202',
    'power_outlet_number': '4',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
  {
    'class_name': 'dlinkwbr1310APConfigurator',
    'short_name': 'dlinkwbr1310',
    'admin_url': 'http://172.22.12.232',
    'serial_number': '',
    'mac_address': '00:24:01:6c:ec:56',
    'power_outlet_ip': '172.22.12.202',
    'power_outlet_number': '2',
    'power_outlet_admin_name': 'admin',
    'power_outlet_password': 'password',
  },
]
