Awesome Open Source
Awesome Open Source

Chanify

iTunes App Store GitHub

English |

Chanify is a safe and simple notification tools. For developers, system administrators, and everyone can push notifications with API.

You can deploy your own server.

Table of Contents

  1. Getting Started
  2. Usage
  3. For Developer
  4. Contributing
  5. License

Getting Started

  1. Install iOS App.

  2. Get token from channel detail

    Get token

  3. Send message

  4. You can create your channel

    NewChannel

Usage

Http API

  • GET
https://api.chanify.net/v1/sender/<token>/<message>
  • POST
https://api.chanify.net/v1/sender/<token>

Content-Type:

  • text/plain: Body is text message
  • multipart/form-data: The block of data("text") is text message
  • application/x-www-form-urlencoded: text=<url encoded text message>

Additional params

Key Description
title The title for notification message.
sound 1 enable sound, otherwise disable sound
priority 10 default, or 5

E.g.

https://api.chanify.net/v1/sender/<token>?sound=1&priority=10&title=hello

Command Line

# Send message
$ curl --form-string "text=hello" "https://api.chanify.net/v1/sender/<token>"

# Send text file
$ cat message.txt | curl -H "Content-Type: text/plain" --data-binary @- "https://api.chanify.net/v1/sender/<token>"

Python 3

from urllib import request, parse

data = parse.urlencode({ 'text': 'hello' }).encode()
req = request.Request("https://api.chanify.net/v1/sender/<token>", data=data)
request.urlopen(req)

Ruby

require 'net/http'

uri = URI('https://api.chanify.net/v1/sender/<token>')
res = Net::HTTP.post_form(uri, 'text' => 'hello')
puts res.body

NodeJS

const https = require('https')
const querystring = require('querystring');

const data = querystring.stringify({ text: 'hello' })
const options = {
    hostname: 'api.chanify.net',
    port: 443,
    path: '/v1/sender/token',
    method: 'POST',
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Content-Length': data.length
        }
    }
    var req = https.request(options, (res) => {
    res.on('data', (d) => {
        process.stdout.write(d);
    });
});  
req.write(data);
req.end();

PHP

$curl = curl_init();

curl_setopt_array($curl, [
    CURLOPT_URL           => 'http://<address>:<port>/v1/sender/<token>',
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS    => [ 'text' => 'hello' ],
]);

$response = curl_exec($curl);

curl_close($curl);
echo $response;

For Developer

Requirements:

  • protobuf

Init project

$ pod install

Test push in simulator

$ ./send.swift text=hello

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Objective C (110,668
Ios (19,349
Open Source (7,617
Notifications (2,684
Ios App (1,684
Push Notifications (745
Macos Apps (230
Apns (198
Anonymous (187
Related Projects