def get_configuration(self): """ Retrieves your bot's configuration :returns: A :class:`Configuration <kik.Configuration>` representing the configuration data. :rtype: kik.Configuration Usage: >>> from kik import KikApi >>> kik = KikApi(BOT_USERNAME, BOT_API_KEY) >>> kik.get_configuration() <kik.Configuration> """ response = requests.get( ROOT_URL.format('/v1/config'), auth=(self.bot, self.api_key), timeout=60 ) if response.status_code != 200: raise KikError(response.text) content = response.json() return Configuration.from_json(content)
def set_configuration(self, config): """ Sets your bot's configuration :param config: A :class:`Configuration<kik.Configuration>` containing your bot's new configuration :type config: kik.Configuration :returns: A :class:`Configuration<kik.Configuration>` containing your bot's new configuration, as confirmed by the server :rtype: kik.Configuration Usage: >>> from kik import KikApi, Configuration >>> kik = KikApi(BOT_USERNAME, BOT_API_KEY) >>> config = Configuration(webhook='https://example.com/incoming') >>> kik.set_configuration(config) <kik.Configuration> """ response = requests.post( ROOT_URL.format('/v1/config'), auth=(self.bot, self.api_key), headers={ 'Content-Type': 'application/json' }, data=json.dumps(config.to_json()), timeout=60 ) if response.status_code != 200: raise KikError(response.text) return Configuration.from_json(response.json())
def set_webhook(self, url): self._bot.set_configuration(Configuration(webhook=url))