[Модуль] Курс валют (ExchangeRates)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

Аватара пользователя
webms
Сообщения: 498
Зарегистрирован: Чт дек 15, 2016 3:13 am
Благодарил (а): 221 раз
Поблагодарили: 88 раз

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение webms » Ср мар 21, 2018 5:54 pm

5.2 не обновлял с маркета модули и сам мд не обновлялся
пришлось..
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение Gelezako » Ср мар 21, 2018 6:00 pm

webms писал(а): обновился на php 7.2 и перестал обновляться через крон, как можно исправить?
Что вам мешает брать курс из модуля? Он как раз из центробанка
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
dc0d3r
Сообщения: 12
Зарегистрирован: Вс май 27, 2018 2:54 pm
Благодарил (а): 6 раз
Поблагодарили: 1 раз

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение dc0d3r » Пт июн 01, 2018 4:38 pm

Кто может подсказать как мне данные брать с Нац Банка, API открытый. Вот с кодом не могу разобраться как в модуль его прописать?
Вот сайт с открытыми данными https://data.egov.kz/datasets/view?inde ... bagamdary4
Не могу врубиться как этот код поменять под свой

Код: Выделить всё

echo "public function SaveAutoUpdate(){
	//Начало парсинга Приватбанк АПИ
	libxml_use_internal_errors(true);
	$url = 'https://api.privatbank.ua/p24api/pubinfo?exchange&coursid=11'; 
	$xml = @simplexml_load_file($url);
	if ($xml) {
        $i=0;
        //получаем курс евро
        foreach($xml->row[1]->exchangerate->attributes() as $key => $exchangerate){
          if($i==2){
            sg("exchange_rate.eurobuy",round((float)$exchangerate,1));
          }
          else if($i==3){
          sg("exchange_rate.eurosale",round((float)$exchangerate,1));
          }
          ++$i;
        }
		
		//получаем курс доллара
		$j=0;
        foreach($xml->row[0]->exchangerate->attributes() as $key => $exchangerate){
          if($j==2){
          sg("exchange_rate.usdbuy",round((float)$exchangerate,1));
          }
          else if($j==3){
          sg("exchange_rate.usdsale",round((float)$exchangerate,1));
          }
          ++$j;
        }
		
		//получаем курс рубля
		$k=0;
        foreach($xml->row[2]->exchangerate->attributes() as $key => $exchangerate){
          if($k==2){
          sg("exchange_rate.rurbuy",round((float)$exchangerate,2));
          }
          else if($k==3){
          sg("exchange_rate.rursale",round((float)$exchangerate,2));
          }
          ++$k;
        }
	  sg("exchange_rate.date1",date("Y-m-d H:i:s"));
     }";
dc0d3r
Сообщения: 12
Зарегистрирован: Вс май 27, 2018 2:54 pm
Благодарил (а): 6 раз
Поблагодарили: 1 раз

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение dc0d3r » Пт июн 01, 2018 4:45 pm

Изменить модуль и брать данные с яндекса вот от сюда https://news.yandex.kz/quotes/159/index.html#
Там можно выбор по Странам делать и валютам.
Возможно такое?
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение Gelezako » Вс июн 03, 2018 8:56 pm

привет, да можно добавить курс тенге, вы можете добавить свое предложение на разработку вот тут:
https://connect.smartliving.ru/tasks/137.html
Если ваше предложение наберёт хотя бы 10 голосов, то я постараюсь добавить новую валюту, потому что делать только для одного человека не рационально. Так же вы можете проспонсировать через кнопку "Поддержать разработку" если хотите моментальное добавление тенге в модуль без голосования.
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
xxxShahxxx
Сообщения: 115
Зарегистрирован: Вт дек 06, 2016 2:22 pm
Откуда: Екатеринбург
Благодарил (а): 25 раз
Поблагодарили: 2 раза
Контактная информация:

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение xxxShahxxx » Вт июл 10, 2018 9:29 pm

Приветствую уважаемых!
Народ, объясните, у меня одного выходит такая ересь при озвучке и срабатывании api.ai вкупе с модулем курсы валют из маркета? Или же что-то делаю неправильно, руки кривые?
СпойлерПоказать
Мажордомо.jpg
Мажордомо.jpg (325.78 КБ) 4338 просмотров
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение Gelezako » Сб июл 21, 2018 7:36 pm

