5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

コーポレートブランディング×Alexa スキル『広報プログラマ』

Posted at

#はじめに
SI企業で働いているナベと言います。
主に、自社オウンドメデイアの運用やサイト製作、デザイン、マーケティング業務を行なっています。

最近、広報業務にも力を入れるようになったので、活動内容と参考になった知識をまとめてみました。

#コーポレートブランディングを行うためには?
コーポレートブランディングの効果的な施策の中に、「Yahoo!トピックを狙う」方法があります。
2018-11-21_17h37_12.png
Yahoo!トピックに掲載された、サービス、商品は爆発的に売れ、全国から注目を得ることができます。
『話題』を、作り出すことさえできれば『広告費0円』で、Yahoo!トピックに掲載される可能性があるのです!

###話題作りのノウハウを一部紹介します(^^)/

■挑む・挑ませる
記録に挑戦する/対決する/公募・検定
例:検定 唐揚検定 http://karaage.ne.jp/kentei/
2018-11-21_18h10_41.png

■見た目
大きく・大量にする/色・形で差別化する/豪華・高級にする/大使づくり(キャラ、動物)

例:大きく  道ばたに突如現れた巨大すぎるキーボード http://ideahack.me/article/250
2018-11-21_18h05_21.png

例:高級にする 高級チョコボール http://chocolate5geek.hatenablog.com/entry/2016/04/05/000324
2018-11-21_18h02_30.png

■組み合わせ
男女逆転/専門性を極める/異物の足し算/時流を取り込む/再現・復活する/無料にする

例:専門性を極める 19人のIT戦士、島おこしに挑む http://www.itmedia.co.jp/news/articles/0605/18/news025.html
2018-11-21_18h28_36.png

例:異物の足し算 青いラーメン http://buzz-plus.com/article/2017/02/03/kipposhi/
2018-11-21_18h07_13.png

###話題作りは、人々に興味と関心をもたせる事が大切です!!

#小さい話題を作ってみた

参考にさせていただきましたo(^-^)o:https://qiita.com/ikarosu_chihaya/items/5f49ee55508e66e381fd

###会社の受付にAlexaを設置!
〜会社を訪れるお客さんにIT企業感を感じてもらう〜

###index.js作成

※今回は試作スキルなので来訪者を1名に限定して作成。稟議通り次第拡張予定。

'use strict';

const Alexa = require('ask-sdk');
const rp = require('request-promise');

// ここら辺に function などの共通処理を追加


// スタートインテント
const LaunchRequestHandler = {
	canHandle(handlerInput) {
			return handlerInput.requestEnvelope.request.type === 'LaunchRequest';
	},
	handle(handlerInput) {
		const speechOutput = '◯◯会社へようこそ。ご用件を伺います。';

		return handlerInput.responseBuilder
			.speak(speechOutput)
			.reprompt(speechOutput)
			.withSimpleCard(speechOutput)
			.getResponse();
	}
}

// カスタムインテントハンドラー (自分で作成したインテントの呼び出し)
const CustomIntentHandler = {
	canHandle(handlerInput) {
		const request = handlerInput.requestEnvelope.request;
		return (request.type === 'IntentRequest'
				&& request.intent.name === 'GetAnswerFromDeliveryIntent')
	},
	handle(handlerInput) {
		const speechOutput = '担当者が参ります。少々お待ちください。';

		// 下記実装がスロット内容を取得する。
		// これは「同義語」を答えても「値」を取得する方法。
    if(request.intent.slots.{}の中身.resolutions.resolutionsPerAuthority[0].values){
			var {} = request.intent.slots.{}の中身.resolutions.resolutionsPerAuthority[0].values[0].value.name;
		}
		
		// ここに WebHook の実装を追加すると対応した発話に関して Slack に投げることが出来ます。
		
const rp = require('request-promise');

// WebHook URL
const WebHook_URL = 'https://hooks.slack.com/services......../WebHook_URL';
const WebHook_URL = 'WebHook_URL';

// Slack に投げるメッセージ
const test_message = '〇〇様が来られました。';

let options = {
		method: 'POST',
		uri: WebHook_URL,//先のslack_webhook
		body: {
				text: test_message
		},
		json: true
};

rp(options).then((response) => {
	console.log('テストメッセージ送信完了');
}, (error) => {
	console.log('error');
});



		return handlerInput.responseBuilder
			.speak(speechOutput)
			.reprompt(speechOutput)
			.withSimpleCard(speechOutput)
			.getResponse();
	}
}


// キャンセル & ストップインテント
const CancelAndStopIntentHandler = {
	canHandle(handlerInput) {
		console.log('called CancelAndStopIntentHandler.canHandle');
		return handlerInput.requestEnvelope.request.type === 'IntentRequest'
			&& (handlerInput.requestEnvelope.request.intent.name === 'AMAZON.CancelIntent'
			||  handlerInput.requestEnvelope.request.intent.name === 'AMAZON.StopIntent');
	},
	handle(handlerInput) {
		console.log('called CancelAndStopIntentHandler.handle');
		return handlerInput.responseBuilder
			.speak('スキルを終了します。')
			.withShouldEndSession(true)
			.getResponse();
	}
}

// エラーハンドラー
const ErrorHandler = {
	canHandle(handlerInput, error) {
			return true;
	},
	handle(handlerInput, error) {
			return handlerInput.responseBuilder
					.speak('エラーが発生しました。')
					.getResponse();
	},
};

// ハンドラーを追加した場合、addRequestHandlers に追加する必要があります。
exports.handler = Alexa.SkillBuilders.standard()
	.addRequestHandlers(LaunchRequestHandler,CustomIntentHandler,CancelAndStopIntentHandler)
  .addErrorHandler(ErrorHandler)
  .lambda();

#Slack連携
『Incoming Webhooks』 を利用
https://api.slack.com/incoming-webhooks

#最後に

zipファイルを作成し、lambdaにアップロードしてテストclearなら完成です。

スクリーンショット 2018-12-23 21.35.23.png

###注意!!!!
zipファイルを作成する際は、格納するファイルを選択し圧縮してください。
圧縮用のファイルは用意しなくてよい。

スクリーンショット 2018-12-23 21.38.22.png

圧縮用のファイルを用意し、そのファイルに格納し圧縮したことで、
lambdaにあげた際、エラーとなり、
3時間詰まりました-_-b 気をつけてください。

#まとめ
話題は、取り上げられたら勝ちですが、取り上げられなかったら負けです。
まずは、費用をかけることなく、自分のできる事を考え実行してみました。

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?