isSupported()) { echo "did not support color\n"; exit; } if (!$ccolor->isSupported()){ echo "did not support color\n"; exit; } if (!$ccolor->are256ColorsSupported()){ echo "did not support 256 color mode\n"; exit; } // write name space class name --- $con = new JakubOnderka\PhpConsoleColor\ConsoleColor(); // display stye which is supported foreach ($ccolor->getPossibleStyles() as $i => $style){ echo "[".$ccolor->apply($style, $style)."]"; } for ($i = 1; $i <= 255; $i++){ echo $con->apply("color_$i","*"); echo $con->apply("bg_color_$i","*"); } echo "\n";
Month: July 2016
JS example
const thingShadow = require('./thing'); const isUndefined = require('./common/lib/is-undefined'); const cmdLineProcess = require('./examples/lib/cmdline'); function processTest( args, argsRemaining ){ if(isUndefined( args.thingName )){ console.log( 'thing name must be specified with --thing-name'); process.exit(1); } const thingShadows = thingShadow({ keyPath: args.privateKey, cerPath: args.clientCert, caPath: args.caCert, clientId: args.clientId, region:args.region, reconnectPeriod: args.recconectPeriod, }); thingShadows.on('connect',function(){ console.log('connected to things instance, registering thing name'); thingShadows.register( args.thingName, { persistentSubscribe: true }); }); thingShadows.on('close', function() { thingShadows.unregister( args.thingName ); console.log('close'); }); thingShadow.on('reconnect', function() { thingShadows.register( args.thingName, { persistentSubscribe: true }); console.log('offline'); }); thingShadows.on('error', function(error){ console.log('error', error); }); thingShadows.on('delta', function(thingName, stateObject){ console.log('received delta on '+thingName+':'+ JSON.stringify(stateObject)); thingShadows.update( thingName, { state: { reported: stateObject.state }}); }); thingShadows.on('timeout', function(thingName, clientToken){ console.warn('timeout: '+thingName); }); } module.exports = cmLineProcess; if (require.main === module){ cmdLineProcess('connect to the AWS IoT service and perform thing shadow sample', process.argv.slice(2), processTest, '', true) }
confirm JSON file
gzcat ~/Download/xxx(cut) -xx-part-0001.gz | jq '.' | less { "event_type": "ApplicationStart", "event_timestamp": 1446391243721, "arrival_timestamp":1446442595071, "event_version": "3.0", "application":{ "app_id": "", "cognito_identity_pool_id": "us-east-1: ", "package_name":"net.nowtom.Share", "sdk":{ "name":"aws-sdk-iOS", "version":"2.3.4" }, "title":"Unknown", "version_name":"1", "version_code":"1.0" }, "client":{ "client_id":" ", "cognito_id":"us-east-1: " }, }
macでsvnを利用する
Windowsなら TortoiseSVN ですが、macなら、ということで、
ターミナルで以下のコマンドを入力してください。
$ svn –version
svn, version 1.7.19
compiled Jun 17 2015, 13:48:11
Copyright (C) 2014 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/
svnadmin も確認
$ svnadmin –version
svnadmin, version 1.7.19 (r1643991)
compiled Jun 17 2015, 13:48:11
Copyright (C) 2014 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/
The following repository back-end (FS) modules are available:
* fs_fs : Module for working with a plain file (FSFS) repository.
アプリケーション起動時にイベント送信
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { // ... let mobileAnalytics = AWSMobileAnalytics(forAppId: "ApplicationID") let eventClient = mobileAnalytics.eventClient let event = eventClient.createEventWithEventType("ApplicationStart") eventClient.recordEvent(event) eventClient.submitEvent() return true }
Mobile Analyticsの組み込み
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool ` // ... let mobileAnalytics = AWSMobileAnalytics(forAppId: "") return true }
プッシュ通知
func push(){ let publishInput = AWSSNSPublishInput() publishInput.targetArn = "arn:aws:sns:us-east-1:xxxxxxxxxx:share-users" publishInput.message = "new picture is posted" AWSSNS.defaultSNS().publish(publishInput) }
AWSプッシュ通知
エンドポイントANRを取得します。
import AWSSNS // ... func application(application: UIApplication, didFinishLauchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { // ... let settings = UIUserNotificationSettings(forTypes: [.Badge, .Sound, .Alert], categories: nil) application.registerUserNotificationSetting(settings) application.registerForRemoteNotifications() return true } func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData){ let deviceTokenString = "¥(deviceToken)" .stringByTrimmingCharactersInSet(NSCharacterSet(charactersInString:"<>")) .stringByReplacingOccurrencesOfString(" ", withString: "") let credentialsProvider = AWSCognitoCredentialsProvider(regionType: .USEast1, identityPoolId: "us-east-1:") let serviceConfiguration = AWSServiceConfiguration(region: .USEast1, credentialsProvider: credentialProvider) AWSServiceManager.defaultServiceManager().defaultServiceConfiguration = serviceConfiguration let createPlatformEndpointInput = AWSSNSCreatePlatformEndpointInput() createPlatformEndpointInput.platformApplicationArn = "arn:aws:sns:us-east-1: :app/APNS_SANDBOX/Share" createPlatformEndpointInput.token = deviceTokenString AWSSNS.defaultSNS().createPlatformEndpoint(createPlatformEndpointInput) .continueWithSuccessBlock({(task) -> AnyObject! in guard let createEndpointResponse = task.result as? AWSSNSCreateEndpointResponse else{ return task } let subscribeInput = AWSSNSSubscribeInput() subscribeInput.protocols = "application" subscriptInput.topicArn = "arn:aws:sns:us-east-1: :share-users" subscribeInput.endpoint = createEndpointResponse.endpointArn return AWSSNS.defaultSNS.subscribe(subscribeInput) }) }