обновите интент Rate из гитхаба. Теперь не будет запоздало говорить слово "секундочку", а сразу результат.
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
ferrumlogic
Сообщения: 17
Зарегистрирован: Сб ноя 19, 2016 7:56 am
Благодарил (а): 21 раз
Поблагодарили: 2 раза

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение ferrumlogic » Ср авг 29, 2018 6:01 pm

dc0d3r писал(а):
Пт июн 01, 2018 4:38 pm
Кто может подсказать как мне данные брать с Нац Банка, API открытый. Вот с кодом не могу разобраться как в модуль его прописать?
Вот сайт с открытыми данными https://data.egov.kz/datasets/view?inde ... bagamdary4
Не могу врубиться как этот код поменять под свой

Код: Выделить всё

echo "public function SaveAutoUpdate(){
	//Начало парсинга Приватбанк АПИ
	libxml_use_internal_errors(true);
	$url = 'https://api.privatbank.ua/p24api/pubinfo?exchange&coursid=11'; 
	$xml = @simplexml_load_file($url);
	if ($xml) {
        $i=0;
        //получаем курс евро
        foreach($xml->row[1]->exchangerate->attributes() as $key => $exchangerate){
          if($i==2){
            sg("exchange_rate.eurobuy",round((float)$exchangerate,1));
          }
          else if($i==3){
          sg("exchange_rate.eurosale",round((float)$exchangerate,1));
          }
          ++$i;
        }
		
		//получаем курс доллара
		$j=0;
        foreach($xml->row[0]->exchangerate->attributes() as $key => $exchangerate){
          if($j==2){
          sg("exchange_rate.usdbuy",round((float)$exchangerate,1));
          }
          else if($j==3){
          sg("exchange_rate.usdsale",round((float)$exchangerate,1));
          }
          ++$j;
        }
		
		//получаем курс рубля
		$k=0;
        foreach($xml->row[2]->exchangerate->attributes() as $key => $exchangerate){
          if($k==2){
          sg("exchange_rate.rurbuy",round((float)$exchangerate,2));
          }
          else if($k==3){
          sg("exchange_rate.rursale",round((float)$exchangerate,2));
          }
          ++$k;
        }
	  sg("exchange_rate.date1",date("Y-m-d H:i:s"));
     }";
Я реализовал через сценарий

Код: Выделить всё

function getRates(){
$url = "http://www.nationalbank.kz/rss/rates_all.xml";
$dataObj = simplexml_load_file($url);
  foreach ($dataObj->channel->item as $item) {
    if ($item->title =='USD') {
     sg('exchange_rate.date4',$item->pubDate);
     sg('exchange_rate.kztusd',$item->description);
     sg('exchange_rate.usdindex',$item->index);
     sg('exchange_rate.kztusdchange',$item->change);
        } 
    if ($item->title =='EUR') {
     sg('exchange_rate.date4',$item->pubDate);
     sg('exchange_rate.kzteur',$item->description);
     sg('exchange_rate.eurindex',$item->index);
     sg('exchange_rate.kzteurchange',$item->change);
    } 
   }
}
GetRates();
За это сообщение автора ferrumlogic поблагодарили (всего 2):
Gelezako (Чт авг 30, 2018 10:45 pm) • dc0d3r (Пт авг 31, 2018 4:04 pm)
Рейтинг: 2.33%
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение Gelezako » Чт авг 30, 2018 10:46 pm

ferrumlogic, спасибо за код, добавил поддержку тенге в модуль
За это сообщение автора Gelezako поблагодарил:
dc0d3r (Пт авг 31, 2018 4:05 pm)
Рейтинг: 1.16%
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Skull
Сообщения: 38
Зарегистрирован: Вт фев 17, 2015 1:52 pm
Благодарил (а): 11 раз
Поблагодарили: 0

Re: Модуль "Курсы валют" (ПриватБанк+Банк России)

Сообщение Skull » Сб сен 01, 2018 10:27 pm

Добрый день!
Попробовал установить модуль, при попытке загрузить Intent file на DialogFlow выдает сообщение:
Unable to load file: SyntaxError: Unexpected token f in JSON at position 1
Ответить