118 lines
4.0 KiB
Bash
Executable File
118 lines
4.0 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Copyright 2010-present Facebook.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
|
|
# Note: Use of this script requires Perl
|
|
|
|
#
|
|
# step 1 - confirm we have an app id and app secret to work with
|
|
#
|
|
|
|
if [ -z "$APPID" ]
|
|
then
|
|
echo '$APPID must be exported and set to the application id for the sample before running this script'
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "$APPSECRET" ]
|
|
then
|
|
echo '$APPSECRET must be exported set to the app secret for the sample before running this script'
|
|
exit 1
|
|
fi
|
|
|
|
#
|
|
# step 2 - stage images and capture their URIs in variables
|
|
#
|
|
|
|
echo curling...
|
|
|
|
ROCK_IMAGE_URI=` \
|
|
curl -s -k -X POST https://graph.facebook.com/$APPID/staging_resources -F access_token="$APPID|$APPSECRET" -F 'file=@RPSSample/left-rock-128.png;type=image/png' \
|
|
| perl -ne '/"uri":"(.*)"}/ && print $1' `
|
|
|
|
PAPER_IMAGE_URI=` \
|
|
curl -s -k -X POST https://graph.facebook.com/$APPID/staging_resources -F access_token="$APPID|$APPSECRET" -F 'file=@RPSSample/left-paper-128.png;type=image/png' \
|
|
| perl -ne '/"uri":"(.*)"}/ && print $1' `
|
|
|
|
SCISSORS_IMAGE_URI=` \
|
|
curl -s -k -X POST https://graph.facebook.com/$APPID/staging_resources -F access_token="$APPID|$APPSECRET" -F 'file=@RPSSample/left-scissors-128.png;type=image/png' \
|
|
| perl -ne '/"uri":"(.*)"}/ && print $1' `
|
|
|
|
echo "created staged resources..."
|
|
echo " rock=$ROCK_IMAGE_URI"
|
|
echo " paper=$PAPER_IMAGE_URI"
|
|
echo " scissors=$SCISSORS_IMAGE_URI"
|
|
|
|
#
|
|
# step 3 - create objects and capture their IDs in variables
|
|
#
|
|
|
|
# rock
|
|
ROCK_OBJID=` \
|
|
curl -s -X POST -F "object={\"title\":\"Rock\",\"description\":\"Breaks scissors, alas is covered by paper.\",\"image\":\"$ROCK_IMAGE_URI\"}" "https://graph.facebook.com/$APPID/objects/fb_sample_rps:gesture?access_token=$APPID|$APPSECRET" \
|
|
| perl -ne '/"id":"(.*)"}/ && print $1' `
|
|
|
|
# paper
|
|
PAPER_OBJID=` \
|
|
curl -s -X POST -F "object={\"title\":\"Paper\",\"description\":\"Covers rock, sadly scissors cut it.\",\"image\":\"$PAPER_IMAGE_URI\"}" "https://graph.facebook.com/$APPID/objects/fb_sample_rps:gesture?access_token=$APPID|$APPSECRET" \
|
|
| perl -ne '/"id":"(.*)"}/ && print $1' `
|
|
|
|
# scissors
|
|
SCISSORS_OBJID=` \
|
|
curl -s -X POST -F "object={\"title\":\"Scissors\",\"description\":\"Cuts paper, broken by rock -- bother.\",\"image\":\"$SCISSORS_IMAGE_URI\"}" "https://graph.facebook.com/$APPID/objects/fb_sample_rps:gesture?access_token=$APPID|$APPSECRET" \
|
|
| perl -ne '/"id":"(.*)"}/ && print $1' `
|
|
|
|
#
|
|
# step 4 - echo progress
|
|
#
|
|
|
|
echo "created application objects..."
|
|
echo " rock=$ROCK_OBJID"
|
|
echo " paper=$PAPER_OBJID"
|
|
echo " scissors=$SCISSORS_OBJID"
|
|
|
|
#
|
|
# step 5 - write .m file for common objects
|
|
#
|
|
|
|
MFILE=RPSSample/RPSCommonObjects.m
|
|
|
|
cat > $MFILE << EOF
|
|
/*
|
|
* Copyright 2010-present Facebook.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
NSString *builtInOpenGraphObjects[3] = {
|
|
@"$ROCK_OBJID", // rock
|
|
@"$PAPER_OBJID", // paper
|
|
@"$SCISSORS_OBJID"}; // scissors
|
|
EOF
|
|
|
|
echo "created $MFILE ..."
|
|
echo done.
|