If you ever wanted a tool to simply push the calls and SMS (or text messages) from your phone to somewhere remote, this is it. This app matches all missed (in case of calls), incoming and/or outgoing calls text messages against set rules and sends them over to webhook that you define.

Build Release Downloads License

If you find this app useful, send over your hugs ? to Syncloud Softech.


The app sends tiny payload similar to what’s shown below on the remote webhook (as JSON body in a POST request):

    "event": "call",
    "direction": "incoming",
    "participant": "+919876543210",
    "duration": 143,
    "date": 1609459200000

    "event": "sms",
    "direction": "incoming",
    "participant": "+919876543210",
    "content": "Your OTP for login is 123456.",
    "date": 1609459200000

You can use services like Pipedream to process these payloads and do stuff e.g., sending over to a Slack channel using below code:

import { axios } from "@pipedream/platform"

const colors = {
  'incoming': '#00aeff',
  'outgoing': '#7ac143',
  'missed': '#e4002b',

const events = {
  'call': 'phone call',
  'sms': 'text message',

export default defineComponent({
  async run({ $, event }) {
    const content = event.body.event === "call"
      ? `Call duration was ${event.body.duration} seconds.`
      : (event.body.content || 'No message body was specified.');
    return await axios($, {
      url: '<webhook>',
      method: 'post',
      data: {
        text: `New ${event.body.direction} ${events[event.body.event]} captured.`,
        attachments: [{
          author_name: event.body.participant,
          color: colors[event.body.direction],
          footer: 'Mobserve',
          text: content,
          ts: / 1000,


You can download the latest version from Releases page.


See LICENSE file.


View Github