1: <?php
2:
3: namespace GeoIP2\Record;
4:
5: /**
6: *
7: * Contains data for the traits record associated with an IP address
8: *
9: * This record is returned by all the end points.
10: *
11: * @property int $autonomousSystemNumber The {@link
12: * http://en.wikipedia.org/wiki/Autonomous_system_(Internet) autonomous
13: * system number} associated with the IP address. This attribute is only
14: * available from the City/ISP/Org and Omni end points.
15: *
16: * @property string $autonomousSystemOrganization The organization
17: * associated with the registered {@link
18: * http://en.wikipedia.org/wiki/Autonomous_system_(Internet) autonomous
19: * system number} for the IP address. This attribute is only available from
20: * the City/ISP/Org and Omni end points.
21: *
22: * @property string $domain The second level domain associated with the
23: * IP address. This will be something like "example.com" or "example.co.uk",
24: * not "foo.example.com". This attribute is only available from the
25: * City/ISP/Org and Omni end points.
26: *
27: * @property string $ipAddress The IP address that the data in the model
28: * is for. If you performed a "me" lookup against the web service, this
29: * will be the externally routable IP address for the system the code is
30: * running on. If the system is behind a NAT, this may differ from the IP
31: * address locally assigned to it. This attribute is returned by all end
32: * points.
33: *
34: * @property boolean $isAnonymousProxy This is true if the IP is an
35: * anonymous proxy. See {@link http://dev.maxmind.com/faq/geoip#anonproxy}
36: * for further details. This attribute is returned by all end points.
37: *
38: * @property boolean $isSatelliteProvider This is true if the IP belongs
39: * to a satellite Internet provider. This attribute is returned by all
40: * end points.
41: *
42: * @property string $isp The name of the ISP associated the IP address.
43: * This attribute is only available from the City/ISP/Org and Omni end
44: * points.
45: *
46: * @property string $organization The name of the organization associated
47: * the IP address. This attribute is only available from the City/ISP/Org
48: * and Omni end points.
49: *
50: * @property string $userType <p>The user type associated with the IP
51: * address. This can be one of the following values:</p>
52: * <ul>
53: * <li>business
54: * <li>cafe
55: * <li>cellular
56: * <li>college
57: * <li>content_delivery_network
58: * <li>dialup
59: * <li>government
60: * <li>hosting
61: * <li>library
62: * <li>military
63: * <li>residential
64: * <li>router
65: * <li>school
66: * <li>search_engine_spider
67: * <li>traveler
68: * </ul>
69: * <p>This attribute is only available from the Omni end point.</p>
70: */
71: class Traits extends AbstractRecord
72: {
73: /**
74: * @ignore
75: */
76: protected $validAttributes = array(
77: 'autonomousSystemNumber',
78: 'autonomousSystemOrganization',
79: 'domain',
80: 'isAnonymousProxy',
81: 'isSatelliteProvider',
82: 'isp',
83: 'ipAddress',
84: 'organization',
85: 'userType'
86: );
87: }
88: