Skype bot to send SMS

Simple Skype bot send sms messages via Nexmo API

  • create a skype bot
  • create a nodejs webhook to listen for skype messages
  • expose your local webhook with ngrok (to test your bot live)
  • identify 'sms' keyword
  • integrate nexmo services to send an actual sms to a mobile phone
similar to this case, you can use the rest of the NEXMO API e.g. to receive messages

To help you get there faster

You will find in this repo




  • checkout the repo and cd in the directory using your terminal
$ git clone nexmo_skype_smsbot
$ cd nexmo_skype_smsbot
  • install the required libraries [botbuilder nexmo restify ./skype-sdk.tar.gz]
$ npm install
  • copy your APP ID and PASSWORD
  • configure your bot (no need to publish) [any fields you don't know leave blank for now]
  • open another terminal in the same directory
  • start ngrok listening on port 8080
$ ./ngrok_mac http 8080
  • copy the https url (every time you start ngrok this changes and you will have to update skype-bot settings
  • edit your bot configuration set the Messaging endpoint to the ngrok https url + append /api/messages in the end
  • edit the app.js file and set the following:
line 6: apiKey: "NEXMO_API_KEY", apiSecret: "NEXMO_API_SECRET"
line 27, 28: appId: "SKYPE_APP_ID", appPassword: "SKYPE_APP_PASSWORD"
line 37: add 'var sender = "YOUR_NUMBER";'
  • run node.js
$ node app.js
  • at your Skype bot Dashboard you will find the Channels, and under the first Skype option the Test link can be clicked to add the bot's contact to your skype.
  • open your private conversation with the bot and type in the keyword sms
  • the bot will reply asking you for the content of the message and the receiver
With the trial Nexmo account you can use your own phone number and you get for free 2 Euros for testing. The number format is described here (include country code, no leading 0s and the phone number: e.g. (UK) 447479000000


Popular posts from this blog

Medium Publications

JavaScript CI Simple Start