Срочно нужна библиотека для работы с серверными методами ММ
Срочно нужна библиотека для работы с серверными методами ММ
Кто предоставит, буду очень благодарен, интересует только Notifications.send
Пытался переделать VkApi.class.php, безрезультатно.
Пытался переделать VkApi.class.php, безрезультатно.
Re: Срочно нужна библиотека для работы с серверными методами ММ
MyApi.class.php
Кодировка UTF-8
send.php
Кодировка UTF-8
Кодировка UTF-8
Код: Выделить всё
<?class MyApiNode{ public function __construct ($app_id, $secret, $format = 'XML', $secure = '1', $server_url = 'http://www.appsmail.ru/platform/api?') { $this->app_id = $app_id; $this->method = $method; $this->secret = $secret; $this->format = $format; $this->secure = $secure; $this->server_url = $server_url; } public function sendNotifications ($uids, $text) { $api = new MyApi($this->app_id, 'notifications.send', $this->secret, $this->format, $this->secure, $this->server_url); $api->addParameter('uids', join(',', $uids)); $api->addParameter('text', $text); return $api->getQuery(); }} class MyApi{ public function __construct ($app_id, $method, $secret, $format, $secure, $server_url) { $this->app_id = $app_id; $this->method = $method; $this->secret = $secret; $this->format = $format; $this->secure = $secure; $this->server_url = $server_url; $this->parameters = array(); $this->parameters[] = array('name' => 'app_id', 'value' => $this->app_id); $this->parameters[] = array('name' => 'method', 'value' => $this->method); $this->parameters[] = array('name' => 'format', 'value' => $this->format); $this->parameters[] = array('name' => 'secure', 'value' => $this->secure); } public function __toString () { $this->parameters[] = array('name' => 'sig', 'value' => $this->getSig()); foreach($this->parameters as $p) $query[] = $p['name'].'='.rawurlencode($p['value']); return $this->server_url . join('&', $query); } public function addParameter ($p_name, $p_value) { $this->parameters[] = array('name' => $p_name, 'value' => $p_value); } public function getQuery () { return $this->__toString(); } private function getSig () { sort($this->parameters); foreach($this->parameters as $p) $sigStr .= join('=',$p); return md5($sigStr . $this->secret); }} ?>
Кодировка UTF-8
Код: Выделить всё
<?phprequire('MyApi.class.php'); $app_id = '487011';$app_secret = '456b0bcc7af9e141b80f123f0a1abc58'; $uids = Array('236708913');$text = 'http://flapps.ru'; function get_url($query) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $query); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 10); return curl_exec($ch); curl_close($ch);} $api = new MyApiNode($app_id, $app_secret);$query = $api->sendNotifications($uids, $text);get_url($query); echo "sended";?>
Re: Срочно нужна библиотека для работы с серверными методами ММ
я так понимаю, что если вызвать send.php напрямую с прописанными id приложения, секретным ключом, uids тому кому шлется уведомление, то оно должно дойти и будет отражаться в разделе "Уведомления" http://my.mail.ru/apps/notified ?
Что только не делал, никаких уведомлений не получаю когда шлю себе.
Что только не делал, никаких уведомлений не получаю когда шлю себе.
Re: Срочно нужна библиотека для работы с серверными методами ММ
Volgar
Если ты будешь получать эти данные через $_GET, то можно напрямую.
Что делал, что не получается?
Если ты будешь получать эти данные через $_GET, то можно напрямую.
Что делал, что не получается?
Re: Срочно нужна библиотека для работы с серверными методами ММ
Александр
То есть:
Потом заливал в папку с приложением (т. е. ресивер тоже там есть) и вызывал send.php в строке браузера. sended пишет, уведомление не приходит.
Вообще хочется побольше инфы именно о ММ и Фейсбук. Вконтакте имхо стагнирует:)
Я их вручную как в вашем примере присвоил.Если ты будешь получать эти данные через $_GET, то можно напрямую.
То есть:
Код: Выделить всё
$app_id = '487011';//Здесь id приложения, пробовал и проверенное и не проверенное.$app_secret = '456b0bcc7af9e141b80f123f0a1abc58';//Здесь секретный ключ, пробовал и приватный ключ$uids = Array('236708913');//Здесь свой uids$text = 'http://flapps.ru';//Любой текст
Вообще хочется побольше инфы именно о ММ и Фейсбук. Вконтакте имхо стагнирует:)
Re: Срочно нужна библиотека для работы с серверными методами ММ
Volgar
На твоём хостинге есть cURL?
Замени 24 строчку на
Что пишет?
На твоём хостинге есть cURL?
Замени 24 строчку на
Код: Выделить всё
echo get_url($query);
Re: Срочно нужна библиотека для работы с серверными методами ММ
cURL есть.
Видимо что-то не так с MyApi.class.php
Частая ошибка, кстати. Только что с большим трудом удалось вывести список друзей в TileList и все из-за Incorrect signature
104 Incorrect signature sendedЧто пишет?
Видимо что-то не так с MyApi.class.php
Частая ошибка, кстати. Только что с большим трудом удалось вывести список друзей в TileList и все из-за Incorrect signature
Re: Срочно нужна библиотека для работы с серверными методами ММ
Volgar
Использовать нужно Секретный ключ.
Только что проверил скрипты из второго сообщения темы в приложении не из каталога - уведомления приходят. Проверь что все данные ты указал верно.
Для серверных методов ресивер не нужен.
Сделай вывод ещё и $query, посмотри, всё ли верно.
Использовать нужно Секретный ключ.
Только что проверил скрипты из второго сообщения темы в приложении не из каталога - уведомления приходят. Проверь что все данные ты указал верно.
Для серверных методов ресивер не нужен.
Сделай вывод ещё и $query, посмотри, всё ли верно.
Re: Срочно нужна библиотека для работы с серверными методами ММ
Александр
Да, заработало. Отлично, теперь можно написать скрипт, который берет из базы всех юзеров установивших приложение и шлет всем уведомления.
Спасибо.
Да, заработало. Отлично, теперь можно написать скрипт, который берет из базы всех юзеров установивших приложение и шлет всем уведомления.
Спасибо.