These scripts fetch app info directly from iTunes Connect and posts changes in Slack as a bot. Since iTC doesn't provide event webhooks, these scripts use polling with the help of Fastlane's Spaceship.
The scripts read config environment from .env
file (require dotenv
for nodejs + ruby). Be sure to create it follow env.example
:
ITC_USERNAME=""
ITC_PASSWORD=""
BUNDLE_ID=""
SLACH_BOT_API_TOKEN="xoxb-"
SLACK_CHANNEL="random"
> yarn install
> bundle install
Set the specific channel you'd like the bot to post to .env
. By default, it posts to #ios-app-updates
.
In poll-itc.js
, set the pollIntervalSeconds
value to whatever you like.
> node poll-itc.js
Or you can use the pm2 tool to keep it up indefinitely:
> pm2 start poll-itc.js --name 'itunes-connect-slack'
Ruby script that uses Spaceship to connect to iTunes Connect. It then stdouts a JSON blob with your app info. It only looks for apps that aren't yet live.
Node script to invoke the ruby script at certain intervals. It uses a key/value store to check for changes, and then invokes slacker.js
.
Node script that uses Slack's node.js SDK to send a message as a bot. It also calculates the number of hours since submission.