kik-unofficial

Python API for writing unoffical kik bots that act like humans


Keywords
python, bot, kik, kikbot, kik-api, kik-messenger-platform
License
MIT
Install
pip install kik-unofficial==0.3

Documentation

Kik Bot API

Use this library to develop bots for Kik Messenger that are essentially automated humans.

It basically lets you do the same things as the offical Kik app by pretending to be a real smartphone client: It communicates with Kik's servers at talk1110an.kik.com:5223 over a modified version of the XMPP protocol.

This is the new branch of this project and is recommended.

Installation and dependencies

First, make sure you are using Python 3.6, not python 2.7. Second, just install it directly from GitHub:

git clone -b new https://github.com/tomer8007/kik-bot-api-unofficial
pip3 install ./kik-bot-unofficial-api

Usage

Examples are a great way to understand things. A good place to start is the examples/ directory.

It is as simple as:

from kik_unofficial.client import KikClient
from kik_unofficial.callbacks import KikClientCallback
import kik_unofficial.datatypes.xmpp.chatting as chatting

class EchoBot(KikClientCallback):
    def __init__(self):
        self.client = KikClient(self, "your_kik_username", "your_kik_password")

    def on_authenticated(self):
        self.client.request_roster()

    def on_chat_message_received(self, chat_message: chatting.IncomingChatMessage):
        self.client.send_chat_message(chat_message.from_jid, "You said \"" + chat_message.body + "\"!")

Currently Supported Operations:

  • Log in with kik username and password, retrieve user information (such as email, name, etc).
  • Fetch chat partners information
  • Send text messages to users/groups and listen for incoming messages
  • Send and receive 'is-typing' status
  • Send and receive read receipts
  • Fetch group information (name, participants, etc.)
  • Admin groups (add, remove or ban members, etc)
  • Search for groups and join them [Experimental]
  • Receive media content: camera, gallery, stickers
  • Add a kik user as a friend

Sending multimedia (images, videos) is not suported yet.

Troubleshooting

If you are on Windows and you are unable to install the lxml pacakge, use the binary installers from PyPi here.