#!/usr/bin/env php $options['userId'], 'event' => $options['event'], 'properties' => parse_json($options['properties']) )); break; case 'identify': Segment::identify(array( 'userId' => $options['userId'], 'traits' => parse_json($options['traits']) )); break; case 'page': Segment::page(array( 'userId' => $options['userId'], 'name' => $options['name'], 'properties' => parse_json($options['properties']) )); break; case 'group': Segment::identify(array( 'userId' => $options['userId'], 'groupId' => $options['groupId'], 'traits' => parse_json($options['traits']) )); break; case 'alias': Segment::alias(array( 'userId' => $options['userId'], 'previousId' => $options['previousId'] )); break; default: error(usage()); break; } Segment::flush(); function usage() { return "\n Usage: analytics --type [options]\n\n"; } function error($message) { print("$message\n\n"); exit(1); } function parse_json($input) { if (empty($input)) { return null; } return json_decode($input); } function parse_timestamp($input) { if (empty($input)) { return null; } return strtotime($input); }