1<?php 2 3namespace GeoIp2\Record; 4 5/** 6 * Contains data for the traits record associated with an IP address. 7 * 8 * This record is returned by all location services and databases. 9 * 10 * @property-read int|null $autonomousSystemNumber The 11 * {@link * http://en.wikipedia.org/wiki/Autonomous_system_(Internet) autonomous 12 * system number} associated with the IP address. This attribute is only 13 * available from the City and Insights web service and the GeoIP2 14 * Enterprise database. 15 * @property-read string|null $autonomousSystemOrganization The organization 16 * associated with the registered {@link * http://en.wikipedia.org/wiki/Autonomous_system_(Internet) autonomous 17 * system number} for the IP address. This attribute is only available from 18 * the City and Insights web service and the GeoIP2 Enterprise 19 * database. 20 * @property-read string|null $connectionType The connection type may take the 21 * following values: "Dialup", "Cable/DSL", "Corporate", "Cellular". 22 * Additional values may be added in the future. This attribute is only 23 * available in the GeoIP2 Enterprise database. 24 * @property-read string|null $domain The second level domain associated with the 25 * IP address. This will be something like "example.com" or "example.co.uk", 26 * not "foo.example.com". This attribute is only available from the 27 * City and Insights web service and the GeoIP2 Enterprise 28 * database. 29 * @property-read string $ipAddress The IP address that the data in the model 30 * is for. If you performed a "me" lookup against the web service, this 31 * will be the externally routable IP address for the system the code is 32 * running on. If the system is behind a NAT, this may differ from the IP 33 * address locally assigned to it. This attribute is returned by all end 34 * points. 35 * @property-read bool $isAnonymous This is true if the IP address belongs to 36 * any sort of anonymous network. This property is only available from GeoIP2 37 * Precision Insights. 38 * @property-read bool $isAnonymousProxy *Deprecated.* Please see our 39 * {@link * https://www.maxmind.com/en/geoip2-anonymous-ip-database GeoIP2 40 * Anonymous IP database} to determine whether the IP address is used by an 41 * anonymizing service. 42 * @property-read bool $isAnonymousVpn This is true if the IP address belongs to 43 * an anonymous VPN system. This property is only available from GeoIP2 44 * Precision Insights. 45 * @property-read bool $isHostingProvider This is true if the IP address belongs 46 * to a hosting provider. This property is only available from GeoIP2 47 * Precision Insights. 48 * @property-read bool $isLegitimateProxy This attribute is true if MaxMind 49 * believes this IP address to be a legitimate proxy, such as an internal 50 * VPN used by a corporation. This attribute is only available in the GeoIP2 51 * Enterprise database. 52 * @property-read bool $isPublicProxy This is true if the IP address belongs to 53 * a public proxy. This property is only available from GeoIP2 Precision 54 * Insights. 55 * @property-read bool $isSatelliteProvider *Deprecated.* Due to the 56 * increased coverage by mobile carriers, very few satellite providers now 57 * serve multiple countries. As a result, the output does not provide 58 * sufficiently relevant data for us to maintain it. 59 * @property-read bool $isTorExitNode This is true if the IP address is a Tor 60 * exit node. This property is only available from GeoIP2 Precision Insights. 61 * @property-read string|null $isp The name of the ISP associated with the IP 62 * address. This attribute is only available from the City and Insights web 63 * services and the GeoIP2 Enterprise database. 64 * @property-read string|null $organization The name of the organization associated 65 * with the IP address. This attribute is only available from the City and 66 * Insights web services and the GeoIP2 Enterprise database. 67 * @property-read string|null $userType <p>The user type associated with the IP 68 * address. This can be one of the following values:</p> 69 * <ul> 70 * <li>business 71 * <li>cafe 72 * <li>cellular 73 * <li>college 74 * <li>content_delivery_network 75 * <li>dialup 76 * <li>government 77 * <li>hosting 78 * <li>library 79 * <li>military 80 * <li>residential 81 * <li>router 82 * <li>school 83 * <li>search_engine_spider 84 * <li>traveler 85 * </ul> 86 * <p> 87 * This attribute is only available from the Insights web service and the 88 * GeoIP2 Enterprise database. 89 * </p> 90 */ 91class Traits extends AbstractRecord 92{ 93 /** 94 * @ignore 95 */ 96 protected $validAttributes = [ 97 'autonomousSystemNumber', 98 'autonomousSystemOrganization', 99 'connectionType', 100 'domain', 101 'ipAddress', 102 'isAnonymous', 103 'isAnonymousProxy', 104 'isAnonymousVpn', 105 'isHostingProvider', 106 'isLegitimateProxy', 107 'isp', 108 'isPublicProxy', 109 'isSatelliteProvider', 110 'isTorExitNode', 111 'organization', 112 'userType', 113 ]; 114} 115