From 7b043b4e8bade63ee508c5e8d5db6837bd3e5ada Mon Sep 17 00:00:00 2001
From: Jacek Kowalski <Jacek@jacekk.info>
Date: Sun, 26 Aug 2012 14:41:59 +0000
Subject: [PATCH] Poprawa błędu w klasie BotSession uniemożliwiającego działanie bota po wprowadzeniu wymogu ustawienia klasy metodą setClass()

---
 class/BotAPIGG.php |   32 +++++++++++++++-----------------
 1 files changed, 15 insertions(+), 17 deletions(-)

diff --git a/class/BotAPIGG.php b/class/BotAPIGG.php
index b08003f..ff52117 100644
--- a/class/BotAPIGG.php
+++ b/class/BotAPIGG.php
@@ -6,7 +6,7 @@
 	function __construct($msg, $httpcode, $content) {
 		$this->httpcode = $httpcode;
 		$this->content = $content;
-		parent::__construct($msg);
+		parent::__construct($msg.' Błąd '.$httpcode);
 	}
 	
 	function __get($name) {
@@ -151,10 +151,10 @@
 		
 		$tok = $this->httpQuery('https://'.$token['host'].'/setStatus/'.$auth['numer'], array(
 			CURLOPT_POST => TRUE,
-			CURLOPT_POSTFIELDS => array(
+			CURLOPT_POSTFIELDS => http_build_query(array(
 				'status' => $status,
 				'desc' => $desc,
-			),
+			), '', '&'),
 		));
 		
 		if( (string)$tok->status != '0') {
@@ -181,9 +181,9 @@
 		$auth = $this->APIs['Gadu-Gadu'];
 		$token = $this->getToken();
 		
-		$tok = $this->httpQuery('https://'.$token['host'].'/botmaster/setUrl/'.$auth['numer'], array(
+		$tok = $this->httpQuery('https://botapi.gadu-gadu.pl/botmaster/getImage/'.$auth['numer'], array(
 			CURLOPT_POST => TRUE,
-			CURLOPT_POSTFIELDS => array('hash' => $hash),
+			CURLOPT_POSTFIELDS => http_build_query(array('hash' => $hash), '', '&'),
 		), TRUE, FALSE);
 		
 		return $tok;
@@ -193,10 +193,10 @@
 		$auth = $this->APIs['Gadu-Gadu'];
 		$token = $this->getToken();
 		
-		$tok = $this->httpQuery('https://'.$token['host'].'/botmaster/setUrl/'.$auth['numer'], array(
+		$tok = $this->httpQuery('https://botapi.gadu-gadu.pl/botmaster/existsImage/'.$auth['numer'], array(
 			CURLOPT_POST => TRUE,
-			CURLOPT_POSTFIELDS => array('hash' => $hash),
-		), TRUE, FALSE);
+			CURLOPT_POSTFIELDS => http_build_query(array('hash' => $hash), '', '&'),
+		));
 		
 		if( (string)$tok->status != '0') {
 			return FALSE;
@@ -206,19 +206,17 @@
 	}
 	
 	function putImage($path) {
-		$fp = fopen($path, 'r');
-		if(!$fp) {
-			return FALSE;
-		}
-		
 		$auth = $this->APIs['Gadu-Gadu'];
 		$token = $this->getToken();
 		
-		$tok = $this->httpQuery('https://'.$token['host'].'/botmaster/setUrl/'.$auth['numer'], array(
-			CURLOPT_HTTPHEADER => array('Content-Type: image/x-any'),
+		$tok = $this->httpQuery('https://botapi.gadu-gadu.pl/botmaster/putImage/'.$auth['numer'], array(
+			CURLOPT_HTTPHEADER => array(
+				'Content-Type: image/x-any',
+				'Expect: ',
+			),
 			CURLOPT_POST => TRUE,
-			CURLOPT_INFILE => $fp,
-		), TRUE, FALSE);
+			CURLOPT_POSTFIELDS => file_get_contents($path),
+		));
 		
 		if( (string)$tok->status != '0') {
 			throw new BotAPIGGReplyException('Przesyłanie obrazka do botmastera nie powiodło się.', $tok);

--
Gitblit v1.9.1